ユーザーの追加とrootログイン禁止

玄箱は標準でrootでのログインを行います。
しかし、rootで作業するとありとあらゆることができてしまいます。

それが例え、ユーザーの望まなかった操作であっても・・・

これは危険な操作なので、一般ユーザーを作ってリスクを減らしましょう。
また、rootでの直接ログインができると言うことは「鯖に侵入して好き勝手やってください」と
いっているようなものなので、rootでの直接ログインをできないようにしましょう。

ということで、
業火の初期設定群第三弾!
ユーザー関係の設定
参ります。
「rootでの直接ログイン」
では、rootで作業するにはどうしたらいいの?となるわけです。
これには2つの方法があります。
1つは、rootに昇格する方法。
もう1つは、sudoというコマンドを使って一時的にrootの権利を行使する方法です。

手順としては、
1.一般ユーザーでログインする
2-1.suコマンドでrootに昇格する
2-2.sudoコマンドを用いてコマンドを実行する

という風になります。
まぁ、どっちにしろ、1手間増えるってことですね。

やること一覧
	・一般ユーザーを作るrootでのログイン制限する

関連ページ
	・玄箱を使えるようにする/homeの引越しbinary_packagegrepとcoreutilsFTP鯖の調整と/optの作成



一般ユーザーを作る

グループの作成(の方法:例ではwheelグループを作成している)

	# groupadd [-g ???] wheel
		

option説明など
-gグループIDの指定:任意の整数、重複しないこと

注:-gオプション省略時は最後のグループIDの次の番号が指定される 注:グループIDは他のグループIDと重複不可 注:ちなみに100未満のIDはシステム用に予約されている(普通、一般ユーザーには使わない)
ユーザーの作成
	# useradd [-u ???] -g users [-G wheel] -d /home/[username] -s /bin/bash [username]
		

option説明など
-uユーザーIDの指定:任意の整数、重複しないこと
-gメインのグループ指定
-Gサブグループの指定:複数指定可 -G [name1],[name2],...
-dホームディレクトリの指定
-s使用シェルの指定

注:-uオプション省略時は最後のユーザーIDの次の番号が指定される 注:ユーザーIDは他のユーザーIDと重複不可 注:ちなみに100未満のIDはシステム用に予約されている(普通、一般ユーザーには使わない)
パスワードの設定
	# passwd [username]
		注:パスワードを2回聞かれるので正確に入力する
		注:入力中、パスワードは見えません
		注:テンキー(右側にある電卓みたいに数字だけ集まってるキー)は使えません
		注:テンキーを使うと入力と異なる文字が登録されます
		注:あまりにも簡単なパスワードは拒否されます?(よくわからないorz)
ホームディレクトリ(マイドキュメントみたいなの)を作る。
ディレクトリを作る。
	# mkdir /home/[username]
所有権の変更
	# chown [username]:[groupname] /home/[username]
		

option説明など
[username]:[groupname]所有ユーザーのみの変更でいいのなら
[username]のみで大丈夫

注:所有権がないとホームディレクトリとして使用できない 注:同一グループで実行権があるディレクトリなら省略できる?
アクセス権の変更
	# chmod 700 /home/[username]
		

option説明など
700パーミッションを指定:所有者、グループ、他人の順で指定
読み込み=4,書き込み=2,実行=1 の和で表記(他にもugo+-rwxの表記もあり)

注:ユーザーディレクトリからHPの公開する場合、   # chmod 755 /home/[username]   とする
以上で最低限のユーザー作成終了。
で、本当にユーザーの作成ができているか確認する。

まぁ、作ったユーザーでログインするだけだけどね。
で、ログインしたときの表示で判断する。
	(talnetの表示)
	┃[username]@KURO-BOX:~$
ってなったら成功。
「なんか、見つかんなかったから/で入ったぞ」って英文メッセージ出て
	(talnetの表示)
	┃[username]@KURO-BOX:/$
ってなってたら失敗。
ログインできなかったら問題外。設定を見直す必要あり。
「ユーザー作成」
単純作業だからウィザード方式のシェルスクリプトでできちゃうような気がするけど・・・
まぁ、面倒臭いのでとりあえずパス。

気が向いたら作るかも知れないけど・・・期待しないこと。

rootでのログイン制限する

事前注意
間違えると玄箱が操作不能になります。
必ずユーザーがスーパーユーザー(root)になれることを確認した上、
ターミナルを2つ立ち上げてログインしておいてください。
ひとつは設定用、ひとつは確認用です。
某サイトより引用(今は消滅している)

一般ユーザーがrootになれる(suを実行できる)ことを確認します。

	$ su の場合:ユーザーの設定のままrootになる
		┃[username]@KURO-BOX:~$ su
		┃Password:
		┃root@KURO-BOX:/home/[username]#
	$ su - の場合:rootの設定を読み込んでrootになる
		┃[username]@KURO-BOX:~$ su -
		┃Password:
		┃root@KURO-BOX:~#
一般ユーザーに戻るのは exit か logout で

注意書きを守ってください。
間違えると本当に操作不能になり、HDDのフォーマットが必要になります。

/etc/securetty の pts/? の部分を全部コメントアウトする(0-5まであった)
	# vi /etc/securetty
		(追加)
		┃#pts/0
		┃#pts/1
		┃#pts/2
		┃#pts/3
		┃#pts/4
		┃#pts/5
			変更点:行頭に#を追加
			注:viの使い方は各自勉強すること
以上w
変更内容は即時反映されます。

で、(設定用のターミナルを開いたまま)以下をテストする。
1.telnetする
2.rootでログインして失敗
3.一般ユーザーでログインして成功
4.一般ユーザーからsuで成功

全て成功した場合のみ、設定用ターミナルを閉じてください。
「rootでのログイン制限」
やってることは結構リスキーなのに作業は簡単。
失敗したら本当に再インストール(玄箱分解〜HDDフォーマット必要)ですから、
確認作業は確実に行ってください。
また、(Linuxを詳しく知らない人は)必要以上のことはやらないでください。

前のページ 次のページ


戻るなら押せ!