服务器ssh安全防护

线上服务器每天都要经受几百上千次的ssh攻击,可以采取以下几种措施加强这方面的防护。

  • 修改ssh服务端口

ssh服务默认监听22端口,大部分攻击都是针对这个端口的,我们可以修改它的默认监听端口号来减少被攻击概率

vim /etc/ssh/sshd_config

找到port 22这一行,把它修改为别的冷门端口号

重启sshd服务

service sshd restart 或者 systemctl restart sshd.service

  • 设置ssh私钥登录

    1. ssh-keygen -t rsa

      生成秘钥,存放在/home/用户目录/.ssh/目录下面

      将生成的id_rsa.pub公钥复制到该目录的authorized_keys文件中,多个用换行符分隔

    2. 修改ssh配置

      vim /etc/ssh/sshd_config

      PasswordAuthentication no //字符串密码登录禁止

      PermitRootLogin no //root用户登录禁止,可以用一般用户登录以后通过"su -"来输入密码登入root用户,提高安全性

    3. 重启ssh服务

      service sshd restart 或systemctl restart sshd.service

    4. 把生成的私钥文件复制到要登录的电脑上,配置shell登录

      把id_rsa文件复制到自己的电脑上,shell软件中配置使用key登录,选择这个key,就可以登录啦

  • 安装denyhosts软件
    安装
    yum install denyhosts.noarch
    配置
    vim /etc/denyhosts.conf
    常用的配置项:
    DENY_THRESHOLD_INVALID = 5 #无效用户名限制登陆次数
    DENY_THRESHOLD_VALID = 10 #有效用户名限制登陆次数
    DENY_THRESHOLD_ROOT = 5 #root限制登陆次数
    AGE_RESET_ROOT = 1d #root用户登录失败计数归零的时间
    一般默认配置就已经够了
    启动服务:
    service denyhosts start 或者 systemctl start denyhosts.service

你可能感兴趣的:(服务器ssh安全防护)