มาติดตั้ง Linux Server ปลอดภัยกัน
วิธีการทำให้ Linux Server ปลอดภัยนั้นมีหลายอย่างที่ต้องคำนึงถึง จะต้องวางแผนก่อนว่าเครื่อง Server นี้ให้บริการ Service อะไร ซอฟต์แวร์ที่ต้องใช้มีอะไนบ้าง ใครเป็นผู้ใช้บ้าง เข้าถึงเครื่อง Server ได้ทางไหนบ้าง เป็นต้น ดังนั้นการ Hardening จะเริ่มตั้งแต่ตอนติดตั้ง Linux กันเลย สิ่งที่ผมทำเป็นประจำคือ
- แบ่ง partition แยกตามความต้องการของการใช้ service นั้นๆ
- สั่ง encrypt partition ที่ต้องการ
- ติดตั้ง service ที่ต้องใช้เท่านั้น และใช้ ssh สำหรับ remote เท่านั้น
- ตั้งรหัสผ่านสำหรับผู้ใช้ให้ยากเข้าไว้ ตัวเล็ก ตัวใหญ่ ตัวเลข สัญลักษณ์ ความยาวมากกว่า 8 ตัวอักษร
- ตั้งค่าเวลากับ ntp server
- ตั้งรหัสผ่านให้ GRUB ปิดช่อง bypass ผ่าน bootloader
- ตั้งค่า sshd ไม่ให้ใช้ root ในการ remote login บังคับใช้ ssh-key ในการ login เท่านั้น
- กำหนด IP filter ให้ remote login ได้บาง ip address เท่านั้น
- ตั้ง policy ของ fail2ban ส่วน ssh ป้องกันการ remote login เช่น login ผิด 3 ครั้งให้ band ip address นั้นเป็นต้น
หลังจากติดตั้งระบบปฏิบัติการเสร็จ คุณจะสามารถ remote ผ่าน ssh ไปยังเครื่อง server ได้ ขั้นตอนถัดมาคือ อุดช่องทางที่จะ login ผ่านหน้าเครื่องและ remote ได้แก่