Правильно, поэтому я немного борюсь с PAM в Centos7.
Я понятия не имею, как настроить его вручную и сделать изменения постоянными, чтобы получить билет Kerberos после успешного входа в ssh.
Как видите, основным методом аутентификации является winbind, и я хочу, чтобы он оставался таким.
Пока у меня есть /etc/pam.d/system-auth, который автоматически создается с помощью authconfig:
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 1000 quiet_success
auth sufficient pam_winbind.so use_first_pass
auth required pam_deny.so
В более ранних версиях я бы добавил:
auth optional pam_krb5.so try_first_pass
Есть идеи, как это сделать в Centos7? Я не хочу использовать kerberos для аутентификации, так как он, вероятно, испортит все при смене пароля.
В конце концов я использовал authconfig, что означает, что мне пришлось подготовить полностью керберизованную среду.
authconfig --enablewinbindkrb5 --update
Примечание для всех, кто планирует это использовать, эта команда обновляет стек PAM, я считаю, что она делает недействительной конфигурацию в /etc/security/pam_winbind.conf, а также изменяет /etc/samba/smb.conf.
Для правильного использования машина должна иметь действующий krb5.conf, принадлежать домену и иметь действительную системную вкладку.
Затем при каждом успешном входе в систему ssh будет создан ключ krbtgt, который позволяет генерировать билеты и использовать их для аутентификации. Это означает, что ssh не будет запрашивать пароль для входа на следующий сервер, если он имеет правильную керберизованную настройку.
Устанавливать krb5_auth = yes
в /etc/security/pam_winbind.conf
. Этот файл должен быть защищен от любых обновлений со стороны authconfig
.
Вы могли бы использовать auth sufficient pam_winbind.so use_first_pass krb5_auth
в pam, но это может быть отменено authconfig
.