Fail2Ban แบน ip ผู้ที่พยายามสุ่มรหัส login

20 Jun 2016

Share to:

server ที่ online อยู่บน internet เพื่อเปิดเป็น web server หรือ อื่นๆ จําเป็นจะต้องเปิดใช้งาน SSH เพื่อ remote เข้าไปควบคุมเครื่อง server จากที่ใดก็ได้ผ่านทาง internet ซึ่งจะใช้ user และ password ในการ login เข้าใช้งาน

ปัญหาอยู่ตรงนี้ครับ เมื่อมัน online บน internet ใครๆ ก็สามารถเข้าถึง SSH ของ server เราได้ และแน่นอน ผู้ไม่หวังดีสามารถสุ่มรหัส login เข้า server ของเราไปเรื่อยๆจนเจอรหัสที่ถูกต้อง เรียกการโจมตีแบบนี้ว่า brute force จากรูปจะเห็นว่ามีการ login เข้าเครื่อง server ของเราเป็นจํานวนมาก

Image

เราสามารถเพิ่มความปลอดภัยให้กับ server ของเราได้ด้วย Fail2Ban

Fail2Ban คืออะไร

Fail2Ban เป็น service ตัวนึงที่คอยตรวจสอบการ login โดยถ้ามีการ login เข้ามาแล้วใส่ password ผิดเกินจํานวนครั้งที่กําหนด Fail2Ban จะทําการ แบน ip นั้นทันที เราสามารถ config ค่าต่างๆได้ เช่น ยอมให้ใส่ password ผิดได้กี่ครั้ง แบนกี่นาที ฯลฯ

วิธีติดตั้ง Fail2Ban

เริ่มติดตั้ง Fail2Ban ด้วยคําสั่ง

sudo apt-get update
sudo apt-get install fail2ban

หลังจาดติดตั้งเสร็จเรียบร้อย จะต้องไป config ค่าต่างๆก่อน โดยใช้คําสั่ง

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local

ภายใน file config ผมจะอธิบายในส่วนที่สําคัญๆ ดังนี้ ignoreip คือการบอกว่าไม่ต้องตรวจสอบ ip นี้ ให้ config ตามนี้ครับ

ignoreip = 127.0.0.1/8

bantime คือระยะเวลาในการแบนไอพี หน่วนเป็นวินาที ในตัวอย่างนี้ผม set เป็น 10 นาที

bantime = 600

maxretry คือ จํานวนครั้งที่ยอมให้ใส่ password ผิด

maxretry = 3

backend  ให้ config ตามนี้ได้เลย

backend = auto

save file config ให้เรียบร้อย Restart service 1 ครั้ง ด้วยคําสั่ง

sudo service fail2ban restart

เสร็จสิ้นการติดตั้ง ถ้าต้องการจะดูว่า ณ. เวลานี้มี ip ใดบ้างที่ ถูกแบน ให้ใช้คําสั่ง

sudo iptables -L

Suggestion blogs

Zero-Day คืออะไร

สวัสดีครับ ในบทความนี้เราจะมาทําความรู้จักกับคําว่า Zero-Day กันครับว่าคืออะไร มาเริ่มกันเลยครับ

Install FTP and Config to use SSL/TLS (SFTP) in ubuntu

ก่อนอื่นมาดูกันว่า FTP คืออะไร FTP ย่อมาจาก File Transfer Protocol ซึ่งเป็น Protocol ที่ใช้ รับ-ส่ง ไฟล์ระหว่าง server และ client ส่วน SFTP ก็เหมือนกับ FTP แต่จะเพิ่มกระบวนการ SSL/TLS เพื่อให้มีความปลอดภัยมากยิ่งขึ้น

Deno คืออะไร ว่ากันว่าจะมาแทน Node.js

สวัสดีครับ บทความนี้ผมจะมาเรียนรู้กันนะครับว่า Deno คืออะไร มีฟีเจอร์สำคัญอะไรบ้าง รวมไปถึงการใช้งานเบื้องต้นDeno เป็น JavaScript Runtime เหมือนกับ Node.js เลยครับ ผู้สร้าง Deno คือ Ryan Dahl ซึ่งเป็นคนเดียวกันกับผู้ที่เริ่มโครงการ Node.js ตั้งแต่ปี 2009 หลังจากนั้นเค้าก็ได้ออกจากโครงการ Node.js ไปเมื่อปี 2012 และกลับมาพัฒนาโครงการ Deno โดยใช้ภาษา Rust ในการพัฒนา และกล่าวด้วยว่า Deno นั้นสร้างขึ้นมาเพื่อลบข้อเสียของ Node.js ตอนนี้ Deno ก็ออกเวอร์ชั่น 1.0 พร้อมสําหรับการใช้งานจริงแล้ว


Copyright © 2019 - 2024 thiti.dev |  v1.41.0 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Youtube channel   Telegram   Email contact   วงแหวนเว็บ