Mitchはコメントに良いリンクを投稿しました:なぜrootとしてログインするのが悪いのですか?Debianサイトには、Wikiにリストされている主な利点があります。
なんでsudo
?
sudo
次のようないくつかの理由で、ルートとしてセッションを開くよりも使用する方が安全です。
rootパスワードを知る必要はありません(sudo
現在のユーザーのパスワードの入力を求められます)。追加の特権を一時的に個々のユーザーに付与し、パスワードを変更することなく削除できます。
を介して特別な特権を必要とするコマンドのみを実行するのは簡単sudo
です。それ以外の時間は、特権のないユーザーとして作業するため、ミスが引き起こす可能性のある損害が軽減されます。
監査/ログ:sudo
コマンドが実行されると、元のユーザー名とコマンドがログに記録されます。
上記の理由により、上記の機能がキャンセルされるため、sudo -i
(またはsudo su
)を使用してルートに切り替えることは通常推奨されません。
Ubuntuについて利点と欠点はwikiに記載されています。
sudoを使用する利点
Ubuntuには、ルートログインをデフォルトで無効にしたままにする次のような多くの利点があります。
インストーラーに尋ねる質問が少なくなります。ユーザーは、時折使用するための追加のパスワード(つまり、rootパスワード)を覚えておく必要はありません。そうした場合、彼らはそれを忘れる可能性があります(または、安全に記録せずに、だれでも簡単にシステムに侵入できるようにします)。
デフォルトでは、「何でもできます」対話型ログインを回避します。大きな変更が発生する前にパスワードの入力を求められます。これにより、自分がしていることの結果について考える必要があります。
sudoは、実行されたコマンドのログエントリを追加します(/var/log/auth.log
)。混乱した場合は、戻って実行されたコマンドを確認できます。
サーバーでは、ブルートフォースで侵入しようとするすべてのクラッカーは、rootという名前のアカウントを持っていることを認識し、最初にそれを試行します。彼らが知らないのは、他のユーザーのユーザー名です。rootアカウントのパスワードはロックされているため、そもそもクラックしたり推測したりするパスワードがないため、この攻撃は本質的に無意味になります。
- グループにユーザーを追加および削除することにより、管理者権限を簡単に転送できます。単一のルートパスワードを使用する場合、ユーザーの認証を解除する唯一の方法は、ルートパスワードを変更することです。
sudoは、よりきめ細かなセキュリティポリシーでセットアップできます。ルートアカウントのパスワードは、システムで何らかのタイプの管理タスクを実行する必要があるすべての人と共有する必要はありません(前の箇条書きを参照)。
認証は、短時間で自動的に期限切れになります(必要に応じて最小限または0に設定できます)。そのため、sudoを使用してrootとしてコマンドを実行した後にターミナルから離れても、rootターミナルを無期限に開いたままにしないでください。
sudoを使用することの欠点
デスクトップの場合、sudoを使用する利点は大きいですが、注意する必要がある可能性のある問題があります。
sudoで実行されるコマンドの出力をリダイレクトするには、別のアプローチが必要です。たとえばsudo ls > /root/somefile
、そのファイルに書き込もうとするのはシェルであるため、考慮は機能しません。を使用ls | sudo tee -a /root/somefile
して、ls | sudo
tee /root/somefile
コンテンツを追加または上書きできます。また、sudoの下で実行されるシェルプロセスにコマンド全体を渡して、などのルート権限でファイルを書き込むこともできますsudo sh -c "ls >
/root/somefile"
。
多くのオフィス環境では、システム上の唯一のローカルユーザーがルートです。他のすべてのユーザーは、nss-ldapなどのNSS手法を使用してインポートされます。ワークステーションをセットアップまたは修正するには、nss-ldapが壊れているネットワーク障害の場合、rootが必要です。これにより、システムがクラックされない限り使用できなくなる傾向があります。ここでは、追加のローカルユーザー、または有効なルートパスワードが必要です。ローカルユーザーアカウントは、ローカルディスク上の$ HOMEのを持つ必要がありませんNFS(または他のネットワーク化されたファイルシステム)、およびNFSマウント上のファイルを参照しない.profile / .bashrc。これは通常ルートの場合ですが、非ルートレスキューアカウントを追加する場合は、これらの予防措置を手動で行う必要があります。ただし、ローカルユーザーをsudoで使用する利点は、上記の利点で述べたように、コマンドを簡単に追跡できることです。
そして、私たちは常にそれを持っています(最初のリリースから)。
私が見つけた最も古い参照は、「sudo」を持つ4.10について語っています
シャトルワースがデビアンベースのUBUNTU LINUXを発表
... DebianベースのUbuntu LinuxにはGnome 2.8、カーネル2.6.8.1、OpenOffice.org 1.1.2が含まれており、テキストベースではあるが簡単なインストール手順が付属しています。Ubuntuは、Mac OSXと同じようにsudoを使用することを好むrootユーザーを無効にしました...