Доступ запрещен конфигурацией учетной записи PAM, несмотря на настроенный файл access.conf и обновленный / etc / shadow

Я настраивал конфигурацию PAM для sshd , и на данный момент /etc/pam.d/sshd выглядит так :

# Custom PAM config for sshd

# Disallow login if /etc/nologin exists, inherited from old sshd config
account required    pam_nologin.so

# SELinux rule. Inherited from old sshd
session [success=ok ignore=ignore module_unknown=ignore default=bad]    pam_selinux.so close

# Check username and password with custom binary
auth    [success=ok default=bad]    pam_exec.so expose_authtok /usr/bin/ssh-hash-checker

# Set the loginuid process attribute. Inherited from old sshd
session required    pam_loginuid.so

# Create a new session keyring. Inherited from old sshd
session optional    pam_keyinit.so force revoke

# Standard Un*x session setup and teardown. Inherited from old sshd
@include common-session

# MOTD. Inherited from old sshd
session optional    pam_motd.so  motd=/run/motd.dynamic
session optional    pam_motd.so noupdate

# Mail. Inherited from old sshd
session optional    pam_mail.so standard noenv

# Set up user limits from /etc/security/limits.conf. Inherited from old sshd
session required    pam_limits.so

# PAM Env. Inherited from old sshd
session required    pam_env.so # [1]

# In Debian 4.0 (etch), locale-related environment variables were moved to
# /etc/default/locale, so read that as well. Inherited from old sshd
session required    pam_env.so user_readenv=1 envfile=/etc/default/locale

# Another SELinux Rule Inherited from old sshd
session [success=ok ignore=ignore module_unknown=ignore default=bad]    pam_selinux.so  open

На данный момент я протестировал специальный двоичный файл, который проверяет пользователя и пароль, и, похоже, он работает нормально, поскольку пароль отклоняется без каких-либо дополнительных проблем, если данный логин неверен, как я могу судить из systemctl status отчет.

Однако при действительной попытке входа в систему я получаю следующий журнал systemctl status : фатальный: доступ запрещен для пользователя <отредактировано> конфигурацией учетной записи PAM [preauth]

Погуглив проблему, я обнаружил, что это часто происходит из-за неправильно настроенного access.conf, поэтому это текущее содержимое /etc/security/access.conf :

# Many lines of comments at the top...

# Allow root to login from wherever
+:root:ALL

# Allow <redacted> to login to SSH through PAM
+:<redacted>:ALL

# Deny access to everyone else from anywhere else
-:ALL:ALL

Я не недавно менял пароли пользователей и никогда не менял вручную ни / etc / shadow , ни / etc / passwd .

Есть идеи, что это могло быть, или какие дальнейшие шаги по отладке я мог бы предпринять?

0
задан 23 July 2021 в 17:56

1 ответ

Нашел ответ после долгих поисков. По какой-то причине я еще не понимаю, модуль pam_nologin.so отказывает в доступе, несмотря на то, что файл / etc / nologin фактически не существует. Я поищу дополнительные ответы о том, как заставить этот механизм работать должным образом, и опубликую ссылку на второй вопрос, если и когда найду окончательный ответ.

Изменить: Новый вопрос

0
ответ дан 28 July 2021 в 11:15

Другие вопросы по тегам:

Похожие вопросы: