เทคนิคการติดตั้ง shorewall และ fail2ban ด้วย shell script

จาก Wiki Opensource

บันทึกนี้ปรับปรุงล่าสุดเมื่อวันที่ 23-12-2557
ดูแลโดย WIBOON

  • นำไปใช้กับ ubuntu 16.04 ไม่ได้ เนื่องจากไฟล์คอนฟิกของ shorewall และ fail2ban มีการเปลี่ยนแปลง

หากจะใช้ต้องแก้ไขดังนี้
shorewall ให้เพิ่มคำสั่ง sudo systemctl enable shorewall.service แล้ว reboot server
fail2ban ให้เพิ่มคำสั่ง sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local แล้วเปิดใช้ [sshd] ดังนี้
แก้ไขโดยไปที่ประมาณบรรทัดที่ 217 ใต้หัวข้อ [sshd] ให้เพิ่ม
enabled = true
bantime = 3600
ก่อน
port = ssh
logpath = %(sshd_log)s

  • ทดสอบกับ linux ubuntu server 12.04, 12.04.2, 14.04
  • เป็นวิธีการติดตั้ง shorewall และ fail2ban ด้วย shell script
  • shorewall คือ โปรแกรมที่ช่วยในการเขียนคำสั่ง iptables เพื่อทำหน้าที่ firewall ได้ทั้งแบบ host firewall และ network firewall
  • shell script นี้จะใช้ network interface คือ eth0 (หากไม่ใช่ ให้แก้ไขที่ไฟล์ /etc/shorewall/interfaces)
  • shell script นี้จะใช้ shorewall configuration แบบ one interface เพื่อทำเป็น host firewall เท่านั้น
  • fail2ban คือ โปรแกรมที่คอยตรวจสอบการบุกรุก port ต่างๆของ server
  • fail2ban มีค่า default คือป้องกัน TCP port 22 (SSH) เรื่องการเดารหัสผ่านและทำการ Ban และ Unban ในระยะเวลาที่กำหนด (default คือ 6 นาที) พร้อมใช้งาน


การใช้งาน

  1. พิมพ์คำสั่งเพื่อดาวน์โหลด shell script ไปใช้ ดังนี้
    wget -N -P /tmp http://ftp.psu.ac.th/pub/psu-netdrive/source/install-shorewall-fail2ban.sh
  2. รันคำสั่งดังนี้
    sudo sh /tmp/install-shorewall-fail2ban.sh


ตัวอย่าง shell script ชื่อ install-shorewall-fail2ban.sh

  1. ดู shell script ได้ด้วยคำสั่ง
    cat /tmp/install-shorewall-fail2ban.sh