2009-12-02 00:47:25 +0000 2009-12-02 00:47:25 +0000
138
138

Hoe kan ik een niet-login gebruiker aanmaken?

Ik wil graag een gebruiker en een groep aanmaken die beiden subversion heten op een RHEL 5 systeem. Ik heb de man pagina voor useradd bekeken en ik denk dat het commando gewoon…

useradd subversion

zou zijn, maar ik weet niet hoe ik het creëren van een home dir kan vermijden. Ook wil ik niet dat het een gebruiker is die kan inloggen op het systeem.

Het belangrijkste doel is om een eigenaar te voorzien van een SVN repository.

Antwoorden (8)

229
229
229
2012-12-06 20:10:20 +0000

U kunt de volgende opdracht gebruiken:

useradd -r subversion

Voor meer informatie, controleer manual pages met deze opdracht:

man useradd

U vindt in deze documentatie de volgende vlag die voor uw doel kan worden gebruikt.

-r, --system create a system account

De -r vlag zal een systeemgebruiker aanmaken - een die geen wachtwoord heeft, een home dir en niet in staat is om in te loggen.

81
81
81
2009-12-02 00:58:07 +0000

U kunt de -M-schakelaar gebruiken (zorg ervoor dat het een hoofdletter is) om er zeker van te zijn dat er geen thuismap wordt aangemaakt:

useradd -M subversion

dan de account vergrendelen om het inloggen te voorkomen:

usermod -L subversion
22
22
22
2015-03-01 20:04:05 +0000

Een andere oplossing om een systeemgebruiker aan te maken, met behulp van adduser :

adduser --system --no-create-home --group yourusername

U kunt --group verwijderen als u geen group yourusername nodig heeft, en --no-create-home als u wel een home nodig heeft voor deze gebruiker.

Zoals vermeld door py4on in opmerkingen, kan het zijn dat men op sommige systemen de --disabled-login optie moet gebruiken om, nou ja, het inloggen voor deze gebruiker uit te schakelen. Het lijkt echter het standaard gedrag te zijn onder Debian.

Pas op dat het numerieke ID van de gebruiker van een systeemaccount is. U kunt de uid echter repareren met de optie --uid.

Merk ten slotte op dat op sommige systemen (bijv. Fedora) adduser een symlink is naar useradd, in welk geval dit antwoord niet geldig is.

17
17
17
2016-05-17 06:15:03 +0000

Het schoonste antwoord op de oorspronkelijke vraag is het uitvoeren van het commando:

adduser subversion --shell=/bin/false

En als je de home directory ook niet wilt:

adduser subversion --shell=/bin/false --no-create-home

of, als je een nog meer locked down systeemgebruiker wilt (Normaal gesproken maakt dit geen home directory aan - er is gemeld dat het nog steeds een home directory in linux mint zal aanmaken zoals hieronder aangegeven) adduser subversion --system --group

Al deze commando’s zullen een groep creëren met dezelfde naam als de gebruiker

13
13
13
2017-03-07 14:04:28 +0000

De veiligste manier om dit te doen zou zijn om adduser te gebruiken zoals:

$ adduser -r -s /bin/nologin subversion

NOTE: Zorg ervoor dat -s /sbin/nologin wordt opgenomen om elke login-shell uit te schakelen die beschikbaar is voor de account.

Bevestiging van setup

$ grep subversion /etc/passwd /etc/shadow
/etc/passwd:subversion:x:496:496::/home/subversion:/bin/nologin
/etc/shadow:subversion:!!:17232::::::

Er is echter geen directory:

$ ll /home | grep subversion
$

Bevestig dat het account anders bruikbaar is:

$ sudo -u subversion whoami
subversion

$ sudo -u subversion date
Tue Mar 7 08:58:57 EST 2017

Verwijdering

Indien u dit account moet verwijderen:

$ userdel subversion -r
userdel: subversion mail spool (/var/spool/mail/subversion) not found
userdel: subversion home directory (/home/subversion) not found
$

en bevestig:

$ grep rtim-hc-user /etc/passwd /etc/shadow
$
``` &001
1
1
1
2016-09-06 15:06:22 +0000

Op een CentOS 7 machine kunt u de volgende commando’s gebruiken:

  • Als de gebruiker niet bestaat:

  • als u een bestaande gebruiker wilt wijzigen:

0
0
0
2019-09-02 00:38:41 +0000

In Debian kunt u een systeemgebruiker (zonder home directory) en een login-shell aanmaken:

useradd --system --shell=/usr/sbin/nologin <username>

Als uw nologin-programma in /sbin/nologin staat, wijzig dit dan.

0
0
0
2019-06-08 18:45:03 +0000

Begin met het genereren van een gecodeerd wachtwoord voor de gebruiker met een maximum van 8 karakters door te doen:

openssl passwd -crypt new_password_less_than_eight_chars_long

Dan doe je:

useradd -m -g groupname -G otherGroupsSeperatedByComma -p encryptedPassword username