• ssh 安全配置


    1、只使用ssh v2  //etc/ssh/sshd_cofig

      Protocol 2

      ListenAddress x.x.x.x --如果你的环境有VPN通道,建议sshd监听所在的内网地址;

    2、限制用户访问(用户与用户之间使用空格隔开,可以使用?*通配符)

     AllowUsers user01 root --只允许那些用户使用ssh登录

     DenyUsers user02 user03 --值拒绝那些用户访问,两种方法选其一

    3、配置空闲超时自动断开  //etc/profile

    使用shell变量来完成直接简单:TMOUT  

    4、禁止管理员直接使用ssh登录

    PermitRootLogin no --使用普通用户登录用,调用su/sudo来提权

    5、更改默认的监听端口和监听IP

    Port 5568

    ListenAddress 0.0.0.0 --按照需求可设置监听在服务器私有地址上,如果监听在公网的地址上则需要更改端口、不能直接使用22端口;

    6、给账户设置强壮的密码

    # rpm -ivh expect-5.43.0-5.1.i386.rpm 
    # mkpasswd -l 128 -d 8 -C 15 -s 10
    omlrjcU3fxivSqtotyu'nk6tR(zhp1Jcel_gxjnqedErpx_1g4U]amtqst3igWXb-f2eqqqJohfjuzccdC.coMok7Abvtjfzej&vfvfTblgBmWmijqh.w&acegjrqwqq
    -l 密码长度
    -d 多少个数字
    -C 大写字母个数
    -s 特殊符号的个数

    7、使用密钥对验证

    #ssh-keygen -t rsa/

    #ssh-copy-id /$HOME/.ssh/id.rsa.pub username@remotehost

    8、使用iptables控制

    在每一分钟内只允许有三个新的连接去连接SSH服务器,并发连接是三个,如果超过此值将被拒绝

    #iptables -A input -p tcp --dport 22 -m state --state NEW -m limit --limit  3/min --limit-burst 3 ACCEPT

    #iptables -A input -p tcp --dport 22 -m state --state ESTABLISHED -j ACCEPT

    #iptables -A input  -p tcp --dport 22 -j DROP

    #iptacles -A output -o eth0 -p tcp --sport 22 -m state --state  RSTABLISHED  -j ACCPET

    9.减少密码错误尝试次数 (/etc/ssh/sshd_config)

    MaxAuthTries=3

    当SSH登录失败次数超过3次就使用tcpwrappers来拒绝。

    使用脚本实现对sshd暴力破解的IP进行拦截,把连续3次以上通过ssh登录系统失败的IP放到/etc/hosts.deny 。 文件中的IP不能重复。

    脚本要求每10分钟执行一次

    #!/bin/bash
    export bad_ip=$(lastb -i -a | grep ssh | awk '{print $NF}'|sort |uniq -c |awk '$1>3 {print $2}')

    for i in $bad_ip
    do
    echo "sshd: $i" >> /etc/hosts.deny
    done

    echo "" > /var/log/btmp

     

    #vim /etc/crontab

    10 * * * * * /test/shell/ssh.sh

     

  • 相关阅读:
    [记录] web icon 字体
    ruby sass Encoding::CompatibilityError for changes
    [CSS][转载]内层div的margin-top影响外层div
    PHP 有关上传图片时返回HTTP 500错误
    APK downloader
    阿里云CentOS7.2卸载CDH5.12
    CentOS7查询最近修改的文件
    service cloudera-scm-server restart报错 Unable to retrieve remote parcel repository manifest
    CDH安装报错 Monitor-HostMonitor throttling_logger ERROR ntpq: ntpq -np: not synchronized to any server
    CDH5.12安装检查Inspector failed on the following hosts...
  • 原文地址:https://www.cnblogs.com/kangfeng/p/5079287.html
Copyright © 2020-2023  润新知