Konfigurácia PAM
Nastavenie vlastnej domény
1.Vytvorte vlastnú doménu pre používateľov, ktorí sa prihlasujú cez modul PAM.
2.Pri konfigurácii klienta RADIUS vyberte v sekcii Users vlastnú doménu.
Vlastná doména vs. aktuálna doména AD Ak je vybraná vlastná doména a modul PAM odošle na server ESA RADIUS „domain\username“, potom sa vo vlastnej doméne vytvorí používateľ s prihlasovacím menom „domain\username“. Ak namiesto vlastnej domény vyberiete možnosť Current AD domain alebo Current AD domain and domains in trust a modul PAM odošle na server ESA RADIUS „domain\username“, v doméne „domain“ sa vytvorí používateľ s prihlasovacím menom „username“. |
Autentifikačný modul PAM
1.Stiahnite si PAM RADIUS tar.gz zo stránky https://freeradius.org/sub_projects/.
2.Stiahnutý balík rozbaľte tak, že v okne terminálu spustíte nasledujúci príkaz:
tar xzvf pam_radius-release_2_0_0.tar.gz
3.Vytvorte knižnicu .so tak, že v okne terminálu spustíte nasledujúce príkazy:
cd pam_radius-release_2_0_0
./configure
make
Na systéme Linux, napríklad OpenSuse, môže byť v závislosti od výstupu príkazu configure potrebné nainštalovať požadované závislosti.
sudo zypper install gcc make pam-devel
4.Vytvorenú knižnicu skopírujte do predvoleného umiestnenia modulov PAM.
Linux:
cp pam_radius_auth.so /lib/security
alebo
cp pam_radius_auth.so /lib64/security
Mac:
cp pam_radius_auth.so /usr/lib/pam
V OS X El Capitan a novších systémoch je táto lokalita chránená funkciou System Integrity Protection. Ak ju chcete použiť, musíte túto funkciu deaktivovať pre príkaz kopírovania.
5.V adresári /etc/raddb/ vytvorte konfiguračný súbor servera s názvom server. V ňom zadajte podrobnosti o serveri RADIUS v tomto formáte:
<radius server>:<port> <shared secret> <timeout in seconds>
Napríklad:
1.1.1.1 test 60
kde:
•1.1.1.1 predstavuje IP adresu servera ESA RADIUS.
•test je Shared Secret klienta RADIUS nakonfigurované v ESA Web Console.
•60 je čas v sekundách vyjadrujúci, ako dlho sa má čakať na schválenie push notifikácie.
6.Na konfiguračný súbor aplikujte príslušné bezpečnostné povolenia:
chown root /etc/raddb
chown root /etc/raddb/server
chmod 600 /etc/raddb
chmod 600 /etc/raddb/server
Pozrite si bezpečnostné odporúčania pre konfiguračný súbor v dokumente INSTALL (Inštalácia) a parametre, ktoré možno preniesť do knižnice, v dokumente USAGE (Použitie). Môžete napríklad použiť parameter „debug“ na identifikáciu potenciálnych problémov.
Integrácia modulu PAM
Moduly PAM možno integrovať do rôznych typov prihlásenia, napríklad login, sshd, su, sudo a tak ďalej. Zoznam dostupných typov prihlásenia sa nachádza v adresári /etc/pam.d/.
•sshd – vzdialené prihlásenie cez SSH
V /etc/ssh/sshd_config nezabudnite nastaviť ChallengeResponseAuthentication na yes. |
•sudo
•su
•common-auth – OpenSUSE (všetky overenia)
•login – OpenSUSE (prihlásenie do konzoly)
•authorization – prihlasovacia obrazovka macOS
Ak chcete povoliť dvojúrovňové overovanie pre ktorúkoľvek z vyššie uvedených služieb, pridajte nasledujúci riadok do zodpovedajúceho konfiguračného súboru v /etc/pam.d:
auth required pam_radius_auth.so use_first_pass
V uvedenom príkaze predstavuje pam_radius_auth.so cestu k skôr nakonfigurovanému modulu PAM, prípadne to môže byť „pam_radius_auth.so“. use_first_pass zabezpečuje, aby modul PAM zbytočne nevyžadoval ďalšie heslo (OTP), pokiaľ ESA RADIUS nevyžaduje druhý faktor. Napríklad, ak má používateľ s 2FA ochranou povolenú push autentifikáciu, modul PAM čaká iba na potvrdenie push notifikácie bez toho, aby vyžadoval zadanie OTP.
Aby sa zabezpečilo, že 2FA nebude vyžiadané pri zlyhaní prvého faktora, zmeňte auth required pam_unix.so na auth requisite pam_unix.so.
Niektoré prihlasovacie rozhrania vrátane prihlasovacieho okna macOS nedokážu zobraziť osobitné pole pre 2FA. V takýchto prípadoch sa môžu prihlásiť iba používatelia, ktorí používajú push autentifikáciu (Mobile Application Push), používatelia, ktorí nepoužívajú 2FA, prípadne používatelia z dôveryhodných IP adries. Na zaistenie toho, aby sa používala iba autentifikačná metóda Mobile Application Push bez potreby zadávania OTP aj v prípade, že používateľ má povolené dodatočné nastavenia 2FA, pridajte client_id=challenge_never do konfiguračného riadku:
auth required pam_radius_auth.so use_first_pass client_id=challenge_never
Dostupné hodnoty pre client_id:
•challenge_if_possible – táto prednastavená možnosť vždy vyzve na zadanie OTP, ak má používateľ povolený akýkoľvek typ OTP, a to aj v prípade, že odoslanie „Mobile Application Push“ bolo úspešné.
•challenge_always – OTP bude vyžiadané vždy, a to aj v prípade, že odoslanie „Mobile Application Push“ bolo úspešné a používateľ nemá povolený žiadny typ OTP. Ak niečo zlyhá, vždy vám bude umožnené zadať MRK (toto sa odporúča v kritických scenároch, napríklad pri prihlásení cez SSH na vzdialený server, ku ktorému nie je možné ľahko získať prístup iným spôsobom).
•challenge_if_needed – OTP nebude vyžiadané, pokiaľ je odoslanie „Mobile Application Push“ úspešné. Týmto sa zabráni odoslaniu ďalšej OTP výzvy a bude umožnené rýchlejšie prihlásenie.
•challenge_never – OTP nebude vyžiadané nikdy.
V niektorých distribúciách systému Linux je ľahko možné zmeniť správcu prihlásenia. Napríklad, gdm podporuje zobrazovanie výziev na poskytnutie dodatočných informácií.