МОЯ НАСТРОЙКА
У меня есть кластер машин под управлением Centos 7.3, и я использую Kerberos / LDAP для аутентификации. Kerberos / LDAP упакованы в FreeIPA 4.4.0.
Все хосты имеют адрес 192.168.1.0/24. Я буду называть это "основной" сетью.
У некоторых хостов есть адрес в 192.168.2.0/24. Я буду называть это "вторичной" сетью. Для хостов, имеющих этот второй интерфейс, в DNS есть соответствующие дополнительные записи A / PTR, которые связывают вторичное имя хоста и вторичный IP-адрес. Во всех случаях вторичное имя хоста - <первичное имя хоста> -eth1.
МОЯ ЦЕЛЬ
Я работаю над внедрением единого входа в нашем кластере. Единый вход работает нормально в первичной сети, но не во вторичной сети.
То, что я сделал так далеко: сторона сервера
Я настроил сервер следующим образом:
ipa-server-install \
-r ME.EXAMPLE.COM \
-n me.example.com \
--mkhomedir \
--hostname=host-1.me.example.com \
--ip-address=192.168.1.1 \
--ssh-trust-dns \
--setup-dns \
--auto-forwarders \
--forward-policy=only \
--auto-reverse \
--dirsrv-cert-file=<path to server SSL certificate> \
--http-cert-file=<path to server SSL certificate> \
--no-dnssec-validation
После завершения установки сервера я также должен вручную добавить следующую запись PTR в DNS:
1.1.168.192.in-addr.arpa PTR host-1.me.example.com
Я должен сделать это, так как, по-видимому, флаг --auto-reverse для ipa-server-install не работает (или, возможно, более вероятно, я этого не понимаю).
То, что я сделал так далеко: сторона клиента
Я настроил свои клиентские машины следующим образом:
ipa-client-install \
--force-ntpd \
-p admin \
-W \
--mkhomedir \
--no-nisdomain \
--ssh-trust-dns
Как и при установке сервера, мне также пришлось вручную добавлять записи DNS PTR для клиентов. Форвард А записи, созданные FreeIPA, были хороши во всех случаях.
Затем, чтобы зарегистрировать вторичное имя хоста с FreeIPA, я сделал следующее на клиенте:
kinit admin
ipa-join -h host-1-eth1.me.example.com
Как и раньше, это создавало записи пересылки DNS A, но мне пришлось вручную добавлять соответствующие записи DNS PTR.
ЭТА ПРОБЛЕМА
Где у меня возникли проблемы, это на вторичной сети. Например, я могу SSH к хосту-1 без пароля (т. Е. SSO работает в основной сети), но я не могу SSH к хосту-1-eth1 без пароля (т. Е. SSO не работает во вторичной сети),
Есть два запроса, которые можно получить от SSH:
- Приглашение принять неизвестный ключ хоста SSH
- Запрос пароля пользователя
У меня не запрашивается пароль пользователя, когда я SSH к хосту, используя его вторичное имя хоста. Это приглашение принять неизвестный ключ хоста SSH, который я не могу обойти при попытке SSH к хосту, используя его вторичное имя хоста. И это происходит потому, что ...
Я наблюдал, что нет никаких записей DNS SSHFP, генерируемых для вторичных имен хоста. Все одинаковые ключи хоста SSH должны быть связаны с дополнительным именем хоста, как и с основным именем хоста. Однако этого не происходит.
Как я должен использовать FreeIPA, чтобы получить необходимые записи DNS SSHFP, сгенерированные для вторичных имен хостов? Очевидно, что требуется больше, чем ipa-join, которым я занимаюсь.