iptables学习与研究(使用LOG记录失败日志)

原文地址: http://blog.csdn.net/fafa211/article/details/2307581

 

通常情况下,iptables的默认政策为DROP,不匹配的数据包将被直接丢弃。但在丢弃之前建议把信息记录下来,以使你了解哪些信息没有通过规则,有时可依此判断是否有人在尝试攻击你的服务器。

下面给出一个用来详细记录未匹配规则的数据包的iptables规则:

#记录下未符合规则的udp数据包,然后丢弃之。

#iptables -A INPUT -i $IFACE -p udp -j LOG --log-prefix "IPTABLES UDP-IN: " 
#iptables -A INPUT -i $IFACE -p udp -j DROP 
#iptables -A OUTPUT -o $IFACE -p udp -j LOG --log-prefix "IPTABLES UDP-OUT: " 
#iptables -A OUTPUT -o $IFACE -p udp -j DROP

# 记录下未符合规则的icmp数据包,然后丢弃之。

#iptables -A INPUT -i $IFACE -p icmp -j LOG --log-prefix "IPTABLES ICMP-IN: " 
#iptables -A INPUT -i $IFACE -p icmp -j DROP 
#iptables -A OUTPUT -o $IFACE -p icmp -j LOG --log-prefix "IPTABLES ICMP-OUT: " 
#iptables -A OUTPUT -o $IFACE -p icmp -j DROP

# 记录下未符合规则的tcp数据包,然后丢弃之。

iptables -A INPUT -i $IFACE -p tcp -j LOG --log-prefix "IPTABLES TCP-IN: " 
iptables -A INPUT -i $IFACE -p tcp -j DROP 
iptables -A OUTPUT -o $IFACE -p tcp -j LOG --log-prefix "IPTABLES TCP-OUT: " 
iptables -A OUTPUT -o $IFACE -p tcp -j DROP

# 记录下其他未符合规则的数据包,然后丢弃之。

iptables -A INPUT -i $IFACE -j LOG --log-prefix "IPTABLES PROTOCOL-X-IN: " 
iptables -A INPUT -i $IFACE -j DROP 
iptables -A OUTPUT -o $IFACE -j LOG --log-prefix "IPTABLES PROTOCOL-X-OUT: " 
iptables -A OUTPUT -o $IFACE -j DROP  

加上适当的记录日志前缀,可以方便对日志进行分析。 日志通常记录在/var/log/message文件中。如,可以使用 cat /var/log/message | grep "IPTABLES UDP-IN: "  查找出你需要的日志信息。 当然为了防止日志文件过大,你也可以对日志文件记录进行限制,如可以在-j LOG 命令 前加上-m limit --limit 6/h --limit-burst 5

时间: 2024-10-06 17:45:08

iptables学习与研究(使用LOG记录失败日志)的相关文章

要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!En

问题描述 "/"应用程序中的服务器错误.--------------------------------------------------------------------------------未能加载文件或程序集"SC"或它的某一个依赖项.生成此程序集的运行时比当前加载的运行时新,无法加载此程序集.说明:执行当前Web请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息.异常详细信息:System.BadImag

利用ubuntu中syslog记录外部设备日志

要求: 利用 ubuntu 8.04 服务器版的 syslog 记录 juniper isg1000 日志,保留3个月. 1.允许 syslog 记录外部日志 修改 /etc/default/syslogd,把其中的 SYSLOGD="" 改为 SYSLOGD="-r" 2.定义外部日志类型 修改 juniper isg1000 日志定义,让其生成的日志定义为 local7,并向 ubuntu 服务器发送日志. 3.定义日志文件 考虑到日志文件比较多,在 /var/

c语言-如何编写一个可以记录post日志的文件

问题描述 如何编写一个可以记录post日志的文件 就是在post的时候,记录下post发出的信息,然后如果信息发送不成功,存储下来,等 有网络连接的时候再进行发送,可以吗,用C语言或者shell 解决方案 相当于实现一个代理服务器http://download.csdn.net/detail/qq32219893/2240901 解决方案二: 自己post的时候根据返回值.如果失败了.就保存数据到一个自定义格式文件.等下次再读取文件发送.

Global.asax的Application_Error实现错误记录/错误日志的代码_实用技巧

利用Global.asax的Application_Error实现错误记录 错误日志 复制代码 代码如下: void Application_Error(object sender, EventArgs e) { // 在出现未处理的错误时运行的代码 Exception ex = Server.GetLastError().GetBaseException(); StringBuilder str = new StringBuilder(); str.Append("\r\n" + D

asp.net 4.0 使用log4net记录错误日志例子

原来也一直用log4net记录日志,但是是在.net2.0 上用的.最近用到新的项目是vs2015开发的,要用log4net,今天将.net 4.0 使用log4net记录错误日志的步骤,分享给大家. 1.首先到http://logging.apache.org/log4net/download_log4net.cgi 下载最新版本的log4net.如果不需要修改log4net的源代码的话,建议下载二进制的就可以了.最新版本是log4net 1.2.15. IT分享 2.下载好log4net.d

使用 XML 文件记录操作日志

xml 记录应用程序的操作日志可以使用数据库.文本文件.XML文件等.我这里介绍的是使用 XML 文件记录操作日志. 我觉得使用 XML 记录操作日志有如下几点好处: 1. 不占用数据库的空间,可以任意的删除历史操作日志. 2. DataTable 可以方面的读入 XML 文件,DataTable 也可以方便的保存为 XML 文件. 3. 查看日志方便,可以直接打开 XML 文件查看,也可以读入 DataTable,然后通过程序查看. 在 VS2005 中使用 XML 文件记录操作日志方法如下:

使用XML文件记录操作日志

xml 记录应用程序的操作日志可以使用数据库.文本文件.XML文件等.我这里介绍的是使用 XML 文件记录操作日志.我觉得使用 XML 记录操作日志有如下几点好处:1. 不占用数据库的空间,可以任意的删除历史操作日志.2. DataTable 可以方面的读入 XML 文件,DataTable 也可以方便的保存为 XML 文件.3. 查看日志方便,可以直接打开 XML 文件查看,也可以读入 DataTable,然后通过程序查看. 在 VS2005 中使用 XML 文件记录操作日志方法如下:1. 建

ssh2集成-SSH集成,log4j 记录异常日志

问题描述 SSH集成,log4j 记录异常日志 所有异常全部抛给Action层,想用log4j记录这些异常,求配置文件.

如何清除oracle中的执行sql记录在日志里面的的记录

问题描述 如何清除oracle中的执行sql记录在日志里面的的记录 如何清除oracle中的执行sql记录在日志里面的的斤斤计较绝对经典如何清除oracle中的执行sql记录在日志里面的的记录 解决方案 http://www.zhihu.com/question/27579044