| SETPRIV(1) | Användarkommandon | SETPRIV(1) |
NAMN
setpriv - kör ett program med olika inställningar för Linux-privilegier
SYNOPSIS
setpriv [flaggor] program [argument]
BESKRIVNING
Ställer in eller frågar efter olika Linux-privilegieinställningar som ärvs av execve(2).
I jämförelse med su(1) och runuser(1) använder setpriv varken PAM eller frågar efter lösenord. Det är en enkel, icke-set-user-ID-omslag runt execve(2), och kan användas för att släppa privilegier på samma sätt som setuidgid(8) från daemontools, chpst(8) från runit, eller liknande verktyg som levereras av andra tjänstehanterare.
FLAGGOR
--clear-groups
-d, --dump
--groups grupp...
--inh-caps (+|-)cap..., --ambient-caps (+|-)cap..., --bounding-set (+|-)cap...
Uppsättningen av funktioner börjar som den aktuella ärftliga uppsättningen för --inh-caps, den aktuella omgivande uppsättningen för --ambient-caps och den aktuella avgränsande uppsättningen för --bounding-set.
Observera följande restriktioner (som beskrivs i capabilities(7)) beträffande modifieringar av dessa kapacitetsuppsättningar:
Om du tar bort en kapacitet från den avgränsande uppsättningen utan att samtidigt ta bort den från den ärftliga uppsättningen, kommer du sannolikt att bli förvirrad. Gör inte så.
--keep-groups
--init-groups
--list-caps
--nnp, --no-new-privs
Biten no_new_privs stöds sedan Linux 3.5.
--rgid gid, --egid gid, --regid gid
För säkerhets skull måste du ange något av --clear-groups, --groups, --keep-groups eller --init-groups om du anger någon primär gid.
--ruid uid, --euid uid, --reuid uid
Att ställa in en uid eller gid ändrar inte kapaciteten, även om exec-anropet i slutet kan ändra kapaciteten. Det innebär att om du är root vill du förmodligen göra något i stil med:
setpriv --reuid=1000 --regid=1000 --inh-caps=-all
--securebits (+|-)securebit...
--pdeathsig keep|clear|<signal>
--ptracer pid|any|none
--selinux-label etikett
--apparmor-profile profile
--landlock-access access
Blockera all åtkomst till filsystemet:
setpriv --landlock-åtkomst fs
Blockera all radering av filer och skapande av kataloger:
setpriv --landlock-åtkomst fs:remove-file,make-dir
För en fullständig uppsättning av åtkomstkategorier som stöds, använd setpriv --help.
The generic placeholder "fs" is subject to change and may be extended in future versions to support new access types.
--landlock-rule rule
Syntaxen är som följer:
--landlock-rule $ruletype:$access:$rulearg
Ge t.ex. läsåtkomst till allt under /boot:
--landlock-rule path-beneath:read-file:/boot
--seccomp-filter fil
Filter kan t.ex. skapas med enosys.
--reset-env
The environment variable PATH may be different on systems where /bin and /sbin are merged into /usr.
-h, --help
-V, --version
ANTECKNINGAR
Om tillämpningen av någon av de angivna flaggorna misslyckas kommer program inte att köras och setpriv kommer att returneras med utgångsstatus 127.
Var försiktig med det här verktyget - det kan få oväntade konsekvenser för säkerheten. Om du till exempel ställer in no_new_privs och sedan kör ett program som är SELinux-begränsat (som det här verktyget skulle göra) kan det hända att SELinux-begränsningarna inte träder i kraft.
EXEMPEL
Om du vill ha ett beteende som liknar su(1)/runuser(1) eller sudo(8) (utan flaggan -g) kan du prova något liknande:
setpriv --reuid=1000 --regid=1000 --init-groups
Om du vill efterlikna daemontools setuid(8) kan du prova:
setpriv --reuid=1000 --regid=1000 --clear-groups
UPPHOVSPERSONER
Andy Lutomirski <luto@amacapital.net>
SE ÄVEN
FELRAPPORTERING
För felrapporter, använd felhanteraren https://github.com/util-linux/util-linux/issues.
TILLGÄNGLIGHET
Kommandot setpriv ingår i paketet util-linux som kan hämtas från Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.
| 2026-05-18 | util-linux 2.42.1 |