Linux系统的syslog.conf是记录主机登录等信息的syslogd守护进程的配置文件,通过该文件可以把secure、message等登录信息传输到远程主机上,提高安全审计功能。以下是64位RedHat 4 U 7 下的配置实例。

首先配置远程主机(172.16.0.8):

远程主机要使用udp协议514端口接收信息:

[root@erpdevdb ~]# grep 514 /etc/services
shell           514/tcp         cmd             # no passwords used
syslog          514/udp

配置可接收remote信息:

[root@erpdevdb ~]# vi /etc/sysconfig/syslog

# SYSLOGD_OPTIONS="-m 0"
SYSLOGD_OPTIONS="-m 0 -r"

重启syslogd服务:

[root@erpdevdb ~]# /etc/init.d/syslog restart
Shutting down kernel logger: [  OK  ]
Shutting down system logger: [  OK  ]
Starting system logger: [  OK  ]
Starting kernel logger: [  OK  ]

查看:

[root@erpdevdb ~]# netstat -tlunp
Active Internet connections (only servers)

udp        0      0 0.0.0.0:514                 0.0.0.0:*                               5599/syslogd

防火墙开放514端口:

[root@erpdevdb sysconfig]# vi /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -p udp -m udp --dport 514 -j ACCEPT

[root@erpdevdb sysconfig]# service iptables restart
Flushing firewall rules: [  OK  ]
Setting chains to policy ACCEPT: filter [  OK  ]
Unloading iptables modules: [  OK  ]
Applying iptables firewall rules: [  OK  ]

远程主机(172.16.0.8)要配置的就这么多,下面看要被记录的登录主机(172.16.0.15)的配置:

[root@linux log]# vi /etc/syslog.conf

# transfer log file to remote machine
*.*                                                     @172.16.0.8

很简单,这样就可以了。

下面简单测试一下,在登录主机退出并重新登录后,查看远程主机(172.16.0.8)上记录的信息:

[root@erpdevdb sysconfig]# cat /var/log/secure
Nov 16 11:33:46 172.16.0.15 sshd[20534]: Accepted password for root from ::ffff:172.16.0.18 port 3894

可见信息已被记录到远程主机了,其他的message等信息也是如此。

 

4 Responses to 把Linux登录文件保存到远程主机

  1. robin 说道:

    这个功能不错

  2. bkeep 说道:

    实用!已经用在生产环境了。谢谢啊!

  3. banping 说道:

    to bkeep:太客气了,我也是参考别人的做法。

  4. [...] 结合登录文件的安全保存和防火墙功能,可以实现一个简单而完整的安全审计解决方案。 [...]

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>