web-dev-qa-db-ja.com

SSHポートを1024未満に変更する必要がありますか?

多くのサーバー構成ガイドでは、わかりにくくするため、および競合を回避するために、SSHポートを1024以上に変更することを推奨しています。

特権があるため、1024未満のポートを使用することを推奨しているため、これは興味深いものです。

http://www.thefanclub.co.za/how-to/how-secure-ubuntu-1204-lts-server-part-1-basics

この実践についての考えは?

5
SexxLuthor

さまざまなオプションがあります。それぞれに欠点があります。それであなたはどの欠点を好みますか?

  • ポート22を使用:簡単なパスワードをスキャンするボットから大量のログエントリを取得します。公開鍵認証のみを使用することで、そのような侵害から保護することができます。ただし、ログエントリはそのまま残ります。
  • 1024未満の他のポート:他のプロトコル用に公式に予約されている可能性が高く、そのプロトコルを使用する場合に競合を引き起こす可能性があります。他のサービスをスキャンするボットが存在する可能性があるため、依然として奇妙なログエントリが時々表示されます。
  • ポート番号1024以上を使用:ローカルユーザーは、そのポートをリッスンすることにより、DoS攻撃を引き起こす可能性があります。 sshdがダウンしているときにリッスンを開始する必要があるため、sshdが再起動される機会があります。

それ以外の方法でsshdを安全に維持している場合は、ログがリモートホストによってフラッディングされるか、ローカルユーザーがDoSの可能性があるかを選択できるようです。ログエントリは、ある種の自動ブロックによって軽減される可能性があり、残念なことに、別の種類のDoS攻撃の可能性があります。

6
kasperd

ええと、ポートを22から別のものに変更できます。しかし、それはポートスキャンが最終的に表示しないものではありません。

セキュリティとSSHが心配な場合は、パスワードのみの認証を無効にしてください。また、サイトでスキャンを実行する悪意のあるホストを禁止するように構成されたfail2banなどのモニターログスキャナーをオンにします。

セキュリティについてさらに心配している場合は、ポートを変更することが理にかなっていることが1つあります。それを一般的でないものに変更し、ポートノッキングを実装することです。

ポートを変更するだけではまったく効果がありません。アクティブポートノッキングでポートを変更することは、まったく別の種類の問題です。

8
Marc Stürmer

1024未満のポートは、カーネルによってCAP_NET_BIND_SERVICEを使用するデーモンとサービス用に予約されており、そのうちの1つはSSHです。

実際、スキャンでまだ開いているポートが見つかるので、sshポートを変更してもセキュリティはそれほど向上しません。ランダムホストのデフォルトポートでデフォルトパスワードまたはパスワードテーブルを試行する攻撃によって発生するログエントリは少なくなりますが、sshを正しく設定すれば、これらは問題になりません。

問題は、送信トラフィックが標準ポートに制限されている環境からサーバーに接続すると、問題が発生することです。私にとっては、SSHをデフォルトのポートで維持することをお勧めしますが、そのことについて喜んで議論する人もいると思います。

2
Broco

SSHを標準以外のポートに変更しても、セキュリティ上の利点はないようです。ポート22はSSH用に予約されているため、ポート22に留まることで競合が発生することはありません。また、SSHサーバーのセキュリティが非標準ポートでの実行に依存している場合は、仕事をしていません。

1
Andrew Schulman

ポートを変更しても実際の標的型攻撃(必ずしも誰かがすべてのポートをスキャンしてSSHポートを見つけることができる場合)からあなたを保護するわけではないため、他の回答には部分的に同意しなければなりませんが、それはあなたを保護します辞書を持つランダムなホストまたは選択されたホストに対してブルートフォースを実行するボットネット。そして、この場合でも、適切な技術者なら誰でも、パスワードが十分に強力であることを確認することを知っていると思います。ソフトウェアの新しいインストールでは、実際には強力なパスワードが必要であることは言うまでもありません。分散型サービス拒否攻撃からサーバーを保護すると私が思うのは、サーバーを遅くしたり、ログをがらくたにしたりすることです。 fail2ban&co。これを行う単一のホストに対して素晴らしい仕事をすることができます、彼らは本当に大きなボットネットに対してかなり効果がありません。

反対に、SSHアクセスを提供するWebホストなどを実行しない限り、SSHポートをインターネットに開いたままにする理由はわかりません。それ以外の場合は、SSHへの接続が信頼できる特定のIPのみを許可する必要があります。これがベストプラクティスです。ポートをノックしない、ポートを変更しない、fail2banではない。

したがって、私に尋ねると、2つのオプションがあります。

  1. SSHをインターネット用にオープンにする特定のニーズがあります。この場合、SSHポートを変更し、fail2banをインストールします(Xがパスワードの入力に失敗した後にアカウントをロックするように設定することもできます)。
  2. SSHを閉じて、特定のIPのみをホワイトリストに登録します。

編集:

1024を超えるものと1024未満のものを忘れました。実際、多くのファイアウォールには、1024未満のポートを使用する方が意味のある特定のルールがあります。たとえば、1024を超えるポートで着信する接続を拒否するファイアウォールがあります(ルートでサービスを開始する必要がある、またはエクスプロイトではなくポートをリッスンする必要なカーネル機能が必要になるため)、他のファイアウォールは、システムサービスがこの利点などを享受できるように、ポートを低くする.

1