私が従うインストールドキュメントでは、次のようにユーザーを追加するように指示します。
sudo adduser --disabled-login --gecos 'GitLab' git
--disabled-login
そのフラグは、私が検索したほとんどのマニュアルページにはありません。
--disabled-login
(foo
)を持つユーザーと()を持たない2人のユーザーを作成しましたgit
。
私が知る限り、この--disabled-login
フラグは何もしません。私はまだsu
両方のユーザーにアクセスでき、両方のユーザーはそれを/bin/bash
ログインシェルとして使用します。
私が見ることができる唯一の違いは、getent passwd
ログインを無効にするユーザーのホームフォルダの前に追加のコンマがあることです。持つ文書なしこれが何を意味するかを示すためにそれを見つけることができます。
root@gitlab:~# getent passwd git
git:x:998:998:GitLab:/home/git:/bin/bash
root@gitlab:~# getent passwd foo
foo:x:1001:1002:GitLab,,,:/home/foo:/bin/bash
アップデート#1
別の違いを見つけました。あるユーザーの*
パスワードはaで、他のユーザーのパスワードは次のとおりです!
。
root@gitlab:~# getent shadow git
git:*:15998::::::
root@gitlab:~# getent shadow foo
foo:!:15998:0:99999:7:::
--disabled-login
Ubuntuでは正確に何が起こりますか?
ベストアンサー1
説明がよく文書化されていません。
--disabled-login パスワードを次に設定!
パスワード値
NP or null = The account has no password
* = The account is deactivated & locked
! = The login is deactivated, user will be unable to login
!! = The password has expired
はい
root@gitlab:~# getent shadow vagrant
vagrant:$6$abcdefghijklmnopqrstuvwxyz/:15805:0:99999:7:::
root@gitlab:~# getent shadow foo
foo:!:15998:0:99999:7:::
root@gitlab:~# getent shadow git
git:*:15998::::::
ウィキペディアこれについて簡単に説明します。 *と!は効果的に同じことをするようです。 (ただし、他のユーザーがログインするのを防ぐことはできません。)