MacOSのsyslogのログをサーバーに送信する
2017年11月10日 (金) 02:27時点におけるimported>Administratorによる版
macOSのsyslogのログをCentOS 7上のrsyslogサーバーへ飛ばしたい。
前提条件
CentOS 7側でrsyslogの設定が完了している前提とする。
CentOS 7/rsyslogサーバーでログを受信する
手順
まずrootになる。rootになるにはmacOSのアカウント種別が「管理者」であることが前提。
$ sudo su
syslog.confをバックアップする。
$ cp /etc/syslog.conf /etc/syslog.conf.20171101
テキストエディタでsyslog.confを編集する。
$ vi /etc/syslog.conf
サーバーに飛ばすログの種類(この例では全部を意味する「*.*」)と、サーバーのアドレス(この例では「@192.168.1.10:514」)を追記する。 区切り文字は「半角スペース」ではなく「タブ」な点に注意。
*.* @192.168.1.10:514
syslogdサービスを再起動する。
$ sudo launchctl unload /System/Library/LaunchDaemons/com.apple.syslogd.plist $ sudo launchctl load /System/Library/LaunchDaemons/com.apple.syslogd.plist
なお、Mac OS X 10.11 El Capitanからは「System Integrity Protection」という機能が付いた関係で初期状態では上記のコマンドは使えない。そのような場合はmacOSを再起動する。
macOS/System Integrity Protectionを解除する
macOSのコマンドラインからログを送信してみる。
logger -s -p user.info test