戊辰人博客

青,取之于蓝而青于蓝;冰,水为之而寒于水。

使用iptables屏蔽垃圾评论实战

日期:2015年11月26日 作者: 分类:运维 阅读:1,014

在博客后台,每天会拦截大量垃圾评论,但近期的垃圾评论都是下面这样的,同一个IP地址。

使用iptables屏蔽垃圾评论实战

 

查询该IP的详细信息如下:

使用iptables屏蔽垃圾评论实战

 

因为最近的垃圾评论都是这个IP发出的,于是想到利用iptables将这个IP屏蔽掉,思路就是任何从117.26.117.132这个IP来的数据,统统DROP掉,从而防止这个IP来的垃圾评论。

# root权限执行命令
iptables -I INPUT -s 117.26.117.132 -j DROP

在添加该防火墙规则之前,平均10~20分钟左右一条来自117.26.117.132的评论,添加规则之后,到目前为止,评论数没有再增加。

阅读全文…

CentOS 6.x下防火墙设置

日期:2015年6月3日 作者: 分类:运维 阅读:917

1351425420-0

iptables防火墙可以用于创建过滤(filter)与NAT规则。所有Linux发行版都能使用iptables,因此理解如何配置iptables将会帮助你更有效地管理Linux防火墙。如果你是第一次接触iptables,你会觉得它很复杂,但是一旦你理解iptables的工作原理,你会发现其实它很简单。

下面是一段在CentOS 6.x下iptables的初始化设置脚本:

#!/bin/bash

# 打开有状态检测的端口,如22
function open_state_port() {
    PORT=$1
    PROTOCOL=$2
    iptables -A INPUT -p $PROTOCOL --dport $PORT -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p $PROTOCOL --sport $PORT -m state --state ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p $PROTOCOL --dport $PORT -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A INPUT -p $PROTOCOL --sport $PORT -m state --state ESTABLISHED -j ACCEPT
}

# 打开普通的端口
function open_normal_port() {
    PORT=$1
    PROTOCOL=$2
    iptables -A INPUT -p $PROTOCOL --dport $PORT -j ACCEPT
    iptables -A OUTPUT -p $PROTOCOL --sport $PORT -j ACCEPT
    iptables -A OUTPUT -p $PROTOCOL --dport $PORT -j ACCEPT
    iptables -A INPUT -p $PROTOCOL --sport $PORT -j ACCEPT
}

# 1. 清除所有规则
iptables -F
iptables -X

# 2. 允许本地回环地址通过防火墙
iptables -A INPUT -i lo -p all -j ACCEPT
iptables -A OUTPUT -o lo -p all -j ACCEPT

# 3. 允许ping打开
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

# 4. SSH访问控制打开
open_state_port 22 tcp
open_state_port 80 tcp

# 5. 配置默认策略为DROP
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

# 6. DNS解析开放
open_normal_port 53 udp

# 7. MySQL端口开放
open_normal_port 3306 tcp

# 8. 防DoS攻击
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT

阅读全文…