Ограничить удаленный IP-адрес пользователей SSH через запись LDAP
Наша установка: сервер LDAP - OpenLDAP со схемами openssh и sudo. Сервер Bastion - принимает SSH из любого места и аутентифицирует пользователей через открытые ключи, хранящиеся в LDAP (используя sssd). Целевой сервер [s] - должен принимать SSH только от сервера Bastion и аутентифицировать пользователей через открытые ключи, хранящиеся в LDAP (используя sssd)
Теперь эта настройка работает, и на целевом сервере ограничение осуществляется через sshd AllowUsers
такие как AllowUsers *@bastion_ip
Однако это стало проблемой, когда из-за проблем IDC бастион стал недоступен. Таким образом, рендеринг всех серверов недоступен.
В качестве продолжения этой ситуации я думаю, есть ли способ выполнить подобное ограничение, но хранить bastion_ip
в записи LDAP для пользователя (или в другой записи), что позволяет быстро перейти на другой IP в случае возникновения подобных ситуаций.
Есть ли такой способ? Или какой-то обходной путь, о котором я не думал?
1 ответ
Единственная похожая вещь (которая использует имя хоста, но не IP), которую поддерживает SSSD, это свойство ldap_user_authorized_host для access_provider=ldap. Смотрите man sssd-ldap для более подробной информации.
Из комментария: Мы интерактивно решили проблему с OP на IRC, и оказалось, что pam-sss.so не был установлен в стеке PAM, что привело к тому, что провайдер доступа SSSD вообще не вызывался. Решение - обновить конфиги pam с помощью authconfig --enablesssdauth --update