なぜsshdはデフォルトでrootログインを許可するのですか?


7

私は現在、ハッキングに対するサーバーの強化に取り組んでいます-特に、sshを介してrootとしてログオンする試みが大量に発生しています。fail2banを実装しましたが、なぜデフォルトでrootログオンが許可されるのでしょうか?非sudoベースのディストリビューションでも、通常のユーザーとしてログオンして切り替えることができるので、sshでrootログオンを許可することには明らかな利点があるのでしょうか、それとも誰も変更する必要のないものですか?

回答:


8

sshでrootログオンを許可することには明らかな利点があります

バックアップを実際に実行するには、リモートシステムにrootが必要なバックアップシステムがいくつかあります。リモートシステムでメンテナンスタスクを実行するために、キーベースの認証を使用してセットアップされたものを見ることは珍しくありません。

デフォルトがからPermitRootLogin yesに変更されることを強く希望しますPermitRootLogin without-password。これにより、キーベースの認証のみが許可されます。rootアカウントへのリモートパスワード認証はほとんど必要ありません。

システム(Ubuntuなど)では、パスワードを無効にしたrootアカウントでシステムをセットアップすることが一般的になっています。パスワードが無効になっているアカウントに直接認証する方法がないため、デフォルトの設定ではそれほどリスクはありません。

また、十分に複雑なパスワードのrootアカウントがある場合、sshを介してリモートからrootにログインしようとするブルートフォース攻撃が成功する可能性は非常に低いことも考慮してください。rootアカウントを無効にするとセキュリティがさらに強化されますが、強力なパスワードを持っている場合は必要ない場合があります。強力なパスワードをdenyhostsやfail2banのような反応的なツールと組み合わせると、ルートパスワードをブルートフォースにしようとする試みが機能するリスクは通常ほとんどありません。

ネットワークのリスクと要件に基づいて、インストールの完了後にシステムを強化することは、常に良い習慣です。重要ではなく、ユーザーデータのないシステムでは、医療記録や銀行記録を保存するシステムと同じレベルの強化は実際には必要ありません。


2

確かではありませんが、海外からのインストールを行う人々がログインできるようにしたいと思います。他のユーザーがまだいないため、最初のログインはrootである必要がある場合があります。

ただし、ユーザーを作成してsudo権限を付与した後は、sshd構成でrootとしてログインオプションを無効にする必要があります。

また、SSHポートを22以外に変更することをお勧めします。これにより、マシンの安全性が向上するわけではありませんが、無駄な/迷惑な要求がすべて停止されます。


標準のポートからの変更には本当に同意しません。パケットフィルタリングを使用します。
ワーナー

本当に?それの何が悪いのですか?尊敬する管理者がそれをやっているのを見たので、私はちょうどそれを始めました...
Xeoncross

これは、フィルタリングやネットワーク分離なしで同じ場所に配置されたサーバーを実行することから採用されたものです。
ワーナー、

@ワーナーですが、よくわかりません。標準のポートから変更することは、ほとんどの人にとってほとんどの試みを回避するための非常に簡単な方法ではないでしょうか?
Camilo Martin、

2

追加の保護策として、ルートログインを防止することを検討してください。数年前、ブルートフォースがピークに達していましたが、最近では、デーモン(apache、pureftpdなど)から見えるものを介して脆弱性を探す傾向があります。明日SSHDでエクスプロイトが見つかった場合、ルートログインの防止は優れたアイデアになります。SSHDは成熟していて安全ですが、決してわかりません。最近のエクスプロイトは、カーネルでの特権昇格、またはカーネルでのサードパーティ製アプリの使用に向けられているため、ルートログインを防止しても、状況は変わりません。

Debianベースのディストリビューションはすでに切り替えを行っていますが、RedHatベースのディストリビューションはそれを提案しています(ベストプラクティスのドキュメントを読んだ場合)。


1

まあ、rootは有効なユーザーであり、sshdはそれを許可してくれます。たとえば、OpenBSD(OpenSSHの同じ人)では、インストール中にユーザーを作成するように求められないため、ボックスにアクセスするにはrootを使用する必要があります。

一部のデスクトップベースのディストリビューションでは、追加のユーザーを作成する必要がありますが、サーバーでは実際には必要ありません。

また、sudoまたはsuがrootとしてログインするよりも安全であるというこれらの引数は、大きな神話です。たとえば、Ubuntuの場合、ユーザーはデフォルトでsudoを使用してANYコマンドを実行できるため、侵入したすべての攻撃者がANYコマンドをrootとして実行することもできます。セキュリティの観点からはかなり役に立たない。


一方、攻撃者はパスワードをブルートフォースで強制するのではなく、ユーザー名とパスワードの両方を推測する必要があります。また、sudoはsudoersファイル内のユーザーに制限されていることにも注意してください。ほとんどの場合、sudoは最初のユーザーにすぎません
Journeyman Geek

0

これはディストリビューション固有のものです。許可する人もいれば許可しない人もいます。

ディストリビューションを管理している場合は、インストール時にシステムができるだけ強化されるように構成します。いくつかの機能を無効にすることを忘れることよりも、いくつかの機能を有効にすることを忘れることの方が良いです。


多数のエンドユーザーがデスクトップでシステムを使用する場合も、システムをできる限り強化することが困難になります。デフォルトのケースでユーザーを保護するのに十分なだけシステムを侵害して強化する必要がありますが、上級ユーザーが自分のニーズに合わせてシステムを変更できるようにする必要があります。
Zoredache
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.