linux禁用root登录和密码登录只支持ssh 证书登录

来源:互联网 发布:詹姆斯各年总决赛数据 编辑:程序博客网 时间:2024/04/30 12:15
1. 生成一对密钥 公钥
ssh-keygen -t rsa
得到两个文件 id_rsa(私钥) id_rsa.pub(公钥)
私钥给客户端 公钥存于 /home/user/.ssh/authorized_keys
这样就实现了验证的基础
如多个用户想省去多个公钥管理的烦恼可以将生成的多个公钥合成一个文件,每个公钥之间换行即可。

2.修改linux 设置
    vim /etc/ssh/sshd_config
    关键修改参数如下
    #禁用root账户登录,非必要,但为了安全性,请配置
    PermitRootLogin no
    # 是否让 sshd 去检查用户家目录或相关档案的权限数据,
    # 这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。
    # 例如使用者的 ~.ssh/ 权限设错时,某些特殊情况下会不许用户登入
    StrictModes no
    # 是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。
    # 至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内
    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile      %h/.ssh/authorized_keys
    #有了证书登录了,就禁用密码登录吧,安全要紧
    PasswordAuthentication no

3.重启ssh 服务
     ubuntu  /etc/init.d/ssh restart
     centos   service sshd restart
  
注意事项,先确认可以由其他账户 登录再退出系统。。。
0 0
原创粉丝点击