52AV手機A片王|52AV.one

 找回密碼
 立即註冊
查看: 1542|回復: 0

[防火牆] 防火牆強化套件fail2ban之安裝與設定

[複製鏈接]
發表於 2016-4-9 12:53:54 | 顯示全部樓層 |閱讀模式
tid=34794& 本帖最後由 IT_man 於 2016-4-9 22:36 編輯 / C7 C3 {' f& v$ t  ]& S7 c+ \

" h: D. E$ w. J& n8 A% Y; G我的環境:$ O3 c7 W6 V8 R8 r! f4 |
CentOS 6.7    這是RedHat系列的發行版本,與Fedora同系。(發行版本的資料會記錄在 /etc/redhat-release)
  |9 c' h- S3 _0 \9 j+ b+ r: F  y1.用yum安裝fail2ban" R5 r( c, j6 B$ ]
yum -y install fail2ban   (yum安裝的歷程會記錄在 /var/log/yum 中。如有需要確認已安裝的套件,可以回頭查詢這個記錄檔。)5 T5 C8 [: D% `" F2 v

" w  V1 M6 E' s9 r( o4 v/ z如果上述步驟不能安裝fail2ban,那麼yum會顯示找不到該套件的時候,你需要進入這個步驟。
* t6 E) P# X; h! k! S4 L
+ A  H$ H& k, x: B8 Dyum會掃描套件庫來決定要如何安裝套件。然而由於fail2ban並不在預設的套件庫中,所以我們必須手動加入含有fail2ban的套件庫atrpms。. C7 r: s' v! n5 M5 I: ~5 n
2 S) Y1 G( P5 [
請編輯 /etc/yum.repos.d/CentOS-Base.repo :, ^  U5 ?0 b/ D  l6 _+ C; [3 b) |

4 C: d/ t  ]4 _* o3 Bvi /etc/yum.repos.d/CentOS-Base.repo
, E/ u# T4 l+ o& s% H在最後加入以下設定:. d8 K3 D' V2 @3 N  e

9 i8 S8 Z# _, {$ E5 d$ K0 O[atrpms]' h4 ?9 g$ p7 G. j8 z
name=Red Hat Enterprise Linux $releasever - $basearch - ATrpms/ K: g7 Y4 f" o/ W
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable4 i1 l8 s) F0 w5 t- L
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms3 j* M; `1 M! _1 j8 W! t: J3 e3 Z) M
gpgcheck=1
0 F- E* f+ k; V; K" E) penabled=1
, @) c: ^8 `5 @( O- e( _. g! L& R9 l0 y, q+ {! G3 [. p; \% y
2. 設定fail2ban
- ^0 b3 o4 X9 r% O0 V2 @主要有兩個設定檔:/etc/fail2ban/fail2ban.conf 跟 /etc/fail2ban/jail.conf
/ v) H$ s! o% X5 Nvi /etc/fail2ban/fail2ban.conf( y$ Z* H  j0 _+ M% p
修改 logtarget 的參數:* V' g# s3 a' H) {, C. H
  1. #預設的參數. ]9 @0 u) D) T6 \0 d
  2. #logtarget = SYSLOG
    " k: [# j# E5 c
  3. #調整後的參數9 ~; I. J4 }' Z
  4. logtarget = /var/log/fail2ban.log
複製代碼
vi /etc/fail2ban/jail.conf (fail2ban主要的設定檔)6 e: D& G5 N6 E+ \
  1. #預設的參數
    , M/ H% ]  s( |/ |, h& I: t: x
  2. #backend = auto
    ) f7 F0 K9 v" a/ Y1 u5 G: X4 ?
  3. #調整後的參數
    * x; U$ `, ^, f# l* r
  4. backend = gamin
複製代碼
gamin是Linux的套件之一。如果缺少你可以用yum來安裝它4 P2 N* |* s6 q# h0 _" ]& C
  1. [ssh-iptables]& ?" \' Z/ D3 d3 C! g* h
  2. #是否啟用
    8 x& {8 R: f( o3 N1 g
  3. enabled  = true( z- I( V. M7 w
  4. #過濾名稱,使用預設的即可
    $ a) i$ f$ h& G5 l- S. W
  5. filter   = sshd
    0 D* a9 W1 g, k+ y( q
  6. #iptables設定
    ! i  p3 \5 t& [" q
  7. action   = iptables[name=SSH, port=22022, protocol=tcp]5 b  Z! ]" F. o6 R
  8.            #發生阻擋時的寄信設定
    - g6 _9 y: H9 [% y8 U3 m6 G' I
  9.            sendmail-whois[name=SSH, dest=xxxx@gmail.com, sender=root@xxxx.com]
    - q" v2 d: b& @4 M$ \5 \

  10. ) Y) e6 y/ Y  P. O8 y3 y9 j$ P  ^: C
  11. #需要掃描的記錄檔
    5 ]7 S& _3 @, d6 m9 @
  12. logpath  = /var/log/secure
    % w1 T; k( R/ p$ f0 P# B7 {
  13. #最高嘗試錯誤次數7 I/ j! E, z0 A) B* ?1 O
  14. maxretry = 28 d1 I5 \9 _# L* P3 |1 P
  15. #阻擋的時間,-1表示永久阻擋
    ( q8 ~- P" R- B6 W
  16. bantime  = -1
複製代碼
讓fail2ban重新啟動時不會重設阻擋IP規則
/ `3 `5 a$ v+ G在預設的設定中,fail2ban每次重新啟動時都會遺忘被阻擋的IP設定。舉例來說,如果我的電腦因為登入失敗被fail2ban擋掉,那麼只要fail2ban重新啟動,那麼我的電腦又可以繼續嘗試登入server。5 G+ l" c! s* h% q7 N
如果要讓fail2ban重新啟動時,不會重設阻擋的IP規則,則修改 /etc/init.d/fail2ban 的內容。/ n" M' r$ q& L; F9 j7 L
vi /etc/init.d/fail2ban
! s% @. \+ c1 W0 Z: n6 L) q/ Q找到start()的區塊,加入以下有#註解的設定:
1 @, I' E8 i& |1 A
  1. start() {
    1 D5 `+ C2 X  U5 {
  2.     echo -n [        DISCUZ_CODE_3        ]quot;Starting fail2ban: "
    3 U  J6 u) F( p
  3.     getpid
    " t( E2 {0 C1 I1 P/ K
  4.     if [ -z "$pid" ]; then$ a# [& ^9 X0 c1 s+ }& G. M# Q( ~. l
  5.         rm -rf /var/run/fail2ban/fail2ban.sock # unclean in case of restart fal2ban, ]5 q$ |8 o7 y% p& P
  6.         $FAIL2BAN -x start > /dev/null
    4 ~, X) J0 s* H3 Z* K
  7.         RETVAL=$?
    ; }# D8 D0 r5 a& o
  8.     fi
    3 b' F" R) j( D" `$ A, E
  9.     if [ $RETVAL -eq 0 ]; then
    ( B$ @- P: m" U8 ~7 W/ r
  10.         touch /var/lock/subsys/fail2ban$ }! l0 O. c+ R
  11.         echo_success
    . k6 w& K6 c: |7 m6 r3 B( d9 |
  12.         /sbin/service iptables restart # reloads previously banned ip's. H( x* V2 W' w# @2 x) v
  13.     else
    / s0 ^" l: `  @# T9 a+ H8 z* u
  14.         echo_failure
    ! i3 t4 D+ g8 x3 q- P9 \1 n+ f
  15.     fi
    2 ~$ Q7 B& o" ^* L+ C- B$ @

  16. - Q4 Y4 g" ^6 D# ~! a5 w1 j: g/ g
  17.     echo
    : @+ t! M2 V$ S& @3 B
  18.     return $RETVAL
    4 S- h7 I  O! o8 x9 d! b; G0 V
  19. }
複製代碼
再找到stop()區塊,加入以下
有#註解的設定:1 q7 c8 O% `4 |7 i: d; m* a
  1. stop() {
      i/ U5 o* t2 s0 u
  2.     echo -n [        DISCUZ_CODE_4        ]quot;Stopping fail2ban: "1 }7 I; |( u7 m* t! W
  3.     getpid
    ) K. p. _. c" k2 w0 c8 J
  4.     RETVAL=$?
    ; p1 v- m7 {- B' @2 d5 k
  5.     if [ -n "$pid" ]; then
    * ~; ]5 G' z* o
  6.        /sbin/service iptables save # saves banned ip's
    , Y- n; c4 Y1 K; f) I6 A  f0 h
  7.         $FAIL2BAN stop > /dev/null
    / ~  m4 }! g1 }" a
  8.     sleep 1* [& |5 R( F; z4 k& h; N/ Y
  9.     getpid9 F$ x/ k" c( K! b) X* U  k% m
  10.     if [ -z "$pid" ]; then
    # y3 _3 U1 ^: H- v& k- F4 @" z
  11.         rm -f /var/lock/subsys/fail2ban/ Z% F/ b; a# E: K7 _. J: e
  12.         echo_success
    : ^, i. d6 u: E( u& U5 E! s
  13.     else3 _+ k) d9 r2 {5 p8 r
  14.         echo_failure
    0 ]( @" `4 l0 \% N7 y9 c
  15.     fi! w. C% [- Z! a2 Y/ {4 d3 q
  16.     else
    ( s) F2 g# ~4 p* x$ M4 F$ W
  17.         echo_failure3 A: ~- \5 Z2 y  I3 K
  18.     fi
    : B" j1 J, g/ E$ c9 Q/ k
  19.     echo  ]3 e; A/ c* z
  20.     return $RETVAL
複製代碼
3. 設定fail2ban開機順序  s7 Q0 F; P5 V1 M' c( o  r; g; W

/ q, H" z5 _$ fchkconfig --add fail2ban% H' C1 O8 T3 a: A9 b% D0 L, t

2 \/ W4 E$ R6 k0 V( ~
# v( h' n/ g8 A% G
p.s
) Y7 P7 o  r) G, |* K8 F9 P以上參考 :
7 H3 Z3 Z& Q( l9 k7 \% p6 E8 B2 E) Rhttp://blog.pulipuli.info/2011/07/centosfail2ban.html  * v# @8 t; v1 q7 @) J5 Y- j
http://www.vixual.net/blog/archives/252
. t" X& S( |" f. [% ]2 w
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則



中文酷站排行榜

本區塊內容依據『電腦網路內容分級處理辦法』為限制級網站,限定年滿18歲以上或達當地國家法定年齡人士方可進入,且願接受本站各項條款,未滿18歲 謝絕進入瀏覽。為防範未滿18歲之未成年網友瀏覽網路上限制級內容的圖文資訊,建議您可進行網路內容分級組織ICRA分級服務的安裝與設定。 (為還給愛護 本站的網友一個純淨的論壇環境,本站設有管理員)

QQ|小黑屋|手機板| 52AV手機A片王

GMT+8, 2026-3-24 05:43 , Processed in 0.076139 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回復 返回頂部 返回列表