msgbartop
咱们ITer怎么着也得整个blog啊
msgbarbottom

21 二 08 配置syslog接收Fortigate 300A的log

syslog是一款很通用的系统log记录软件。一些linux的发行版本中,就是用syslog记录log的。

公司在IDC有一台Fortinet的防火墙产品——Fortigate 300A,但是日志成了问题,默认情况下,log可以记在防火墙的内存里,但只是很小一部分,查看log是只能显示128条,部分log只能记10条。我们参考的信息十分有限。Fortinet的解决方案是让我们花钱买他们的FortiAnalyzer分析器,这是个硬件分析产品,当然买了它,对我们的log分析工作会有很大的帮助,但是费用是更大的问题(大公司就可以昂首挺胸地说“费用不是问题……”)。于是我们选择的这种办法,也是Fortinet留给我们这种穷公司的唯一一条办法——syslog。

首先在linux上配置,syslog已经随系统安装好了,而且已经有很多服务在使用syslog记着log。我要做的有三个地方:

  1. 在/etc/syslog.conf中添加一段
  2. -- Save Fortigate messages to linux
    local6.* /var/log/fortilog

    使得来自local6(这里local6只是一个名字,没有什么意义,只是为了和防火墙一端对应上)这个设备的任何级别log记到文件/var/log/fortilog文件里

  3. 配置/etc/sysconfig/syslog,这个是syslogd服务的Option文件。
  4. SYSLOGD_OPTIONS="-rxm 60"

    -r选项是说允许syslog接收来自外部的log,-x选项是禁用接受log时无用的dns查询,-m 60的意思是每隔60分钟在目标文件中打一个“MARK”以便让我们知道syslog没有偷懒,一直在听着。

  5. 在/etc/sysconfig/iptables中添加一行
  6. -A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 514 -j ACCEPT

    使得防火墙能够通过访问本机的UDP 514端口的通讯。

  7. 然后,需要重启iptables和syslogd,以便让我们做的更改生效
  8. #service restart iptables
    #service restart syslogd

至此,linux这端基本已经ready了,syslog听着来自UDP 514端口local6设备的所有级别log

接下来要配置Fortigate这端了,这端非常简单

  • 在 Log Config中选中Syslog,填入IP地址,端口号,选择local6为发送设备,选择最低的log级别为warning,意思是说高于或等于warning级别的的log都发送给syslogd。

这时,再回来检查linux上的/var/log/fortilog文件,已经有log了,成功!

Tags: ,

评论暂缺

(必须)
(必须, 但不显示)
FireStats icon 由FireStats提供支持