Rumah > Operasi dan penyelenggaraan > operasi dan penyelenggaraan linux > Bagaimana saya mengkonfigurasi SSH untuk akses jauh selamat ke Linux?

Bagaimana saya mengkonfigurasi SSH untuk akses jauh selamat ke Linux?

James Robert Taylor
Lepaskan: 2025-03-11 17:33:18
asal
683 orang telah melayarinya

Butiran artikel ini mengkonfigurasi akses jauh SSH selamat ke pelayan Linux. Ia menekankan amalan keselamatan utama, termasuk melumpuhkan pengesahan kata laluan, menggunakan pengesahan utama SSH, menyekat log masuk root, dan konfigurasi firewall. Masalah

Bagaimana saya mengkonfigurasi SSH untuk akses jauh selamat ke Linux?

Cara Mengkonfigurasi SSH Untuk Akses Jauh Selamat ke Linux

Mengkonfigurasi SSH untuk akses jauh selamat ke pelayan Linux anda melibatkan beberapa langkah, memastikan sambungan yang mantap dan dilindungi. Pertama, anda perlu memastikan SSH dipasang. Kebanyakan pengagihan Linux memasukkannya secara lalai, tetapi jika tidak, gunakan pengurus pakej pengedaran anda (contohnya, apt-get install openssh-server pada Debian/Ubuntu, yum install openssh-server pada CentOS/RHEL). Setelah dipasang, SSH Daemon (SSHD) harus bermula secara automatik. Anda boleh mengesahkan ini menggunakan systemctl status sshd (SystemD) atau arahan yang sama untuk sistem INIT anda.

Seterusnya, anda perlu mengkonfigurasi pelayan SSH. Fail konfigurasi utama biasanya terletak di /etc/ssh/sshd_config . Fail ini membolehkan penyesuaian yang luas. Secara asasnya, anda harus mempertimbangkan:

  • Port Forwarding: Walaupun port SSH lalai adalah 22, menukarnya ke port bukan standard (contohnya, bilangan yang lebih tinggi) menambah lapisan keselamatan, menjadikannya lebih sukar untuk pengimbas automatik untuk mencari pelayan anda. Untuk menukar port, ubah suai arahan Port dalam sshd_config . Ingat untuk memulakan semula perkhidmatan SSH selepas membuat perubahan (biasanya systemctl restart sshd ).
  • Lumpuhkan Pengesahan Kata Laluan (disyorkan): Pengesahan kata laluan adalah kelemahan keselamatan yang signifikan. Sebaliknya, gunakan pengesahan utama SSH (terperinci di bawah). Untuk melumpuhkan Pengesahan Kata Laluan, tetapkan PasswordAuthentication no dalam sshd_config .
  • Hadkan log masuk root (disyorkan): Log masuk secara langsung sebagai akar sangat tidak digalakkan. Sebaliknya, buat akaun pengguna biasa dengan keistimewaan sudo dan log masuk sebagai pengguna itu. Tetapkan PermitRootLogin no di sshd_config untuk menguatkuasakan ini.
  • Konfigurasi Firewall: Pastikan firewall anda membolehkan trafik SSH melalui pelabuhan yang telah anda konfigurasi (lalai 22 atau port tersuai anda). Gunakan iptables atau firewalld (bergantung kepada pengedaran anda) untuk mengkonfigurasi ini. Sebagai contoh, dengan firewalld , anda mungkin menggunakan firewall-cmd --permanent --add-port=22/tcp dan firewall-cmd --reload .
  • SSH Server Hardening: Terdapat pelbagai pilihan keselamatan dalam fail SSHD_CONFIG yang boleh diselaraskan untuk keselamatan yang lebih maju. Contohnya termasuk MaxAuthTries , LoginGraceTime , PermitTunnel , dan AllowUsers atau AllowGroups . Pilihan ini memerlukan pertimbangan yang teliti berdasarkan keperluan keselamatan khusus anda dan harus diteliti dengan teliti sebelum melaksanakan.

Apakah amalan keselamatan terbaik untuk konfigurasi SSH pada pelayan Linux?

Di luar konfigurasi asas, beberapa amalan terbaik meningkatkan keselamatan SSH:

  • Gunakan Pengesahan Utama SSH: Ini menghapuskan risiko retak kata laluan. Menjana pasangan kunci SSH (kunci awam dan peribadi) pada mesin klien anda menggunakan ssh-keygen . Kemudian, salin kekunci awam ke fail ~/.ssh/authorized_keys pada pelayan anda (menggunakan ssh-copy-id atau secara manual).
  • Secara kerap mengemas kini SSH Server: Pastikan perisian SSH Server anda terkini untuk menampal kelemahan yang diketahui. Gunakan Pengurus Pakej Pengedaran anda untuk mengemas kini dengan kerap.
  • Pengurusan Utama yang Kuat: Lindungi kunci peribadi anda dengan tekun. Jangan berkongsi, dan gunakan frasa laluan yang kuat untuk melindunginya. Pertimbangkan menggunakan kunci keselamatan perkakasan untuk keselamatan tambahan.
  • Pemantauan log: Secara kerap semak log pelayan SSH anda ( /var/log/auth.log atau lokasi yang sama bergantung kepada pengedaran anda) untuk mengesan percubaan log masuk yang mencurigakan.
  • Fail2Ban: Alat ini secara automatik mengharamkan alamat IP yang cuba terlalu banyak log masuk gagal, mengurangkan serangan kekerasan.
  • Audit Keselamatan Biasa: Secara berkala mengkaji semula konfigurasi SSH dan tetapan keselamatan anda untuk mengenal pasti dan menangani kelemahan yang berpotensi.

Bagaimana saya boleh menyelesaikan masalah sambungan SSH biasa di Linux?

Menyelesaikan masalah SSH Connection Isu melibatkan pemeriksaan sistematik:

  • Verify Server sedang dijalankan: Pastikan pelayan SSH sedang berjalan dan mendengar pada port yang dikonfigurasikan menggunakan systemctl status sshd atau netstat -tulnp | grep ssh .
  • Semak Firewall: Pastikan firewall anda membolehkan trafik SSH di port yang betul.
  • Sahkan sambungan rangkaian: Sahkan sambungan rangkaian ke pelayan menggunakan ping dan traceroute .
  • Semak Konfigurasi SSH: Semak fail sshd_config anda untuk sebarang tetapan yang salah (terutamanya nombor port dan kaedah pengesahan).
  • Semak Konfigurasi Pelanggan: Pastikan konfigurasi SSH pelanggan anda betul (termasuk nama hos atau alamat IP, port, dan lokasi utama).
  • Semak log SSH: Periksa log pelayan SSH untuk mesej ralat yang mungkin menunjukkan punca masalah. Kesalahan biasa mungkin melibatkan pengesahan yang salah, isu rangkaian, atau sekatan firewall.
  • Semak Resolusi DNS: Pastikan pelanggan anda dapat menyelesaikan nama hos pelayan dengan betul ke alamat IPnya.
  • Semak Selinux atau AppArmor: Modul keselamatan ini mungkin menyekat sambungan SSH. Lumpuhkan sementara mereka (untuk tujuan ujian sahaja) untuk melihat sama ada mereka menjadi punca. Ingatlah untuk mengaktifkan semula mereka selepas itu.

Apakah perbezaan utama antara pengesahan utama SSH dan pengesahan kata laluan?

Pengesahan dan pengesahan kata laluan utama SSH berbeza dengan ketara dalam keselamatan dan kemudahan:

  • Keselamatan: Pengesahan utama SSH jauh lebih selamat daripada pengesahan kata laluan. Kata laluan boleh ditebak, retak, atau dicuri, manakala kunci peribadi yang dikompromi memerlukan akses fizikal atau serangan yang canggih. Pengesahan utama bergantung pada kriptografi asimetri, menjadikannya lebih sukar untuk retak.
  • Kemudahan: Pengesahan kata laluan umumnya lebih mudah untuk persediaan awal, kerana ia tidak memerlukan pengurusan utama. Walau bagaimanapun, pengesahan utama menjadi lebih mudah dalam jangka masa panjang, kerana ia menghapuskan keperluan untuk mengingati dan menaip kata laluan.
  • Pelaksanaan: Pengesahan kata laluan menggunakan kombinasi nama pengguna/kata laluan yang mudah. Pengesahan utama menggunakan sepasang kekunci: kunci peribadi (disimpan rahsia pada mesin klien) dan kunci awam (diletakkan pada pelayan). Pelayan mengesahkan identiti klien dengan memeriksa tandatangan digital yang dibuat dengan kunci peribadi.
  • Risiko: Pengesahan kata laluan mempunyai risiko serangan kekerasan yang tinggi. Pengesahan utama jauh lebih tahan terhadap serangan kekerasan kerana ia tidak melibatkan meneka kata laluan. Walau bagaimanapun, kehilangan atau kompromi kunci persendirian adalah risiko kritikal dengan pengesahan utama.

Ringkasnya, sementara pengesahan kata laluan lebih mudah untuk ditubuhkan pada mulanya, pengesahan utama SSH sangat disyorkan untuk keselamatan unggulnya, terutamanya untuk pelayan yang mengendalikan data sensitif. Perdagangan kemudahan jauh lebih besar daripada keselamatan yang dipertingkatkan.

Atas ialah kandungan terperinci Bagaimana saya mengkonfigurasi SSH untuk akses jauh selamat ke Linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan