I untuk satu menggunakan "tarpit" selain hanya memungkinkan otentikasi kunci publik dan melarang login root.
Di netfilter
sana ada recent
modul, yang dapat Anda gunakan dengan ( INPUT
rantai):
iptables -A INPUT -i if0 -p tcp --dport 22 -m state --state NEW -m recent --set --name tarpit --rsource
iptables -A INPUT -i if0 -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 180 --hitcount 6 --name tarpit --rsource -j DROP
iptables -A INPUT -i if0 -p tcp --dport 22 -j ACCEPT
Apa yang dilakukan adalah, bahwa setiap upaya untuk terhubung ke port 22 terdaftar oleh recent
modul dengan IP dan beberapa hal lain dengan nama "tarpit" (jika Anda penasaran, lihat /proc/net/xt_recent/tarpit
). Jelas Anda bisa menggunakan nama lain.
Untuk membuat daftar atau menghapus daftar IP, gunakan:
echo "+123.123.123.123" > /proc/net/xt_recent/tarpit
echo "-123.123.123.123" > /proc/net/xt_recent/tarpit
Nilai ini membatasi upaya hingga 5 dalam 300 detik. Harap perhatikan bahwa pengguna dengan koneksi yang ada tidak terganggu oleh batas itu, karena mereka sudah memiliki koneksi yang sudah mapan dan diizinkan untuk membuat lebih banyak (bahkan di atas batas tarif).
Sesuaikan aturan sesuai keinginan Anda, tetapi pastikan bahwa aturan itu ditambahkan dalam urutan itu (yaitu saat menambahkan lalu menggunakannya dalam urutan ini, saat memasukkan lalu dalam urutan terbalik).
Ini sangat mengurangi kebisingan. Ini juga menyediakan keamanan aktual (melawan kekerasan) tidak seperti keamanan yang dirasakan untuk mengubah port. Namun, saya masih merekomendasikan untuk mengganti port jika memungkinkan di lingkungan Anda. Ini akan mengurangi tingkat kebisingan juga ...
Anda masih dapat menggabungkan ini dengan fail2ban, meskipun saya sudah berjalan dengan baik tanpa itu dan hanya aturan di atas.
SUNTING:
Dimungkinkan untuk mengunci diri Anda keluar dari melakukan ini, sehingga Anda dapat menambahkan sesuatu seperti berikut ini yang memungkinkan Anda menghapus Anda melarang dengan mengetuk port tertentu:
iptables -A INPUT -i if0 -p tcp --dport <knockport> -m state --state NEW -m recent --name tarpit --remove