Linux禁用密码登录使用ssh密钥登录以及Linux 禁止root用户ssh登陆

生成ssh密钥

# 执行生成公钥、密钥,生成保存目录为 ~/.ssh
ssh-keygen -t rsa # 如果不需要修改生成目录,设置密码等可一路回车即可
  • 我用root用户登录,
  • 阿里云服务器在 /root下已经存在 .ssh
  • 如果不存在手动建.ssh
# mkdir .ssh
 # chmod 700 .ssh/
  • 将公钥上传到 .ssh目录下,然后执行以下操作
$ cd .ssh/
$ cat id_dsa_1024.pub > authorized_keys
$ chmod 600 authorized_keys
  • 修改 /etc/ssh/sshd_config 配置文件

#vim /etc/ssh/sshd_config

 # 禁止密码登录
 PasswordAuthentication no
# 允许公钥认证
PubkeyAuthentication yes
# 认证key文件位置
AuthorizedKeysFile .ssh/authorized_keys

# PermitRootLogin no 将 yes 改为 no 将禁止 root用户ssh登陆
  • 重置sshd_config生效,执行以下命令

#service sshd restart

添加ssh公钥到目标服务器

#!/bin/sh

cat ./id_rsa.pub  >> /root/.ssh/authorized_keys

echo "添加成功"
  • 此时可以通过 id_rsa 密钥登录服务器
posted @ 2025-04-03 11:44  程序员の奇妙冒险  阅读(86)  评论(0)    收藏  举报