2011年1月25日

[ubuntu-jp:3323] Re:root(スーパー)ユーザーについて

梅田です。

風邪は治りませんが、何時までもサマリーを出さないと良くないと思い、もっと
も分かり易かった荻野さんの投稿で分かったことを纏めるに留めさせて頂きま
す。他の投稿を下さった皆さん、特に、サイトを紹介頂いた山内さん、当方の力
不足から英語の解説は読めませんでした。ごめんなさい。

On Fri, 21 Jan 2011 02:15:47 +0900

Mitsuru Ogino <ogino@xxxxx> wrote:

> 荻野です。
>
> すみません、私はルートでログインできる方がうれしいとあったのでつい
> Ubuntu 以外にルートで作業するような他の Linux や BSD, Unix の経験がお
> ありかと思って前のメールを書きました。分かりにくくてすみません。

ええ。普通はそうお考えになるはずなんですが、下手の横好きと言いますか趣味
でLinuxを始め、10年になります。万年初心者です。Ubuntuの無かった時代で
の入門。当時、全てのディストリビューションはrootが有りました。今でも、
スーパーユーザーの怖さを身を持って思い出す為に、rootに成るためのパスワー
ド入力作業は大事な儀式になっているため、ああ言う質問投稿になったわけで
す。

> # 伝統的な Unix では sudo コマンドはありませんので、ルートのパスワード
> # はあって当然のものです。

Ubuntuもデフォルトでrootになれるシステムになったらいいですね。


> m.umeda@xxxxx said the following on 11/01/19 8:34:
> > <荻野さんの解説の不明点>
> >
> >> root のパスワードを設定する場合の注意点は
> >>
> >> ・SSH server が稼働している場合、sshd_config のデフォルトの設定が
> >> PermitRootLogin yes だったと思うのでこれを変更するか、総当たり攻撃
> >> を受けないように(例えば /etc/hosts.{deny,allow} などで)注意する必
> >> 要がある。 FTP サーバなどでも同様の留意が必要かと。

> 要するにサーバとして使用する場合、Ubuntu のパッケージはルートのパス
> ワードが設定されていないことを前提とした設定になっている場合があるの
> で、ルートパスワードを設定する場合はそのことを意識しておくべき、と言い
> たかったのでした。

サーバーを立てる予定はありませんので、ここの解説の意味、Ubuntuはrootパス
ワードの設定を前提としていないので、サーバーとして採用の際は、注意せよと
言う事ですね?

> >> ・シングルユーザモードに入るときに sulogin が起動されるので、root
> >> のパスワードを忘れてしまうとシングルユーザモードに入れない。(再)
> >> 起動時にシングルユーザモードで起動して root 権限を得ることを防止で
> >> きるというメリットもある。
> >
> > シングルユーザーモードは、システムメンテナンスのモードと理解しました
> > (下記は、WEBで調べた物のコピーです)。この記述を読む限り、rootパス
> > ワードを忘れても、復旧可能と有るので大丈夫ではと思うのですが。Ubuntu
> > では一般ユーザーパスワードを知られたらアウトですが、色々工夫してパス
> > ワード管理して居れば、一般的なUNIXの手法rootとrootパスワードの存在は
> > ユーザーパスワードでほとんど出来てしまう(先日、試した限りでは$
> > sudo cd/hogehoge/・・・は出来ませんでしたが)のは却ってセキュリ
> > ティー上、好ましいとは言えないような気がするのですが。
>
> 記憶に頼っていますが、ルートのパスワードを設定してあると、シングルユー
> ザモードに入るときにルートのパスワードを聞かれたと思います。man
> sulogin によれば、
>
> Give root password for system maintenance
> (or type Control-D for normal startup):
>
> と表示されて、root password を入力しないと normal startup、つまりマル
> チユーザモードに移行しようとしてしまいます。しかし、ルートのパスワード
> がロックされていると、
>
> If the root account is locked, as is the default on Ubuntu, no
> password prompt is displayed and sulogin behaves as if
> the correct password were entered.
> もしルートアカウントがロックされている(これは Ubuntu のデフォルト)
> 場合は、パスワードプロンプトは表示されず sulogin は正しい(ルート)
> パスワードが入力されたように振る舞う。
>
> とあります。
>
> >>  ここで,末尾に「 single」(または「 1」)と入力してEnterキー,次
> >> いでB キーを押すと,シングル・ユーザー・モードで起動します。「sh-
> >> 3 .2 #」というプロンプトが表示された時点で,シングル・ユーザー・
> >> モード上でシェルが起動しています。
> >>  passwdコマンドを起動して,新しいパスワードを2回入力すれば,rootの
> >> パスワードを忘れてしまったとしても再び利用できるようになります。
>
> さて、Ubuntu ではこのようにはならなかったような気が… 試してみれば良い
> ことですが。ただ single ではなく single init=/bin/sh を使用するとか、
> セキュリティという面からすると物理的にコンピュータに触れる人間ならシン
> グルユーザモードで起動できなくても CD-ROM や USB から起動してシステム
> を変更できるので、ここでパスワードを問うというのは気休めにも似ていま
> す。
>
> シングルユーザモードに入るというのは普通トラブル時なので(ディスク構成
> 変更時などもありますが)、いきなりルートのパスワードを聞かれても思い出
> せないということがあるので注意が必要、というつもりでした。

パスワードの管理は厳重に行っている方だと思うので、その辺りは大丈夫です。
管理実態は、不特定多数の購読が可能なMLで公開すべきことでは有りませんので
差し控えさせていただきますが。

> >> ・BSD 系で一般的な wheel グループのメンバーのみ su を許可するという
> >> 設定はデフォルトではないので、nobody を含むどのユーザでも su で
> >> root 権限取得を試みることができる(総当たり攻撃ができる)。wheel グ
> >> ループを追加して /etc/pam.d/su 中のコメントや man pam_wheel に従っ
> >> て設定すれば制限可能(root も wheel グループに追加するのを忘れない
> >> ように)。
> >>
> >> が思いつきますが、他にもあるかも知れません。

> 個人用であれば無視して結構です。

これも、個人用という前提においてのみ、無視して良いと言う事ですね。

> 管理者以外のユーザが使用できる場合、ネットワーク経由での総当たり攻撃
> (いろんなパスワードでルートでのログインを試みる)以外に、ローカルで
> su を実行してルート権限の取得を試みるという攻撃があり得ます。
>
> BSD 系(例えば Mac OS X とか)では伝統的に wheel グループに所属してい
> ないと su でルート権限を得ることはできないという仕組みがあるのですが、
> これに慣れている人間だと、Ubuntu にはデフォルトでそのような仕組みは有
> 効になっていない(誰でも su を実行できる)という落とし穴があるというこ
> とです。
>
>
>
> > ※実は当方の知りたい事はこれだけなのです。
> >
> > $ sudo passwd root
> > hogehogeのパスワード:
> > 新しいパスワード:
> > 確認のパスワード:
> >
> > $ su -
> > 上記パスワード入力
> >
> > # ←プロンプトがrootに
> >
> > この作業をして
> >
> > ・やりかたはこれでいいのか?>>>荻野さん流に言えば、どうも良くは無
> > さそうだ>>>manの英語はちゃんと読めるだろうか・・・読めないですよ
> > ね・・・多分

> 多分知っておくべきことは:
>
> ルートのパスワードが十分に安全なものであれば特に問題はありませんし、
> サーバが一切動いておらず自分一人しか使用しないのであればなおさら問題で
> はありませんが、普通は不必要なリスクでしょう。root になりたい場合は
> sudo -i を実行すればよろしい。

> パスワードのロックは、パスワードの再設定で解除されます。再度ロックする
> には sudo passwd -l root のはずですが、sudo passwd -u root で再度パス
> ワードあり状態にできるなど完全に同じではありません(が多分問題ない)。

ルートをパスワード管理で保護することで、個人使用に於いてはさほど問題では
ないが、決して推奨されることではないというくらいの意味ですね?

> > ・推奨される行為じゃ無いようですね?・・・でも、何故?個人で使う分に
> > は一般ユーザーでなんでも出来てしまうのを避ける意味でも、rootが有った
> > 方がいいような気がするんですよね・・・。
>
> a) ルートでログインした状態になれる      … sudo -i や sudo su -
> b) ルートアカウントにパスワードを設定してある … su - とパスワード入力
>
> がごっちゃになっているんじゃ無いでしょうか。「rootが有」というのは普通
> は a) のことなので、sudo -i(または sudo su -)で良く、「ルートアカウ
> ントにパスワードを設定」は不必要です。
>
> なお、a) と似たようなこととして
>
> c) ルート権限を得る
>
> というのがあり、これは sudo 経由で実行することで実現できます。シェルが
> 欲しければ sudo bash でコマンドプロンプトが # になります。が、例えば
> $HOME が /root にならないなど「ルートでログインした状態」とは微妙に違
> います。が、これも余計な知識ですね。

有り難う御座います。sudoの意義が、分かってきました。sudoでルート権限が取
得出来(方法が有る)るのに、わざわざパスワード設定なぞする必要がないと言
う事ですね。

> > 尚、個人的事情で申し訳ないですが、風邪をこじらせたようです。熱が有っ
> > て、現在臥床中です。治ったら、フォーラムへ行き、この投稿のレスがもし
> > 有ればサマリーに反映させて頂きたいと存じます。
>
> お大事に。

個人的事情になりますが、風邪を引いているのはともかく、当方、現在、今の医
学では治らない難病の患者で、自宅にて闘病生活です。風邪のせいでも有るので
しょうが、体調が優れず、きちんとしたサマリーを書くためにフォーラムにて
問い合わせるお約束でしたが、荻野さんの説明で大体のことが分かりましたの
で、今回は見送ります。殆ど引用だけのサマリーになってしまいましたがご容赦
ください。

--
梅田 光則 <m.umeda@xxxxx>


投稿者 xml-rpc : 2011年1月25日 16:48
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/101552
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。