欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

如何在Linux中让普通用户实现无密码登录?

最编程 2024-08-03 14:25:06
...

Linux普通用户(非root用户)可以通过配置SSH免密码登录系统。下面是一些简单的步骤:

  1. 在客户端机器上生成密钥对:
ssh-keygen -t rsa

这将在用户主目录下的.ssh目录中生成密钥对,其中包括公钥(id_rsa.pub)和私钥(id_rsa)。

  1. 将公钥复制到远程机器上的authorized_keys文件中:
ssh-copy-id username@remote_host

这会将公钥自动添加到远程机器的authorized_keys文件中,如果没有该文件,则会自动创建。您需要输入远程主机的密码进行验证。

  1. 如果您不想使用ssh-copy-id命令,您也可以手动将公钥添加到远程机器的authorized_keys文件中。打开终端并执行以下命令:
cat ~/.ssh/id_rsa.pub | ssh username@remote_host 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'

这会将公钥复制到远程机器的authorized_keys文件中,如果没有该文件,则会自动创建。您需要输入远程主机的密码进行验证。

  1. 设置ssh的权限:
chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys

这将设置ssh目录的权限为700,设置authorized_keys文件的权限为600。

现在您可以通过使用ssh username@remote_host命令连接到远程机器而无需输入密码。但请注意,为了确保安全,请确保您的私钥文件的权限设置为600或更高,并将其保存在受保护的位置,以避免私钥泄漏。