为什么我无法使用 CNAME 记录中指定的主机名进行 ssh?当我使用它指向的主机名时,我可以正常进行 ssh。已经超过 72 小时了。
我有一个域名“mydomain.com”,它有一个指向主机“foo”的 CNAME 记录,指向“ec2-xxx-yyy-zzz-aaa.compute-1.amazonaws.com”。(显然,我正在使用 EC2。也许这有关系?)CNAME 记录已生效至少一周。
当我尝试
ssh -i 我的密钥[电子邮件保护]
我明白了
ssh:连接到主机 foo.mydomain.com 端口 22:操作超时
但当我尝试
ssh -i 我的密钥[电子邮件保护]
我登录正常。
请注意,行为已经改变。起初我能够使用 foo.mydomain.com 进行 ssh。但现在我不能了。
当我在 foo.mydomain.com 上运行 nslookup 时,我得到以下结果:
foo.mydomain.com 规范名称 = ec2-xxx-yyy-zzz-aaa.compute-1.amazonaws.com。
名称:ec2-xxx-yyy-zzz-aaa.compute-1.amazonaws.com
地址:xxx.yyy.zzz.aaa
和 nslookup ec2-xxx-yyy-zzz-aaa.compute-1.amazonaws.com:
名称:ec2-xxx-yyy-zzz-aaa.compute-1.amazonaws.com
地址:xxx.yyy.zzz.aaa
答案1
如果不知道 CNAME 说了什么,就很难确定。但是“连接超时”意味着 ssh 进程可以解析主机名,但与其通信的主机没有响应。通常这意味着防火墙已关闭或已关闭。
我能想到的唯一适用这种情况的情况是,要么您的 CNAME 是错误的,要么您的主机没有使用 DNS 来解析它 - foo.domain.com 有可能在 /etc/hosts、ldap 或 NIS 中吗?
另外:尝试一下ping
,看看它正在 ping 哪个 IP 地址。