Cara menjamin dan mengeras pelayan openssh

Cara menjamin dan mengeras pelayan openssh

Ketika datang untuk mengakses peranti jauh seperti pelayan, router, dan suis, protokol SSH datang sangat disyorkan memandangkan keupayaannya untuk menyulitkan lalu lintas dan menangkis sesiapa sahaja yang mungkin cuba menguping sambungan anda.

Sama ada, tetapan lalai SSH tidak sempurna dan tweak tambahan diperlukan untuk menjadikan protokol lebih selamat. Dalam panduan ini, kami meneroka pelbagai cara yang boleh anda gunakan untuk mengamankan dan mengeras pemasangan OpenSSH di pelayan.

1. Penyediaan Pengesahan Tanpa Kata Laluan SSH

Secara lalai, SSH Memerlukan pengguna untuk memberikan kata laluan mereka semasa log masuk. Tetapi inilah perkara: penggodam boleh meneka kata laluan atau bahkan melakukan serangan kekerasan menggunakan alat penggodam khas dan mendapatkan akses ke sistem anda. Untuk berada di tempat yang selamat, penggunaan pengesahan tanpa kata laluan SSH sangat digalakkan.

Langkah pertama adalah untuk menjana pasangan kunci SSH yang terdiri daripada a Kunci awam dan a Kunci peribadi. The Kunci peribadi tinggal di sistem tuan rumah anda sementara Kunci awam kemudian disalin ke pelayan jauh.

Sekali Kunci awam berjaya disalin, kini anda boleh masuk ke pelayan jauh dengan lancar tanpa perlu memberikan kata laluan.

Langkah seterusnya adalah untuk melumpuhkan pengesahan kata laluan, untuk mencapai matlamat ini, anda perlu mengubah suai fail konfigurasi SSH.

$ sudo vim/etc/ssh/sshd_config 

Di dalam fail konfigurasi, tatal dan cari arahan berikut. Uncomment dan Tukar Pilihan 'Ya' ke 'Tidak'

Kata laluanAuthentication no 
Lumpuhkan Pengesahan Kata Laluan SSH

Kemudian mulakan semula daemon ssh.

# sudo Systemctl mulakan semula sshd 

Pada ketika ini, anda hanya akan mempunyai akses ke pelayan jauh menggunakan pengesahan utama SSH.

2. Lumpuhkan Permintaan Sambungan Tanpa Kata Laluan Pengguna

Cara lain yang disyorkan untuk memperkuat keselamatan pelayan anda adalah untuk melumpuhkan log masuk SSH dari pengguna tanpa kata laluan. Ini terdengar agak pelik tetapi kadang -kadang pentadbir sistem dapat membuat akaun pengguna dan lupa untuk memberikan kata laluan - yang merupakan idea yang sangat buruk.

Untuk menolak permintaan dari pengguna tanpa kata laluan, sekali lagi, pergi ke fail konfigurasi di /etc/ssh/sshd_config dan pastikan anda mempunyai arahan di bawah:

PermitEptyPasswords no 
Lumpuhkan Log Masuk Tanpa Kata Laluan Pengguna

Kemudian mulakan semula perkhidmatan SSH untuk perubahan yang akan dilaksanakan.

$ sudo Systemctl Restart SSHD 

3. Lumpuhkan log masuk akar SSH

Ini tidak ada yang boleh berlaku jika penggodam berjaya memaksa kata laluan root anda. Membenarkan log masuk akar jauh selalu menjadi idea yang buruk yang boleh menjejaskan keselamatan sistem anda.

Atas sebab ini, selalu disyorkan agar anda melumpuhkan log masuk akar jauh SSH dan sebaliknya berpegang pada pengguna bukan akar biasa. Sekali lagi, pergi ke fail konfigurasi dan ubah suai baris ini seperti yang ditunjukkan.

Permitrootlogin no 
Lumpuhkan log masuk akar SSH

Sebaik sahaja anda selesai, mulakan semula perkhidmatan SSH untuk perubahan yang akan dilaksanakan.

$ sudo Systemctl Restart SSHD 

Selanjutnya, log masuk akar jauh akan dinyahaktifkan.

4. Gunakan Protokol SSH 2

SSH datang dalam dua versi: SSH Protokol 1 dan Protokol 2. SSH Protokol 2 diperkenalkan pada tahun 2006 dan lebih selamat daripada Protokol 1 Terima kasih kepada cek kriptografi yang kuat, penyulitan pukal dan algoritma yang mantap.

Secara lalai, SSH menggunakan Protokol 1. Untuk mengubahnya menjadi lebih selamat Protokol 2, Tambahkan garis di bawah ke fail konfigurasi:

Protokol 2 
Gunakan Protokol SSH 2

Seperti biasa, mulakan semula SSH untuk perubahan yang berkuatkuasa.

$ sudo Systemctl Restart SSHD 

Melangkah ke hadapan, SSH akan menggunakan Protokol 2 Secara lalai.

Untuk menguji sama ada SSH Protokol 1 disokong lagi, jalankan arahan:

$ ssh -1 [dilindungi e -mel] 

Anda akan mendapat ralat yang berbunyi "Protokol SSH v.1 tidak lagi disokong".

Dalam kes ini, perintah itu adalah:

$ ssh -1 [dilindungi e -mel] 
Semak Protokol SSH

Di samping itu, anda hanya boleh menentukan -2 Tag hanya untuk memastikan bahawa Protokol 2 adalah protokol lalai yang digunakan.

$ ssh -2 [dilindungi e -mel] 
Gunakan Protokol SSH 2

5. Tetapkan SSH Connection Timeout Nilai Idle

Meninggalkan PC anda tanpa pengawasan untuk jangka masa yang panjang dengan sambungan SSH yang terbiar boleh menimbulkan risiko keselamatan. Seseorang hanya boleh melewati dan mengambil alih sesi SSH anda dan melakukan apa sahaja yang mereka suka. Oleh itu, untuk menangani isu ini, itu berhemat untuk menetapkan had masa tamat yang melebihi, sesi SSH akan ditutup.

Sekali lagi, buka fail konfigurasi SSH anda dan cari Arahan "ClientaliveInterval". Berikan nilai yang munasabah, sebagai contoh, saya telah menetapkan had untuk 180 saat.

ClientaliveInterval 180 

Ini menunjukkan bahawa sesi SSH akan dijatuhkan jika tiada aktiviti didaftarkan selepas 3 minit yang bersamaan dengan 180 saat.

Tetapkan nilai tamat ssh sambungan

Kemudian mulakan semula daemon SSH untuk mempengaruhi perubahan yang dibuat.

$ sudo Systemctl Restart SSHD 

6. Hadkan akses SSH kepada pengguna tertentu

Untuk lapisan keselamatan tambahan, anda boleh menentukan pengguna yang memerlukan protokol SSH untuk log masuk dan melaksanakan tugas jauh pada sistem. Ini menghilangkan pengguna lain yang mungkin cuba masuk ke sistem anda tanpa kelulusan anda.

Seperti biasa, buka fail konfigurasi dan masukkan arahan "Pemberi kuasa"Diikuti dengan nama pengguna yang ingin anda berikan. Dalam contoh di bawah, saya telah membenarkan pengguna 'Tecmint'Dan'James'Mempunyai akses jauh ke sistem melalui SSH. Mana -mana pengguna lain yang cuba mendapatkan akses jauh akan disekat.

Allowusers Tecmint James 
Hadkan log masuk pengguna SSH

Selepas itu mulakan semula SSH untuk perubahan berterusan.

$ sudo Systemctl Restart SSHD 

7. Konfigurasikan Had untuk Percubaan Kata Laluan

Satu lagi cara anda boleh menambah lapisan keselamatan adalah dengan mengehadkan bilangan percubaan log masuk SSH sedemikian rupa sehingga selepas beberapa percubaan gagal, sambungan jatuh. Jadi sekali lagi menuju ke fail konfigurasi dan cari "MaxAuthtries"Arahan dan tentukan nilai untuk bilangan maksimum percubaan.

Dalam contoh ini, had telah ditetapkan ke 3 percubaan seperti yang ditunjukkan.

MaxAuthtries 3 
Hadkan percubaan kata laluan SSH

Dan akhirnya, mulakan semula perkhidmatan SSH seperti dalam senario sebelumnya.

Anda juga mungkin mendapati artikel berkaitan SSH berikut berguna:

  • Cara Memasang Openssh 8.0 pelayan dari sumber di linux
  • Cara Memasang Fail2Ban untuk Melindungi SSH di CentOS/RHEL 8
  • Cara menukar port ssh di linux
  • Cara membuat terowong SSH atau penghantaran port di Linux
  • 4 cara untuk mempercepat sambungan SSH di Linux
  • Cara Mencari Semua Percubaan Masuk SSH Gagal Di Linux
  • Cara Putuskan Sambungan SSH Tidak Aktif atau Idle di Linux
Kesimpulan

Itu adalah pusingan beberapa langkah yang boleh anda ambil untuk menjamin sambungan jauh SSH anda. Penting untuk menambah bahawa anda harus sentiasa memberikan kata laluan yang kuat kepada pengguna yang mempunyai akses jauh untuk menggagalkan serangan kekerasan. Ini adalah harapan kami bahawa anda menjumpai panduan ini berwawasan. Maklum balas anda sangat dialu -alukan.