W systemie OS X można mieć użytkowników bez haseł. Jeśli sprawdzisz je za pomocą dscl
hasła, pokaż je jako *
. Służy to użytkownikom systemu, takim jak użytkownicy baz danych mysql
, pgsql
itp. Zaletą tego jest to, że ci użytkownicy nie wyświetlają się na ekranie logowania i nie można się zalogować bez nich sudo
itp.
Po usunięciu takiego użytkownika próbującego niektórych rzeczy chciałem go odtworzyć, ale nie mogłem. Mógłbym uzyskać użytkownika z pustym hasłem i ustawić hasło na *
. Ale żaden nie miał takiego samego efektu jak powyżej, ponieważ użytkownik pojawił się na ekranie logowania.
Jak tworzysz takiego użytkownika?
useradd
zaczyna dodawać identyfikatory przy 1000, a menedżerowie logowania nie będą wyświetlać identyfikatorów użytkowników poniżej, ale wszystko powyżej. więc chociaż nie jest to odpowiedź na to pytanie, może to być rozwiązanie problemu. pamiętaj, że 1000 jest arbitralne i może być niższe lub wyższe w twojej dystrybucji. Aby to naprawić, wystarczy zmodyfikować wpis użytkownika,/etc/passwd
aby mieć niższy identyfikator użytkownika. Teraz mogę zadać podobne pytanie.Odpowiedzi:
Możesz uruchomić
passwd --delete <username>
po utworzeniu użytkownika za pomocąadduser
. Po tym będziesz mógł się zalogować bez podawania hasła.źródło
Użytkownik w / etc / passwd z katalogiem domowym / dev / null i powłoką / sbin / nologin może być używany do wykonywania poleceń sudo, ale na przykład nie może się zalogować;
z mojego / etc / passwd
W połowie pamiętam, że to też zniknie z ekranu logowania XDM, ale nie używam już XDM, więc zgaduję :-)
źródło
Możesz użyć
usermod
, który wyłączy hasło, używając!
raczej niż an*
.Ze strony podręcznika na usermod:
źródło
Korzystanie
dscl
dałobyźródło
Nie mogę mieć pewności co do OSX, ale na FreeBSD możesz użyć:
wartość
-
przekazana do-h
opcji każepw
ustawić pole hasła w master.passwd na*
, tworząc w ten sposób konto bez logowania. Ustawienie powłoki nie jest absolutnie konieczne, ale pozwala uniknąć sprawdzania powłoki z /etc/pw.conf.źródło
Pozostawienie pola hasła pustego dla użytkownika w
passwd
pliku będzie działać.źródło
Jeśli korzystasz z Ubuntu, możesz zamienić hasło dla użytkownika Ubuntu w / etc / shadow sprawdź ten artykuł:
http://www.psychocats.net/ubuntucat/creating-a-passwordless-account-in-ubuntu/
źródło
W systemie Linux używam:
Następną alternatywą musi być więcej platform (jeśli
-r
opcja nie jest dostępna):Tutaj:
hasło w / etc / shadow zostanie ustawione na
*
. Bez-p \*
tego będzie!
shell będzie
/sbin/nologin
(Możesz/bin/false
też użyć , ale myślę, że/bin
może być zamontowany zbyt późno w niektórych systemach). Więc użytkownik nie może się zalogować-d
ustawia homedir użytkownikaWAŻNA UWAGA
Tutaj
-r
tworzy użytkownik systemu:Ta flaga służy do utworzenia konta systemowego. Oznacza to, że użytkownik ma wartość
UID
niższą niż wartośćUID_MIN
zdefiniowana w /etc/login.defs i której hasło nie wygasa. Zauważ, że useradd nie utworzy katalogu domowego dla takiego użytkownika, niezależnie od domyślnego ustawienia w /etc/login.defs . Musisz określić-m
opcję, jeśli chcesz utworzyć katalog domowy konta systemowego. Jest to opcja dodana przez Red Hat .Opcja
-r
może nie być obecna w twoim systemie. Aby stworzyć użytkownika systemu, który nie jest wyświetlany na ekranie logowania, myślę, że możesz użyć-K
opcji. Coś jak:-K UID_MIN=100 -K UID_MAX=499
. Możesz wypróbować opcję:automatycznie określić cię
UID_MAX
, ale nie zostały przetestowane na OS X. będziesz musiał użyćSYS_UID_MAX
doUID_MIN
czy to odkomentowane w /etc/login.defsTo samo dotyczy
GID_MAX
iGID_MIN
związanego z tym identyfikatorem grupy systemu. (ZobaczGID_MIN
i jeśli nie ma komentarzaSYS_GID_MAX
w /etc/login.defs do użycia jakoGID_MAX
)źródło