Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41784
  • 博文数量: 14
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2014-12-04 22:19
个人简介

Take notes for our web server

文章分类

全部博文(14)

分类: LINUX

2014-12-06 12:28:34

安装此软件原因:总是有IP尝试链接SSH端口(在/var/log/secure文件中可以查看SSH日志)
软件选择:Fail2ban        Fail2ban 即可以用系统自带的防火墙,如Linux的iptables或FreeBSD的ipfw,又可以换用tcpd,此外还可以扩展到其它网络服务,目前我主要使用在监控22端口,以及/var/log/secure日志,主要是那些非法访问的日志,当发现某个IP在一个定义的时间段内,尝试SSH密码失败达到 一个定义的次数,则利用LINUX的iptables阻止改IP一个定义的时间段,当然,也可以无期限的阻止。(转自)
      下载地址。由于Fail2ban是用Python写的,所以不用编译。我选择的是stable版本fail2ban-0.8.14
文件解压:
      首先把下载的文件移动到/usr/local文件夹下
      sudo mv /home/san412/下载/fail2ban-0.8.14.tar.gz /usr/local
      开始解压文件centos各种文件加压大全
      sudo gzip -d fail2ban-0.8.14.tar.gz  //将.gz文件解压成.tar文件
      sudo tar xvf fail2ban-0.8.14.tar        //解压.tar文件
      解压完成后,阅读README.md文件,里面有具体的安装过程,及测试等
      vim /usr/local/fail2ban-0.8.14/README.md
   

修改/etc/fail2ban/jail.conf(转自)    ignoreip = 127.0.0.1  # 忽悠 IP范围 如果有二组以上用空白做为间隔
   bantime  = 600         # 设定 IP 被封锁的时间(秒),如果值为 -1,代表永远封锁
   findtime  = 600       # 设定在多少时间内达到 maxretry 的次数就封锁
   maxretry = 3        # 允许尝试的次数
#针对sshd暴力入侵防护
   [ssh-iptables]
   enabled  = true
   filter   = sshd
   action   = iptables[name=SSH, port=ssh, protocol=tcp]
   mail-whois[name=SSH, dest=root]
   logpath  = /var/log/secure maxretry = 5    # 如果有个别的次数设定就设在这里
#针对vsftpd暴力入侵防护
   [vsftpd-iptables]
   enabled  = true
   filter   = vsftpd
   action   = iptables[name=VSFTPD, port=ftp, protocol=tcp]
   sendmail-whois[name=VSFTPD, dest=you@mail.com]
   logpath  = /var/log/secure maxretry = 3      建议设置成maxretry为 3 表示3次错误就封锁
   bantime  = 1800       

启动方法:
        sudo fail2ban-server start

        sudo fail2ban-client start
       具体的 fail2ban-client功能用下面指令查看
       fail2ban-client -h

设置开机自动启动,方法如下:(转自http://blog.csdn.net/jiedushi/article/details/6767445)
cd /etc/init.d
vi youshell.sh #将youshell.sh修改为你自己的脚本名

编写自己的脚本后保存退出。
在编写脚本的时候,请先加入以下注释

#add for chkconfig
#chkconfig: 2345 70 30 #description: the description of the shell #关于脚本的简短描述
#processname: servicename #第一个进程名,后边设置自启动的时候会用到


说明:
2345是指脚本的运行级别,即在2345这4种模式下都可以运行,234都是文本界面,5就是图形界面X
70是指脚本将来的启动顺序号,如果别的程序的启动顺序号比70小(比如44、45),则脚本需要等这些程序都启动以后才启动。
30是指系统关闭时,脚本的停止顺序号。

给脚本添加上可执行权限:

chmod +x youshell.sh

利用chkconfig命令将脚本设置为自启动

chkconfig --add servicename

这样你的脚本就可以在开机后自动运行了。

另外,在redhat里也可以使用这个方法来实现开机自启动。


  我的shell程序fail2ban.sh
  #!usr/bin/bash
  #add for chkconfig
  #chkconfig:2345 70 30
  #descript:start fail2ban when the machine is open
  #processname failban.sh
  fail2ban-server start
  fail2ban-client reload

  执行指令 
chmod +x fail2ban.sh 
chkconfig --add fail2ban.sh


 
     
     
    
阅读(1139) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:Nginx学习笔记

给主人留下些什么吧!~~