linuxにユーザーを追加
ユーザの定義は/etc/passwd
に定義があるが、セキュリティ的に直接編集はしない!
コマンド | |
---|---|
useradd | 追加 |
usermod | 変更 |
userdel | 削除 |
passwd | ログイン用パスワード |
コマンド | オプション |
---|---|
-c | コメント(文字列) を変更します。 |
-g | プライマリグループ名を変更します。グループ名は/etc/groupファイルで定義したグループ名です。 |
-G | セカンダリーグループを変更します。(複数選択可) |
-d | 既存のユーザ名を変更します。 |
-u | ユーザID 番号を変更します。 |
[root@suzuki ~]# useradd owl
[root@suzuki ~]# ls /home
owl
[root@suzuki ~]# ls /home/owl/
-> owlユーザーのhomeディレクトリ
[root@suzuki ~]# tail /etc/passwd
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
owl:x:500:500::/home/owl:/bin/bash
->500(ユーザーID):500(アカウントID):(コメント):homeディレクトリ:使用するshell
/etc/passwd
の中にはユーザーのパスワードは格納されてなく、セキュリティ上、ハッシュ化した後、/etc/shadow
に格納されている
ユーザーIDを指定してuseraddする
[root@suzuki ~]# useradd -g users -u 1001 penguin
-g グループを指定
-u ユーザーIDを指定(指定しない場合は自動振り分け)
[root@suzuki ~]# grep penguin /etc/passwd
penguin:x:1001:100::/home/penguin:/bin/bash
usermodでコメントを追加する
[root@suzuki ~]# usermod -c "Linux Professional Institute Certification" penguin
[root@suzuki ~]# grep penguin /etc/passwd
penguin:x:1001:100:Linux Professional Institute Certification:/home/penguin:/bin/bash
userdelでユーザーを削除する
-rオプションでhomeディレクトリごと削除
[root@suzuki ~]# userdel -r owl
パスワードの設定
[root@suzuki ~]# passwd penguin
ユーザー penguin のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: 全ての認証トークンが正しく更新できました。
-> sshでpenguinユーザーのログインが可能になります
suコマンド
サブユーザーは使える部分が限られているので、yum install等ができないため、一時的にrootユーザーになることができる
結局rootのパスワードを入力しなくてはいけない・・
[penguin@suzuki ~]$ su -
パスワード:
[root@suzuki ~]#
sudoコマンド
あるコマンドをroot権限で動かすようにするコマンド(suよりよく使う!)
追加ユーザーがsudoを使えるようにする設定
ルートでwheelグループに追加する
[root@suzuki ~]# usermod -G wheel penguin
[root@suzuki ~]# grep wheel /etc/group
wheel:x:10:penguin
/etc/sudoers
を編集(直接編集はよくないのでvisudo
を使用)
105行目のコメントアウトを削除
104 ## Allows people in group wheel to run all commands
105 # %wheel ALL=(ALL) ALL
ペンギンユーザーでログインし、sudo時もペンギンユーザーのpassで実行できる
[penguin@suzuki ~]$ sudo tail -n 1 /etc/shadow
[sudo] password for penguin:
penguin:$6$hRMVvsj3$UG0D50o5Cl95oP68DiTd.FRX7xyv8zZfGLsWxFnAAIelAnekwNL5/
GkiSQ8wIsbokxgKDC6ZYZbYNtSTumY.D1:16231:0:99999:7:::
所有者の変更
[penguin@suzuki ~]$ touch user
[penguin@suzuki ~]$ ls -l user
-rw-r--r--. 1 penguin users 0 6月 10 16:38 2014 user
// 権限. 所有者 所有グループ
[penguin@suzuki ~]$ sudo chown nobody user // 所有者の変更
[sudo] password for penguin:
[penguin@suzuki ~]$ ls -la user
-rw-r--r--. 1 nobody users 0 6月 10 16:38 2014 user
-Rオプションをつけると、すべての所有者を変更
所有グループの変更
[penguin@suzuki ~]$ chgrp nobody groups
chgrp: changing group of `groups': 許可されていない操作です
[penguin@suzuki ~]$ sudo chgrp nobody groups
[penguin@suzuki ~]$ ls -l groups
-rw-r--r--. 1 penguin nobody 0 6月 10 16:43 2014 groups
所有者と所有グループの同時変更
[penguin@suzuki ~]$ touch both
[penguin@suzuki ~]$ ls -l both
-rw-r--r--. 1 penguin users 0 6月 10 16:47 2014 both
[penguin@suzuki ~]$ sudo chown nobody:nobody both
[penguin@suzuki ~]$ ls -l both
-rw-r--r--. 1 nobody nobody 0 6月 10 16:47 2014 both
[penguin@suzuki ~]$
ファイルとアクセス権
d rwx rwx rwx
ファイル種別, 所有ユーザー, 所有グループ, その他
項目 | 内容 |
---|---|
r | 読み込み |
w | 書き込み |
x | 実行またはディレクトリの移動 |
パーミッション
ユーザー | グループ | その他 | |
---|---|---|---|
パーミッション | r w x | r w x | r w x |
8進数 | 4 2 1 | 4 2 1 | 4 2 1 |
設定値 | 合計値 | 合計値 | 合計値 |
chmodコマンド
現状の状態を変更したい場合はu+rw-xとか書いた方がいいが、元の状態に関わらず変更したいときは数字で指定する
[penguin@suzuki ~]$ touch chownfile
[penguin@suzuki ~]$ chmod u+rw-x,go+r-wx chownfile
[penguin@suzuki ~]$ ls -l chownfile
-rw-r--r--. 1 penguin users 0 6月 10 17:00 2014 chownfile
[penguin@suzuki ~]$ chmod 664 chownfile
[penguin@suzuki ~]$ ls -l chownfile
-rw-rw-r--. 1 penguin users 0 6月 10 17:00 2014 chownfile
[penguin@suzuki ~]$ chmod 266 chownfile
[penguin@suzuki ~]$ ls -l chownfile
--w-rw-rw-. 1 penguin users 0 6月 10 17:00 2014 chownfile