Saya menguji otentikasi dua faktor untuk login ssh pada beberapa wadah CentOS di lingkungan pengujian kami.
Saya mengkompilasi rpms saya sendiri dari sumber github, menginstal dan mengkonfigurasi semuanya dan mengatur dan menjalankan default. Saya diminta untuk token pertama dan kata sandi pengguna setelahnya.
Apa yang saya coba lakukan sekarang adalah mengubah urutan kedua faktor tersebut. Saya memiliki persyaratan untuk meminta kata sandi terlebih dahulu dan untuk token yang terakhir, tetapi saya belum dapat mengkonfigurasi ini.
Ini /etc/pam.d/sshd
terlihat seperti setelah instalasi:
#%PAM-1.0
auth required pam_google_authenticator.so nullokt
auth required pam_sepermit.so
auth include password-auth
account required pam_nologin.so
account include password-auth
password include password-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth
Saya telah mencoba untuk bergerak di sekitar parameter bagian pertama tanpa hasil. Misalnya, jika saya memindahkan baris google_authenticator ke bagian bawah firat, hanya otentikasi kata sandi yang diaktifkan.
Sunting:
Saya telah membaca dokumentasi PAM, tetapi saya tidak dapat mencapainya. Saya telah mencoba untuk bundel google-authenticator dengan /etc/pam.d/password-auth, tetapi tidak ada yang berubah. Entah token pertama dan hanya sandi kedua atau hanya kata sandi.
sumber
password-auth
berkas memiliki hal lagi tentang sandi perubahan, saya tidak harus mengubah password (atau saya akan mengubah password dengan akar dan menggunakan sandi yang kuat).