前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python Syslog Server 开发实例

Python Syslog Server 开发实例

作者头像
netkiller old
发布2018-03-05 16:26:20
2.3K0
发布2018-03-05 16:26:20
举报
文章被收录于专栏:NetkillerNetkiller

本程序用于收集,防火墙,路由器,交换机等日志


目录

  • 1. 配置Cisco ASA 5550 Firewall
  • 2. syslog 服务器脚本

1. 配置Cisco ASA 5550 Firewall

代码语言:javascript
复制
logging enable 
logging timestamp 
logging trap warnings 
logging host inside 172.16.0.5
logging facility local0 

172.16.0.5 改为你的syslog服务器地址

2. syslog 服务器脚本

*注意:python版本必须3.0以上

chmod 700 syslogd

./syslogd

代码语言:javascript
复制
		#!/srv/python/bin/python3
# -*- encoding: utf-8 -*-
# Cisco ASA Firewall - Syslog Server by neo
# Author: neo<neo.chen@live.com>

import logging
import socketserver
import threading

LOG_FILE = '/var/log/asa5550.log'

logging.basicConfig(level=logging.INFO,
                    format='%(message)s',
                    datefmt='',
                    filename=LOG_FILE,
                    filemode='a')

class SyslogUDPHandler(socketserver.BaseRequestHandler):

    def handle(self):
        data = bytes.decode(self.request[0].strip())
        socket = self.request[1]
        print( "%s : " % self.client_address[0], str(data))
        logging.info(str(data))
#        socket.sendto(data.upper(), self.client_address)

if __name__ == "__main__":
    try:
        HOST, PORT = "0.0.0.0", 514
        server = socketserver.UDPServer((HOST, PORT), SyslogUDPHandler)
        server.serve_forever(poll_interval=0.5)
    except (IOError, SystemExit):
        raise
    except KeyboardInterrupt:
        print ("Crtl+C Pressed. Shutting down.")		
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-05-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Netkiller 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 配置Cisco ASA 5550 Firewall
  • 2. syslog 服务器脚本
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档