rsyslog(クライアント)とsyslogd(サーバー)間でログを送信する

rsyslog(クライアント)とsyslogd(サーバー)間でログを送信する

マシンが2台あります。 1つ目は組み込みLinuxを実行し、2つ目はFreeBSDを実行します。 Linux がインストールされているシステムには、すでにrsyslogsyslog クライアントが存在している必要があります。もう1つはすでにインストールされており、syslogdサーバーである必要があります。 FreeBSD を使用するコンピュータはsyslogdファイルにリモートログを書きません。テストのためにLinuxボックスrsyslogに変更したときにsysklogdリモートロギングが機能していました。問題は、私がrsyslogクライアントにいる必要があるということです。何が問題を引き起こす可能性がありますか?はいrsyslogsyslogdいいえは互換性がありますか?私が知る限り、ログメッセージの形式は同じです。

FreeBSDを実行すると、 tcpdump -enpi <interface>syslogメッセージが表示されます。

Linux MAC > FreeBSD MAC, ethertype IPv4 (0x0800), length 94: client_IP.35398 > server_IP.514: SYSLOG user.notice, length: 52

Linux(クライアント)のファイルにrsyslog.conf次の行を追加しました。

*.* @server_IP

FreeBSD(サーバー)のファイルにsyslog.conf次の行を追加しました。

+client_IP
*.*  /path/to/client/logs 

私のFreeBSDファイルrc.confに次の行を追加しました。

syslogd_enable="YES" 
syslogd_flags="-a client_IP -vv" 

答え1

-a client_IPから削除しましたsyslogd_flagsrc.conf問題はクライアントポート番号です。ポートを指定しない場合はsyslogd_flags514と仮定しますが、私のログは別のポートから来ます。別の回避策は、すべてのポートをクライアントのIPアドレスに追加することです-a client_IP:*

関連情報