Ubuntu12.4使用Denyhosts防止黑客破解ssh密码

网络上总有人闲的无聊到处破解扫描别人密码,特别是ssh密码,一旦被破解了,那就砸蛋了。那Ubuntu12.4使用denyhosts如何防止黑客破解ssh密码呢?

denyhost是一个由python写的脚本,目前最新版本为2.6,可以实现对自动查找恶意ssh连接,然后把恶意ip加入到/etc/hosts.deny文件里面,以实现对服务器的安全防护


    安装denyhost 
    # apt-get install mailutils            //安装邮件功能,以实现当有黑客攻击的时候报警到管理员邮箱 
    # apt-get install denyhosts        //安装denyhost软件,以实现防黑客扫描 

要做的就这些,剩下来的都是自动的,当然你也进行一些配置的啦。

查看并配置denyhosts:


Ubuntu12.4使用Denyhosts的配置文件:/etc/denyhosts.conf

           ############ THESE SETTINGS ARE REQUIRED ############        //这些设定是必须的 
    SECURE_LOG = /var/log/auth.log                        //指定sshd的日志文件,里面已经内置了一些日志文件的位置,只需要打开即可,打开的方法为删除#号。 
    HOSTS_DENY = /etc/hosts.deny        //指定可以限制IP地址的文件,这里使用/etc/hosts.deny 
    PURGE_DENY = 5m                             //过多长时间,把IP从/etc/hosts.deny里面清除 
    BLOCK_SERVICE  = sshd                    //指定被保护的服务,这里要保护的是sshd 
    DENY_THRESHOLD_INVALID = 1        //允许无效用户失败的次数,在/etc/passwd里面没有的用户(不包括root) 
    DENY_THRESHOLD_VALID = 2            //允许正常用户失败的次数,在/etc/passwd里面有的用户(不包括root) 
    DENY_THRESHOLD_ROOT = 1            //允许root用户失败的次数 
    DENY_THRESHOLD_RESTRICTED = 1    //允许在$WORK_DIR/hosts-restricted里面出现的用户失败的次数 
    WORK_DIR = /var/lib/denyhosts            //定义工作目录 
    SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES    //如果为YES,所有在$WORK_DIR/allowed-host时面的IP地址将会被认为是可疑的,如果设置为NO,所有在allowd-hosts试图登陆的结果,将不会发送警告邮件!所有不在$WORK_DIR/allowed-host时面的IP地址将会发送警告! 
    HOSTNAME_LOOKUP=YES        //是否将IP地址解析为主机名,告警的时候使用主机名。 
    LOCK_FILE = /run/denyhosts.pid        //定义PID文件的位置,确保同时只有一个Denyhost进程在运行 
           ############ THESE SETTINGS ARE OPTIONAL ############        //这里的设置是可选的 
    ADMIN_EMAIL = 123456@gmail.com               //当有人试图登录你的服务器,或者有IP被加入黑名单的时候,发送邮件到这里指定的邮箱。前提是,本机一定要可以发送邮件才行! 
    SMTP_HOST = localhost                //指定smtp服务器 
    SMTP_PORT = 25                            //指定SMTP端口号 
    SMTP_FROM = DenyHosts <nobody@localhost>        //指定发件人 
    SMTP_SUBJECT = DenyHosts Report                        //指定邮件主题 
    AGE_RESET_VALID=5d                    //多长时间后,用户登录失败的次数被置为0,这里是指在/etc/passwd里面定义的用户,如果不设置,永远都不会置0 
    AGE_RESET_ROOT=25d            //多长时间后,root用户登录失败的次数置为0,如果不设置,永远都不会置0 
    AGE_RESET_RESTRICTED=25d    //在$WORK_DIR/hosts-restricted时面定义的用户,多长时间失败次数计数器被置为0 
    AGE_RESET_INVALID=10d            //无效用户(不在/etc/passwd里面的用户)的失败次数计数器,多长时间被置为0 
    RESET_ON_SUCCESS = yes            //当某个IP使用某个用户登录成功后,该IP对应的用户失败次数将会被置为0  
      ######### THESE SETTINGS ARE SPECIFIC TO DAEMON MODE  ########## 
    DAEMON_LOG = /var/log/denyhosts        //当denyhost运行在守护进程模式的时候,日志文件存储的位置 
      
    DAEMON_SLEEP = 30s                    //轮询查看SSHD日志的间隔 
    DAEMON_PURGE = 1h                //多长时间清空$HOSTS_DENY中的IP地址,如果PURGE_DENY为空,这个设置将无效 
       #########   THESE SETTINGS ARE SPECIFIC TO     ########## 
       #########       DAEMON SYNCHRONIZATION         ########## 
恶意的登录一下,再查看/etc/hosts.deny文件

注意配置完毕要记得重启下:Denyhosts


关键词: 防止破解ssh , denyhosts

上一篇: 分享一篇文章,如何在互联网中找到高利润项目
下一篇: linux 下服务器之间传输数据和文件复制拷贝方法:scp

目前还没有人评论,您发表点看法?
发表评论

评论内容 (必填):