ssh trucuje pri pouziti pam_limits ?

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Neděle Leden 6 16:31:57 CET 2002


On Fri, 4 Jan 2002, Peter Popovec wrote:

> /etc/pam.d/ssh .. ma zadefinovane pouzitie pam_limits (podobne login atd.)
> session    required     pam_limits.so
[...]
> (samozrejme .. tento user _nema_ prekroceny pocet procesov t.j. nic mu  v
> tom case nebezi na cielovom pocitaci)
> 
> strace sshd procesu na ciel. pocitaci .. len ta snad zaujimava cast:
> ------------
[...]
> setrlimit(RLIMIT_NPROC, {rlim_cur=20, rlim_max=20}) = 0
[...]
> connect(9, {sin_family=AF_UNIX, path="/var/run/.nscd_socket"}, 110) = 0
> write(9, "\2\0\0\0\0\0\0\0\7\0\0\0", 12) = 12
> write(9, "guest1000\0", 7)                 = 7
> read(9, "\310\331\26@\1\0\0\0\7\0\0\0\2\0\0\0am\0\0am\0\0\4\0\0"..., 36) =
> 36
> read(9, "guest1000\0x\0,,,\0/home/guest/guest1000\0"..., 42) = 42
> close(9)                                = 0
> stat64("/home/guest/guest1000", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0

> fork()                                  = -1 EAGAIN (Resource temporarily unavailable)

Obavam se, ze pam_limits nastavi limit na pocet procesu jeste nez se sshd
prepne na ciloveho uzivatele, a tudiz se pri forku kontroluje pocet
procesu, ktere ma spusteny root. Coz je pravdepodobne vice nez 20, a tudiz
volani selze.

Obavam se, ze jednoduche reseni neexistuje. Otazka, zda maji byt nektere
PAMove operace provadeny pod rootem, nebo az pod cilovym uzivatelem, byla
delsi dobu predmetem sporu, nicmene AFAIK se dospelo k nazoru, ze
spravnejsi je, kdyz se tak bude dit zasadne pod rootem. Z tohoto
pohledu to pam_limits dela spatne. Bohuzel vsak nema moznost to delat
lepe.

--Pavel Kankovsky aka Peak  [ Boycott Microsoft--http://www.vcnet.com/bms ]
"Resistance is futile. Open your source code and prepare for assimilation."



Další informace o konferenci Linux