我的 ~/.ssh/config 文件中有这个:
Host jupiter
HostName jupiter.engin.x.edu
User rob
Host *.engin.x.edu
User bladex
本地用户是“rob”,我想对 engin.x.edu 子域中的每个主机使用用户名“bladex”。但这不起作用,输入“ssh host.engin.x.edu”会得到“[电子邮件保护]的密码:”
我做错了什么?我的 resolv.conf 包含“search engin.x.edu”。
答案1
大多数情况下ssh
,忽略文件是因为文件权限错误。
例如man ssh_config
说:
〜/.ssh /配置
这是每个用户的配置文件。该文件的格式如上所述。该文件由 SSH 客户端使用。由于可能被滥用,该文件必须具有严格的权限:用户可读/写,其他人不能访问。如果相关组仅包含用户,则该文件可能是组可写的。
您还必须检查该文件所有父目录的权限。例如,如果您的主目录是,则应检查、、和/home/rob
的权限。/home
/home/rob
/home/rob/.ssh
/home/rob/.ssh/config
假设你的家已经有安全权限,那么通常有帮助的命令是:
chmod -R go= ~/.ssh
请记住,ssh -vvv host.engin.x.edu
调试这些问题很有用。