配置SSH密钥免密码登录需三步:首先在本地运行ssh-keygen -t rsa -b 2048生成密钥对,私钥id_rsa保存于~/.ssh/,公钥id_rsa.pub用于后续配置;然后通过ssh-copy-id user@192.168.1.100将公钥复制到远程服务器的~/.ssh/authorized_keys文件中,若无该命令可手动执行cat ~/.ssh/id_rsa.pub | ssh user@server_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"完成复制;最后确保远程服务器~/.ssh目录权限为700,authorized_keys文件权限为600,使用chmod命令设置即可,完成后即可实现免密登录。

在Linux中配置SSH密钥实现免密码登录,可以提升远程访问的安全性和效率。核心步骤包括生成密钥对、将公钥复制到目标服务器、并确保权限设置正确。只要完成配置,就可以直接登录远程主机而无需每次输入密码。
本地机器上需要先生成一对SSH密钥(私钥和公钥)。使用ssh-keygen命令即可完成:
ssh-keygen -t rsa -b 2048
执行后会提示你选择保存路径(默认是~/.ssh/id_rsa),也可以设置密钥密码(可选)。如果只是用于免密登录且信任本地环境,可直接回车跳过密码设置。
完成后会在~/.ssh/目录下生成两个文件:
把本地生成的公钥内容添加到远程主机的~/.ssh/authorized_keys文件中。最简单的方法是使用SSH自带的复制工具:
ssh-copy-id username@server_ip
例如:
ssh-copy-id user@192.168.1.100
系统会提示你输入一次远程用户的密码。验证通过后,公钥会自动追加到远程主机的authorized_keys文件中。
如果没有ssh-copy-id命令,可以手动复制:
cat ~/.ssh/id_rsa.pub | ssh username@server_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
SSH对文件权限要求严格,权限不正确会导致密钥认证失败。在远程服务器上确保以下设置:
配置完成后,尝试通过SSH连接远程主机:
ssh username@server_ip
如果一切正常,将直接登录,不再提示输入密码。
若仍需输入密码,可检查远程服务器的SSH配置文件/etc/ssh/sshd_config,确认以下参数已启用:
修改后需重启SSH服务:sudo systemctl restart sshd
基本上就这些。配置一次,长期受益。注意保护好本地私钥文件,避免丢失或泄露。
以上就是如何在Linux中配置SSH密钥 Linux免密码认证设置的详细内容,更多请关注php中文网其它相关文章!
                        
                        每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
                Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号