in header_common.htm --> -->

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

 找回密碼
 立即註冊
快捷導航

     
查看: 3336|回復: 0
打印 上一主題 下一主題

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

[複製鏈接]
跳轉到指定樓層
樓主
發表於 2016-4-9 12:53:54 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

本帖最後由 IT_man 於 2016-4-9 22:36 編輯 $ b" c+ T) w% z/ o: h
" B! P/ j6 d, S- V  G. u- F+ L
我的環境:1 h3 @  f6 l9 N* H2 F7 {
CentOS 6.7    這是RedHat系列的發行版本,與Fedora同系。(發行版本的資料會記錄在 /etc/redhat-release)
/ R4 I+ @4 U% k1.用yum安裝fail2ban( ]/ Q& d- s6 f
yum -y install fail2ban   (yum安裝的歷程會記錄在 /var/log/yum 中。如有需要確認已安裝的套件,可以回頭查詢這個記錄檔。)! N# U' d: Q$ n: s3 d

* w) i' {5 x/ Z# E- g如果上述步驟不能安裝fail2ban,那麼yum會顯示找不到該套件的時候,你需要進入這個步驟。
, ~0 E3 r: x9 l2 E
8 c7 s, K; v+ L: a1 j5 Cyum會掃描套件庫來決定要如何安裝套件。然而由於fail2ban並不在預設的套件庫中,所以我們必須手動加入含有fail2ban的套件庫atrpms。
0 f( S- T8 ^: N3 {; J
! L8 D! V8 h8 V1 M, P& ]# c請編輯 /etc/yum.repos.d/CentOS-Base.repo :5 i& R) x. X, B- s- i: T5 h; j
9 e1 I5 h: i3 K/ U3 A
vi /etc/yum.repos.d/CentOS-Base.repo* `: S% ]- V  _1 I/ m* w
在最後加入以下設定:- r/ h7 P& U" y5 G) a
* X: B2 \2 H8 K9 h) _# Q
[atrpms]( y4 w/ C& U4 O% S
name=Red Hat Enterprise Linux $releasever - $basearch - ATrpms5 s2 r# m/ X" U0 H2 q' @
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable. W3 A% k* L, f8 G% i2 E  Z
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
- R5 H7 t% W7 S: L/ C3 C3 P/ Ugpgcheck=1
& [- j+ Y( }9 O! b$ `" [. Genabled=1& T- C) {  g1 j) K3 m
( _4 e+ S& F$ q8 A2 G$ L
2. 設定fail2ban
% [# k5 y) S; }6 o+ @主要有兩個設定檔:/etc/fail2ban/fail2ban.conf 跟 /etc/fail2ban/jail.conf# @9 U1 E! w5 j. y
vi /etc/fail2ban/fail2ban.conf
2 |& f( H6 M  Z3 @# u/ v修改 logtarget 的參數:
$ {! M1 s; D% b; [& L# `: v2 L/ C
  1. #預設的參數: Y" }& n$ m. R  F' V8 Q3 H3 `
  2. #logtarget = SYSLOG
    & U* M7 x/ V3 p: F4 \7 o# c
  3. #調整後的參數. I; p' ^6 h: G. A2 i. g9 ?
  4. logtarget = /var/log/fail2ban.log
複製代碼
vi /etc/fail2ban/jail.conf (fail2ban主要的設定檔)- y+ g, h$ _9 d, q0 L6 \9 D
  1. #預設的參數
    + n8 K; }  [2 b; I* d! ^! w+ O
  2. #backend = auto
    . K/ L' ]3 c7 ^2 I' B
  3. #調整後的參數
    0 |3 T& K4 Y9 E$ U
  4. backend = gamin
複製代碼
gamin是Linux的套件之一。如果缺少你可以用yum來安裝它
4 r! G: J) [9 Q2 Y) [3 d
  1. [ssh-iptables]
    % Z' Z  E, ?% ~
  2. #是否啟用
    7 R$ C' t, G$ ~7 Y( c
  3. enabled  = true) C& c0 J: E$ {8 O& g. ^
  4. #過濾名稱,使用預設的即可; k& }5 @. m1 S( U. y
  5. filter   = sshd
    5 e  [0 Y" P) @  _
  6. #iptables設定9 x" `/ p) [5 f  H! z! p( q
  7. action   = iptables[name=SSH, port=22022, protocol=tcp]* }" w+ P' t! A% ]
  8.            #發生阻擋時的寄信設定
    " J5 e8 b4 c5 v" i7 Q# ?: z
  9.            sendmail-whois[name=SSH, [email protected], [email protected]]
    # _3 P4 }/ k8 Q

  10. 4 c# S; P# {* g! ~
  11. #需要掃描的記錄檔& r1 Q* l! ^4 s- q  J9 J
  12. logpath  = /var/log/secure
    " o# u$ _9 q, l4 h1 t. D
  13. #最高嘗試錯誤次數2 F# d0 {* u3 [" U
  14. maxretry = 2
    9 c- N! Z: h* p' Q
  15. #阻擋的時間,-1表示永久阻擋- q7 q4 N- Z- B; |/ [  T
  16. bantime  = -1
複製代碼
讓fail2ban重新啟動時不會重設阻擋IP規則: h# s" c1 I' h+ l1 N
在預設的設定中,fail2ban每次重新啟動時都會遺忘被阻擋的IP設定。舉例來說,如果我的電腦因為登入失敗被fail2ban擋掉,那麼只要fail2ban重新啟動,那麼我的電腦又可以繼續嘗試登入server。) F) @5 a  P9 [
如果要讓fail2ban重新啟動時,不會重設阻擋的IP規則,則修改 /etc/init.d/fail2ban 的內容。
% i$ }# J. R7 `5 C: p$ Z# c. A vi /etc/init.d/fail2ban4 n4 o  A: x2 c' l# v% t
找到start()的區塊,加入以下有#註解的設定:
& b% g; E& v6 l6 V$ b
  1. start() {& H. P5 F( m. ]3 z8 j9 k$ y
  2.     echo -n [        DISCUZ_CODE_3        ]quot;Starting fail2ban: "
    ! H2 n- G$ @6 m! R" Q0 y# M
  3.     getpid8 ^& ~" m! b) D( V
  4.     if [ -z "$pid" ]; then
    0 |- U# f% _4 [7 r
  5.         rm -rf /var/run/fail2ban/fail2ban.sock # unclean in case of restart fal2ban5 b3 x- }) ]" u. y9 j) O- o
  6.         $FAIL2BAN -x start > /dev/null
    + Z/ Z  i! j/ O) A( R, a
  7.         RETVAL=$?
    " \' h# s' [7 o9 R' G- s2 z
  8.     fi( J: o$ A; m7 F8 G5 f: i% m
  9.     if [ $RETVAL -eq 0 ]; then% |7 o# s0 T) p+ g4 F) C) l
  10.         touch /var/lock/subsys/fail2ban
    ; l5 L# M8 J) l
  11.         echo_success
    " a% ~* p* \& a! O
  12.         /sbin/service iptables restart # reloads previously banned ip's
    ; D8 c7 R9 q* p- \( [6 g
  13.     else
    9 a$ m1 P/ N+ ?9 v: ^
  14.         echo_failure3 @0 l0 Y  c! K+ P) M6 t
  15.     fi( ]( p" p' d0 \: d2 U; O: }

  16. ; @+ b/ P# D+ r7 e
  17.     echo
    : G# W! Y/ I# C. W( W7 [
  18.     return $RETVAL
    ! s) K: }" K; z- h1 h9 W) _
  19. }
複製代碼
再找到stop()區塊,加入以下
有#註解的設定:
. f/ d3 `# D2 |: a% g
  1. stop() {7 T) V. ^+ c" V2 H  B! t+ x# ^! G
  2.     echo -n [        DISCUZ_CODE_4        ]quot;Stopping fail2ban: "7 Q# {6 d% R3 _/ I- L
  3.     getpid
    ; u# k% f& a; @( T
  4.     RETVAL=$?
    0 k; l; j1 _; _0 t2 [; O
  5.     if [ -n "$pid" ]; then
    7 @; ~8 V0 K, O9 a  X6 F
  6.        /sbin/service iptables save # saves banned ip's. h6 w' y/ o6 O
  7.         $FAIL2BAN stop > /dev/null& k7 z/ L3 C. A, N) t
  8.     sleep 1  K) r, m2 e5 k' T. S" K! d: I
  9.     getpid
    / o, [5 G0 U' e* S2 |
  10.     if [ -z "$pid" ]; then
    6 p: |0 p3 D2 H) E8 H1 ^8 R
  11.         rm -f /var/lock/subsys/fail2ban! ~7 @; |) ^2 X. N
  12.         echo_success# o! Q1 i3 L% h9 k* P  n! e; |
  13.     else4 o( e! g7 o& ~2 u
  14.         echo_failure
      C+ t7 e- Z' O1 o, O
  15.     fi
    ) D& b  A2 N% p+ y, I0 c0 p
  16.     else
    ; R0 c5 E) J, V# m4 l" t% W& @
  17.         echo_failure' A  h  y' _5 s- p: N: o7 U
  18.     fi0 Z- \% f; E4 Y4 r6 q2 j0 o
  19.     echo
    1 |+ _) `% e- @0 s6 L( A
  20.     return $RETVAL
複製代碼
3. 設定fail2ban開機順序
5 Y) {3 Q# |" \  R; ?
. }$ E0 X9 y7 ^1 ~. w+ g0 b$ _chkconfig --add fail2ban7 l6 l9 ?& |+ a  K7 G7 E

. Y! d0 m& N3 A0 _

' B; t4 ]2 @$ p. h0 n% z- N5 Jp.s
+ l1 Q. k7 D3 y% L- O以上參考 :' I" Y9 M* u7 i) o! N) e6 ]
http://blog.pulipuli.info/2011/07/centosfail2ban.html  5 U6 [/ ~0 @% y: i$ ^2 h" X* x
http://www.vixual.net/blog/archives/252; X6 g! _! \: i7 U, k1 ^# Y6 n
-->
您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則


-->

聚BT福利

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

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

GMT+8, 2024-12-29 16:30 , Processed in 0.073430 second(s), 16 queries .

連絡站長.廣告招商

[email protected] | QQ:2405733034     since 2015-01

裸聊妹 快速回復 返回頂部 返回列表