Назад | Перейти на главную страницу

Tacacs + с двухфакторной аутентификацией Google PAM?

Я работаю над сервером tacacs + для своей сети университетского городка, и мне было интересно, как я могу настроить сервер tacacs + для связи с PAM, использующим двухфакторную аутентификацию Google. Я немного погуглил, нашел полезную информацию, но не нашел четкой «дорожной карты», и многие шаги в лучшем случае кажутся нечеткими. У меня сейчас работает тестовый стенд Ubuntu tacacs + без настроенных коммутаторов или маршрутизаторов.

Кто-нибудь делал что-то подобное? Я нашел здесь относительно хорошее руководство в цепочке электронной почты redhat: https://www.redhat.com/archives/pam-list/2014-March/msg00008.html

Я не знаю, куда идти дальше и как работает эта система. Есть ли какие-нибудь примеры, которым я могу следовать, или какие-нибудь предложения? Мне кажется, что сейчас я нахожусь в режиме проб и ошибок.

РЕДАКТИРОВАТЬ: В частности, прямо сейчас я смотрю на примеры файлов конфигурации PAM в /etc/pam.d/(tac_plus? Как бы он ни назывался), и я не уверен, что именно туда нужно. Это что-то вроде аутентификатора Google или tacacs +? Мой пример выглядит примерно как приведенный ниже код, но я не уверен, что здесь происходит:

auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        sufficient    pam_ldap.so use_first_pass
auth        required      pam_deny.so

account     required      pam_unix.so broken_shadow
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     [default=bad success=ok user_unknown=ignore] pam_ldap.so
account     required      pam_permit.so

password    requisite     pam_cracklib.so try_first_pass retry=3
password    sufficient    pam_unix.so md5 shadow nullok try_first_pass 
use_authtok
password    sufficient    pam_ldap.so use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
session     [success=1 default=ignore] pam_succeed_if.so service in 
crond quiet use_uid
session     required      pam_unix.so
session     required      pam_mkhomedir.so skel=/etc/skel/ umask=0077
session     optional      pam_ldap.so

Также есть конфигурация для tacacs, которая выглядит очень простой, но, как и все остальное, я никогда ее раньше не видел, поэтому я не слишком уверен. Выглядит это так:

# admin group
group = admins {
        default service = permit
        login = PAM
        service = exec {
             priv-lvl = 15
        }
}

Разделив его на две части, каталог pam предназначен для вашей аутентификации для служб: tac_plus. Файл конфигурации tac_plus предназначен для службы: tacacs +

PAM

Pam - это ваша подключаемая аутентификация, здесь вы собираетесь настроить аутентификацию пользователя / пароля с помощью google auth, поскольку google auth очень часто используется для таких сервисов, как RADIUSD и SSHD, я украду для этого некоторый общедоступный код.

# 1 результат в Google Супертехнолог к которому я на самом деле пошел и написал упрек в отношении некоторых из его мер безопасности Вот но по сути:

Добавьте это в свой раздел авторизации pam.d / tac_plus

auth requisite pam_google_authenticator.so forward_pass
auth required pam_unix.so use_first_pass

Вы можете изменить расположение ключей аутентификации Google, если хотите кормить пользователей из ldap и предварительно сгенерировать их ключи BASE32 вместо использования инструмента google-auth. Подробнее о модуле pam google_auth

TACACS ++

tac_plus - это сервис, при аутентификации с помощью этого сервиса он будет использовать модуль pam для tac_plus, так же, как radiusd и sshd.

Есть масса руководств о том, как это настроить, http://www.shrubbery.net/tac_plus/ например, к сожалению, я лично не настраивал tac_plus.

ЧИТАТЬ

Когда вы аутентифицируетесь с помощью google auth forward_pass ваш пароль - пароль и googleauth

пароль: MyPassword

Google Totp: 222555

полученный пароль вы вводите: MyPassword222555