Saya menggunakan Ubuntu 14.04.1 (dengan OpenSSH 6.6 dan libpam-google-authenticator 20130529-2).
Saya mencoba menyiapkan login SSH di mana kunci publik mengotentikasi (tanpa kata sandi) dan pengguna diminta untuk kode dari Google Authenticator.
Mengikuti / mengadaptasi instruksi ini telah memberi saya prompt kata sandi serta prompt Google Auth:
- https://scottlinux.com/2013/06/02/use-google-authenticator-for-two-factor-ssh-authentication-in-linux/
- http://www.howtogeek.com/121650/how-to-secure-ssh-with-google-authenticators-two-factor-authentication/
- https://wiki.archlinux.org/index.php/Google_Authenticator dan https://wiki.archlinux.org/index.php/SSH_keys#Two-factor_authentication_and_public_keys
- https://www.digitalocean.com/community/tutorials/how-to-protect-ssh-with-two-factor-authentication
Saya telah menginstal paket, mengedit file /etc/ssh/sshd_config
dan saya/etc/pam.d/ssh
Dalam /etc/ssh/sshd_config
:
ChallengeResponseAuthentication yes
AuthenticationMethods publickey,keyboard-interactive
UsePAM yes
dan di bagian bawah /etc/pam.d/ssh
:
auth required pam_google_authenticator.so nullok # (I want to give everyone a chance to set up their 2FA before removing "nullok")
Saya tahu PAM tergantung pesanan, tetapi sshd_config
juga?
Apa yang saya lakukan salah? Bantuan apa pun akan dihargai.
PasswordAuthentication no
, tetapi bukan itu. Masalahnya adalah apakah saya memiliki / memilikiControlMaster auto
danControlPath
arahan dalam file ~ / .ssh / config saya. Saya ingin memastikan saya tidak mengunci diri, jadi saya akan selalu membiarkan sesi SSH terbuka. Karena komputer saya hanya akan menggunakan kembali, saya selalu masuk tanpa sistem meminta token. Saya menandai jawaban Anda sebagai benar, karena seseorang yang mengikutinya memang akan mendapatkan pengaturan yang berfungsi. Terima kasih!