Ubuntu14.04实现简单日志文件服务器

来源:互联网 发布:2015年人口老龄化数据 编辑:程序博客网 时间:2024/05/18 01:27

      在Linux日志的配置文件中,可以将指定服务类型(auth,cron,mail,syslog等)和相应服务的信息等级(info,notice,warn,err,crit等)的日志数据发送到打印机或者远程主机(即将配置日志文件服务器的server端)。万一有人入侵你的系统,并将系统/var/log/删掉了(但我们可以使用chattr增加隐藏属性,使文件在root下都不能被删除,除非入侵者获取当前root权限,取消这个隐藏属性,还是可以删除文件,这里不再做多余阐述),这样在/var/log/auth.log (我的Linux下为此日志文件,一般为/var/log/secure)下,我们查询不到任何相关的登录信息。但是在入侵系统的时候,已经将auth.log日志文件数据发送到远程主机上面,可以查询到入侵者ip地址。
        如果现在有很多台Linux主机,每台主机负责一个网络服务。想要查询每台主机的日志文件,必须登陆到每台主机去查询,这样很麻烦。但可以将其中一台变为远程日志文件服务器,其余主机可以将自己的日志文件通过TCP/UDP协议发送到远程主机日志服务器中,这样可以轻松管理其它主机的日志文件。


Server:

修改rsyslog启动配置文件(Ubuntu在/etc/default/rsyslog下(切到root下进行修改))

root@Ubuntu:~# vim /etc/default/rsyslog# 修改RSYSLOGD_OPTIONS=””RSYSLOGD_OPTIONS=”-r”# 参数解释# -r: 允许接受外来日志消息,启动监听端口514;# -x: 表示禁止中央日志服务器解析远程主机的FQDN(fully qualified domain name,完整域名)。默认情况下,当有其他机器向自己发送日志消息时,中央日志服务器将尝试解析该机器的FQDN。如果syslog守护进程无法解析出那个地址,它将继续尝试,这种毫无必要的额外负担将大幅降低日志记录工作的效率,应该禁止。# -m: 表示给日志添加-- MARK --标记,0表示关闭标记。日志文件里的“--MARK--”消息可以让你知道中央日志服务器上的rsyslog守护进程没有停工偷懒。

# rsyslog的配置文件如果被修改,日志文件就无法继续记录。需要重新启动日志文件服务。root@Ubuntu:~# service rsyslog restart

# 查看端口是否开启监听root@Ubuntu:~# netstat -lunp | grep rsyslog# 结果没有输出,端口514并没有开启监听,检查配置文件root@Ubuntu:~# vim /etc/rsyslog.conf# ...中间略#$ModLoad imudp    使用UDP协议#$UDPServerRun 514  UDP接受信息的端口# 去掉注释,保存并退出(也可以使用TCP协议)

# 重启服务并查看端口是否开启监听root@Ubuntu:~# service rsyslog restartrsyslog stop/waitingrsyslog start/running, process 26365root@Ubuntu:~# netstat -lunp | grep rsyslogudp    0      0 0.0.0.0:514       0.0.0.0:*          26365/rsyslogd
此时Server端已配置完成。

Client:

指定某个信息传送到刚才配置完成的Server端。

root@Ubuntu:~# vim /etc/rsyslog.d/50-default.conf*.*           @ 192.168.59.132root@Ubuntu:~# service rsyslog restart
测试是否发送成功


客户端收到服务端发送的消息









2 0
原创粉丝点击