web-dev-qa-db-ja.com

rootがssh経由でログインすることを許可されるべきではないのはなぜですか?

sshでrootアクセスを無効にする必要があるのはなぜですか?これはセキュリティ上の理由からだといつも聞いています。しかし、私はそれを理解していません。非rootとしてログインしてからSudo su -としてログインするのは何が違うのですか?特権権限を必要とするタスクを処理するための好ましい方法は何ですか?

ありがとう

トーマス

10
Thomas

Sudoは、監査可能性と豊富な粒度のため、管理タスクを委任する必要がある場合に推奨される方法です。 Sudoを使用すると、すべてのコマンドをログに記録でき、管理者は個人またはグループ用にさまざまなSudoプロファイルを設定できます。

suまたはrootアクセスはオールオアナッシング

6
jcsf

ルートは、すべてのUNIXマシンで有効になっていることが保証されている1つのアカウントであるため、パスワードを総当たり攻撃するためにルートを選択するのは簡単です。外部ツール(明らかなスキャナーを殺すラッパー、侵入者防止デバイス、そのようなもの)がなければ、パスワードがわかるのは時間の問題です。この種の動作を防ぐ外部ツールを使用しても、着信ユーザーに通常のユーザーとしてログインさせてから、拡張されたprivまでsu/Sudo/pfexecを実行することをお勧めします。はい、これは追加の手順です。つまり、ルートユーザー間で共有されるマシン上にユーザーアカウントを作成する必要がありますが、攻撃者とボックスの無制限の制御との間のもう1つの障壁です。

4
sysadmin1138

主な違いは、攻撃者がユーザー名も推測する必要があることです。 rootにログインさせると、彼はパスワードを推測するだけで済みます。

また、man-in-the-middleアプローチを使用して、sshキーを取得したり、データを再送信したりするユーザーのログインを偽装することができ、パスワードを入力せずにシステムにログインできます。ただし、ユーザーとしてログインする場合は、コマンドをSudo化する必要があるため、パスワードを手動で入力する必要があります。彼がrootとしてログに記録された場合、彼は物事をSudo化する必要がないため、セキュリティ手順が1つ少なくなります。

2
pakore

sshdをスキャン であり、ブルートフォース攻撃を行っている数十万台のマシンがあります。 「root」は、最初に試すのに適したアカウントです。壊れた場合は、マシンを完全に所有しているからです。また、rootログインを無効にしない限り、すべての* nixシステムで共通のアカウントです。これを行うことは非常に良いセキュリティ慣行です。

1
Rook

これの主な利点は、より柔軟なアクセス制御が可能になることです。ユーザーがSudoを介してroot権限を持っている場合、root権限を付与したり、必要に応じて削除したりするのは簡単です。逆に、実際にルートpwを人に渡した場合、それを取り除くことはできません(メン・イン・ブラックでない限り;-))、ルートpwを変更することしかできず、すべての人に影響を与えます。

そのコンテキストでは、直接rootログインは不要です。b/ c誰もrootpwを持っていません。

(シングルユーザーモードのコンソールで緊急アクセスするには、ルートpwが必要ですが、特別な準備が必要です)。

0
sleske

しかし、HP-UXがsshを介してrootにアクセスできないようにすることは決してありません。なぜですか?

0
suyao