Ubuntu Server 16.04 - 在密码提示中显示主机名而不是 IP(SSHD)

Ubuntu Server 16.04 - 在密码提示中显示主机名而不是 IP(SSHD)

多年来,当我通过 SSH 连接服务器时,我看到过几种不同的密码提示,有些只是“密码:”,然后是“用户名@服务器 ip 密码:”或“用户名@服务器主机名密码:”。就我而言,当我刚刚安装 Ubuntu Server 时,我的提示是“用户名@服务器 ip”,当然,它会根据我尝试从本地网络还是通过互联网登录来显示不同的 IP。但我更希望它显示服务器自己的主机名而不是 IP 地址。

假设我有一个名为 foo 的用户,并且服务器自己的主机名是 bar,所以我希望它显示“foo@bar 密码:”。

有人知道如何更改它吗?我尝试谷歌搜索并找到了针对不同发行版的几个内容(一些提到 sshd_config,其他提到 pam.d,一些甚至是语言环境文件),但似乎没有一个适用于 Ubuntu 的内容。

答案1

该提示来自您的 ssh 客户端,而不是来自服务器;它本质上是重复您在 ssh 命令行中使用的任何标识符:

ssh连接2.cauth_passwd()

snprintf(prompt, sizeof(prompt), "%.30s@%.128s's password: ",
    authctxt->server_user, host);

如果您设置了HostKeyAlias选项,它将使用该名称,而不是您在命令行上使用的 IP 地址或主机名。添加到您的~/.ssh/config

Host some_alias
    Hostname 192.168.1.13
    HostKeyAlias something_else

相关内容