欢迎来访~

配置iptables防火墙增强服务器安全

本篇文章简单的介绍了我近期学习到的iptables防火墙的一般配置及其它功能的一点知识,包含以下几点:
a.使用iptables防火墙保护web服务器,配置对应规则条目;
b.如果发现可疑的IP地址,配置相应条目拒绝这些IP地址访问服务器;
c.使用iptables搭建路由器,通过SNAT使用内网机器上网。
实验环境:
虚拟机CentOS-6.5
iptables服务端:hello2099.com   IP192.168.1.13 / 192.168.3.1
iptables客户端:hello2299.com   IP192.168.1.14 / 192.168.3.14
物理机IP:192.168.1.158
1.安装iptables
yum install iptables
chkconfig iptables on
2.查看iptables并启动
iptables -nvL
service iptables start
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3.设置策略保护WEB服务器
配置以下策略:
iptables -A INPUT -i lo -j ACCEPT                          #放行环回口所有数据
iptables -A INPUT -p tcp –dport 22 -j ACCEPT#放行22端口所有数据,即放行SSH
iptables -A INPUT -p tcp –dport 21 -j ACCEPT#放行21端口所有数据,即放行FTP
iptables -A INPUT -p tcp –dport 80 -j ACCEPT #放行80端口所有数据,即放行HTTP
iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT   #允许已经建立tcp连接的包以及该连接相关的包通过
iptables -P INPUT DROP#设置INPUT链的默认策略为丢弃
查看iptables:
 
 
 
 
 
 
 
 
 
 
 
 
4.拒绝可疑IP地址(192.168.1.158)访问WEB服务器
增加以下策略到首行:
iptables -I INPUT -s 192.168.1.158 -p tcp –dport 22 -j DROP #拒绝192.168.1.158通过22端口的数据
iptables -I INPUT -s 192.168.1.158 -p tcp –dport 21 -j DROP#拒绝192.168.1.158通过21端口的数据
iptables -I INPUT -s 192.168.1.158 -p tcp –dport 80 -j DROP #拒绝192.168.1.158通过80端口的数据

 

 

 

 

 

 

 

 

在192.168.1.158通过http访问WEB服务器192.168.1.13的网站,已拒绝;

在192.168.1.14通过elinkshttp访问WEB服务器192.168.1.13的网站,可以正常访问。

 

 

 

 

 

 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
5.SNAT环境配置
Server端新增一块网卡,IP设置为192.168.3.1 网卡属于Vmnet3;
Client IP地址192.168.1.14更改为192.168.3.14 网卡属于Vmnet3。
Server端可以访问外网;
而Clinet端不能访问外网。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6.配置SNAT
启用内核路由转发功能:
echo “1” > /proc/sys/net/ipv4/ip_forward
永久生效:
vim /etc/sysctl.conf
改:net.ipv4.ip_forward = 0
为:net.ipv4.ip_forward = 1
改完使配置生效:
sysctl -p
配置SNAT:
iptables -t nat -A POSTROUTING -s 192.168.3.0/24   -j  SNAT  –to 192.168.1.13
 
7.验证
Clinet端可以ping通192.168.3.1和192.168.1.13;
Clinet端可以访问外网。

 

 

 

 

 

 

 

 

 

 

 

赞(0)
可附来源转载:一只北极熊 » 配置iptables防火墙增强服务器安全

富强、民主、文明、和谐、自由、平等、公正、法治、爱国、敬业、诚信、友善