如何从 ssh / 客户端中删除密码有 .ssh/known-hosts,server=authorized_keys

如何从 ssh / 客户端中删除密码有 .ssh/known-hosts,server=authorized_keys

我搜索了大半个上午,但还是没找到从 ssh 登录到我的音频/视频服务器中删除密码的方法。我找到的大多数信息都与不同类型的身份验证有关。我的客户端计算机只有 .ssh/known-hosts,而服务器有 .ssh/authorized_keys 和另一个 know-hosts。我经常进出服务器,它没有连接到互联网,而且我在这台机器上真的不需要密码。有没有办法从 ssh 登录中删除密码?谢谢

答案1

如果你想要彻底删除密码,可以这样做:

  1. 运行passwd -d username即可删除密码。
  2. 编辑/etc/ssh/sshd_config并设置PermitEmptyPasswords yes

如果您想要一些保护并且只使用一台计算机,则可以使用 ssh 密钥:

# How to generate and use your default key:
ssh-keygen
ssh-copy-id user@host
ssh user@host

# How to generate and use another named key:
ssh-keygen -f another_key_file
ssh-copy-id another_key_file user@host
ssh -i another_key_file user@host
  1. 如果愿意,您可以保留密钥而不设置密码。这可能不是您的默认密钥的最佳选择,但对于仅用于此的另一个命名密钥来说,这并不重要。

  2. 您可以使用 ssh-agent 或 keychain,这样每次重启后您只需输入一次密码,并且您的密钥保持加载状态。

答案2

debian-administration.org

SSH 通常带有一个名为 ssh-copy-id 的实用程序,它只是将客户端的 ~/.ssh/id_rsa.pub 的内容添加到服务器的 ~/.ssh/authorized_keys

$ ssh-copy-id -i .ssh/id_rsa.pub user@remote

如果你没有密钥(也没有~/.ssh/id_rsa~/.ssh/id_rsa.pub),请使用以下方式生成一个ssh-keygen

.ssh/id_rsa.pub如果你不想使用默认密钥,请将其替换为你想要的密钥

相关内容