Pendekatan saya terhadap pengerasan SSH adalah ... kompleks. Item-item berikut ini berkenaan dengan cara saya melakukannya, dari batas tepi jaringan saya ke server itu sendiri.
Penyaringan lalu lintas tingkat perbatasan melalui IDS / IPS dengan pemindai dan tanda tangan layanan yang dikenal di daftar blokir. Saya mencapai ini dengan Snort melalui firewall perbatasan saya (ini adalah pendekatan saya, alat pfSense). Kadang-kadang, saya tidak bisa melakukan ini, seperti dengan VPS saya.
Firewall / Penyaringan jaringan port SSH (s). Saya secara eksplisit hanya mengizinkan sistem tertentu untuk menjangkau ke server SSH saya. Ini dilakukan melalui firewall pfSense di perbatasan jaringan saya, atau firewall di setiap server yang secara eksplisit dikonfigurasikan. Ada kasus di mana saya tidak bisa melakukan ini, (yang hampir tidak pernah terjadi, kecuali di lingkungan pengujian pribadi atau laboratorium pengujian keamanan di mana firewall tidak akan membantu menguji hal-hal).
Dalam hubungannya dengan pfSense saya, atau firewall perbatasan NAT-ing jaringan internal dan memisahkan dari Internet dan sistem, VPN-Only Akses ke Server . Harus VPN ke jaringan saya untuk sampai ke server, karena tidak ada port yang menghadap Internet seperti itu. Ini jelas tidak bekerja untuk semua VPS saya, tetapi dalam hubungannya dengan # 2, saya dapat memiliki satu VPS menjadi 'gateway' dengan VPN ke server itu, dan kemudian mengizinkan IP itu ke kotak lain. Dengan begitu, saya tahu persis apa yang bisa atau tidak bisa SSH dalam - satu kotak saya yaitu VPN. (Atau, di jaringan rumah saya di belakang pfSense, koneksi VPN saya, dan saya satu-satunya yang memiliki akses VPN).
Di mana # 3 tidak bisa dilakukan, fail2ban, dikonfigurasi untuk memblokir setelah 4 upaya gagal dan memblokir IP selama satu jam atau lebih adalah perlindungan yang layak terhadap orang-orang yang terus-menerus menyerang dengan bruteforcing - cukup blokir mereka di firewall secara otomatis dengan fail2ban, dan meh. Mengkonfigurasi fail2ban adalah rasa sakit ...
Kebingungan port dengan mengubah port SSH. Namun, ini BUKAN ide yang baik untuk dilakukan tanpa langkah-langkah keamanan tambahan juga - mantra "Keamanan melalui Ketidakjelasan" telah ditolak dan diperdebatkan dalam banyak kasus. Saya telah melakukan ini bersama dengan IDS / IPS dan penyaringan jaringan, tetapi masih sangat SANGAT buruk untuk dilakukan sendiri.
WAJIB Otentikasi Dua Faktor, melalui solusi Otentikasi Dua Faktor Duo Security . Setiap server SSH saya memiliki Duo yang dikonfigurasikan, sehingga untuk dapat masuk, 2FA diminta terjadi, dan saya harus mengonfirmasi setiap akses. (Ini adalah fitur paling membantu - karena bahkan jika seseorang memiliki frasa sandi saya atau menerobos masuk, mereka tidak dapat melewati plugin Duo PAM). Ini adalah salah satu perlindungan terbesar pada server SSH saya dari akses tidak sah - setiap pengguna masuk HARUS mengikat kembali ke pengguna yang dikonfigurasikan di Duo, dan karena saya memiliki perangkat terbatas, tidak ada pengguna baru yang dapat terdaftar dalam sistem.
Dua sen saya untuk mengamankan SSH. Atau, setidaknya, pemikiran saya tentang pendekatan.