"คำถามคือ: ฉันจะแสดงรายการที่อยู่ IP ที่ถูกบล็อกได้อย่างไร"
สร้างเชน BANNED:
iptables -N BANNED
iptables -F BANNED
สร้างห่วงโซ่การบันทึก:
iptables -N BANNEDLOG
iptables -F BANNEDLOG
iptables -A BANNEDLOG -j LOG --log-prefix "BANNED:" --log-level 6
iptables -A BANNEDLOG -j DROP
เพิ่มข้ามไปยังแบนที่ถูกห้ามในห่วงโซ่การป้อนข้อมูลก่อนกฎอื่น ๆ ส่วนใหญ่
...
iptables -A INPUT -j BANNED
...
ตอนนี้เพิ่ม ipaddresses ไปยังเชนที่ถูกแบน:
flock -w 5 /var/lock/iptables -c 'iptables -A BANNED -s 140.130.20.202/32 -i eth0 -m comment --comment "2012-03-19 23:49:33 accesslog" -j BANNEDLOG'
etc...
คุณยังสามารถใช้มันเหมือนฐานข้อมูลที่มีตัวเลือกความคิดเห็นดังนั้นคุณสามารถรู้ได้ว่าเมื่อใดและเพราะเหตุใดฝูงแกะจึงมีความสำคัญเมื่อ iptables กำลังได้รับการอัปเดตบ่อยครั้งในหลาย ๆ กระบวนการ - ปรากฏว่า iptables ไม่มีการล็อคใด ๆ
วิธีดูที่อยู่และกฎที่ถูกแบนในเชนที่ถูกแบน:
iptables -S BANNED
วิธีดูเฉพาะไอแพดที่ไม่ซ้ำกัน:
iptables -S BANNED | egrep -o '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' | sort -u
ฉันมี daemons จำนวนหนึ่งที่ทำงานบนเซิร์ฟเวอร์ของฉันเพื่อตรวจสอบไฟล์ syslog และเว็บบล็อกดังนั้นหากมีสิ่งใดที่น่ารังเกียจที่ใครบางคนกำลังพยายามที่อยู่อีเมลของพวกเขาจะถูกแบนโดยอัตโนมัติเป็นเวลาสองสามวันขึ้นอยู่กับประเภทและความรุนแรง ข้อมูลถูกบันทึกลงในฐานข้อมูล mysql และหมดอายุเป็นระยะ ที่อยู่จะถูกแจกจ่ายไปยังเครื่องอื่น ๆ ทุกเครื่องในคลัสเตอร์ผ่านการจำลองแบบ mysql ดังนั้นจึงได้รับการปกป้องและซิงค์อยู่เสมอ ซอฟต์แวร์ของฉันยังค้นหาเจ้าของเครือข่ายและส่งคำร้องเรียนไปยัง ISP
หลังจาก 10 ปีของการทำงานฉันหวังว่าจะทำให้ทุกคนสามารถใช้งานได้ในไม่ช้า ขณะนี้ฉันมีประวัติที่อยู่ IP ประมาณ 1.5 ล้านคนและมีรายงานการโจมตีเมลและ ssh หลายแสนรายการช่วยล้างเครือข่าย ถ้าใช้มากกว่านี้ฉันก็หวังว่ามันจะมีผลกระทบมากกว่านี้
iptables -L INPUT -v -n
แสดง IP ที่ถูกบล็อกทั้งหมด