在 Ubuntu 上,syslog 本身(rsyslog)默认是监听在 514/UDP(及可选 514/TCP),如果你想修改 syslog 监听端口,通常是修改 rsyslog 的配置。
下面分几种常见情况说明。
sudo vim /etc/rsyslog.conf
或(推荐)新建一个配置文件:
sudo vim /etc/rsyslog.d/10-remote.conf
默认配置一般是:
# UDP
# module(load="imudp")
# input(type="imudp" port="514")
# TCP
# module(load="imtcp")
# input(type="imtcp" port="514")
改成你想要的端口,比如 1514:
module(load="imudp")
input(type="imudp" port="1514")
module(load="imtcp")
input(type="imtcp" port="1514")
⚠️ 如果只改 UDP 或 TCP,保留对应部分即可
sudo systemctl restart rsyslog
sudo ss -lunp | grep 1514
sudo ss -ltnp | grep 1514
sudo ufw allow 1514/udp
sudo ufw allow 1514/tcp
如果你是想改客户端发往远程 syslog 服务器的端口(不是监听端口):
*.* @@logserver.example.com:1514
说明:
@ → UDP@@ → TCP编辑:
sudo vim /etc/syslog-ng/syslog-ng.conf
示例:
source s_net {
udp(ip(0.0.0.0) port(1514));
tcp(ip(0.0.0.0) port(1514));
};
重启:
sudo systemctl restart syslog-ng
| 场景 | 位置 |
|---|---|
| 改监听端口 | /etc/rsyslog.conf 或 /etc/rsyslog.d/*.conf |
| 改发送端口 | 同配置文件中的 @@host:port |
| 重启服务 | systemctl restart rsyslog |
如果你能说清楚:
我可以给你更精确的配置。