私のubuntuデスクトップホストと仮想マシンの両方。約1か月間rootとしてログインしていませんが、その間にカーネルをアップグレードしました。ルートパスワードが機能しなくなったことがわかりました。ただし、Sudo passwd root
を使用すると、現在のユーザーパスワードでルートパスワードを簡単にリセットできます。これはどうして起こるのでしょうか?もう問題はありませんが、この下線の理由に興味があります。ありがとうございました!
まず、Sudo
はルートとしてコマンドを実行するため、実際のルートパスワードをリセットします最初にルートとしてアクセスしながらは通常問題になりません。既にSudo
を介してルートアクセス権があるため、ほとんど変更はありません。 (これは、ユーザーコマンドを制限するセットアップはないが、Sudo passwd
...を許可するセットアップがあることを前提としていますが、これは構成の問題です。)
第二に、Sudo passwd
を使用してリモートからPCに侵入するには、a)ユーザーをだまして何らかの方法でユーザーパスワードを提供する必要があります(これによりSudo
アクセスが可能になります)同様に)、またはb)マシンに物理的にアクセスできます。この場合、「リモート」はおそらくそれほど真実ではありません。
つまり、いいえ、直接セキュリティリスクはありません。特定の(ただし、一般的ではなく非論理的な)構成では、そこに抜け穴が生じる場合がありますが、それだけです。
いいえ、セキュリティの問題ではありません。通常、ユーザーがUbuntuで実行するルートとしてSudoコマンドを実行できる場合は、問題ありません。 Sudoの背後にある考え方は、rootとしてログインすることなく、rootとしてコマンドを実行できるということです。
セキュリティの問題ではありません。珍しくありません。システムは想定どおりに機能しています。ここには何もありません。
これは大きな問題ではありません。ユーザーはrootとして許可されました。rootとして許可されていないユーザーを作成できます。
アカウントタイプを見ると、管理者はSudoを使用してrootになることができます。
管理者:
標準:
しかし、実際にはどのように機能しますか? /etc/sudoers
(ルートとして開く)で答えを見つけることができます。
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group Sudo to execute any command
%Sudo ALL=(ALL:ALL) ALL
これは、SudoおよびadminのメンバーのみがSudoを使用して、通常のユーザーよりも多くのアクセス許可を持つことを意味します。
また、/etc/group
(rootとして開く)をチェックして、これらのグループのメンバーを確認することもできます。
Sudo
は、現在ログインしているユーザー以外のユーザーとしてコマンドを実行します。通常、これを使用してrootとして実行しますが、他のユーザーとして実行することもできます。
そのため、Sudo passwd root
は、rootパスワードを変更し、rootであるかのように変更するようシステムに指示します。 rootユーザーはrootユーザーのパスワードを変更できるため、パスワードが変更されます。システムは設計どおりに機能しています。
このパズルの欠けている部分は、誰もが使用できるわけではないSudo
です。実際、デフォルトでSudo
が構成されている方法では、ユーザーの1つのグループのみがそれを許可されています。システムのインストール時に作成したユーザーは自動的にそのグループに配置されますが、そうでないユーザーを作成することもできます。本当にしたい場合は、そのグループから自分自身を取ることもできます。一部のユーザー(またはユーザーのグループ)に特定の特定の操作のみを許可するように、Sudo
を設定することもできます。
つまり、最初のユーザーがrootとして何でもできることは事実です。 これがSudo
がパスワードを要求する理由です。アカウントに侵入する攻撃者は、root-yを実行するためにrootパスワードを必要としませんが、それを行うにはyourパスワードが必要です。多くの攻撃では実際に攻撃者にパスワードが与えられるわけではないため、Sudo
は依然としてこれらの攻撃によってもたらされる損害を制限します。