У меня есть сервер TACACS+ и клиент Ubuntu 20.04 vm. Я скачал пакет libpam-tacplus и выполнил шаги 7 и 8 из это отвечать. Если пользователь существует на виртуальной машине, я могу успешно использовать сервер TACACS+ для аутентификации.
Требуется, чтобы пользователи существовали только на сервере TACACS+, а не внутри виртуальной машины. Для этого я скачал это и установил/настроил его, следуя инструкциям из файла readme.
Я подключаюсь через ssh к виртуальной машине, но не могу войти в систему. В журнале сервера написано, что «вход в систему pap прошел успешно», но в консоли ssh написано «Отказано в доступе».
Я подозреваю, что что-то не так с моими файлами pam.d, но я не уверен, что именно.
Здесь соответствующие файлы/журналы:
pam.d/tacacs
#%PAM-1.0
достаточно аутентификации /usr/lib/security/pam_tacplus.so сервер отладки = 1.2.3.4 тайм-аут = 5 секрет = секретный ключ
учетная запись достаточна
достаточно сеанса
pam.d/sshd
#%PAM-1.0
auth [успех=0 по умолчанию=игнорировать] /usr/lib/security/pam_tacplus.so сервер отладки=1.2.3.4 секрет=секретный ключ
#auth включает tacacs
учетная запись включает tacacs
сессия включает такаки
#
#
# требуется авторизация pam_sepermit.so
#auth подстек пароль-аутентификация
#auth включает постлогин
# Используется с polkit для повторной авторизации пользователей в удаленных сеансах
#-auth необязательный pam_reauthorize.so подготовить
# требуется учетная запись pam_nologin.so
#аккаунт включает аутентификацию по паролю
#password включает пароль-аутентификацию
# pam_selinux.so close должно быть первым правилом сеанса
#сеанс требуется pam_selinux.so закрыть
# требуется сеанс pam_loginuid.so
# За pam_selinux.so open должны следовать только сеансы, которые будут выполняться в контексте пользователя
# требуется сеанс pam_selinux.so откройте env_params
# требуется сеанс pam_namespace.so
#session необязательный pam_keyinit.so принудительно отозвать
#session включает аутентификацию по паролю
#сессия включает постлогин
# Используется с polkit для повторной авторизации пользователей в удаленных сеансах
#-session необязательный pam_reauthorize.so prepare
/var/log/auth.log после ввода имени пользователя
3 сентября, 13:52:22 ubuntuvm sshd[18024]: tacacsSSH
3 сентября, 13:52:22 ubuntuvm sshd[18024]: имя tacacs — tacacs_user, pw_dir = /home/tacacs_user, pw_shell =
3 сентября, 13:52:22 ubuntuvm sshd[18024]: tacacsSSH 102
3 сентября, 13:52:22 ubuntuvm sshd [18024]: имя, скопированное в структуру passwd, — testuser
3 сентября, 13:52:22 ubuntuvm sshd[18024]: пароль, скопированный в структуру passwd, представляет собой
3 сентября, 13:52:22 ubuntuvm sshd[18024]: PAM pam_parse: ожидается ненулевое значение; [... по умолчанию=игнорировать]
3 сентября, 13:52:22 ubuntuvm sshd[18024]: PAM pam_parse: ожидается возвращаемое значение; [...достаточно]
/var/log/auth.log после ввода пароля
3 сентября, 13:52:29 ubuntuvm PAM-tacplus[18024]: определен 1 сервер
3 сентября, 13:52:29 ubuntuvm PAM-tacplus[18024]: server[0] {addr=1.2.3.4, key='********'}
3 сентября, 13:52:29 ubuntuvm PAM-tacplus[18024]: tac_service=''
3 сентября 13:52:29 ubuntuvm PAM-tacplus[18024]: tac_protocol=''
3 сентября, 13:52:29 ubuntuvm PAM-tacplus[18024]: tac_prompt=''
3 сентября 13:52:29 ubuntuvm PAM-tacplus[18024]: tac_login=''
3 сентября, 13:52:29 ubuntuvm sshd[18024]: pam_sm_authenticate: вызывается (pam_tacplus v1.3.8)
3 сентября, 13:52:29 ubuntuvm sshd[18024]: pam_sm_authenticate: получен пользователь [testuser]
3 сентября 13:52:29 ubuntuvm sshd [18024]: tacacs_get_password: вызывается
3 сентября 13:52:29 ubuntuvm sshd [18024]: tacacs_get_password: пароль получен
3 сентября, 13:52:29 ubuntuvm sshd[18024]: pam_sm_authenticate: пароль получен
3 сентября, 13:52:29 ubuntuvm sshd[18024]: pam_sm_authenticate: tty [ssh] получен
3 сентября, 13:52:29 ubuntuvm sshd[18024]: pam_sm_authenticate: rhost [1.2.3.5] получен
3 сентября, 13:52:29 ubuntuvm sshd[18024]: pam_sm_authenticate: попытка srv 0
3 сентября 13:52:29 ubuntuvm sshd[18024]: pam_sm_authenticate: активный srv 0
3 сентября, 13:52:29 ubuntuvm sshd[18024]: pam_sm_authenticate: выход со статусом pam: 0
3 сентября, 13:52:29 ubuntuvm sshd [18024]: неверный пароль для testuser с порта 1.2.3.5 49413 ssh2
В качестве сервера TACACS+ я использую этот: https://tacacsgui.com/