Linuxにユーザーを追加する

  • 66
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

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