みなさん、こんにちは。技術系の記事を担当しています瀬口です。
今回は、EasyBlocks Smart log seriesのSyslogメッセージ中継機能を利用し、Syslog over TLSで他のSyslogサーバーへログの中継を試してみましたので、その設定方法や動作についてご紹介します。
はじめに
Syslogメッセージ中継機能について
SyslogアプライアンスであるEasyBlocks Smart log seriesでは、受信したSyslogメッセージを他のSyslogサーバーへ中継する「Syslogメッセージ中継」という機能が使用できます。
本機能を使用することで、EasyBlocksで受信したログを他のSyslogサーバーへ転送できるため、ログの集約やバックアップ、SIEMとの連携などに活用することが可能です。
転送プロトコルは以下の5種類から選択できます。
UDP(BSD) / TCP(BSD) / Over TLS(BSD) / TCP(IETF) / Over TLS(IETF)
Syslog over TLSについて
Syslog over TLSは、RFC 5425で定義されているSyslogの通信方式の一つであり、SyslogメッセージをTLSによって暗号化して送信することができます。
通常のSyslog通信では、UDPまたはTCP(514ポート)を使用しますが、Syslog over TLSではTLSによる暗号化通信を行うため、6514ポートを使用します。
証明書について
Syslog over TLSプロトコルにて、メッセージ中継先のSyslogサーバーが標準的な認証局の証明書を用いている場合には、CA証明書項目にて認証局用の証明書をアップロードする必要はありません。
また、メッセージ中継先のSyslogサーバーがクライアント認証を実施していない場合には、クライアント証明書項目にて各証明書をアップロードする必要はありません。
今回の構成
今回の構成では、ネットワーク機器から送信されたログをEasyBlocks Syslogで受信し、Syslog over TLSで中継先のSyslogサーバーへ転送します。中継先のSyslogサーバーには、syslog-ngを導入したOpenBlocks IX9を使用しており、Syslog over TLSが受信できるように構築しております。
使用するEasyBlocks Syslogのバージョン1.2.1です。
またテスト環境のため、CA証明書は自己署名証明書(通称:オレオレ証明書)を使用して検証を行います。
※証明書には有効期限がありますので、ご使用時には有効期限にご注意ください。

設定方法
① まず、Web UIのサービスタブ内の「証明書管理」タブを開き、CA証明書(拡張子:.crt)をアップロードします。

② CA証明書をアップロードしたら、[有効化]をクリックし、CA証明書を有効にします。

有効になると、「追加CA証明書が有効状態です。」と表示されます。

③ 次に、サービスタブ内の「基本設定」タブを開き、Syslogメッセージ中継の「はい」を選択します。
「はい」を選択すると、Syslogメッセージ中継の設定項目が表示されます。

各項目の設定内容は以下の通りです。
なお、今回はSyslog over TLSで転送するため、⑤は「Over TLS(BSD)」を選択し、⑥は「6514」を設定します。設定後は、内容を保存します。

④ IPアドレス(Domain Name):中継先のSyslogサーバーのIPアドレスかドメイン名を設定します。
⑤ 転送プロトコル:中継先のサーバーが許容するプロトコルを選択します。
⑥ ポート番号:中継先のサーバーの待ち受けポート番号を設定します。
⑦ メッセージプレフィックス:転送するメッセージの先頭に付与する文字列を設定します。
保存後、中継先のSyslogサーバーのログファイルを確認すると、⑦メッセージプレフィックスで設定した文字列「ebtest:」が先頭に付与されたSyslogメッセージが転送されていることが確認できました。

以上で、Syslog over TLSによるSyslogメッセージ中継の設定は完了です。
クライアント認証が必要な場合
中継先のSyslogサーバーが証明書を用いたクライアント認証を行っている場合、クライアント証明書のアップロードが必要となります。そのため、先ほどご紹介した設定方法と合わせて、追加で設定を行います。
⑧「証明書管理」タブからクライアント証明書として用いるプライベートキー(拡張子:.key)をアップロードします。
⑨ クライアント証明書として用いるX.509証明書(拡張子:.crt)をアップロードします。

正常にアップロードされると「存在しています。」と表示されます。

次に、Syslogメッセージ中継へ④,⑤,⑥の設定に加えて、以下の項目を設定、保存します。
※クライアント認証を行う場合、事前にプライベートキーおよびX.509証明書がアップロードされていないと保存できません。

⑩ メッセージプレフィックス:転送するメッセージの先頭に付与する文字列を設定します。
⑪ クライアント認証(TLS)する:転送先のSyslogサーバーがクライアント認証を行っている場合は「はい」を選択します。
保存後、中継先のSyslogサーバーのログファイルを確認すると、⑩メッセージプレフィックスで設定した文字列「ebtest-client:」が先頭に付与されたSyslogメッセージが転送されたことが確認できました。

以上で、クライアント認証が必要な場合のSyslog over TLSによるSyslogメッセージ中継の設定は完了です。
まとめ
今回は、EasyBlocks Smart log seriesのSyslogメッセージ中継機能を利用し、Syslog over TLSによるログ中継を試してみました。
Syslog over TLSを使用することで、通常のSyslog通信とは異なり、TLSによって通信内容を暗号化できるため、ログの盗聴や改ざんのリスクを低減でき、より安全にSyslogメッセージを転送することが可能です。
そのため、Syslogメッセージ中継機能を使用することで、Syslog over TLSによる安全なログ転送環境を構築することができます。セキュリティを意識したログ管理環境を構築する際に、ぜひ活用してみてください。
▼ 今回試した機能が利用できるEasyBlocksはコチラ ▼
