我刚刚安装了 Zimbra,我认为我在安装过程中搞错了主机名。
我确实安装了 Zimbra,但证书不起作用。(这是另一个话题)
这是我的主机文件:
127.0.0.1 localhost
127.0.1.1 GreenHornet
xxx.xxx.xxx.85 mydomain.co GreenHornet
xxx.xxx.xxx.85 mydomain.co GreenHornet
xxx.xxx.xxx.85 webmail.mydomain.co GreenHornet
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
当然是改了ip和域名了。
这是我的主机名文件:
mydomain.co
我想要将服务器名称设为 GreenHornet,但我在安装时更改了它。此外,我有指向服务器的 IP,并且运行正常,但我不确定主机文件是否正确。
主机文件正确吗?我是否应该将主机名文件改回 GreenHornet?
任何帮助将不胜感激!
答案1
我觉得你混淆了一些事情。
您正在混合域名、别名和 fqdn。
webmail 或 GreenHornet 是别名(又称域名内的服务)
别名 + 域名 = fqdn
fqdn 是识别您的服务/服务器的方式(如果您的 DNS 服务器具有良好的设置)
我不建议使用大写,因为你不知道它是否会正常工作
总而言之,您有这个 /etc/hosts 文件:
127.0.0.1 localhost
127.0.1.1 GreenHornet
xxx.xxx.xxx.85 mydomain.co GreenHornet
xxx.xxx.xxx.85 mydomain.co GreenHornet
xxx.xxx.xxx.85 webmail.mydomain.co GreenHornet
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
这意味着您有 2 个可能的 fqdn:webmail.mydomain.co 和 mydomain.co(如果您的 DNS 设置使用通配符)。两者都回答 xxx.xxx.xxx.85 并且您有一个别名:GreenHornet,其回答 127.0.1.1 和 xxx.xxx.xxx.85
为了完成您想要完成的任务,您必须将此文件更正为以下形式(考虑全部小写):
127.0.0.1 localhost
127.0.1.1 greenhornet
xxx.xxx.xxx.85 mydomain.co webmail.mydomain.co greenhornet.mydomain.co
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
您需要查看另一个文件才能更改服务器主机名
编辑 /etc/hostname 并将其设置为:
greenhornet.mydomain.co
然后重新启动服务器或执行此命令来验证主机名更改:
service hostname start
重启 apache 就好了。如果不行的话,重启服务器。
您谈论的是证书。您必须知道,您必须至少尊重您在证书中设置的 cn,这样证书才有效。
您可能还需要重新配置您的 zimbra 以考虑新的主机名。
此致。
答案2
安托万·罗德里格斯 (Antoine Rodriguez) 的回答很好。
我之前已经为内部测试环境安装/配置了 Zimbra 8.0.3,因此我只想补充一点我的看法。
就我而言,我只是将主机名(/etc/hostname
)设置为与 FQDN 相同,并让 DNS 服务器处理名称解析。
笔记:不确定您的网络中是否有 DNS 服务器,但如果您想发送/接收电子邮件,我强烈建议您设置一个(除了 A/AAAA 和 CNAME 之外,您还需要 MX 记录)。
/etc/hosts
文件是主机名的静态表查找。主机名查找由文件控制/etc/nsswitch.conf
,默认情况下,它会在 hosts 文件中查找,然后在 DNS 服务器中查找。
hosts: files dns
因此,您设置的主机名/etc/hosts
只能在服务器本身上解析,除非您将相同的条目推送到所有客户端计算机(将连接到 zimbra 服务器)。
无关
除了更改托管之外/etc/hostname
,您还可以通过直接更改来动态更改主机名/proc/sys/kernel/hostname
。
例如:
echo greenhornet.mydomain.co > /proc/sys/kernel/hostname
exec -l $SHELL
您将看到新主机名在新的子 shell 中生效。为了在重启后继续生效,您必须在 中更改它/etc/hostname
。