it-swarm-eu.dev

su nemění uživatele, ale neodpovídá ani chybou

Když jsem přihlášen jako root Chtěl bych su ke konkrétnímu běžnému uživateli. Běžím su username a okamžitě obdrží výzvu zpět, stále jako root. Není zadána žádná chyba. Jsem si vědom starého problému „uživatel, který se snažíte získat, nemá oprávnění ke složce, ve které se právě nacházíte“, a v tomto případě tomu tak není. Kromě toho není zobrazena žádná chyba, což je vždy případ (pokud vím), když dojde k určitému problému s oprávněními.

Zkusil jsem su - username se stejným účinkem. Příkaz je zpracován, nejsou vidět žádné chyby, a výzva se okamžitě vrátí.

Co by mohlo toto chování způsobovat? Jak to mohu vyřešit?

58
Wesley

Zkontrolujte, co Shell má uživatel v /etc/passwd. Pokud je Shell /bin/false (obyčejné prostředí, které zakazuje přihlášení), pak uvidíte chování, které popisujete. Alternativně to může být nějaký další program s okamžitým ukončením, který dává stejný efektivní výsledek.

75
camh

Navrhl bych použít stopu na procesu su, abyste viděli, kde proces selhává.

strace su donaldduck

Měl by vám dát spousty výstupů, které byste měli třídit, ale něco tam by mělo naznačovat, kde se problém vyskytuje.

6
Magellan

Měli byste zkontrolovat Shell v /etc/passwd a, aniž byste si přáli sponzorovat, zkontrolujte výstup whoami po spuštění su.

4
Alex Chamberlain

Zkontrolujte systémové protokoly: pomocí Sudo by se měly zaznamenávat všechny akce. Pokud tedy existuje problém, měl by být napsán.

0
Dom

Pro přihlášení jako uživatel root

$ ssh [email protected]

Zadejte heslo správce

$ vi /etc/passwd

Vyměňte řádek v souboru

username: x: 100: 100: User:/home/user:/sbin/nologin

na

username: x: 100: 100: User:/home/user:/bin/bash

Odhlaste se a přihlaste se. Zobrazí se uživateli znovu

0
Cherry