現在、rsyslog
は、以下に示すように、UDPソケットとUNIXソケットの両方でリッスンしています。
_[root@machine ~]# netstat -ap | grep rsyslog
udp 0 0 0.0.0.0:59018 0.0.0.0:* 268440/rsyslogd
unix 2 [ ] DGRAM 74163705 268440/rsyslogd
[root@machine ~]#
[root@machine ~]#
[root@machine ~]#
[root@machine ~]#
[root@machine ~]# uname -a
Linux machine.abc.com 3.10.0-693.17.1.el7.x86_64 #1 SMP Sun Jan 14 10:36:03 EST 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@machine ~]#
_
RsyslogdのUDPSyslog受信に必要な構成変更は不明です。 _/etc/rsyslog.conf
_には、以下に示すような変更はありません。
_$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imjournal # provides access to the systemd journal
$WorkDirectory /var/lib/rsyslog
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$IncludeConfig /etc/rsyslog.d/*.conf
$OmitLocalLogging on
$IMJournalStateFile imjournal.state
authpriv.* @some_remote_machine.abc.com
_
ここで、_/etc/rsyslog.d/*.conf
_には次のエントリがあります。
_$SystemLogSocketName /run/systemd/journal/syslog
_
セキュリティ上の理由から、目標はrsyslogdのUDPSyslog受信を無効にすることです
straceは、rsyslogd
の開始時にsocket()
が1回だけ呼び出されることを示しています
_socket(AF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
_
以下は、udpに関連する詳細です。
_[root@machine ~]# rsyslogd -d 2>&1|grep -i udp
4078.341962469:main thread : tplAddLine processing template 'RSYSLOG_omudpspoofDfltSourceTpl'
4078.350580740:main thread : Template: Name='RSYSLOG_omudpspoofDfltSourceTpl'
[root@machine ~]# rsyslogd -v
rsyslogd 8.24.0, compiled with:
PLATFORM: x86_64-redhat-linux-gnu
PLATFORM (lsb_release -d):
FEATURE_REGEXP: Yes
GSSAPI Kerberos 5 support: Yes
FEATURE_DEBUG (debug build, slow code): No
32bit Atomic operations supported: Yes
64bit Atomic operations supported: Yes
memory allocator: system default
Runtime Instrumentation (slow code): No
uuid support: Yes
Number of Bits in RainerScript integers: 64
See http://www.rsyslog.com for more information.
[root@machine ~]#
_
UDP Syslog受信を無効にするようにrsyslogを構成するにはどうすればよいですか? syslog-ngがインストールされているため...
Imudpモジュールのロードを無効にします。以下の例。
# netstat -ap|grep rsyslog
udp 0 0 0.0.0.0:syslog 0.0.0.0:* 17076/rsyslogd
udp6 0 0 [::]:syslog [::]:* 17076/rsyslogd
unix 2 [ ] DGRAM 1074728 17076/rsyslogd
#
# grep -i udp /etc/rsyslog.conf
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
#
# sed -i 's/\$ModLoad imudp/#\$ModLoad imudp/' /etc/rsyslog.conf
# systemctl restart rsyslog
#
# netstat -ap|grep rsyslog
unix 2 [ ] DGRAM 1073845 16982/rsyslogd
#
RHEL7.5でrsyslog
とsyslog-ng
の両方を実行する際に問題が発生しましたが、プロセスを停止または強制終了しようとしても役に立ちませんでした。そこで、rsyslog
を削除することにしました。