Ssh/Domain
< Ssh
Версия от 12:13, 13 августа 2024; Anton Shevtsov (обсуждение | вклад)
Предназначение
Хранение публичных ssh ключей в ldap (samba/ad) при использовании sssd. sssd может получать информацию о правилах sudo, или ssh ключах из LDAP.
Настройка
В описании домена в /etc/sssd/sssd.conf добавить сервис ssh и имя поля где хранится ключ
[sssd] services = nss,pam,sudo,ssh [domain/TEST.ALT] ... ldap_user_extra_attrs = altSecurityIdentities:altSecurityIdentities ldap_user_ssh_public_key = altSecurityIdentities ldap_use_tokengroups = True
В конфиге /etc/openssh/sshd_config, определить директивы AuthorizedKeysCommand*
AuthorizedKeysCommand /usr/bin/sss_ssh_authorizedkeys %u AuthorizedKeysCommandUser root
Перезапустить сервисы sssd, sshd
Хранение ключей
У пользователя есть поле altSecurityIdentities, в него нужно поместить публичный ключ.
Сделать это можно
- в консоли, через samba-tool user edit domainuser
- через ldif файл и запуск ldapmodify
# cat ssh.ldif dn: CN=domainuser3,OU=TestUsers,DC=test,DC=alt changetype: modify add: altSecurityIdentities altSecurityIdentities: ssh-ed25519 AAAAC3NzaC1lZDI1NTHJUWQWAID7GcueJQ18pIPiBlZ45JKSbl3G/amJAVuKJ4UUUnGOf domainuser3@pc
# ldapmodify -Y GSSAPI -N -H ldap://dc.test.alt -f ./ssh.ldif SASL/GSSAPI authentication started SASL username: administrator@TEST.ALT SASL SSF: 256 SASL data security layer installed. modifying entry "CN=domainuser3,OU=TestUsers,DC=test,DC=alt"
- либо в графике, через admc или RSAT
Использование
Теперь заходя на хосты, где настроен sssd на получение ключей из LDAP, аутентификация пользователя к которого указан ключ будет происходить по ключу.
Полезные ссылки
- sudo в ldap