如果仅允许 ssh 密钥,如何避免 ssh 用户名提示

How to avoid the ssh username prompt if only ssh key is permitted

我已经将远程 debian 配置为只接受确定用户的 ssh 登录和密钥,这将只使用一台本地机器访问它。

在远程机器上停用了 root 登录、密码登录,但是当我尝试从其他任何地方使用 ssh 时,它仍然要求输入用户名,然后说没有受支持的身份验证方法。

我可以避免该用户名提示吗?

谢谢

您可以尝试将 ~/.ssh/config 编辑为

host [host]
    hostname [ip]
    user [username]

更改括号内的所有内容以满足您的需要。

此外,您应该仔细检查 remote/local 主机上的 pub/priv 键。

我看到了两种可能的实现方式(在服务器上):

a) 为 ssh 建立 tcpwrappers,只允许从该主机到 ssh 端口的连接。

b) 设置一个 iptables 规则以丢弃除允许的机器之外的任何连接尝试。