UbuntuがWindowsの管理者のようにシステム起動時にGUIユーザーがrootとしてログインすることを許可しないのはなぜですか?
なぜ端末からのみログインするように制限されているのですか?
あなたが何をしているのか正確に知らない限り、そうすることは推奨されないからです。ルートはスーパーユーザーであり、何でもすべてを実行できることを意味します-管理タスクのみを対象としています。毎日のタスクは、全員(またはユーザーの大部分)がルートを使用した場合に悪用されるセキュリティリスクを負う可能性があります。 Think Windows-マルウェアとウイルスの問題の99%は、日常業務に管理者アカウントを使用している人が原因です。
例を見てみましょう。
誰かがシステムに侵入し、ディスクを消去するように指示した場合はどうなりますか?通常のユーザーとして実行している場合、削除できる(すべき)ファイルは、belongだけであり、他のユーザーではありません。たとえば、他の人がコンピューターを使用している場合、どんなに一生懸命試してみても、それらのファイルはまったく変更されません。つまり、systemファイルを変更することはできません。したがって、システムは安定したままで、影響を受けない/感染しません。
ただし、rootとして実行する場合は、ハードドライブを完全に消去し、おそらくハードウェア自体に何らかの損傷を与え、通常はシステムを使用できなくすることができます。修正:singleコマンドをコンピューターのルートとして実行できるユーザー(悪意のあるWebサイトまたは電子メールの添付ファイル)は誰でも実行できます。
http://everyjoe.com/technology/explain-why-not-log-on-as-root/ を見てください。これは、私よりもうまく説明できる素敵な記事です。
EDIT:もう1つあります http://ihazomgsecurityskillz.blogspot.nl/2010/09/running-as-root.html =
EDIT2:常にSudo command
またはgksu command
を使用して、command
をスーパーユーザーとして実行できます。両方ともグラフィカルユーティリティおよびコマンドラインユーティリティを使用します。ただし、Sudo
は通常CLIに使用され、gksu
は同じことを行うグラフィカルパスワードプロンプトです。
ある程度、一時的にroot
になります-ずっと、much常にrootとして実行して不安定になる危険性があります。
標準のUbuntuでは、root
ログインは許可されません。GDM(グラフィカル)ログインマネージャーからも、テキストコンソール(つまり、押すと表示されるコンソール) Ctrl+Alt+F1)。
root
(つまり、管理者)の操作を実行するには、端末でSudo
コマンドを使用するか、それに相当するGUIを使用する必要があります。これらはyourパスワードを要求し、要求された特権操作を実行します(その操作のみ)。
この動作の理由は、他の人が指摘しているように、root
操作の実行は本質的にリスクがあり、実際にroot
特権を必要とする操作の数は比較的少ないためです:このSudo
アプローチを使用するほとんどの場合、特権のないアカウント(つまり、システムや他のユーザーに無害)で実行しており、本当に必要なときにroot
の権限を取得します。
例が明確になる場合があります。マシンに新しいサービス(デーモン)をインストールするとします。これは比較的新しいものであり、それについて、およびニーズに合わせて構成する方法について読む必要があります。情報、設定例などを見つけるためにWebを頻繁に閲覧することになります。詳細情報を要求するIRCチャットがあります。これにはroot
powersは不要です。最終的に、2つの操作の特権アクセスのみが必要です。
Sudo apt-get install ...
)をインストールします。コンピューターセキュリティで一般的に受け入れられている原則は、常に可能な限り最小限の特権レベルを使用して操作を実行することです。-これにより、ソフトウェアのバグやエラーが原因で何か悪いことが起こるリスクが軽減されます。オペレーターから。
Ubuntuのデフォルト設定はこの方向に進みます。代わりにroot
ログインを使用している場合は、root
アカウントからIRC(および場合によっては同時に実行する他のすべてのこと)を実行して、インターネットをサーフィンすることになり、システムを不必要に公開することになります。脅威。
更新:コンパイラの例では、次のように進みます。
通常のユーザーとしてSSH経由でノードにログインし、グラフィカルなX11ディスプレイを実行している別のUbuntuまたはGNU/Linuxノードからログインします。必ずSSH経由のX11転送を有効にしてください。
ssh -X [email protected]
Shell/SSHプロンプトで、次のコマンドを発行します。
Sudo /path/to/the/compiler/install/program
これにより、root
特権でコンパイラインストーラーが実行され、目の前のグラフィック表示に(SSH転送を介して)アクセスします。
UbuntuでSudoを使用する理由は、 こちらにあります です。 「ルートに戻る」簡単な方法が必要な場合は、Sudo -s
またはSudo -i
を使用します。
Rootを使用した場合の警告の山は別として、canログインして、ターミナルから次を実行することにより、rootログインを有効にします。
Sudo passwd
これにより、最初にパスワードの入力が求められ、次にUNIXパスワードの変更を求められます。入力するパスワードは、root
アカウント用です。
buntu Wiki には、Ubuntu内のルートとSudoの深さに関する優れた記事があります-警告と落とし穴。
ここには2つの質問があります。 1つは、なぜUbuntuでrootログインがデフォルトで無効になっているのですか?これは、いくつかの投稿で対処されています。
2番目の質問は、なぜグラフィカルルートログインが特に軽視されているのかということです。
非グラフィカルルートログインのすべての欠点は、グラフィカルルートログインにも当てはまります。しかし、グラフィカルにログインすると、非グラフィカルにログインしたときよりもはるかに複雑な方法で動作するはるかに多くのプログラムを実行します。グラフィカルユーザーインターフェイス全体と、GUIを効果的に使用するために必要なすべてのグラフィカルプログラムは、rootとして実行されます。それらのいずれかに小さなセキュリティ脆弱性があると、誰かがシステムを完全に制御できるようになります。
Ubuntuでrootとしてログインすることはまったくお勧めしませんが、セキュリティコミュニティでは、これが普遍的に悪い習慣であるというコンセンサスはありません。ただし、グラフィカルルートログインは単に悪い習慣であり、ほとんどすべてのオペレーティングシステムは、それらを段階的に廃止するか、強く推奨します。
それほどではありませんが、グラフィカルログインに非ルートユーザー(特に、SudoまたはPolicyKitでルートとして操作を実行できるユーザー)がいると、リスクが生じます。しかし、グラフィカル環境のすべてが実際に無制限の機能を持つルートとして実行されなければならない場合よりもはるかに制御されています。それでも、セキュリティが最優先の状況では、通常、グラフィカルインターフェイスを完全に廃止することをお勧めします。これが、Ubuntu ServerにデフォルトでGUIが付属していない理由で、公式にGUIのインストールを推奨しています(ただし、そうすることはサポートされています) 。
Windowsの世界では、 本質的にグラフィカルユーザーインターフェイスを排除する (技術的にはいくつかの要素が残っていますが、非常に使い果たされており、任意のグラフィカルプログラムを実行できません)の方法でWindows Serverをインストールできます。これは同じ推論に基づいています。
ルートログインを有効にすることに決めた場合でも、グラフィカルにルートとしてログインしないでください。ルートログインを有効にすると、セキュリティリスクがわずかに高くなる可能性があります。グラフィカル環境全体をルートとして実行すると、非常に高いリスクにさらされます。
さらに、gksu/gksudo/kdesudoでrootとして実行されるように設計されたグラフィカル管理ツールを除き、ほとんどのグラフィカルプログラムはrootとして実行することを意図していません。このモードでは広範囲にテストされていないため、失敗するか、不規則に動作する可能性があります(running as rootであるため、これは特に悪いでしょう)。
最後に、一部のグラフィカル管理ツールである users-admin
でさえ、rootとして実行すると失敗します。通常のユーザーによって実行され、PolicyKitを使用してrootとして(実際にrootとして実行されることなく)アクションを実行するためです。
ターミナルを開く(Ctrl+Alt+T またはダッシュホーム>その他のアプリ>インストール済み(展開)>ターミナル)。
ルートアカウントを有効にするには
ターミナルタイプで、またはSudo passwd root
を貼り付けます。通常のログインパスワードを入力します(求められた場合)。新しいroot
パスワードを入力して確認するように求められます。
ルートとそのパスワードの入力を許可する新しいログインプロンプトを追加するには
端末タイプまたは貼り付け。 gksudo gedit /etc/lightdm/lightdm.conf
。これにより、ログイン画面の設定ファイルを編集できるグラフィカルテキストエディタウィンドウが開きます。
ファイルの最後にgreeter-show-manual-login=true
行を追加します。
ファイルは次のようになります。
[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
greeter-show-manual-login=true
lightdm.conf
ファイルを保存して、geditを終了します。
Ubuntu 12.04を再起動すると、ユーザー名とパスワードの入力を許可する新しい「ログイン」ウィンドウ(以前の「その他」ウィンドウに置き換わります)が表示されます。ユーザー名にroot
を入力し、ルートアカウントに割り当てたパスワードを入力します。
これがroot
アクセスを必要とする/望んでいる他の人を助けることを願っています。
ubuntu 12.04 LTSに関しては、root権限を使用してこれを行うことができます:
echo "greeter-hide-users=true" >> /etc/lightdm/lightdm.conf
次に、ユーザー名とパスワードの両方を入力してグラフィカルにログインするように求められます。私はあなたがすでにルートのパスワードを設定していると仮定しています:)
Rootとして直接ログインしてはいけない理由は無数にありますが、rootであるという利便性に本当に感謝している場合(vmwareで実行されているテストボックスなど)まれに終了することがあります。
ルートユーザーと管理者(Windowsの場合)は、コンピューターの神に相当するからです。そのユーザーは、ファイルのアクセス許可からファイルシステム全体の消去まで、あらゆるものを調整できます。平均的なホームユーザーが管理者として実行することは非常に一般的です(その名前または最初の起動時に設定された別の名前のいずれかで)。そのユーザーとして実行されるプログラムはシステム全体にわたるため、危険になります。
管理者権限を制御できないため、ウイルス/マルウェア、さらには自己破壊的な問題が発生します。このため、Ubuntuを含む多くのディストリビューションは、追加のステップ(「ここで行ったすべての変更はスコープ内のより大きな変更である」と主張するのに役立つ多少認知的なステップ)によってハイパワーへの移行を制限しました。
Rootとして直接ログインすることはできませんが(他の人がすでに説明している理由のため)、GUIアプリケーションをrootとして実行できます。たとえば、システム→管理→Synaptic Package Managerは、rootとして実行されるグラフィカルアプリケーションです。
アプリケーションをルート(テキストアプリケーションまたはGUIアプリケーション)として実行するには、次のコマンドのいずれかを使用します。
Sudo name-of-the-application
gksu name-of-the-application
それらはほとんど同じです。主な違いは、最初に端末でパスワードを要求し、2番目はグラフィカルダイアログウィンドウを使用することです。
通常、ルートは通常の使用には推奨されませんが、ルート権限を必要とする端末コマンドのリストが長い場合があり、ルートとしてログインする方が便利です。 Sudo xterm
またはgksu xterm
を使用してルートターミナルを開くと、便利な「root @」という用語がある場合に、どの用語ウィンドウがルート特権を持っているかを簡単に区別できると思います
Rootとしてアクションを実行するには、常に自分としてログオンしてからSudoとしてログオンする必要があります。 Ubuntuは、デフォルトで必要なほとんどすべてのアクセスを許可するように設定されています。マイナーな変更が残りを処理します(使用済みを他のグループに追加するなど)。 rootとしてログインするのは悪い習慣と見なされます。業界のベストプラクティスは、ここで設定されたデフォルトです。
Rootとしてログインできる人は、セキュリティの観点から非常に悪いことです。
追加の注意:Ubuntuでは、GUIアプリケーション(nautilusなど)で重要なファイルを誤って削除したり削除したりできないため、GUIユーザーがrootとしてログインすることは許可されていません。
CLIユーザーインターフェイスのみで、間違いのリスクを減らすことができます。ただし、以前は、Ubuntuがrootのランダムパスワードを作成するため、CLIモードでもrootでログインできません。ルート管理タスクは、コマンドSudoまたはgksuでユーザーのパスワードを使用することによってのみ実行できます。
Debianルールに基づいています。
rootとしてログインする正当な理由がないを考えると、RH(rootログインを許可)とubuntu(Sudo/gksuを使用してすべてを行う)の違いは好みの問題だと思います。
質問の他の部分に関しては、通常のユーザーとしてログインし、ALT-F2
を押してgksu
と入力することにより、グラフィカルインストールを実行できるはずです。表示されるダイアログで、インストーラーを起動するコマンドを入力します。
ルートはnot毎日の毎日のタスクに推奨されます。スーパーユーザーの前提条件を提供するため、誤用される可能性があります。したがって、ログイン時のルートのオプションはありません。