Am configurat o configurație PAM pentru sshd
, iar de acum /etc/pam.d/sshd
sta asa:
# Configurare PAM personalizată pentru sshd
# Nu permiteți autentificarea dacă /etc/nologin există, moștenit din vechea configurație sshd
cont este necesar pam_nologin.so
# Regula SELinux. Moștenit de la vechiul sshd
sesiune [success=ok ignore=ignore module_unknown=ignore default=rea] pam_selinux.so close
# Verificați numele de utilizator și parola cu binar personalizat
auth [success=ok default=bad] pam_exec.so expose_authtok /usr/bin/ssh-hash-checker
# Setați atributul procesului loginuid. Moștenit de la vechiul sshd
sesiune necesară pam_loginuid.so
# Creați un nou breloc de chei de sesiune. Moștenit de la vechiul sshd
sesiune opțională pam_keyinit.so forță revocarea
# Configurarea și demontarea sesiunii standard Un*x. Moștenit de la vechiul sshd
@include sesiune comună
# MOTD. Moștenit de la vechiul sshd
sesiune opțională pam_motd.so motd=/run/motd.dynamic
sesiune opțională pam_motd.so noupdate
# Poștă. Moștenit de la vechiul sshd
sesiune opțional pam_mail.so standard noenv
# Configurați limite de utilizator din /etc/security/limits.conf. Moștenit de la vechiul sshd
sesiune necesară pam_limits.so
# PAM Env. Moștenit de la vechiul sshd
sesiune necesară pam_env.so # [1]
# În Debian 4.0 (etch), variabilele de mediu legate de locale au fost mutate
# /etc/default/locale, deci citește și asta. Moștenit de la vechiul sshd
sesiune necesară pam_env.so user_readenv=1 envfile=/etc/default/locale
# O altă regulă SELinux Moștenită de la vechiul sshd
sesiune [success=ok ignore=ignore module_unknown=ignore default=rea] pam_selinux.so open
Începând de acum, am testat binarul personalizat care verifică utilizatorul și parola și pare să funcționeze în regulă, deoarece parola este respinsă fără alte probleme atunci când autentificarea dată este incorectă, așa cum îmi dau seama din starea systemctl
raport.
Cu toate acestea, la o încercare validă de conectare, primesc următoarea autentificare starea systemctl
:
fatal: accesul refuzat utilizatorului <exprimat> de configurația contului PAM [preauth]
După ce am căutat problema pe Google, am descoperit că aceasta este adesea cauzată de un access.conf configurat greșit, deci acesta este conținutul actual al /etc/security/access.conf
:
# Multe rânduri de comentarii în partea de sus...
# Permite root-ului să se autentifice de oriunde
+:root:ALL
# Permiteți <redacted> să se conecteze la SSH prin PAM
+:<redactat>:ALL
# Interziceți accesul tuturor celorlalți de oriunde altundeva
-:ALL:TOATE
Nu am schimbat recent nicio parolă de utilizator și nici nu am modificat manual nici una /etc/shadow
nici /etc/passwd
.
Aveți idee despre ce ar putea fi asta sau despre pași suplimentari de depanare pe care aș putea să-i fac?