hajichan.net technical version

サーバ管理

ユーザ管理

ユーザ管理でよく使用するコマンドをまとめてみました。

ユーザ追加

useraddコマンドやadmintool(GUI)とかで設定可能です。僕はとりわけuseraddコマンドを使用します。主要なオプションは以下通りです。

【useraddコマンド主要オプション】
オプション 意味
u UIDを指定
g GIDを指定
c コメント(GCOS)
d ホームディレクトリ
m ホームディレクトリを作成する
s ログインシェル

# useradd -u 500 -g 10 -c "test user" -d /export/home/user1 -m \
-s /bin/csh user1

また、Dオプションを使用すれば、デフォルト値を確認することが出来ます。/usr/sadm/defadduserファイルを参照しているものと思われます。

# useradd -D
---
group=other,1  project=,3  basedir=/home
skel=/etc/skel  shell=/bin/sh  inactive=0
expire=  auths=  profiles=  roles=

ユーザ作成時にホームディレクトリにコピーされる各種雛形設定ファイルは、/etc/skel配下に有ります。

ユーザ削除

ユーザが不要になったらuserdelコマンドで削除しましょう。オプションは殆ど有りませんが、rオプションを使用すればホームディレクトリもゴソッと削除してくれます。

ユーザuser1の削除(ホームディレクトリ/export/home/user1も削除)。

# userdel -r user1

設定変更

ユーザ作成後にusermodコマンドを使用して、設定値を変更できます。オプションはuseraddコマンドとほぼ同等です。

UID変更。

# usermod -u 1000 user1

GID変更。

# usermod -g 1000 user1

GCOS変更。

# usermod -c "test user change" user1

ホームディレクトリ変更(mオプションと併用でディレクトリ内コピー)。

# usermod -d /export/home/user10 -m user1

ログインシェル変更。

# usermod -s /bin/sh user1

ユーザ名変更。

# usermod -l newuser1 user1

パスワード関連

passwdコマンドを使用してパスワードを管理します。パスワード設定のポリシーは以下の通りです。

  • パスワード長は、/etc/default/passwdのPASSLENGTHパラメータ〜8文字の間で設定。デフォルトでPASSLENGTHは、6文字です。8文字以上入力した場合は、最初の8文字だけが意味を持ちます。
  • 使用する文字は、2つ以上の英字および1つの以上の数字もしくは特殊文字です。大文字小文字は区別されます。
  • 新旧パスワードは、最低限3文字以上異なってなければなりません。

また、passwdコマンドの主要なオプションは以下通りです。

【passwdコマンド主要オプション】
オプション 意味
l パスワードをロック(/etc/shadowに*LK*が入力)。
d パスワードを削除。
n <min> パスワードを変更するために最低限必要な日数を指定します。
x <max> パスワードの最高有効期限を指定。-1で機能をオフします。
w <warn> パスワード有効期限が切れる何日前に警告するかを指定します。
as パスワードの状態を確認する。

パスワードロックをかける。

# passwd -l user1

パスワードを削除する。

# passwd -d user1

パスワード有効期限を30日へ。

# passwd -x 30 user1

状態確認。

# passwd -as
---
root      PS
daemon    LK
bin       LK
ページのトップへ戻る