Active Directory určite poznáte, ak ale nie tak je to implementácia LDAP protokolu spoločnosťou Microsoft. Active Directory nájdete skoro v každom väčšom korporáte, keďže dovoľuje centrálnu správu užívateľov a skupín. Samozrejme najväčšia výhoda je že vďaka otvorenosti protokolov máme možnosť používať Active Directory ako autentifikačný server pre mnoho koncových zariadení.
Konfigurácia Active Directory, pridávanie užívateľov a taktiež nastavenie DNS je nadrámec tehto článku. Budeme teda pracovať s tým že máme vytvoreného užívateľa, máme vytvorené skupiny ktoré sú pridelené k užívateľom.
Inštalácia
V prvom kroku nainštalujeme potrebné balíky ktoré potrebujeme na overovanie oproti Active Directory.
# yum install sssd realmd oddjob oddjob-mkhomedir adcli samba-common samba-common-tools krb5-workstation openldap-clients policycoreutils-python
Následovne je potrebné overiť či daný stroj má správne nastavený DNS server.
# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.1.2
nameserver 1.1.1.1
V prípade že stroj nemá správny DNS server, je potrebné ho v NetworkManager zmeniť aby smeroval na náš Active Directory.
# nmcli con mod (nazov_pripojenia) ipv4.dns "VAS_AD_SERVER 1.1.1.1"
Prihlásenie zariadenia do domény
Teraz môžeme pripojiť náš server do domény example.com pod užívateľom Administrator, samozrejme môžeme použiť iného užívateľa.
# realm join --user=Administrator hostname.example.com
Overiť pripojenie môžeme pomocou príkazu „realm list“
# realm list
example.com
type: kerberos
realm-name: EXAMPLE.COM
domain-name: EXAMPLE.COM
configured: kerberos-member
server-software: active-directory
client-software: sssd
required-package: oddjob
required-package: oddjob-mkhomedir
required-package: sssd
required-package: adcli
required-package: samba-common-tools
login-formats: %[email protected]
login-policy: allow-permitted-logins
login-policy: allow-realm-logins
Teraz vieme že náš stroj je v Active Directory, taktiež si teraz overíme či vidíme užívateľov.
# id [email protected]
uid=000000000([email protected]) gid=000000000([email protected]) groups=000000000([email protected])
Teraz sa môžeme prihlásiť pod užívateľským kontom [email protected], ale samozrejme nechce sa nám všade písať aj názov domény. SSSD nám dáva možnosť používať iba použivateľské meno.
vi /etc/sssd/sssd.conf
use_fully_qualified_names = False
Následne je potrebné reštartovať daemon.
# systemctl restart sssd
Teraz môžeme overiť či konfigurácia je funkčná.
# id uzivatel
uid=000000000(uzivatel) gid=000000000(linux) groups=000000000(linux)
Nastavenie politiky prihlasovania
Samozrejme nechceme aby sa každý mohol prihlásiť. Preto je vhodné nastaviť aby sa vedeli prihlásiť iba určitý užívatelia.
Najjednoduchšia autentifikácia je pomocou užívateľského mena, kedy pridávame určitých užívateľov.
# realm permit [email protected]
# realm permit [email protected] [email protected]
Táto možnosť je funkčná ale pri väčšom počte serverov a taktiež pri väčšom počte užívateľov je vhodné používať autentifikácia pomocou LDAP skupín.
# realm permit -g 'linux'
# realm permit -g 'Skupina2' 'Skupina3'
V prípade že chceme určitej skupine sudo privilégia, tak aj to vieme. Stačí pridať skupinu do sudoers akoby sme pridávali normálnu skupinu.
%[email protected] ALL=(ALL) ALL
%nazov\ [email protected] ALL=(ALL) ALL
Teraz nám už len ostáva sa skúsiť pomocou ssh prihlásiť cez nášho Active Directory užívateľa
# ssh uzivatel@localhost
ECDSA key fingerprint is .
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
uzivatel@localhost's password:
[uzivatel@localhost ~]$ whoami
[email protected]
Naše prihlásenie bolo úspešné tak už nám nezostáva nič iné než aplikovať toto riešenie na všetkých strojoch.
Dúfam že si užijete implementáciu!
Študent, sieťar, systemák. GNU/Linuxu sa venujem od 2009teho kedy som si začal robiť svoje prvé servery. V dnešnej dobe používam hlavne Debian a CentOS. So sieťami pracujem od roku 2015 a dodnes ma živia, preto som veľký zástanca kvalitných topológii, bezpečia v sieti a IPv6 samozrejme.
Dominik Hrinkino • Post Author •
3. mája 2020 at 11:58V prípade Debianu je konfigurácia totožná len sa trošku líšia balíky. V Debian 10 je potrebné nainštalovať nasledujúce balíky
apt install realmd sssd oddjob oddjob-mkhomedir adcli samba-common samba-common krb5-user sssd-tools sssd libnss-sss libpam-sss adcli packagekit
Postup ostáva rovnaký