DebianのユーザーID(uid)の範囲と定義とユーザー管理[su,sudo,sudoers]

この記事は約3分で読めます。
スポンサーリンク

DebianのユーザーID(uid)の範囲と定義は、

0:ルート
1-99:Debianのシステム
100-999:システム
1000-29999:一般ユーザー
30000-59999:予約済
60000-64999:Debianのシステムによって一時的に作成するため
65000-65533:予約済
65534:nobodyが使用
65535:使用禁止

昔はこんな感じだったが、今もそうなのだろうか?

rootで作業することは避けるべきなので、必要に応じてユーザーを作成する。

最初に作成するユーザーのIDは、普通は「1000」になるはずだ。

FFFTP等のFTPクライアントの画面では、所有者としてこのユーザーIDが見られる。

FFFTP

上は、/etc/exim4 を見たところ。

右端の「所有者」が「0(root)」になっているのが分かる。

所有者と属性に注意しないと、編集できない(上書不可)、削除できない等の問題が生じる。

Linux初心者にありがちなトラブルだね。

「rootで作業することは避けるべき」とあるが、これは、rootは最高の権限を持つユーザーであり、全てのデバイスやファイルにアクセスできるため、システム破壊も可能。

よって、普段の作業は別ユーザーで行い、必要な時にsuやsudoでコマンドを実行する。

同じ理由で、FTPでrootで入ることはデフォルトではできないようになっている(設定で変更)。

GUIで、重要なファイルをカンタンに削除可能♪

また、rootで入った際のパスワード漏洩の危険性もある。

一般ユーザーのパスワードが漏れても(権限が制限されているので)被害が少ないが、rootが漏れると何でもできるので被害甚大!

それなりにLinuxを使うようになってくると、rootでないと何もできないwww

自宅サーバーなら、常にrootで作業している人が多いのでは?

su は他のユーザーに「変身」。ユーザー名の省略でrootに変身。

但し、その際にrootのパスワードを求められる(rootパスワードが漏れる危険性)。

sudo は、rootのパスワードを入力することなくroot権限のコマンドを実行できるが、/etc/sudoersにそのユーザーの登録がないと、以下のようにはじかれてしまう。

[sudo] password for test:
test is not in the sudoers file. This incident will be reported.

この場合、rootで入るか、またはsuで「visudo」と打ち、/etc/sudoersにsudo可能なユーザーを追加する。

# はコメント行。

root ALL=(ALL) ALL

という記述が見つかるが、同様に

test ALL=(ALL) ALL

を追記すると、testに全てのコマンドのsudoによる実行権限を与えることができる。

%sudo ALL=(ALL) ALL

と、頭に%が付いた記述があるが、これはグループね。

sudoグループに属するユーザーは、全てのコマンドのsudoによる実行権限を持つということ。

ユーザーが多い場合、グループを使った方が管理が楽だね。

Linuxシステム[実践]入門 (Software Design plus)
沓名 亮典
技術評論社
売り上げランキング: 23,323

タイトルとURLをコピーしました