Debianでのポートノッキング

現在、おそらくデフォルトのSSHポートを変更しています。それでも、ハッカーはポート範囲を簡単にスキャンしてそのポートを発見できますが、ポートノッキングを使用すると、ポートスキャナーをだますことができます。それがどのように機能するかは、SSHクライアントが一連のポートに接続しようとすることです。すべてのポートは接続を拒否しますが、接続を許可する特定のポートのロックを解除します。非常に安全で、簡単にインストールできます。ポートノッキングは、不正なSSH接続の試行からサーバーを保護するための最良の方法の1つです。

この記事では、ポートノッキングの設定方法について説明します。Debian 7(Wheezy)用に書かれていますが、DebianとUbuntuの他のバージョンでも動作する可能性があります。

ステップ1:必要なパッケージのインストール

SSHサーバーがすでにインストールされていることを前提としています。まだ実行していない場合は、次のコマンドをrootとして実行します。

apt-get update
apt-get install openssh-server
apt-get install knockd

次に、iptablesをインストールします。

apt-get install iptables

インストールするパッケージはそれほど多くありません。そのため、ブルートフォース攻撃から保護し、セットアップも簡単な完璧なソリューションです。

ステップ2:この機能を使用するためのiptablesの構成

接続するとSSHポートが閉じるため、サーバーが他の接続試行をブロックしている間、接続を維持できることを確認する必要があります。サーバーでこれらのコマンドをrootとして実行します。

iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --destination-port 22 -j DROP
apt-get install iptables-persistent
iptables-save

これにより、既存の接続は維持されますが、SSHポートへの他の接続はブロックされます。

それでは、knockdを設定しましょう。

ここで魔法が起こります-最初にノックする必要があるポートを選択することができます。ファイルにテキストエディターを開きます/etc/knockd.conf

nano /etc/knockd.conf

次のブロックのようなセクションがあります。

[openSSH]
    sequence    = 7000,8000,9000
    seq_timeout = 5
    command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
    tcpflags    = syn

このセクションでは、ノックする必要のあるポートのシーケンスを変更できます。今のところ、我々は、ポート7000、8000に滞在されますと、9000変更seq_timeout = 5するseq_timeout = 10、とのためにcloseSSHセクション、のための同じをseq_timeout行。closeSSHセクションにもシーケンスラインがあり、変更する必要があります。

ノックを有効にする必要があるので、もう一度rootとしてエディターを開きます。

nano /etc/default/knockd

セクションの0 START_KNOCKDを1に変更し、保存して終了します。

今度は、knockdを開始します。

service knockd start

すごい!すべてがインストールされています。サーバーから切断した場合、再度接続するにはポート7000、8000、9000をノックする必要があります。

ステップ3:試してみましょう

すべてが正しくインストールされている場合は、SSHサーバーに接続できません。

Telnetクライアントでポートノッキングをテストできます。

Windowsユーザーは、コマンドプロンプトからTelnetを起動できます。Telnetがインストールされていない場合は、コントロールパネルの[プログラム]セクションにアクセスし、[Windowsの機能の有効化または無効化]を見つけます。機能パネルで、「Telnetクライアント」を見つけて有効にします。

端末/コマンドプロンプトで次のように入力します。

telnet youripaddress 7000
telnet youripaddress 8000
telnet youripaddress 9000

これは構成で課せられる制限であるため、すべて10秒で実行します。次に、SSH経由でサーバーに接続してみます。アクセス可能になります。

SSHサーバーを閉じるには、コマンドを逆の順序で実行します。

telnet youripaddress 9000
telnet youripaddress 8000
telnet youripaddress 7000

結論

ポートノッキングを使用することの最も良い点は、秘密キー認証と一緒に構成されている場合、誰かがポートと秘密キーを知らない限り、他の誰かが侵入する可能性はほとんどないということです。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。