Image

ニュース

22.03.2024

ポートノッキングとは何ですか?なぜ必要ですか?


ポートノッキングとは、例えばSSHサービス用のポート22がデフォルトで閉じられている状態で、特定のポート(例えば1234、1111、2321)に順次パケットを送信すると、knockdサービスがそれを認識し、ファイアウォールでポート22を開いて接続を可能にするというものです。

簡単に言えば、ドアに鍵穴がなく、特定の順序でドアを押すと鍵穴が現れるという仕組みです。

一見、これは良い解決策のように見えますが、実際にはそうではありません。理由は以下の通りです。

1. 新しいポートと追加のサービス

サービス自体がポートを開いてシーケンスを受信するため、余分なポートが存在することは脆弱性を増やす要因となります。

2. シーケンスの傍受の可能性

デフォルトでは、knockdサービスは暗号化されていないため、送信されたパケットのシーケンスが傍受される可能性があります。

cryptknockのような修正版では、特定の文字列を送信して照合を行いますが、このパッケージ自体は8年間更新されていません。

3. PHPスクリプトを使った代替案

例えば、サイト用にポート443がデフォルトで開いている場合、より安全な方法としては、PHPスクリプトを使用してSSHへのアクセスを許可し、追加のサービスを必要としない方法が考えられます。

4. 追加の作業

この機能は定期的に追加の操作を必要とし、これが煩雑さを増し、結果的に作業効率が低下します。

結論として、ポートノッキングの使用は良い解決策ではありません。

5. プロキシとVPN

セキュリティと利便性を考えると、特に複数のサーバーで実装する必要がある場合、ポートノッキングは即席の方法に過ぎず、VPSを静的IPで作成し、そこからのみアクセスを許可する方が簡単で効果的です。このオプションは最善の代替手段であり、プロキシの利点については以下の記事で説明しています:

プロキシ - アクセスサーバーとして、VPSサーバーのセキュリティを強化する


すべてのニュース



No Comments Yet