Linux 服务器配置使用密钥登录教程
文章摘要
本文介绍了在Linux服务器上配置SSH密钥登录的步骤:首先生成RSA密钥对并保存私钥;然后配置公钥到authorized_keys文件并设置权限;接着修改sshd_config文件启用公钥认证,可设置同时使用密码;最后重启SSH服务,使用客户端导入密钥登录。
# 第一步: ## 登录服务器:并执行以下命令生成密钥和公钥 ```java ssh-keygen -t rsa #连续执行回车即可,如需密码,请在密码提示出输入,如图: 暂不支持此私钥格式,请参考以下方法解决: 1.转换成PEM格式私钥 ssh-keygen -p -m PEM -f 私钥路径 2.生成PEM格式的私钥 生成时增加 -m PEM参数 ssh-keygen -m PEM -t rsa -C "content" ``` ![](https://oss.120120.top/blog/2024/01/08/39aac0787ff445fba763a2ee2faec32f.png)  以上会在自动家目录( /root 目录下生成隐藏的 .ssh 文件夹 ) ```java #注意隐藏文件无法使用 ls 命令查看到,需要使用如下命令 ls -al ``` 注意:生成密钥公钥后请务必将私钥下载好好保存,登录时需要 #第二步: ## 配置 ssh 使用密钥 ```java #进入 ssh 目录 cd ~/.ssh 或者 cd /root/.ssh/ #然后安装公钥 authorized_keys cp id_rsa.pub authorized_keys #注意,如果存在 authorized_keys 则采用写入方式 cat id_rsa.pub >> authorized_keys #设置公钥权限 chmod 600 authorized_keys chmod 700 ~/.ssh ``` # 第三步: ## 修改 ssh 配置文件 ```java #打开修改 vi /etc/ssh/sshd_config 然后对应如下修改: StrictModes no #此项默认为注释关闭 PubkeyAuthentication yes RSAAuthentication yes #默认不存在,可放到上面一行的下边 AuthorizedKeysFile .ssh/authorized_keys #ssh文件位置,此项默认设置相同 PasswordAuthentication yes #使用密码 no为不使用密码 AuthenticationMethods publickey,password #如果密码和密钥都使用在末尾加上此行代码 ``` ## 一键脚本 ```java #备份 cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak #删除配置项 sed -i '/PasswordAuthentication.*/d' /etc/ssh/sshd_config sed -i '/PubkeyAuthentication.*/d' /etc/ssh/sshd_config sed -i '/RSAAuthentication.*/d' /etc/ssh/sshd_config sed -i '/AuthorizedKeysFile.*/d' /etc/ssh/sshd_config #追加配置项,会关闭密码登录 PasswordAuthentication no cat >>/etc/ssh/sshd_config<
作者头像
admin
分享技术与生活
打赏作者

评论

暂无评论,快来抢沙发吧~