Python Syslog Server 开发实例

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


目录

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

1. 配置Cisco ASA 5550 Firewall

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

		#!/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.")		

原文发布于微信公众号 - Netkiller(netkiller-ebook)

原文发表时间:2016-05-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Ryan Miao

Spring-AOP实践 - 统计访问时间

公司的项目有的页面超级慢,20s以上,不知道用户会不会疯掉,于是老大说这个页面要性能优化。于是,首先就要搞清楚究竟是哪一步耗时太多。 我采用spring aop...

4038
来自专栏逍遥剑客的游戏开发

做了Nebula3的应用程序向导

1003
来自专栏好好学java的技术栈

SpringMVC+RestFul详细示例实战教程(实现跨域访问)

**REST(Representational State Transfer)**,中文翻译叫“表述性状态转移”。是 Roy Thomas Fielding 在...

1674
来自专栏happyJared

Spring Boot 1.0 && 2.0 + JPA 多数据源配置与使用

mysql 对应的数据源配置中,定义了实体 Student 和对应的数据层接口 StudentRepository:

963
来自专栏石奈子的Java之路

原 荐 SpringBoot 2.0 系列0

1994
来自专栏Golang语言社区

也许你并不需要 REST

Nearly 10 years ago, Leonard Richardson and Sam Ruby publishedRESTful Web Servic...

592
来自专栏cmazxiaoma的架构师之路

VMware WorkStation的烦心事

1402
来自专栏分布式系统进阶

Librdkafka的Transport层

rd_kafka_recv按kafka的协议来收包, 先收4字节,拿到payload长度, 再根据这个长度收够payload内容, 这样一个完整的respons...

881
来自专栏码匠的流水账

kafka streams的join实例

这里使用的是inner join,也有left join,也有outer join。如果要记录在时间窗口没有匹配上的记录,可以使用outer join,额外存储...

611
来自专栏程序你好

Spring Security与OAuth2

Spring Security为基于j2ee的企业软件应用程序提供了全面的安全服务。它强大、灵活、可插。它不像代理服务器、防火墙、OS级别安全性、入侵检测系统或...

1163

扫码关注云+社区