Hlavní navigace

PAM - praktické príklady použitia

8. 10. 2001
Doba čtení: 3 minuty

Sdílet

Po experimentovaní s PAM podľa článku Boleslava Bobčíka som sa trochu začal venovať tejto problematike a zistil som, že je to nadmieru silný nástroj. Dnes si ukážeme praktické príklady použitia tohto nástroja.

1. Notifikácia pri prístupe špecifického užívateľa k vybranej službe

Na adrese ftp://www.brlug­.net/pub/member­s/dpuryear/ nájdete zaujímavý PAM modul s názvom pam_login_alert. Tento modul slúži na notifikáciu administrátora o prístupe špecifikovaných užívateľov k ľubovoľnej službe, ktorá používa authorizáciu oproti PAM. Pozrime sa teda bližšie.

Po stiahnutí, kompilácii a nainštalovaní tohto modulu,

  mkdir pam_alert
  cd pam_alert
  tar xzvf pam_login_alert-LATEST.tgz
  make
  make install

nám v /etc/ pribudnú súbory s názvom login_alert.conf a login_alert.users. V login_alert.conf si nastavíme spôsob notifikácie administrátora. Jednou možnosťou je zápis do syslogu, druhou emailová notifikácia. Pre zápis do syslogu môžeme nastaviť facility a priority podľa /usr/include/sys/sys­log.h ako sme zvyknutí inde. Hneď si môžeme nastaviť aj pravidlá pre syslogd pre zapisovanie do samostatného súboru alebo na konzolu. Čiže napríklad:

  syslog on
  syslog_facility=LOG_AUTHPRIV
  syslog_priority=LOG_INFO

Nastavenie notifikácie emailom je takisto jednoduché

  mail on
  email user@server.cz

Treťou časťou je špecifikovanie súboru s definíciou užívateľov a to:

  user_list /etc/login_alert.users

Súbor /etc/login_aler­t.users je klasický textový súbor, kde je na každom riadku iba názov konta, pre ktoré sa má notifikácia robiť.

Teraz už zostáva iba modifikovať konfiguračný súbor pam v /etc/pam.d pre príslušnú službu. Pre otestovanie si môžeme vyskúšať na službe ftp notifikáciu pre prístup užívateľov test, test1

Do súboru /etc/login_aler­t.users si pridáme záznamy

  test
  test1

a súbor /etc/pam.d/ftp modifikujeme pridaním modulu pam_login_alert.so nasledovne

  auth  optional  /lib/security/pam_login_alert.so

Teraz si vyskúšajte pristúpiť k službe ftp pod kontom test, a všimnite si zápis v logovom súbore a email vo svojej schránke. Celkom užitočné v spojení so sms messagingom.

2. Obmedzenie prístupu k službe pre skupinu wheel.

S pomocou modulu pam_wheel.so môžeme obmedziť prístup k niektorým službám iba pre určitú skupinu užívateľov k tomuto účelu vyhradenej s názvom wheel GID 10, napríklad k príkazu su. Modul je súčasťou distribúcie, takže stačí, ak pridáme v našom prípade do /etc/pam.d/su naledujúce dva riadky

  auth sufficient /lib/security/pam_rootok.so debug
  auth required /lib/security/pam_wheel.so group=wheel

Teraz stačí zmeniť skupinovú príslušnosť vybraných užívateľov nasledovne:

  usermod -G10 login

a su môžu vykonať iba nami určení užívatelia.

3. PAM authentikácia oproti daemonu TACACS.

Na adrese www.ceti.com.pl/~kra­vietz/progs/pam_tac­plus.html nájdete pam modul na authentikáciu a authorizáciu oproti tacacsu. Po nainštalovaní modulu

  tar xzvf pam_tacplus-1.2.9.tar.gz
  cd pam_tacplus
  make
  make install

si nakonfigurujeme žiadanú službu, napríklad /etc/pam.d/ftp nasledovne

auth      required  /lib/security/pam_tacplus.so debug server=moj.server.cz
  secret=mojsecret encrypt
account   required  /lib/security/pam_tacplus.so debug server=moj.server.cz
  secret=mojsecret encrypt service=ftp protocol=ip
session   required  /lib/security/pam_tacplus.so debug server=moj.server.cz
  secret=mojsecret encrypt service=ftp protocol=ip

parameter server určuje server, na ktorom beží tacacs, secret určuje kryptovací kľúč (podľa nastavenia v konfiguračnom súbore tacacsu).

Teraz si v tacacsi nadefinujeme užívateľské konto. Definujeme si v ňom protokol ip a service ftp, aby authentikácia a authorizácia prešla, takže konto nadefinujeme napríklad ako:

CS24_early

  user=pokus {
    global = cleartext "mojeheslo"
    service = ftp  protocol=ip {
      default attirbute = permit
    }

Reštartneme tacacs a vyskúšame authentikáciu ftp. Všetko by malo prejsť bez problému, prípadné chyby nájdete v syslogu. Takže máme jedno z ďalších praktických použití tacacsu.

Na záver asi toľko, najlepšie je testovať si to na nejakých menej dôležitých službách a nie priamo na login, passwd a podobne. Určite nás to uchráni pred náhodnými nemilými prekvapeniami.

Byl pro vás článek přínosný?

Autor článku