Jinak receno, dasli typicka ukazka tohodle kretena ... neco zkurvi, a chce po ostatnich at zmenej svuj sw ...
Fakt nevim proc by user nemoh zacinat cislem. Sem zvedat, kdy ten kokot napise systemd-mta ... a pak se bude rozcilvoat ze hacky v domene (nebo v dokonce v mailu) prece bejt nemuzou ...
Ono je víc programů, které s tím mají problém. Ten regexp (^[a-z][-a-z0-9]*$) v adduser není jen pro srandu.
Hlavní problém vidím v tom, že se to chová nekonzistentně. Toto se stane při spuštení unity s nastaveným neexistujícím uživatelem:
root@tomas:/etc/systemd/system# systemctl start t Job for t.service failed because the control process exited with error code. See "systemctl status t.service" and "journalctl -xe" for details. Jul 03 08:19:11 tomas systemd[2303]: t.service: Failed to determine user credentials: No such process Jul 03 08:19:11 tomas systemd[1]: t.service: Main process exited, code=exited, status=217/USER Jul 03 08:19:11 tomas systemd[1]: Failed to start Test. Jul 03 08:19:11 tomas systemd[1]: t.service: Unit entered failed state. Jul 03 08:19:11 tomas systemd[1]: t.service: Failed with result 'exit-code'.
Chyba, služba se nepustí a je to jasné už z řádky.
Toto se stane, pokud na počátek jména toho neexistujícího uživatele dám nulu:
Jul 03 08:18:35 tomas systemd[1]: Reloading. Jul 03 08:18:38 tomas systemd[1]: /etc/systemd/system/t.service:6: Invalid user/group name or numeric ID, ignoring: 0tomasxxx Jul 03 08:18:38 tomas systemd[1]: Starting Test... Jul 03 08:18:38 tomas echo[2281]: testing systemd Jul 03 08:18:38 tomas systemd[1]: Started Test.
Služba se spustí (pod rootem), na řádku není žádná chyba. V logu je ignoring.
Což je teda dost naprd.
Pěkná bezpečnostní díra, ale zatím to LP odmítá řešit (klasika). Uvidíme, jak to dopadne. Nejlepší by bylo, kdyby od toho projektu odešel a převzali jej rozumní správci, jako tomu bylo u pulseaudia. Tam hoši na pohodu komunikují s týmem alsy a obojí se posouvá kupředu. S LP se taky zpočátku štěkali. LP mívá dobré nápady, ale není vhodný člověk na správu/následný rozvoj a udržování.
Pořád mě překvapuje neschopnost manažerů Redhatu - to opravdu tak základní věc nevidí? I když asi korporátní klasika , firma na burze (majitel žádný), obraty (= bonusy) rostou, smrádek a teplíčko.
Víš co ňufíku? Nejdřív si zjisti jak to funguje a pak o tom mluv. Systémový unit file vyrobí jen člověk, co má oprávnění roota, nebo /etc/systems/systém/
Ten se spouští pod uživatelem definovaným v Unit file.
Uživatelské unit soubory (pokud tím uživatelem není root) se pochopitelně pod rootem spustit nedají.
Ale kdybys nebyl naprostý dutohlav, došlo by ti, že na tebou popisovanou bezpečnostní chybu by stačilo prostě napsat do usera root, nemusel bys blbnout s čísly.