Last Updated on 2021年7月4日 by かんりにん
SSGシリーズからSRX220にリプレイスを行った際に、VPNを経由したリモートオフィスとのLAN通信がうまくいかない事象が起きたので、トラブルシュート。
・社内LANにおいてゲートウェイが複数ある
・リモートオフィスへのルーティングはスタティックルートで設定している
・リモートオフィスとの通信経路は非対称(行きと帰りで違う経路を使う)
という状況でリモートオフィスとの通信ができない状況となってしまった…
SSGの時は問題なかったのに、OSも違うしセキュリティも強化されているのかな、ということで問い合わせたところ
JunOSでは非対称ルート構成はデフォルトで許可されておらず、設定を無効にすれば通信が可能とのこと。なるほど~。
設定箇所はTCPフローに関する部分とのことで、以下に作業ログを。
J-web上では当該の設定項目が無く、作業はすべてCLIからとなります。
非対称ルート構成に関する通信許可設定
1.TCPフローの設定変更
# set security flow tcp-session no-syn-check # set security flow tcp-session no-sequence-check
2.ids-optionにて設定されているsource-route-option
# delete security screen ids-option untrust-screen ip source-route-option # commit
1)作業前確認:設定状況
– tcp-sessionの設定確認
→デフォルトでは設定なし、syn-checkが有効になっている状態。
– source-route-optionの設定確認
こちらはdデフォルトで設定済みであることを確認。
set security screen ids-option untrust-screen ip source-route-option
※deleteしたのち、設定を戻す場合は
上記の”set~”を再度実施する。
2)no-syn-check、およびno-sequence-checkの適用
1.configureモードへ変更
admin@host-A> configure warning: Clustering enabled; using private edit warning: uncommitted changes will be discarded on exit Entering configuration mode
2.no-syn-checkの有効化
{primary:node0}[edit] admin@host-A# set security flow tcp-session no-syn-check
3.no-sequence-checkの有効化
{primary:node0}[edit] admin@host-A# set security flow tcp-session no-sequence-check
4.設定適用
admin@host-A# commit node0: configuration check succeeds node1: commit complete node0: commit complete {primary:node0}[edit]
参考:上記の設定変更にて追加されたコンフィグ
– コンフィグ表示
280a281,286 > flow { > tcp-session { > no-syn-check; > no-sequence-check; > } > }
– setでの表示
こちらはコマンドから実行した内容がそのまま反映されている。
> set security flow tcp-session no-syn-check > set security flow tcp-session no-sequence-check
上記の設定追加にて、リモートオフィスとの通信が再開(というか機器を変えてから初めてなので、開通?)。ひとまず解決!
source-route-optionの設定については、今回は変更は行わずに終了。
ただし同様の非対称ルートの構成においては、切り分けのため、設定を無効化してみるのも有効な調査方法であるとのこと。
たまたま見かけましたのでtipsを。
ご存知であればすいません。
Screen OSではsyn-chkがデバイス全体設定でした。
SRXでは特定ポリシーに限定することが可能です。
[[概要]]
(1).システムワイドで無効化(この記事のやり方)
(2).[edit groups]にて、fromゾーン/toゾーン共にワイルドカードのポリシーを作成し
permitアクション配下でsyn-chkを有効にする。
(3).上記(2).のポリシーを全体に適用(apply-groups)
(4).特定のポリシーにおいて、上記(2).のポリシーを適用除外する(apply-groups-except)
ややっこしいですが、
・全体でsyn-chk無効化(1)
・syn-chkを有効化する特殊ポリシーをポリシー全体に適用(2)-(3)
・特殊ポリシーを適用除外したポリシーで、全体syn-chk無効の部分が効く(4)
詳細は以下のexample2をご覧下さい。
▼[J-Series/SRX] Example: Configuring TCP SYN Check options on a per policy basis
http://kb.juniper.net/InfoCenter/index?page=content&id=KB21266&actp=search
和尚様
大変参考になりました。有難うございます。
機会があれば試してみたいと思います!