服务器秘钥登录

  1. 目标:禁用root登录ssh,设置只允许普通管理员使用秘钥访问ssh
  2. 修改root用户密码
     xshell连接服务器
     查看当前用户
     id
     修改当前用户密码
     passwd
     修改指定用户密码(admin为例)
     passwd admin
     输两次密码
     完成
    
  3. 新建一个用户
     useradd user1
     passwd user1
     输两次密码
    
  4. 禁止root直接登录sshd
     vim /etc/ssh/sshd_config
     #PermitRootLogin yes
     改为
     PermitRootLogin no
     重启sshd服务
     systemctl restart sshd
    
  5. 修改默认登录端口
     vim /etc/ssh/sshd_config
     #Port 22
     改为
     Port 2022
     重启sshd服务
     systemctl restart sshd
    
  6. 开启防火墙2022端口
     firewall-cmd --zone=public --add-port=2022/tcp --permanent
     firewall-cmd --reload
    
  7. 测试user1是否能登录
     ssh user1@xxx.xxx.xxx.xxx 2022
     输入密码
     su root
     输入root密码
    
  8. 测试root是否已经无法登录ssh
     ssh root@xxx.xxx.xxx.xxx 2022
     输入root密码
     不能登录说明已经成功禁用
    
  9. 生成客户端秘钥文件

     su user1
    
     ssh-keygen -t rsa
    
     输入秘钥文件保存路径:
     不输入则默认为:
     /home/user1/.ssh/id_rsa(具体默认路径看提示)
    
     输入密码
     不输入则默认为:
     空密码
    
     再次输入密码
     与上次密码相同
     -------------------------------------------------------------
     Your identification has been saved in /home/user1/.ssh/id_rsa
     Your public key has been saved in /home/user1/.ssh/id_rsa.pub
     -------------------------------------------------------------
    
  10. 下载私钥到本地,删除服务器私钥
     Linux:
     cd ~
     scp -P 2022 user1@xxx.xxx.xxx.xxx:/home/user1/.ssh/id_rsa .
     rm -f /home/user1/.ssh/id_rsa
     Windows:
     (WinSCP)等工具。。。
     注意,一定要保证本地已经下载了私钥文件
     注意,一定要保证本地已经下载了私钥文件
     注意,一定要保证本地已经下载了私钥文件
    
  11. 权限设置
     cd /home/user1/.ssh/
     touch authorized_keys
     cat /home/user1/.ssh/id_rsa.pub > /home/user1/.ssh/authorized_keys
     chmod 700 /home/user1/.ssh/
     chmod 400 /home/user1/.ssh/authorized_keys
    
  12. 配置ssh
     su root
     输入密码
     vim /etc/ssh/sshd_config
     #禁止密码登录
     PasswordAuthentication no
     #启用密钥登录
     RSAAuthentication yes
     #启用公钥验证
     PubkeyAuthentication yes
     #指定公钥位置(一定要这样写)
     AuthorizedKeysFile .ssh/authorized_keys
     #重启sshd
     systemctl restart sshd
     su user1
    
  13. 测试是否生效
     以xshell为例:
     新建一个连接->选择用户秘钥->导入->id_rsa路径->选中、确定。
     如果之前创建秘钥时,添加了密码,此时输入那个密码,点确定。
    
@耿志环 2012-∞ 冀ICP备17033181号, powered by Gitbook修订: 2018-05-23 16:25:59

results matching ""

    No results matching ""