Kā tas darbojas un kā konfigurēt PAM operētājsistēmā Linux

Drošība, pārvaldot lietotājus Linux vidē, ir būtiska, un mums vienmēr ir jāmeklē labākās iespējas, kas šim nolūkam pieejamas vai nu iekšēji, vai ārēji. Viena no drošākajām metodēm, kā palielināt drošību Linux sistēmās, ir pārvaldīt daudz efektīvāk. kā lietotāji tiek autentificēti sistēmā, tas ļauj sistēmai piekļūt tikai tiem lietotājiem, kuriem ir pareizie akreditācijas dati.

Šajā gadījumā mums ir funkcionalitāte ar nosaukumu Linux -PAM (Pluggable Authentication Modules for Linux - Pluggable Authentication Modules for Linux), kas ir izstrādāta kā bibliotēku kopums, ar kurām sistēmas administrators varēs izvēlēties veidu, kādā lietojumprogrammas autentificēt lietotājus vietējā tīklā.
Apkopojot lietojumprogrammu, kas ir saderīga ar PAM, mēs varam pārslēgties starp izmantotajiem autentifikācijas mehānismiem.

Lai mazliet labāk izprastu šo jēdzienu, mēs varam analizēt veidu, kādā lietotāji pašlaik tiek autentificēti, vispirms tiek pārbaudīta lietotāja identitāte, ievadot lietotājam piešķirto paroli, šīs paroles tiek saglabātas failā / etc / passwd, tad privilēģija tiek definēta personiskā lietotāja identifikatora veidā, ko sauc par UID, un dalība pieejamajās grupās, pakalpojumi un lietojumprogrammas ir pieejamas, pamatojoties uz katra lietotāja personisko un grupas identitāti.

PAM bibliotēka ir lokāli konfigurēta sistēmas failā /etc/pam.conf vai failu sērijā, kas atrodas mapē /etc/pam.d/, lai autentificētu lietotāja pieprasījumu, izmantojot tikai lokāli pieejamos autentifikācijas moduļus.

Moduļi ir pieejami direktorijā / lib / security vai / lib64 / security. /Etc/pam.conf konfigurācijas faila sintakse sastāv no noteikumu saraksta, un katra kārtula atrodas vienā rindā, bet to var pagarināt ar rindu, kas beidzas ar \. Komentāru priekšā ir atzīmes “#”, un tie sniedzas līdz atlasītās rindas nākamajam galam.

Katra noteikuma formāts ir cilņu kopums, kas atdalīts ar atstarpēm, pirmie trīs nav reģistrjutīgi, piemēram:

 pakalpojuma veida kontroles modulis-ceļa modulis-argumenti
Izmantotie parametri ir:

apkalpošanaTas ir īstais lietojumprogrammas nosaukums.
TipsTas ir moduļa / konteksta / saskarnes veids.
KontroleAttiecas uz PAM API rīcību gadījumā, ja modulis nevar izpildīt autentifikācijas uzdevumu
Moduļa ceļšTas ir PAM absolūtais faila nosaukums vai relatīvais ceļš.
modulis-argumentiNorāda ar atstarpi atdalītu marķieru sarakstu, lai kontrolētu moduļa darbību.

Katra faila sintakse sistēmā /etc/pam.d/ ir identiska un sastāv no rindām ar šādu struktūru:

 ierakstiet control-flag modulis modulis-argumenti
Piemēram, failā /etc/pam.d/sshd ir pieejama kārtulu definīcija (bez moduļa argumentiem), kas nepieļauj pieteikšanos, kas nav root, ja ir pieejama /etc /nologin.
 nepieciešams konts pam_nologin.so

1. Kā pārvaldīt PAM vadīklas un grupas Linux


PAM autentifikācijas uzdevumi ir sadalīti četrās atsevišķās administrācijas grupās, un katra no šīm grupām pārvalda dažādus lietotāja pieprasījumus par ierobežotu pakalpojumu.

Modulis ir saistīts ar vienu no šāda veida administrēšanas grupām šādā veidā:

kontsŠī vērtība piedāvā pakalpojumus konta pārbaudei ar tādiem aspektiem kā lietotāja paroles derīguma termiņa beigas vai ja lietotājam ir atļauta piekļuve pieprasītajam pakalpojumam.
autentifikācijaIzmantojot šo vērtību, lietotājs tiek autentificēts un var konfigurēt lietotāja akreditācijas datus.
paroleTie ļauj lietotājiem atjaunināt paroles un ir integrēti PAM autentifikācijas moduļos
sesijaTas ir atbildīgs par sesijas sākumā un beigās veikto darbību pārvaldību.

Atkarībā no izmantotās arhitektūras PAM objektu faili atrodas šajā direktorijā / lib / security / vai / lib64 / security.

PAM atbalstītie vadības karodziņi ir:

nepieciešamsIzmantojot šo indikatoru, kļūme uzreiz atgriežas lietojumprogrammā, norādot pirmā moduļa atteices raksturu.
nepieciešamsTiek norādīts, ka visi moduļi ir nepieciešami, lai libpam tiktu izpildīts pareizi un atgrieztos lietojumprogrammā
pietiekamsŠis modulis noved pie tūlītējas un pareizas lietojumprogrammas atgriešanas, šajā gadījumā šī moduļa kļūme tiek ignorēta.
neobligātiŠī rādītāja veiksme vai neveiksme parasti netiek reģistrēta šajā rādītājā

Ir arī citas vērtības, piemēram:

iekļautTas ietver visas tipa rindas, pamatojoties uz konkrēto konfigurācijas failu, kā argumentu šai vadībai.
apakškaudzeIetver visas dotā tipa rindas no norādītā konfigurācijas faila kā argumentu šai konkrētajai vadīklai.

2. Kā pārbaudīt, vai programma ir saderīga ar PAM operētājsistēmā Linux


Lai PAM ieviestu lietojumprogrammā, tam jābūt rakstītam un apkopotam speciāli, lai izmantotu PAM, lai pārbaudītu, vai šī lietojumprogramma ir saderīga, piemēram, SSH, mēs izpildīsim sekojošo:
 sudo ldd / usr / sbin / sshd | grep libpam.so

PALIELINĀT

3. Kā ierobežot root piekļuvi, izmantojot SSH, izmantojot PAM operētājsistēmā Linux


PAM var izmantot, lai atspējotu root lietotāju piekļuvi sistēmai, izmantojot SSH un pieteikšanās programmas, un tas palīdz palielināt sistēmas drošības iespējas.

Ja mēs to vēlamies, mēs izmantosim /lib/security/pam_listfile.so moduli, kas dod mums iespēju ierobežot konkrētu kontu privilēģijas.

1. darbība
Lai veiktu šo darbību, mēs piekļūsim failam /etc/pam.d/ šādi:

 sudo nano /etc/pam.d/sshd
VAI
 sudo nano /etc/pam.d/login
2. solis
Tur mēs redzēsim sekojošo:

PALIELINĀT

3. solis
Šajā gadījumā beigās pievienosim šādas rindas:

 auth nepieciešams pam_listfile.so \ onerr = izdoties vienums = lietotāja sajūta = liegt failu = / etc / ssh / deniedusers

PALIELINĀT

Šajā gadījumā ir pievienoti šādi parametri:

autTas ir izmantojamā moduļa veids
nepieciešamsTas ir kontroles karogs, ar kuru, ja tiek izmantots modulis, tas ir jānokārto, pretējā gadījumā kopējais rezultāts neizdosies neatkarīgi no citu moduļu statusa.
pam_listfile.soTas ir modulis, ar kuru ir atļauts liegt vai atļaut pakalpojumus, kuru pamatā ir patvaļīgs fails.
onerr = izdotiesTas ir moduļa arguments.
vienums = lietotājsTas ir tā moduļa arguments, kurā norādīts, kas ir norādīts failā un kas ir jāpārbauda.
jēga = noliegtTas attiecas uz tā moduļa argumentu, kurā ir norādīta veicamā darbība, ja tā ir atrodama failā, ja tā nav, tiek prasīta pretēja darbība.
fails = / etc / ssh / deniedusersTas ir tā moduļa arguments, kurā ir norādīts fails, kurā katrā rindā ir viens elements.

Mēs saglabājam izmaiņas, izmantojot Ctrl + O taustiņus, un izejam no redaktora, izmantojot Ctrl + X.

Pēc tam mums ir jāizveido fails / etc / ssh / deniedusers un jāpievieno tajā saknes lietotājs un vēlāk jāpiešķir attiecīgās atļaujas:

 sudo chmod 600 / etc / ssh / deniedusers

4. Kā konfigurēt PAM operētājsistēmā Linux


Īpaša vērtība ir PAM noklusējuma vērtība, tāpēc visas vērtības nav skaidri minētas, tāpēc vērtība N atbilst funkcijas atgriešanas kodam, kas tiek izsaukts modulī, kuram līnija ir definēta.
Darbībai ir daži argumenti, piemēram:

ignorētJa šo darbību izmanto kopā ar moduļu kaudzi, moduļa atgriešanās statuss no lietojumprogrammas neģenerē atgriešanās kodu.
sliktiNorāda, ka atgriešanās kods jāuzskata par norādītu uz izmantotā moduļa kļūmēm.
nomirtTas pilda to pašu funkciju kā slikts, bet spēj pārtraukt moduļu kaudzīti un PAM nekavējoties atgriežas lietojumprogrammā.
LabiŠī vērtība norāda PAM, ka sistēmas administrators izmantos šo atgriešanās kodu tieši pilna moduļu kaudzes atgriešanās kodam.
darītsIzpilda to pašu lomu kā Ok, bet var pārtraukt moduļa kaudzīti
N(neparakstīts vesels skaitlis) - ekvivalents ok, bet var pārlēkt pāri nākamajiem kaudzes N moduļiem.
AtiestatītIzmantojot šo parametru, tiek iztīrīta visa moduļa kaudzes stāvokļa atmiņa un restartēts ar nākamo sakrauto moduli.

Katrs no PAM pamata vārdiem, obligāts; rekvizīts; pietiekama un neobligāta, tai ir līdzvērtīga izteiksme […] sintakses ziņā, ar kuru būs iespējams uzrakstīt sarežģītākus noteikumus, piemēram:

nepieciešams[panākumi = ok new_authtok_reqd = ok ignore = ignore default = bad]
nepieciešams[panākumi = labi new_authtok_reqd = labi ignorēt = ignorēt noklusējumu = nomirt]
pietiekams[panākumi = darīts jauns_authtok_reqd = darīts noklusējums = ignorēt]
neobligāti[panākumi = ok new_authtok_reqd = ok noklusējums = ignorēt]

1. darbība
Piemēram, CentOS 7 mēs varam redzēt PAM faila noteikumus, izpildot:

 sudo nano /etc/pam.d/postlogin

PALIELINĀT

2. solis
Ja mēs piekļūstam failam:

 sudo nano /etc/pam.d/smartcard-auth

PALIELINĀT

Lai piekļūtu vairāk PAM palīdzības, mēs varam izpildīt:

 vīrietis pam.d
Izmantojot PAM, būs iespējams izveidot vai rediģēt noteikumus, lai labāk pārvaldītu autentifikācijas procesus Linux.

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave