[vyreseno] SELinux a RLIMIT_NOFILE
Jan Kasprzak
kas na fi.muni.cz
Pátek Červen 19 19:30:55 CEST 2020
Jan Kasprzak wrote:
[...]
: Aplikace je spouštěná z démona, kterému jsem teda zkusil nastavit hard i soft
: limit RLIMIT_NOFILE na 20k souborů. Podle /proc/<pid>/limits je tento limit
: skutečně nastavený:
:
: # grep 'open files' /proc/<pid démona>/limits
: Max open files 20480 20480 files
:
: Nicméně pdftex spouštěný přes fork+exec (ne přes shell) má soft limit
: zpátky na 1024, a pak samozřejmě spadne:
:
: # grep 'open files' /proc/<pid pdftexu>/limits
: Max open files 1024 20480 files
Hmm, tak teprve zobrazení dontauditovaných zpráv mě nakoplo správným
směrem:
Existuje speciální SELinuxové právo pro přechod z jedné domény do druhé,
jmenuje se "rlimitinh", které když není, tak se při přepnutí do jiné domény
nastavují všechny soft limity procesu na maximum z hard limitu procesu
(to je asi docela pochopitelné) a - wait for it, to byste nevymysleli -
soft limitu, který má proces číslo 1.
https://lwn.net/Articles/64635/
Takže přidat do politiky tex.te něco jako
require {
type démon_t;
};
allow démon_t tex_t:process { rlimitinh };
Tož tak, snad to někomu pomůže. To zas bylo produktivně strávené odpoledne.
-Y.
--
| Jan "Yenya" Kasprzak <kas at {fi.muni.cz - work | yenya.net - private}> |
| http://www.fi.muni.cz/~kas/ GPG: 4096R/A45477D5 |
IORING_OP_NOP ... the benefits of doing nothing asynchronously are minimal,
but sometimes a placeholder is useful. --Jonathan Corbet at LWN
Další informace o konferenci Linux