加载中…
个人资料
绝世流浪汉
绝世流浪汉
  • 博客等级:
  • 博客积分:0
  • 博客访问:86,005
  • 关注人气:10
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

【互联网运维】apache,squid和syslog的联动配置简介

(2012-04-13 12:56:18)
标签:

apache

squid

syslog

it

分类: 互联网运维技术

 把各种应用程序通过syslogd的机制,动态把重要日志写入远端日志服务器,优势是很明显的,主要表现在几个方面: 1 日志统一,集中式管理  2 日志实时传送到一个更加安全的远端服务器上,真正记录用户行为,使日志的2次更改可能性大大降低,从而能够对日志进行真实回放,便于问题追踪。

 事实上,大部分的programe的日志记录总是使用标准的unix domain socket/dev/log)来实现。这就使的和syslogd联合,并且利用syslogd的远程传送日志功能实现更加安全的远距离日志备份需求。

 本文主要描述把apachesquid日志写通过syslog写入远程日志服务器的配置过程。有兴趣的同学可以看看。

本文所涉及的软件环境:

客户端:

Syslogrsyslog-relp-3.21.3-4.fc10

rsyslog-3.21.3-4.fc10 

Programehttpd-2.2.9-1.fc8

squid-2.6.STABLE22-3941.8.fc8

服务器端:

Syslogrsyslog-relp-3.21.3-4.fc10

rsyslog-3.21.3-4.fc10

日志系统架构图:

【互联网运维】apache,squid和syslog的联动配置简介

这里主要描述本地客户端的配置内容:

 1 首先是配置apache文件,只显示文章话题相关的配置内容:

 ###/etc/http/conf/httpd.conf

#ErrorLog logs/error_log

ErrorLog syslog     <-----修改配置表示errorlog启用syslog

#LogLevel warn

LogLevel notice     <-----notice以上的log全部记录,默facility

local7

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

LogFormat "%h %l %u %t \"%r\" %>s %b" common

LogFormat "%{Referer}i -> %U" referer

LogFormat "%{User-agent}i" agent

#CustomLog logs/access_log combined

CustomLog "|/usr/bin/logger -p local4.info" combined     <-----access_log全部通管道写入syslog,并且log的facility配置为local4

rsyslog的配置如下:

# Load output RELP module

$ModLoad omrelp        <---由于采用的是relp协议传给远端日志服器,所以需要omrelp

# Don't log private authentication messages!

*.info;mail.none;authpriv.none;cron.none;local4,none;local7.none    /var/log/messages      <--local4 以及local7日志不写入 /var/log/message,有后面专门的写入文

 

# Save local7  to a file

local7.*              /var/log/apache_error_log

# Save local4 to a file

local4.*              /var/log/apache_access_log

 

# Send local7 to remote syslog

local7.*                :omrelp:syslog.chou.com:2514

 <----local7(也就是apacheerror_log)除了本地保存一份之外,relp协议给远端的服syslog.chou.com端服器的听端口是2514

# Send authentification messages to remote syslog

auth,authpriv.*         :omrelp:syslog.chou.com:2514

  <---器的认证信息,属于重要的安全信息,relp协议给远端的服syslog.chou.com端服器的听端口是2514


重启rsyslogapache之后,正常情况下应该端很本地服器上看到如下信息:

[root@remote_machine root]# tail -f /var/log/apache_error_log

Oct 6 20:30:53 xxx.xxx httpd[1837]: [notice] Digest: generating secret for digest authentication ...

Oct 6 20:30:53  xxx.xxx  httpd[1837]: [notice] Digest: done

Oct 6 20:30:54  xxx.xxx  httpd[1837]: [notice] Apache/2.2.9 (Unix) DAV/2

PHP/5.2.3 configured -- resuming normal operations

 

[root@localhost root]# tail -f /var/log/apache_error_log

Oct 6 20:30:53 localhost httpd[1837]: [notice] Digest: generating secret for digest authentication ...

Oct 6 20:30:53 localhost httpd[1837]: [notice] Digest: done

Oct 6 20:30:54 localhost httpd[1837]: [notice] Apache/2.2.9 (Unix) DAV/2

PHP/5.2.3 configured -- resuming normal operation 

关于squid的客户端服务器配置如下

 
####/etc/squid/squid.conf的追加配置如下
access_log syslog:local7.* squid   <---
配置squid的访问日志启用syslog,并且定义facilitylocal7,输出所有级别日志 

 

rsyslog的配置内容是:(etc/rsyslog.conf

# Load output RELP module

$ModLoad omrelp        <---由于采用的是relp协议传给远端日志服器,所以需要omrelp

# Don't log private authentication messages!

*.info;mail.none;authpriv.none;cron.none;local7.none    /var/log/messages      <--local7日志不写入 /var/log/message,有后面专门的写入文

# Save local7  to a file

local7.*              /var/log/squid_access_log

# Send local7 to remote syslog

local7.*                :omrelp:syslog.chou.com:2514

 <----local7(也就是apacheerror_log)除了本地保存一份之外,relp协议给远端的服syslog.chou.com端服器的听端口是2514

# Send authentification messages to remote syslog

auth,authpriv.*         :omrelp:syslog.chou.com:2514

  <---器的认证信息,属于重要的安全信息,relp协议给远端的服syslog.chou.com端服器的听端口是2514

 

                                                            ---andy chou

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有