
■はじめに
FortiGate(61F/v7.0.1) からの syslog通知が、1か月以上前から syslogサーバに届いていないことに気が付きました。
ネットワーク構成は以下の通りです。
ネットワーク構成は以下の通りです。

途中に別のファイアウォールがいるものの、FortiGateから syslogサーバへの通信は許可されています。
原因の切り分けは以下の通り。
・FortiGate から syslogサーバに対して、pingやtraceroute は到達する。
・FortiGate の GUI上では、syslog設定は有効になっており、syslogサーバのIPアドレスが設定されている。
状況からして、そもそも syslogを送信していない?という懸念があります。
原因の切り分けは以下の通り。
・FortiGate から syslogサーバに対して、pingやtraceroute は到達する。
・FortiGate の GUI上では、syslog設定は有効になっており、syslogサーバのIPアドレスが設定されている。
状況からして、そもそも syslogを送信していない?という懸念があります。
■原因判明
Google先生の教えに従ったところ、FortiGate にはパケットキャプチャという便利なコマンドがあるそうな。
このパケットキャプチャにより、syslogサーバに対する通信状況をチェックしたところ、意外な結果が。
このパケットキャプチャにより、syslogサーバに対する通信状況をチェックしたところ、意外な結果が。
FortiGate # diagnose sniffer packet any 'dst 192.168.2.2' 4
interfaces=[any]
filters=[dst 192.168.2.2]
3.689092 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 719
3.689126 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 709
3.689149 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 709
3.689175 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 709
4.719114 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 637
interfaces=[any]
filters=[dst 192.168.2.2]
3.689092 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 719
3.689126 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 709
3.689149 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 709
3.689175 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 709
4.719114 internal out 203.0.113.1.3851 -> 192.168.2.2.514: udp 637
なんと、送信元IPアドレスが WAN側インターフェースのものになっているではないか!
これにより、ファイアウォールの通信許可ポリシーに合わなくなって遮断されたということが判明しました。
これにより、ファイアウォールの通信許可ポリシーに合わなくなって遮断されたということが判明しました。
■解決策
というわけで、syslogの送信元IPアドレスを明示的に internal インターフェースのIPアドレスに設定したら解決しました。
残念ながら GUI の設定項目には存在しないので、CLIから設定します。⇒【config log syslogd setting】
残念ながら GUI の設定項目には存在しないので、CLIから設定します。⇒【config log syslogd setting】
config log syslogd setting
set status enable
set server "192.168.2.2"
set source-ip "192.168.1.2" ←これを追加
end
set status enable
set server "192.168.2.2"
set source-ip "192.168.1.2" ←これを追加
end
めでたしめでたし
…?
…?
■そもそも、どうしてこうなった
この手の送信元IPアドレスは、ネットワーク機器から出力される際のインタフェースのものを使用するのが一般的だと思います。
pingやtracerouteが通信できたのは、このためです。
というか、FortiGateのsyslogもそうであると述べられています。おかしいなぁ
また、ある日を境に事象が発生した(=syslogの送信元IPアドレスが変わった)という点が気になります。
手元の記録上は何も設定は変更していないはず…。私の勘違いかもしれませんが、全く謎です。
pingやtracerouteが通信できたのは、このためです。
というか、FortiGateのsyslogもそうであると述べられています。おかしいなぁ
また、ある日を境に事象が発生した(=syslogの送信元IPアドレスが変わった)という点が気になります。
手元の記録上は何も設定は変更していないはず…。私の勘違いかもしれませんが、全く謎です。