码迷,mamicode.com
首页 > 其他好文 > 详细

fail2ban使用教程

时间:2018-03-20 18:06:15      阅读:396      评论:0      收藏:0      [点我收藏+]

标签:SSH   fail2ban   SSH安全   

fail2ban使用教程

介绍

  • fail2ban用于监视系统日志,通过正则表达式匹配错误错误信息,设置一定的条件触发相应的屏蔽动作。
    在笔者的vps里,主要是用于ssh的保护,ssh登录错误的时候会记录到 /var/log/secure,fail2ban通过 gamin检测到新增日志,10min内同一ip连续登陆5次就会封禁30min。

安装

  • 这里有两种安装方式,使用yum安装或者通过rpm安装。笔者的系统版本是CentOS-6.7

yum安装

  • #首先安装epel源,如果已经安装可以跳过此步
    yum install -y epel-release
    #然后安装fail2ban:
    yum install -y fail2ban

rpm安装

  • fail2ban依赖下面四个安装包:
  • ed: Linux 操作系统下最简单的文本编辑器,以行为单位对文件进行编辑
  • gamin-python: python调用gamin的一个模块,gamin实现了一套监控文件变化的机制
  • ipset: 管理 ip地址/端口/mac地址 的模块,一般用于辅助提高iptables的性能
  • python-inotify: python的一个模块,实现了文件变化通知机制

配置文件说明

配置文件位于:

  • /etc/fail2ban/action.d/ //采取相对应措施的目录
  • /etc/fail2ban/fail2ban.conf //fail2ban的配置文件
  • /etc/fail2ban/fail2ban.d/ //fail2ban的配置文件目录
  • /etc/fail2ban/filter.d/ //具体过滤规则文件目录
  • /etc/fail2ban/jail.conf //阻挡设定文件
  • /etc/fail2ban/jail.d/ //阻挡设定文件的目录
  • /etc/fail2ban/paths-*.conf //不同linux发行版下路径的相关设置,在jail.conf的[INCLUDES]里指定

fail2ban.conf是针对fail2ban程序运行本身的一些设置。

jail.conf 是fail2ban的业务功能设置,里面设置了需要监控那些服务以及如何保护等,里边已经针对常用的服务提供了监控方案,比如sshd、apache、3proxy等,笔者只启用了sshd的保护。有一个[DEFAULT]部分适用于所有其他部分,除非默认选项在其他部分中覆盖。

基本配置解析

  • ignoreip :这是一个空格分隔的IP地址列表,不能被fail2ban阻止。 例如,如果连接到服务器的计算机具有静态IP地址,则可能需要在此处列出。
  • bantime :如果被fail2ban(600秒= 10分钟)捕获,主机被阻止的时间(秒)》
  • maxretry :最大 主机被fail2ban阻止之前失败的登录尝试次数。
  • 过滤器 :指在/etc/fail2ban/filter.d中的相应过滤器文件。
  • logpath :fail2ban检查失败的登录尝试的日志文件。

如/etc/fail2ban/jail.conf顶部的注释所示 ,我们不会修改/etc/fail2ban/jail.conf本身来将其调整为我们的需要,而是通过创建新的配置文件来覆盖/ etc / fail2ban / jail.local 。

启用sshd的保护

  • 在jail.conf的[sshd]中加上一行enabled = true就可以:

    # SSH servers
    [sshd]
    port = ssh
    logpath = %(sshd_log)s
    enabled = true

fail2ban使用教程

标签:SSH   fail2ban   SSH安全   

原文地址:http://blog.51cto.com/xiaoma90/2089065

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!