Jadi saya punya sedikit yubikey yang apik ini dan saya ingin menambahkan lapisan keamanan tambahan saat mengotentikasi sesi ssh. Di sisi server saya sudah menonaktifkan otentikasi kata sandi dan hanya mengizinkan penggunaan kunci ssh saat masuk.
Masalahnya adalah, setelah mengkonfigurasi sshd dan PAM untuk yubikey auth, sshd masih hanya memerlukan kunci ssh, saya tidak pernah diminta untuk memberikan respons dari yubikey.
Bagaimana cara membutuhkan baik dan kunci ssh dan Yubikey sebuah?
(ubuntu 14.04 - trusty)
/etc/pam.d/common-auth
:
auth required pam_yubico.so mode=client try_first_pass id=<id> key=<secret>
auth [success=1 default=ignore] pam_unix.so nullok_secure try_first_pass
# here's the fallback if no module succeeds
auth requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth required pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth optional pam_cap.so
# end of pam-auth-update config
/etc/ssh/sshd_config
:
...
PasswordAuthentication no
ChallengeResponseAuthentication yes
UsePAM yes
ssh
two-factor
ben lemasurier
sumber
sumber
Jawaban:
Ok, saya terus melakukannya dan saya pikir saya telah menemukan solusi yang masuk akal. Hal utama yang sebelumnya hilang adalah sshd
AuthenticationMethods publickey,password
. Ini memberlakukan persyaratan untuk publickey dan kata sandi - "kata sandi" yang sekarang ditangani olehPAM->auth-yubi
. Perubahan tambahan juga diperlukan, lihat di bawah:(ubuntu 14.04 - tepercaya):
/etc/pam.d/yubi-auth
Catatan: Anda dapat memperoleh ID akses dan kunci rahasia di sini
/etc/pam.d/sshd
/ etc / ssh / sshd_config
service ssh restart
Verifikasi
SSH dari host jarak jauh tanpa kunci publik
SSH dari host jarak jauh dengan kunci publik
Perbaikan
Akan menyenangkan untuk melihat "Yubikey Auth:" daripada "password:" dari server ssh jarak jauh ketika mengotentikasi.
Apa yang terjadi ketika server ssh tidak dapat menghubungi sistem verifikasi auth yubico? Solusi ideal akan sepenuhnya mandiri.
Komentar dan saran sangat kami hargai.
sumber
Menyiapkan 2FA dengan Yubikey bisa rumit (berpikir ada patch openssh untuk U2F ), tetapi cara termudah mungkin adalah yang dijelaskan di situs resmi Yubico .
Ini pada dasarnya adalah cara menyimpan kunci pribadi Anda di Yubikey dan melindunginya dengan PIN. Ini bukan persis 2FA yang Anda gambarkan (tetapi itu adalah sesuatu yang Anda miliki dan dan apa yang Anda ketahui ), tetapi itu meningkatkan keamanan lebih lagi (Yubikey mengunci setelah beberapa percobaan yang gagal).
TL: DR;
sumber