Ограничить удаленный 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

Другие вопросы по тегам