コマンドラインツールの方が使いやすい場合、 あるいは X Window System がインストールされていない場合、 この章の内容を使用してユーザーとグループの設定を行なってください。
システムにユーザーを追加するには、以下のようにします。
useraddコマンドを発行してロックされたユーザーアカウントを作成します。
useradd <username> |
passwdコマンドでパスワードを入れ、 パスワードの時効ガイドラインを設定して、アカウントをアンロックします。
passwd <username> |
useradd用のコマンドラインオプションは 表35-1に詳細があります。
オプション | 説明 |
---|---|
-c コメント | ユーザー用コメント |
-d ホームディレクトリ | デフォルトの/home/ユーザー名の代わりに使用するホームディレクトリ |
-e 日付 | アカウントが無効になる日付をYYYY-MM-DD形式で設定 |
-f 日数 | パスワードが失効になってからアカウントが無効になるまでの日数。 (0が指定されると、 パスワードの失効直後にアカウントが無効になります。 -1が指定されると、 パスワード失効後もアカウントは無効になりません。) |
-gグループ名 | ユーザーのデフォルトグループ用のグループ名、又はグループ番号 (グループはここで指定する前に既に存在している必要があります)。 |
-G グループリスト | ユーザーがメンバーになっている追加の(デフォルト以外の)グループ名、又はグループ番号が、 カンマで区切られている一覧(グループはここで指定する前に既に存在している必要があります)。 |
-m | ホームディレクトリがない場合は、それを作成する。 |
-M | ホームディレクトリを作成しない。 |
-n | ユーザー用プライベートグループを作成しない。 |
-r | 500以下のUIDで、ホームディレクトリのないシステムアカウントを作成する。 |
-p パスワード | cryptコマンドで暗号化されたパスワード |
-s | /bin/bashがデフォルトのユーザーログインシェル |
-u uid | ユーザー用のユーザーID、ユーザー固有で499以上でなければならない |
表 35-1. useraddのコマンドラインオプション
システムにグループを追加するには、groupaddコマンドを使用します。
groupadd <group-name> |
groupadd用のコマンドラインオプションは表35-2に詳細があります。
セキュリティの見地から、ユーザーに定期的にパスワードを変更させるようにすることが良策です。 これはユーザーマネージャの パスワード情報 タブでユーザーの追加や編集をするときに設定することができます。
シェルプロンプトからユーザーのパスワード失効日を設定するには、chage コマンドを使用し、続けて表35-3にあるオプションの1つとそのユーザーのユーザー名を入力します。
![]() | 重要 |
---|---|
chageコマンドを使用するには、 シャドウパスワードが有効になっている必要があります。 |
オプション | 説明 |
---|---|
-m 日数 | ユーザーがパスワードを変更する必要が出る最低期間を日数で指定。 値が0の場合はパスワードは失効になりません。 |
-M 日数 | パスワードが有効である最大期間を日数で指定。 このオプションで指定した日数と-d オプションで指定したオプションの合計が現在の日より小さい場合、 ユーザーはアカウントを使用する前に自己のパスワードを変更する必要があります。 |
-d 日数 | パスワードが変更される時期を1970年1月1日からの日数で指定します。 |
-I 日数 | パスワード失効からアカウントロックまでの無活動の期間を日数で指定。 値が0の場合は、パスワード失効の後でもアカウントはロックされません。 |
-E 日付 | YYYY-MM-DD形式で、アカウントがロックされる日付を指定。日付の代わりに 1970年1月1日からの日数でも使用可能。 |
-W 日数 | パスワードの失効日前にユーザーに警告する日数を指定。 |
表 35-3. chage コマンドラインオプション
![]() | ヒント |
---|---|
chageコマンドのすぐ後に、ユーザー名(オプションなし)があれば、 現在のパスワード時効の値を表示し、変更を可能にします。 |
システム管理者がユーザーに最初のログインでパスワードを設定するようにさせたい場合には、 ユーザーの最初のパスワードまたは空パスワードを直ちに失効するよう設定することができます。 これにより、ユーザーが最初のログイン直後にパスワードを変更させるよう強制します。
最初のログイン後に、ユーザーにコンソールでパスワードを設定させる場合は、 以下のステップに従って下さい。SSHプロトコルでユーザーがログインをしている 場合は、このプロセスは実行できないことに注意して下さい。
ユーザーパスワードをロックする — ユーザーが存在 しない場合、useraddコマンドを使用して、ユーザー アカウントを作成します。しかし、パスワードは与えないでロックされた ままにしておきます。
パスワードがすでに有効になっている場合は、次のコマンドでそれを ロックします:
usermod -L username |
すぐにパスワード失効を強制する — 次のコマンドを入力します:
chage -d 0 username |
このコマンドは最後にパスワードが変更された期日の値をエポック(1970年1月1日)に セットします。パスワードの時効ポリシーに関係なく、この値が即時にパスワードの 失効を強制します。
アカウントをアンロック —2つのアプローチが このステップにあります。管理者は、初期パスワードを割り当てるか、又は 無効なパスワードを割り当てます。
![]() | 警告 |
---|---|
passwdコマンドは、設定したばかりのパスワード失効を無効に しますので、passwdコマンドを使用したパスワードの 設定はしないで下さい。 |
初期パスワードを割り当てるには、以下のステップに従います:
pythonコマンドでコマンドラインpython インタプリタを開始します。以下が表示されます:
Python 2.2.2 (#1, Dec 10 2002, 09:57:09) [GCC 3.2.1 20021207 (Red Hat Enterprise Linux 3 3.2.1-2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> |
プロンプトで、以下を入力します(passwordには、 暗号化するパスワードで入れ換え、そしてsaltには abや12の 様にちょうど2つの大文字、又は小文字の英文字、数字、ドット(.)記号、スラッシュ(/) 記号等の組合せで入れ換えます):
import crypt; print crypt.crypt("password","salt") |
その出力は、12CsGd8FRcMSMのような 暗号化されたパスワードになります。
前後に空白のない状態で、カットアンドペーストで暗号化したパスワード出力をそのまま 次ぎのコマンドに張り付けます:
usermod -p "encrypted-password" username |
初期パスワードを割り当てる代わりに、以下のコマンドで 無効なパスワードを割り当てることもできます:
usermod -p "" username |
![]() | 用心 |
---|---|
無効なパスワードを使用するのは、ユーザーにとっても管理者にとっても 便利なことですが、第三者が最初にログインしてシステムにアクセスすると 言うリスクが少々あります。このような脅威を最小限に保つには、管理者は アカウントがアンロックされる時点でユーザーがログインの準備が出来て いるかを確認することが推奨されます。 |
どちらの場合も、初期ログインでユーザーは新しいパスワードを 要求されます。