Rumah >Operasi dan penyelenggaraan >operasi dan penyelenggaraan linux >Bagaimanakah saya melaksanakan pengesahan dua faktor (2FA) untuk SSH di Linux?

Bagaimanakah saya melaksanakan pengesahan dua faktor (2FA) untuk SSH di Linux?

James Robert Taylor
James Robert Taylorasal
2025-03-17 17:31:28294semak imbas

Bagaimanakah saya melaksanakan pengesahan dua faktor (2FA) untuk SSH di Linux?

Melaksanakan Pengesahan Dua Faktor (2FA) untuk SSH pada sistem Linux meningkatkan keselamatan dengan memerlukan dua bentuk pengesahan sebelum memberikan akses. Berikut adalah panduan langkah demi langkah untuk menubuhkan 2FA menggunakan Google Authenticator, salah satu alat yang paling popular untuk tujuan ini:

  1. Pasang Google Authenticator :
    Pertama, pasang modul PAM Google Authenticator. Pada sistem berasaskan Debian seperti Ubuntu, anda boleh melakukan ini dengan menjalankan:

     <code>sudo apt-get update sudo apt-get install libpam-google-authenticator</code>

    Pada sistem berasaskan topi merah seperti CentOS, anda boleh menggunakan:

     <code>sudo yum install google-authenticator</code>
  2. Konfigurasikan Google Authenticator untuk pengguna anda :
    Jalankan arahan <code>google-authenticator</code> sebagai pengguna yang akan menggunakan SSH:

     <code>google-authenticator</code>

    Perintah ini akan menghasilkan kunci rahsia dan kod QR. Jawab arahan mengikut keutamaan anda, seperti sama ada menggunakan token berasaskan masa dan jika kunci perlu dikemas kini setiap 30 saat.

  3. Konfigurasikan Pam untuk menggunakan Google Authenticator :
    Edit konfigurasi PAM untuk SSH dengan membuka fail /etc/pam.d/sshd dan tambahkan baris berikut pada akhir:

     <code>auth required pam_google_authenticator.so</code>
  4. Ubah suai konfigurasi SSHD :
    Buka /etc/ssh/sshd_config dan pastikan tetapan berikut dikonfigurasikan:

     <code>ChallengeResponseAuthentication yes PasswordAuthentication no UsePAM yes</code>

    Kemudian mulakan semula perkhidmatan SSH untuk menerapkan perubahan:

     <code>sudo systemctl restart sshd</code>
  5. Ujian SSH Login :
    Cuba log masuk melalui SSH. Anda kini harus diminta untuk kod pengesahan sebagai tambahan kepada kata laluan anda.

Apakah faedah keselamatan menggunakan 2FA untuk SSH pada sistem Linux?

Melaksanakan pengesahan dua faktor untuk SSH pada sistem Linux menyediakan beberapa manfaat keselamatan:

  • Keselamatan yang dipertingkatkan : 2FA menambah lapisan keselamatan tambahan, menjadikannya lebih sukar bagi penyerang untuk mendapatkan akses yang tidak dibenarkan. Walaupun kata laluan dikompromi, penyerang masih memerlukan faktor kedua untuk log masuk.
  • Perlindungan terhadap serangan kata laluan : 2FA mengurangkan risiko yang ditimbulkan oleh kata laluan yang lemah, serangan kekerasan, dan meneka kata laluan kerana akses memerlukan lebih daripada sekadar kata laluan.
  • Akauntabiliti dan Pemantauan : Dengan 2FA, setiap log masuk boleh terikat pada peranti fizikal, menjadikannya lebih mudah untuk mengesan dan memantau percubaan masuk dan mengesan aktiviti yang mencurigakan.
  • Pengurangan Ancaman Insider : 2FA boleh mengehadkan kerosakan dari ancaman orang dalam dengan memastikan bahawa walaupun kelayakan pekerja dicuri atau disalahgunakan, faktor kedua tetap menjadi halangan untuk mengakses.
  • Pematuhan dengan piawaian keselamatan : Banyak rangka kerja pengawalseliaan dan piawaian keselamatan memerlukan penggunaan 2FA untuk akses jauh, jadi pelaksanaannya dapat membantu organisasi memenuhi keperluan pematuhan.

Alat atau perisian mana yang boleh saya gunakan untuk menyediakan 2FA untuk SSH di Linux?

Beberapa alat dan pilihan perisian tersedia untuk menyediakan 2FA untuk SSH di Linux, termasuk:

  • Google Authenticator : Digunakan dan disokong secara meluas oleh kebanyakan pengagihan Linux, Google Authenticator mudah ditubuhkan dan menggunakan kata laluan satu kali berasaskan masa (TOTP).
  • Authy : Sama seperti Google Authenticator tetapi dengan ciri-ciri tambahan seperti penyegerakan dan sandaran berbilang peranti.
  • DUO Keselamatan : Penyelesaian Komprehensif yang menawarkan 2FA bersama -sama dengan ciri -ciri canggih seperti pemberitahuan push untuk pengesahan dan integrasi dengan pelbagai sistem.
  • Yubikey : Penyelesaian 2FA berasaskan perkakasan yang menggunakan U2F (Universal 2 Factor) dan sangat selamat kerana sifat fizikalnya.
  • Linux-PAM : Rangka kerja Modul Pengesahan Pluggable (PAM) di Linux boleh dikonfigurasi untuk berfungsi dengan pelbagai penyelesaian 2FA, termasuk Google Authenticator.
  • FreeOTP : Alternatif sumber terbuka kepada Google Authenticator yang berfungsi sama dan boleh didapati di banyak platform.

Bagaimanakah saya dapat menyelesaikan masalah umum apabila mengkonfigurasi 2FA untuk SSH pada pelayan Linux?

Apabila mengkonfigurasi 2FA untuk SSH pada pelayan Linux, anda mungkin menghadapi beberapa isu biasa. Inilah cara menyelesaikan masalah mereka:

  1. Sambungan SSH gagal selepas mengkonfigurasi 2FA :

    • Semak Konfigurasi SSHD : Pastikan bahawa ChallengeResponseAuthentication ditetapkan kepada yes dan UsePAM ditetapkan kepada yes IN /etc/ssh/sshd_config .
    • Sahkan konfigurasi PAM : Sahkan bahawa <code>auth required pam_google_authenticator.so</code> ditambah dengan betul ke /etc/pam.d/sshd .
  2. Kod pengesahan tidak diterima :

    • Penyegerakan Masa : Pastikan masa sistem ditetapkan dengan betul dan disegerakkan. Kata Laluan Satu-Masa Berasaskan Masa (TOTP) bergantung pada masa yang tepat.
    • Isu Kunci Rahsia : Sahkan bahawa kunci rahsia yang dihasilkan oleh <code>google-authenticator</code> disimpan dengan betul dan digunakan oleh modul PAM.
  3. Pengesahan tidak muncul :

    • Periksa Pam Konfigurasi PAM : Perintah penyertaan dalam /etc/pam.d/sshd perkara. Pastikan entri Google Authenticator tidak ditindih oleh penyertaan berikutnya.
  4. Log masuk atau gantung :

    • DEBUGGING SSHD : Gunakan bendera -d dengan SSH untuk membolehkan mod debugging dan menangkap log untuk memahami di mana proses log masuk gagal:

       <code>ssh -v user@host</code>
    • Semak Log : Periksa log sistem untuk sebarang mesej ralat yang berkaitan:

       <code>sudo journalctl -u sshd</code>
  5. Isu dengan Token Perkakasan :

    • Isu Pemandu Peranti : Jika menggunakan token perkakasan seperti Yubikey, pastikan pemacu yang betul dipasang dan diiktiraf oleh sistem.

Dengan mengikuti langkah -langkah penyelesaian masalah ini, anda dapat menyelesaikan masalah biasa dan memastikan bahawa 2FA berfungsi dengan betul untuk SSH pada pelayan Linux anda.

Atas ialah kandungan terperinci Bagaimanakah saya melaksanakan pengesahan dua faktor (2FA) untuk SSH di Linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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