Fail2Ban พยายามแบน IP อย่างถูกต้อง แต่ IP ไม่ถูกแบน - มีโซ่ iptables อยู่ แต่ไม่ทำงาน


12

ทำงานบนเซิร์ฟเวอร์ Ubuntu 14.04

ดังนั้นฉันมี fail2ban อย่างถูกต้องกำหนดให้ดำเนินการ/var/log/auth.logสำหรับการพยายามเข้าสู่ระบบ SSH

เมื่อ 3 ครั้งที่ล้มเหลวฉันเห็นสิ่งนี้ในบันทึก fail2ban:

2014-11-19 15:22:56,822 fail2ban.actions: WARNING [ssh] Ban BANNED_IP_ADDY

iptables -L แสดงห่วงโซ่นี้:

Chain fail2ban-ssh (1 references)
target     prot opt source               destination         
REJECT     all  --  BANNED_IP_ADDY  anywhere             reject-with icmp-port-unreachable
RETURN     all  --  anywhere             anywhere

จาก IP นั้นฉันยังสามารถเข้าสู่ระบบผ่าน SSH ได้โดยไม่มีปัญหาใด ๆ

เรื่องเดียวกันใช้กับคุก j2 ล้มเหลวทั้งหมดของฉัน Apache ตัวอย่างเช่นฉันสามารถดู fail2ban ตรวจสอบบันทึกและเรียกมันว่าเรย์แบน IP IP สิ้นสุดในห่วงโซ่ iptables แต่ IP ไม่ได้ถูกปฏิเสธจริง ๆ

ฉันมีความรู้สึกในกรณีเหล่านี้เนื่องจาก SSH ไม่ได้อยู่ในพอร์ตมาตรฐาน มันอยู่บนพอร์ตอื่น

ดังนั้นถ้าฉันบังคับใช้กฎ ssh เพื่อใช้พอร์ตใหม่:

[ssh]

enabled  = true
port     = 32323
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 5

จากนั้นฉันเห็นข้อผิดพลาดนี้:

2014-11-19 15:30:06,775 fail2ban.actions.action: ERROR  iptables -D INPUT -p tcp -m multiport --dports 32323 -j fail2ban-ssh
iptables -F fail2ban-ssh
iptables -X fail2ban-ssh returned 400
2014-11-19 15:30:06,778 fail2ban.actions.action: ERROR  iptables -N fail2ban-ssh
iptables -A fail2ban-ssh -j RETURN
iptables -I INPUT -p tcp -m multiport --dports 32323 -j fail2ban-ssh returned 400
2014-11-19 15:30:06,779 fail2ban.actions.action: ERROR  iptables -n -L INPUT | grep -q 'fail2ban-ssh[ \t]' returned 100
2014-11-19 15:30:06,780 fail2ban.actions.action: CRITICAL Unable to restore environment

ถ้าฉันปล่อยให้มันเป็น

 port = ssh

จากนั้นมันจะเข้าสู่ iptables อย่างถูกต้อง แต่เชนไม่สามารถทำงานได้กับREJECTการรับส่งข้อมูล

UPDATE:

ถ้าฉันเปลี่ยน:

banaction = iptables-multiport

ถึง:

banaction = iptables-allports

จากนั้นดูเหมือนว่าจะทำงาน ผลกระทบของการเปลี่ยนแปลงนี้คืออะไร?

ดูเหมือนว่าสาเหตุที่fail2banจะห้าม IP เนื่องจาก SSH ด้วยสิ่งนี้allportsมันห้ามทุกพอร์ตสำหรับ IP นั้น ถูกแบนอย่างเด็ดเดี่ยวเนื่องจากการเข้าสู่ระบบ ssh ซ้ำล้มเหลว ยังถูกแบนในบริการอื่น ๆ ทุกครั้ง


ฉันไม่เคยพบปัญหากับ fail2ban หากคุณต้องการที่จะกลับไปปิดกั้นพอร์ตเดียวที่คุณอาจจะให้การแก้ปัญหานี้ลอง: oschgan.com/drupal/index.php?q=node/52 fail2ban สามารถใช้กลไกอื่นเช่นเส้นทาง hosts.deny หรือ null หาก iptables ก่อให้เกิดความเศร้าโศก
digitaladdictions

ตรวจสอบ/etc/fail2ban/actions.dว่ามีไฟล์ที่สอดคล้องกับการกระทำที่ห้ามแต่ละอย่าง ข้างในคุณจะเห็นคำสั่งที่ใช้ในการแบน, ห้ามแบน, เริ่มและหยุด fail2ban คุณสามารถลองใช้คำสั่ง actionban ด้วยตนเองและดูว่าเกิดอะไรขึ้น I
Michael

1
มีอะไรอีกบ้างใน iptables ของคุณ? โปรดระบุผลลัพธ์เต็มของiptables -L -n -v(การทำซ้ำ IP แอดเดรสหากจำเป็น) โดยเฉพาะอย่างยิ่งให้สังเกต-vซึ่งจะให้ไบต์และแพ็คเก็ตเคาน์เตอร์สำหรับแต่ละห่วงโซ่และกฎทำให้สบายการแก้จุดบกพร่อง
jplitza

ฉันมีปัญหาเดียวกันแน่นอน Fail2Ban แบน IP ฉันสามารถดูที่อยู่ในเครือข่าย fail2ban ฉันได้รับอีเมลที่ถูกแบน แต่ที่อยู่ IP ยังคงสามารถเข้าถึงได้ การเปลี่ยน banaction เป็น allport นั้นใช้งานได้ แต่ไม่รู้ว่าทำไม!
Ergec

คำตอบ:


2

เชน fail2ban ไม่ได้เชื่อมโยงกับ INPUT และ OUTPUT ของคุณอย่างถูกต้อง โปรดแก้ไขคำถามของคุณและให้ผลลัพธ์จาก:

iptables -n -L INPUT
iptables -n -L OUTPUT

และ fail2ban ทั้งหมดก็เช่นกันและฉันจะสามารถแม่นยำมากขึ้น


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.