Próbuję utworzyć użytkownika bez hasła takiego:
sudo adduser \
--system \
--shell /bin/bash \
--gecos ‘User for managing of git version control’ \
--group \
--disabled-password \
--home /home/git \
git
Jest dobrze. Ale kiedy próbuję się zalogować pod użytkownikiem git, otrzymuję hasło:
su git
Password:...
Gdy zostawiam puste, pojawia się błąd:
su: Authentication failed
Co jest nie tak?
ubuntu
users
git
not-root-user
Erik
źródło
źródło
su git
jako root, gdzie nie musisz podawać hasła.chmod
ichown
.Odpowiedzi:
Utworzyłeś użytkownika z „wyłączonym hasłem”, co oznacza, że nie ma hasła, które pozwoliłoby Ci zalogować się w taki sposób, w jaki zostało użyte. Różni się to od utworzenia użytkownika, z którego każdy może się zalogować, bez podawania hasła, co osiąga się poprzez podanie pustego hasła i jest to bardzo rzadko przydatne.
Aby wykonywać polecenia jako użytkownicy „systemowi”, którzy nie logują się normalnie, musisz przeskoczyć przez konto root:
lub
Jeśli chcesz, aby niektórzy użytkownicy mogli uruchamiać polecenia jako
git
użytkownik, nie pozwalając im na uruchamianie poleceń jako root, skonfiguruj sudo (uruchomvisudo
jako root i dodaj wiersz podobny%gitters ALL = (git) ALL
).źródło
--disabled-password
Opcja nie zostanie ustawione hasło, co oznacza hasło nie jest legalne, ale nadal możliwe jest logowanie (na przykład za pomocą kluczy SSH RSA).Aby utworzyć użytkownika bez hasła, użyj go
passwd -d $username
po utworzeniu, aby hasło było puste. Uwaga: nie wszystkie systemy umożliwiają logowanie się użytkownikom z pustym hasłem.źródło
Jeśli chcesz uzyskać dostęp do systemu za pomocą użytkownika git, powinieneś użyć sudo:
lub
źródło
Utwórz użytkownika z pustym hasłem
Pytanie o hasło nadal jest niestety wyświetlane.
Ale jeśli po prostu naciśniesz klawisz Enter bez wpisywania czegokolwiek, a zaloguje się on jako użytkownik
test-user-0
.Te
-e
flagi mówichpasswd
, że hasło jest już zaszyfrowane iU6aMy0wojraho
jest hash pustego łańcucha.Testowane na Ubuntu 18.04.
Automatyczne logowanie za pomocą
getty -a
Przynajmniej na terminalu nie trzeba tworzyć użytkownika bez hasła, aby ktoś mógł nie wpisywać swoich haseł za każdym razem.
Byłem w stanie to zrobić na BusyBox, modyfikując
inittab
: Jak zalogować się automatycznie bez wpisywania nazwy użytkownika root lub hasła w Buildroot BusyBox init?Uważam więc, że dostosowanie tej techniki nie powinno być trudne przez modyfikację systemowych skryptów systemowych init Ubuntu 18.04, aby skonfigurować
getty -a <user>
terminal, jak wspomniano w tej odpowiedzi, chociaż sam tego nie próbowałem.źródło
Myślę, że tego właśnie chcesz:
Będziesz w stanie
aby uruchamiać komendy jako ten użytkownik, w / bin / bash lub jakiejkolwiek podanej powłoce. --gecos „Użytkownik” wystarczy wpisać „Użytkownik” w polu komentarza, aby nie pojawiał się monit o podanie tych informacji. Możesz umieścić w tym polu, co chcesz.
źródło