TLSを介してセントラルログコレクタに接続するようにシステムrsyslogd(この場合はredhat OS7)を設定したいと思います。 resyslogdには認証にクライアント証明書が必要です。利用可能なキー、証明書、およびCA証明書(中間CAを含む)が既に存在します。
しかし、設定に適した構成例が見つかりませんでした。 StreamDriverで完全に迷子になりました。 rsyslogdをsyslogフォワーダとして使用して、ローカルに設定されたログイベントをTLSを介してセントラルログコレクタに転送しようとしています。証明書ベースの認証が必要です。
ベストアンサー1
あなたの質問によると、TLS認証を使用するために必要なすべての証明書とキーファイルがすでにあることを確認しました。
以下は、TLS を使用した rsyslogd 構成の例です。Linuxでrsyslog(TLS)を使用したセキュアリモートロギングの設定
# make gtls driver the default
$DefaultNetstreamDriver gtls
# certificate files
$DefaultNetstreamDriverCAFile /etc/rsyslog-keys/ca.pem
$DefaultNetstreamDriverCertFile /etc/rsyslog-keys/node3-cert.pem
$DefaultNetstreamDriverKeyFile /etc/rsyslog-keys/node3-key.pem
$ModLoad imtcp # TCP listener
$InputTCPServerStreamDriverMode 1 # run driver in TLS-only mode
$InputTCPServerStreamDriverAuthMode anon
$InputTCPServerRun 6514 # start up listener at port 10514
ここでは、環境に応じて証明書とキーファイルの場所を変更できます。別のポートを使用している場合は、同じポートを変更してください。InputTCPServerRun
この記事ではGTLSをデフォルトのStreamDriverとして使用しているため、まだ利用できない場合は手動でインストールする必要があります。
$DefaultNetstreamDriver gtls
また、サーバーとクライアント間のSELinuxとファイアウォールを確認して、ログ転送をブロックしていないことを確認してください。