Juniper SRXルーターでのSSHアクセスセキュリティの強化

この記事では、Juniper SRXシリーズデバイスへの真にセキュアなSSHアクセスを構成する方法、つまり ルーターをハックするのは、自分でできるバッチをアプリオリに。 2つのことを説明します。



かつて、私はこのような単純なことをジュニパーに実装する方法を終わらせるために、1日中正直に殺しました。 私の記事が時間の節約に役立つことを願っています。



最初の段落を実装しましょう。 そしてすぐに種子用のタールスプーンを数杯:



それでは始めましょう。 最初に、SSHキーのペアを生成する必要があります。 PuTTyユーティリティの標準セットのPuTTygenユーティリティは、これに最適です 。 起動すると、次のようなウィンドウが表示されます。



画像



SSH2-RSAを選択します。キーの長さは1024ビットです(Junipersはサポートしていません)。 「生成」をクリックし、生成の進行中にマウスを動かします。 終了したら、必ず適切なフィールドに強力なパスワードを2回入力し、[プライベートキー]ボタンをクリックしてプライベートキーを保存します。 秘密鍵は秘密鍵と呼ばれ、非常に安全な場所に保管する必要があることを思い出す必要はないと思いますか? たとえば、私はそれを開いた形で保存しませんが、 KeePass2ユーティリティを使用します。 まあ、これはすでに誰かにとって便利です!

また、このキーを紛失しないことをお勧めします。 さらに、ジュニパーがいないと、コンソールに行かないようにジュニパーを設定します。 Webフェイスに移動して、この設定を担当する構成の部分を削除する必要があります。 さて、またはデバイスへのルートパスワードをリセットするための退屈な手順を実行します。

次に、「公開キー...」ウィンドウの内容をノートブックにコピーします。 Juniperの構成に公開キーを挿入する前に、何かを修正する必要があります。 最初に、フレーズ「rsa-key- ...」を末尾から削除してから、キーをフォームに追加します。

「Ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQBfkD3juKaLXqNKJfhUMIwt4Ro / aF38WDi7XlALiSYDYY8GZuhcAMJHL0FKJRTI07Qcr

Kfev4nFm2HbeSFkaI96l4TSKlqS90goemrbTkNTes / 2F9VBzRjogYcEfr57bgUQ + DVmnSMWiLeWwFwT79pctJR1dJZbSuQf2jgmrqPpTfJ235u + 8 + V4O2KPmIbrjHaWg9MZQcu2pdDfLBFaLgkgh9wPlToKtaCk0577DN6OImhOpL + xoyIOzg3JFlCwTNIYSvGX8sdnJaJkt0IOWf + KJrGQSXfc68Zw0hhakBojfotyFklGO390KxO

wVecS35kMuHjSRmhaGqf03yG1sQWt =ジュニパーのルート»
注意! ここで間違いをしないことが重要です。そうしないと、ジュニパーネットワークスはキーを受け入れません。 キーは常に引用符で囲む必要があります。 最後に「=」記号があり、その後にスペースが1つあり、ルート@ your_Juniper_nameがあります。 これは、デバイスのコマンドラインプロンプトとまったく同じです。 私が思い出すように、ジュニパーの名前は、構成モードでset system host-name



コマンドによって設定されます。 後でこの名前を変更する場合は、キー自体を修正する必要があります。

秘密鍵はパスワードで保護されて安全な場所に保存され、公開鍵は構成に挿入する準備ができたので、PuTTygenユーティリティを閉じてコンソールに入力できます。 私たちは書きます:
root@juniper# set system root-authentication ssh-rsa _ ( -)



すべてが正しく行われた場合、Juniperは自分の構成にキーを書き込みます。

ここで、キーにのみ入り口を作成します。
root@juniper# set system services ssh root-login deny-password



まあ、もちろん:
root@juniper# commit check





root@juniper# commit



ここで、SSH経由でログインするために、まず「接続-SSH-認証」セクションでPuttiの秘密鍵のファイルを指定する必要があります。 入り口には、次のようなものが表示されます。



画像



ここで、秘密鍵の生成時に設定されたパスワードを入力します。 その後、私たちは寛大に許可されています! 興味深いことに、誰かがキーなしで入力しようとすると、ジュニパーは同じように素直にログインパスワードを要求しますが、認証は毎回失敗します。



次に、ネットワークアクセスレベルでSSHログインを制限する方法について説明します。 これには2つの補完的な方法があります。 最初: edit security zones



edit security zones



セクションのhost-inbound-traffic



ディレクティブ。 例:

  root @ juniper#セキュリティゾーンを表示security-zone untrust
    画面untrust-screen;
    インターフェース{
         fe-0 / 0 / 0.0 {
             host-inbound-traffic {
                 system-services {
                     ping
                     ssh;
                 }
             }
         } 
このディレクティブは、 ジュニパーがこのゾーン/インターフェースで利用できるプロトコルを管理します。 たとえば、ssh、ping、https、https、dhcp、tftpなど。 host-inbound-traffic system-services



セクションでsshプロトコルを指定すると、Juniperはこのゾーン/インターフェースでssh要求をリッスンします。

いいね ただし、LANのインターフェイスでsshを開いている場合、LANのすべてのユーザーがsshを介してジュニパーにアクセスできる可能性があります。 ほとんどの場合、これは不明瞭ではないため、ファイアウォールフィルターを使用して特定のIPのみにアクセスを許可する必要があります。

IP 192.168.10.10のアクセスのみを許可し、他のすべてを無効にする必要があるとします。 このような構造を記述します。

root@juniper# edit firewall filter deny-ssh



(フィルター編集モードに入った)

root@juniper# set term 1 from source-address 0/0



(送信元アドレスとの一致を示します...)

root@juniper# set term 1 from source-address 192.168.10.10 except



(...必要なものを除く)

root@juniper# set term 1 from destination-port ssh





root@juniper# set term 1 then log discard



(sshを介したアクセスの禁止。破棄-パケットを静かに強制終了することを意味します。拒否-禁止もできますが、icmpポートに到達できません。ログ-sshに失敗した試行を記録します。原則、書き込みはできません)。

root@juniper# set term 2 then accept



(他のすべてを許可することを忘れないでください。さもないと、私たちとルーターにとって非常に悪いでしょう)



このフィルターをルーターのループバックインターフェイスに適用します(ルーティングエンジン、つまりsshdデーモンが存在するシステムのカーネルにつながるため)。

root@juniper# set interfaces lo0 unit 0 family inet filter input deny-ssh



上記の方法は非常に難しく、 慎重に適用する必要があります 。 任意のインターフェースからジュニパーへのsshアクセスを調整します。 このような深刻なレベルのセキュリティが必要ない場合は、同じフィルタをLANインターフェイスに同様に適用できます。 この場合にのみ、LANインターフェースが定義により通過していることを考慮する必要があります。したがって、Juniperをdestination-address



フィルターのフィルタールールに追加する必要があります。そうしないと、特定のネットワークのsshプロトコルが一般的に魔法のように機能しません。 ループバックインターフェイスの場合、 destination-address



を指定する必要はありません。 一時的なものではありません。

たとえば、 source-address



すべてゼロを書き込むことは完全にオプションです。 特定のサブネット、さらにはインターフェースを指定できます。 つまり、アクセスを非常に柔軟に構成できます。



ちなみに、同様の手順でジュニパーのWebインターフェイスへのアクセスを制限できます。



以上です! この簡単な方法で、sshセッションのセキュリティが大幅に向上しました!



All Articles