5 Amalan Terbaik Untuk Mencegah Serangan Log Masuk SSH Brute di Linux

5 Amalan Terbaik Untuk Mencegah Serangan Log Masuk SSH Brute di Linux

Pelayan berjalan SSH biasanya sasaran lembut untuk serangan kekerasan. Penggodam sentiasa datang dengan alat perisian yang inovatif dan bot untuk mengautomasikan serangan kekerasan yang lebih tinggi yang meningkatkan risiko pencerobohan.

Dalam panduan ini, kami meneroka beberapa petua yang boleh anda laksanakan untuk melindungi pelayan SSH anda dari serangan kekerasan terhadap pengagihan Linux berasaskan RHEL dan derivatif Debian.

Lumpuhkan Pengesahan Kata Laluan SSH dan aktifkan pengesahan SSH-Key

Kaedah pengesahan lalai untuk SSH Adakah nama pengguna/pengesahan kata laluan. Tetapi seperti yang kita lihat, pengesahan kata laluan terdedah kepada serangan kekerasan. Untuk berada di sisi yang selamat, adalah disyorkan untuk melaksanakan pengesahan SSH berasaskan utama di mana pengesahan dimungkinkan oleh pasangan utama SSH awam dan swasta. Kunci peribadi kekal di PC pelanggan sementara kunci awam disalin ke pelayan.

Semasa pengesahan utama SSH, pelayan memeriksa sama ada PC klien mempunyai kunci peribadi. Sekiranya cek berjaya, sesi shell dibuat atau arahan yang dihantar ke pelayan jauh dilaksanakan dengan jayanya. Kami mempunyai panduan yang komprehensif mengenai cara mengkonfigurasi pengesahan berasaskan kunci SSH.

Walaupun setelah menubuhkan pengesahan berasaskan kunci, pelayan anda masih mudah terdedah kepada serangan kekerasan kerana alasan mudah bahawa pengesahan kata laluan masih aktif. Ini perlu dilumpuhkan.

Oleh itu, edit fail konfigurasi SSH lalai.

$ sudo vim/etc/ssh/sshd_config 

Menetapkan Kata laluan parameter ke tidak seperti yang ditunjukkan.

Kata laluanAuthentication no 
Lumpuhkan Pengesahan Kata Laluan SSH

Kemudian simpan fail dan tambah nilai SSH untuk menggunakan perubahan.

$ sudo Systemctl Reload SSH 

Melaksanakan alat pencegahan pencerobohan Fail2Ban

Ditulis dalam Python, Fail2Ban adalah rangka kerja pencegahan pencerobohan sumber terbuka yang mengimbas fail log perkhidmatan untuk kegagalan pengesahan dan mengharamkan IP yang berulang kali gagal pemeriksaan kata laluan pemeriksaan untuk jumlah masa yang ditentukan.

Gagal2ban Sentiasa memantau fail log pelayan untuk percubaan pencerobohan dan aktiviti jahat yang lain, selepas bilangan kegagalan pengesahan yang telah ditetapkan - dalam kebanyakan kes, 3 percubaan masuk yang gagal - Fail2Ban secara automatik menghalang hos jauh dari mengakses pelayan, dan tuan rumah disimpan dalam 'Penjara'untuk tempoh masa tertentu.

Dalam berbuat demikian, Gagal2ban dengan ketara mengurangkan kadar percubaan pengesahan kata laluan yang salah. Lihat panduan kami tentang bagaimana anda boleh memasang dan mengkonfigurasi Fail2Ban di Linux untuk mengamankan pelayan anda dari serangan bruteforce.

Hadkan bilangan maksimum percubaan pengesahan SSH

Satu lagi cara mudah untuk melindungi pelayan anda dari serangan kekerasan adalah dengan mengehadkan bilangan percubaan log masuk SSH. Secara lalai, ini ditetapkan ke 3, Tetapi jika dengan apa -apa peluang ini ditetapkan kepada nilai yang lebih tinggi, tetapkannya kepada 3 percubaan sambungan.

Contohnya, untuk menetapkan percubaan sambungan maksimum ke 3 menetapkan MaxAuthtries parameter ke 3 seperti yang ditunjukkan

MaxAuthtries = 3 

Sekali lagi, simpan perubahan dan muat semula perkhidmatan SSH.

$ sudo Systemctl Reload SSH 

Melaksanakan pembalut TCP untuk menghadkan akses SSH dari pelanggan

TCP Wrappers adalah perpustakaan yang menyediakan berasaskan tuan rumah Senarai Kawalan Akses (ACL) yang menyekat akses kepada perkhidmatan TCP oleh pelanggan jauh berdasarkan alamat IP mereka

Tuan rumah jauh dari mengakses perkhidmatan di sistem. Pembungkus TCP menggunakan /etc/hos.Benarkan dan /etc/hos.menafikan fail konfigurasi (mengikut urutan itu) untuk menentukan sama ada klien jauh dibenarkan mengakses perkhidmatan tertentu atau tidak.

Biasanya, fail -fail ini dikomentari dan semua tuan rumah dibenarkan melalui lapisan pembalut TCP. Peraturan untuk membenarkan akses kepada perkhidmatan tertentu diletakkan di /etc/hos.Benarkan fail dan mengambil keutamaan atas peraturan dalam /dll/tuan rumah.menafikan fail.

Amalan terbaik mengesyorkan menyekat semua sambungan masuk. Oleh itu, buka /etc/hos.menafikan fail.

$ sudo vim /etc /hosts.menafikan 

Tambahkan baris berikut.

Semua: Semua 

Simpan perubahan dan keluar dari fail.

Kemudian akses /etc/hos.Benarkan fail.

$ sudo vim /etc /hosts.Benarkan 

Konfigurasikan tuan rumah atau domain yang boleh menyambung ke pelayan melalui SSH seperti yang ditunjukkan. Dalam contoh ini, kami hanya membenarkan dua tuan rumah jauh untuk menyambung ke pelayan (173.82.227.89 dan 173.82.255.55) dan menafikan selebihnya.

SSHD: 173.82.227.89 173.82.255.55 SSHD: Semua: Menolak 
Hadkan akses SSH kepada pelanggan

Simpan perubahan dan keluar dari fail konfigurasi.

Untuk mengujinya, cuba sambungkan ke pelayan dari hos yang bukan antara yang anda telah membenarkan akses ke. Anda harus mendapat ralat kebenaran seperti yang ditunjukkan.

$ ssh [dilindungi e -mel] kex_exchange_identification: Baca: Reset sambungan oleh Reset Sambungan Peer oleh 173.82.235.7 port 22 hilang sambungan 

Melaksanakan pengesahan dua faktor SSH

Pengesahan dua faktor Menyediakan lapisan keselamatan tambahan kepada pengesahan kata laluan, dengan itu menjadikan pelayan anda lebih selamat dari serangan kekerasan. Digunakan secara meluas Pengesahan dua faktor penyelesaian adalah Aplikasi Google Authenticator Dan kami mempunyai panduan yang didokumentasikan dengan baik mengenai bagaimana anda dapat menyediakan dua faktor pengesahan.

Kesimpulan

Ini adalah ringkasan 5 amalan terbaik yang boleh anda laksanakan untuk mencegah SSH Brute Force serangan masuk dan pastikan keselamatan pelayan anda. Anda juga boleh membaca cara menjamin dan mengeras pelayan openssh.