ユーザの管理
ユーザの管理で使用する一般的なコマンドをご案内します。
ユーザ作成:useradd
ユーザ作成時に適用されるデフォルトの値を確認するには、オプション-Dを指定します。
[root@host1 ~]# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
[root@host1 ~]#
実際にユーザを作成してみます。パスワードも設定する場合は、オプション-pです。
[root@host1 ~]# useradd Taro -p Abcd123$
[root@host1 ~]#
作成されたユーザを確認してみます。
[root@host1 ~]# id Taro
uid=1009(Taro) gid=1010(Taro) groups=1010(Taro)
[root@host1 ~]#
※UserID:1009、GroupID:1010で作成されていることがわかります。
[root@host1 ~]# finger Taro
Login: Taro Name:
Directory: /home/Taro Shell: /bin/bash
Never logged in.
No mail.
No Plan.
[root@host1 ~]#
※ホームディレクトリとシェルがわかります。
※fingerコマンドはデフォルトで入っていなかったので、yumでインストールしました。
基本、Linuxのユーザは、次のファイルに追記されています。
[root@host1 ~]# grep Taro /etc/passwd
Taro:x:1009:1010::/home/Taro:/bin/bash
[root@host1 ~]#
※UserIDとGroupID、ホームディレクトリ、シェルが記載されていますね。
[root@host1 ~]# grep Taro /etc/shadow
Taro:Abcd123$:17527:0:99999:7:::
[root@host1 ~]#
※パスワードが見えますね。/etc/passwdと/etc/shadowはUserName(Taro)でリンクされています。
また、パスワードのポリシーは下記のコマンドで確認できます。
[root@host1 ~]# chage -l Taro
Last password change : Dec 27, 2017
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
[root@host1 ~]#
ユーザ情報を変更してみる。
セカンダリグループを変えてみる。
useraddのオプション-Gを使って、所属するグループ名を指定します。
[root@host1 ~]# usermod -G dba Taro
[root@host1 ~]#
[root@host1 ~]# id Taro
uid=1009(Taro) gid=1010(Taro) groups=1010(Taro),1009(dba)
[root@host1 ~]#
※1009(dba)が追加されました。
ただ、/etc/passwdでは、追加したグループが見えてきません。
[root@host1 ~]# grep Taro /etc/passwd
Taro:x:1009:1010::/home/Taro:/bin/bash
[root@host1 ~]#
セカンダリグループの情報は、/etc/groupに記載されます。
[root@host1 ~]# grep Taro /etc/group
dba:x:1009:larry,gary,Taro
Taro:x:1010:
[root@host1 ~]#
※dbaに対して、Taroが割り当てられています。
ちなみに、追加したセカンダリグループの削除は、””(ブランク)を指定します。
[root@host1 ~]# usermod -G "" Taro
[root@host1 ~]# id Taro
uid=1009(Taro) gid=1010(Taro) groups=1010(Taro)
[root@host1 ~]#
※1009(dba)が消えました。
複数のセカンダリグループに参加していた場合は、削除したいグループを抜いた形で指定します。
一旦、複数のセカンダリーグループにTaroを追加。
[root@host1 ~]# usermod -G dba,harry,barry Taro
[root@host1 ~]# id Taro
uid=1009(Taro) gid=1010(Taro) groups=1010(Taro),1004(barry),1005(harry),1009(dba)
[root@host1 ~]#
セカンダリグループからdbaだけを削除
[root@host1 ~]# usermod -G harry,barry Taro
[root@host1 ~]# id Taro
uid=1009(Taro) gid=1010(Taro) groups=1010(Taro),1004(barry),1005(harry)
[root@host1 ~]#
結論としては、グループを削除しているのではなく参加するグループを指定し直しているだけの動きとなります。
パスワードのポリシーを変えてみる。
パスワードのポリシーを変えるには、chageコマンドを使用します。
ユーザを作成した時は、パスワード期限が決められていないので、設定してみます。
[root@host1 ~]# chage -E 2017-12-31 Taro
[root@host1 ~]#
[root@host1 ~]# chage -l Taro
Last password change : Dec 27, 2017
Password expires : never
Password inactive : never
Account expires : Dec 31, 2017
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
[root@host1 ~]#
※期限が変わりました。