iptables管理

一、iptables日志管理

输出iptables日志到一个指定的文件

Iptables的man参考页中提到: 我们可以使用iptables在linux内核中建立, 维护和检查IP包过滤规则表. 几个不同的表可能已经创建, 每一个表包含了很多内嵌的链, 也可能包含用户自定义的链.

Iptables默认把日志信息输出到/var/log/messages文件. 不过一些情况下你可能需要修改日志输出的位置. 下面向大家介绍如何建立一个新的日志文件/var/log/iptables.log. 通过修改或使用新的日志文件, 你可以创建更好的统计信息或者帮助你分析网络攻击信息.

1). Iptables默认的日志文件
例如, 如果你输入下面的命令, 屏幕将显示/var/log/messages文件中的iptables日志信息:

# tail -f /var/log/messages

输出:

Oct 4 00:44:28 debian gconfd (vivek-4435): Resolved address "xml:readonly:/etc/gconf/gconf.xml.defaults" to a read-only configuration source at position 2
Oct 4 01:14:19 debian kernel: IN=ra0 OUT= MAC=00:17:9a:0a:f6:44:00:08:5c:00:00:01:08:00 SRC=200.142.84.36 DST=192.168.1.2 LEN=60 TOS=0x00 PREC=0x00 TTL=51 ID=18374 DF PROTO=TCP SPT=46040 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=0

2). 输出iptables日志信息到一个指定文件的方法
打开你的/etc/syslog.conf文件:
# vi /etc/syslog.conf

在文件末尾加入下面一行信息
kern.warning /var/log/iptables.log

保存和关闭文件.

重新启动syslogd(如果你使用Debian/Ubuntu Linux):
# /etc/init.d/sysklogd restart

另外, 使用下面命令重新启动syslogd(如果你使用Red Hat/Cent OS/Fedora Core Linux):
# /etc/init.d/syslog restart

现在确认你的iptables使用了log-level 4参数(前面有一个log-prefix标志). 例如:
# DROP everything and Log it
iptables -A INPUT -j LOG –log-level 4
iptables -A INPUT -j DROP

举一个例子, 丢弃和记录所有来自IP地址65.55.11.2的连接信息到/var/log/iptables.log文件.
iptables -A INPUT -s 64.55.11.2 -m limit --limit 5/m --limit-burst 7 -j LOG –log-prefix ‘** HACKERS **’ --log-level 4
iptables -A INPUT -s 64.55.11.2 -j DROP

命令解释:

. - log-level 4: 记录的级别. 级别4为警告(warning).
. - log-prefix ‘*** TEXT ***’: 这里定义了在日志输出信息前加上TEXT前缀. TEXT信息最长可以是29个字符, 这样你就可以在记录文件中方便找到相关的信息.

现在你可以通过/var/log/iptables.log文件参考iptables的所有信息:
# tail -f /var/log/iptables.log

参考
Shell scripting: Write message to a syslog / log file
Force iptables to log messages to a different log file

二、Linux日志管理的技巧

目录
1. 使用shell向syslog日志文件写入信息
2. 输出iptables日志到一个指定的文件

内容
1. 使用shell向syslog日志文件写入信息

应用程序使用syslog协议发送信息给Linux系统的日志文件(位于/var/log目录). Sysklogd提供两个系统工具: 一个是系统日志记录, 另一个是内核信息捕获. 通常大多程序都使用C语言或者syslog应用程序或库来发送syslog消息.

下面介绍如何使用shell向syslog日志文件写入信息:

1). 使用Logger命令

logger命令是一个shell命令(接口). 你可以通过该接口使用syslog的系统日志模块 你还可以从命令行直接向系统日志文件写入一行信息.

比如, 记录硬盘升级后的系统重启信息:
$ logger System rebooted for hard disk upgrade

然后你可以查看/var/log/message文件:

# tail -f /var/log/message

输出为:

Jan 26 20:53:31 dell6400 logger: System rebooted for hard disk upgrade

你也可以通过脚本程序来使用logger命令. 看下面的实例:

#!/bin/bash
HDBS="db1 db2 db3 db4"
BAK="/sout/email"
[ ! -d $BAK ] && mkdir -p $BAK || :
/bin/rm $BAK/*
NOW=$(date +"%d-%m-%Y")
ATTCH="/sout/backup.$NOW.tgz"
[ -f $ATTCH ] && /bin/rm $ATTCH   || :
MTO="[email protected]"
for db in $HDBS
do
FILE="$BAK/$db.$NOW-$(date +"%T").gz"
mysqldump -u admin -p‘password‘ $db | gzip -9> $FILE
done
tar -jcvf $ATTCH $BAK
mutt -s "DB $NOW" -a $ATTCH $MTO <<EOF
DBS $(date)
EOF
[ "$?" != "0" ] &&   logger "$0 - MySQL Backup failed" || :

如果mysql数据库备份失败, 上面最后一行代码将会写入一条信息到/var/log/message文件.

2). 其它用法

如果你需要记录/var/log/myapp.log文件中的信息, 可以使用:
$ logger -f /var/log/myapp.log

把消息发送到屏幕(标准错误), 如系统日志:
$ logger -s "Hard disk full"

你可以参考man参考页获得更多的选项信息:
man logger
man syslogd

来源:http://www.linuxdiyf.com/bbs/viewthread.php?tid=39598

时间: 2024-11-02 11:08:40

iptables管理的相关文章

iptables管理选项使用

1.配置文件: [[email protected] ~]# ls/etc/sysconfig/iptables 2.启动: [[email protected]~]# /etc/init.d/iptables start iptables:应用防火墙规则: [[email protected] ~]# chkconfig iptables on   开机自动启动. [[email protected] ~]# iptables –nL   查看防火墙规则. 3.使用规则: iptables  

针对Red Hat Enterprise Linux 6.5 的防火墙详细讲解,iptables(netfilter)规则的

防火墙基础 Linux的防火墙体系主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙(或网络层防火墙).基于Linux内核编码实现,具有非常稳定的性能和高效率,因此获得广泛使用. 在Linux系统中,netfilter和iptables都用来指Linux防火墙. netfilter:指的是Linux内核中实现包过滤防火墙的内部结构,不以程序或文件的形式存在,属于"内核态"(Kernel Space,又称为内核空间)的防火墙功能体系. iptables:指的是

CentOS 7 使用iptables防火墙

# 停止firewalld服务 systemctl stop firewalld systemctl mask firewalld # 安装iptables-services yum install iptables-services Enable the service at boot-time: # 启动iptables服务 systemctl enable iptables # 管理iptables systemctl [stop|start|restart] iptables # 保存规

iptables简述

一.linux防火墙基础防火墙分为硬件防火墙和软件防火墙. 1.概述linux 防火墙体系主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙.       包过滤机制:netfilter       管理防火墙规则命令工具:iptables       netfilter 指linux内核中实现包过滤防火墙的内部结构,不依程序或文件的形式存在,属于"内核态"的防火墙功能体系       iptables 指管理linux防火墙的命令工具,属于"用户

linux架构学习第三十天防火墙初识及iptables详解

内容: 1.防火墙简介 2.iptables简介 3.iptables的使用说明(主机防火墙和网络防火墙) 4.iptables的保存 一.防火墙简介 1.防火墙(Firewall),它是一种位于内部网络与外部网络之间的网络安全系统.一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过.内部网络和外部网络之间的所有网络数据流都必须经过防火墙,这是防火墙所处网络位置特性,同时也是一个前提.因为只有当防火墙是内.外部网络之间通信的唯一通道,才可以全面.有效地保护企业网内部网络不受侵害,

Iptables用法概述

---恢复内容开始--- iptables 防火墙的规则设置最好的设置流程是,将防火墙规则写入到配置文件中,然后通过#iptables-restore读取, 这样可以避免防火墙设置错误和防火墙规则混乱: 一.iptables—语法: ——————————————————————————- iptables [-t 要操作的表] <操作命令> [要操作的链] [规则号码] [匹配条件] [-j 匹配后的动作] 小写      大写        大写                   小写  

Linux iptables防火墙详解 + 配置抗DDOS攻击策略实战

inux iptables防火墙详解 + 配置抗DDOS攻击策略实战 Linux 内核中很早就实现了网络防火墙功能,在不同的Linux内核版本中,使用了不同的软件实现防火墙功能.在2.0内核中,防火墙操作工具叫:ipfwadm在2.2内核中,防火墙操作工具叫:ipchains在2.4以后的内核,防火墙操作工具叫:iptables ipfwadm 和 ipchains 比较老,已成历史版本,本章主要介绍Iptables 一.iptable 操作命令参数详解 -A  APPEND,追加一条规则(放到

防火墙和iptables

本文目录: 6.1 为什么需要防火墙 6.2 数据传输流程 6.2.1 网络数据传输过程 6.2.2 本机数据路由决策 6.3 TCP三次握手.四次挥手以及syn攻击 6.3.1 三次握手建立tcp连接 6.3.2 四次挥手端口tcp连接 6.3.3 syn flood攻击 6.4 各种文件分布 6.4.1 从链路层来判断是否处理 6.4.2 从网络层来判断是否处理 6.4.3 从传输层来判断是否处理 6.4.4 从应用层来判断是否处理 6.4.5 特殊的防火墙判断 6.4.6 数据包过滤 6.

neutron删除vpn时,iptables规则没有删除的bug修复

本人新开博客,主要从事openstack的二次开发,熟悉各个模块.博客主要会写一些平时遇到的问题及解决办法,希望能够帮到初涉云计算尤其是openstack的朋友,如果需要转载请注明出处:http://blog.csdn.net/ivy_feifei,有什么问题欢迎留言讨论,如博文有误,欢迎指出,谢谢! bug描述:当删除vpn时,对应的iptables规则没有删除: 1 2 3 Chain neutron-vpn-agen-POSTROUTING (1 references)  pkts byt