Верно, поэтому я немного борюсь с PAM в Centos 7.
Я понятия не имею, как настроить его вручную и сделать изменения постоянными, чтобы я получил билет 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 достаточно pam_winbind.so use_first_pass krb5_auth
в pam, но это может быть отменено authconfig
.