Saya ingin memilih otak komunitas mengenai keamanan server linux, khususnya tentang serangan brute-force dan menggunakan fail2ban vs custom iptables .
Ada beberapa pertanyaan serupa di luar sana tetapi tidak satupun dari mereka membahas topik untuk kepuasan saya. Singkatnya saya mencoba menentukan solusi terbaik untuk mengamankan server linux yang terpapar ke internet (menjalankan layanan biasa, ssh, web, mail), dari serangan brute-force.
Saya memiliki pegangan yang baik pada keamanan server, yaitu mengunci ssh dengan tidak mengizinkan login root atau kata sandi, mengubah port default, memastikan perangkat lunak mutakhir, memeriksa file log, hanya mengizinkan host tertentu untuk mengakses server dan memanfaatkan keamanan alat audit seperti Lynis ( https://cisofy.com/lynis/ ), untuk kepatuhan keamanan umum, jadi pertanyaan ini tidak selalu mengenai itu meskipun masukan dan saran selalu diterima .
Pertanyaan saya adalah solusi mana yang harus saya gunakan (fail2ban atau iptables), dan bagaimana saya harus mengkonfigurasinya, atau haruskah saya menggunakan kombinasi keduanya untuk mengamankan terhadap serangan brute-force?
Ada tanggapan yang menarik mengenai topik tersebut ( Denyhosts vs fail2ban vs iptables- cara terbaik untuk mencegah masuknya brute force? ). Jawaban yang paling menarik bagi saya secara pribadi adalah ( https://serverfault.com/a/128964 ), dan bahwa routing iptables terjadi di kernel sebagai lawan fail2ban yang menggunakan alat mode pengguna untuk mengurai file log. Fail2ban menggunakan iptables tentu saja, tetapi masih harus mengurai file log dan mencocokkan pola hingga melakukan tindakan.
Maka masuk akal untuk menggunakan iptables dan menggunakan pembatasan-tingkat ( https://www.rackaid.com/blog/how-to-block-ssh-brute-force-attacks/ ) untuk membatalkan permintaan dari IP untuk suatu periode waktu yang membuat terlalu banyak upaya koneksi selama periode tertentu terlepas dari protokol apa yang berusaha disambungkan? Jika demikian, maka ada beberapa pemikiran menarik tentang penggunaan drop vs reject untuk paket-paket tersebut di sini ( http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject ), ada pemikiran tentang itu?
Fail2ban memungkinkan untuk konfigurasi khusus dalam bentuk dapat menulis ' aturan ' khusus untuk layanan yang mungkin tidak dibahas dalam konfigurasi default. Mudah untuk menginstal dan mengatur dan kuat, tetapi mungkinkah ini merupakan kerja keras jika semua yang saya coba capai adalah ' memblokir ' IP dari server jika mereka melakukan 2 upaya akses yang gagal pada layanan / protokol apa pun dengan jumlah x waktu?
Tujuannya di sini adalah untuk membuka laporan logwatch harian dan tidak perlu menelusuri halaman-halaman upaya koneksi gagal ke server.
Terima kasih telah meluangkan waktu.