Centos7.2 如何使用iptables

一、防火墙iptables 简洁介绍

iptables 和 firewalld 都是工作在用户空间、用来定义规则的工具,本身不是防火墙,他们定义的规则,可以让内核空间当中的netfilter读取,并且实现防火墙工作。

netfilter是操作系统核心层内部的一个数据包处理模块,它具有如下功能:

  1.网络地址转换 nat

  2.数据包内容修改 mangle

  3.数据包过滤的防火墙功能 filter  

CentOS7.2  默认使用firewalld ;iptables默认无法被systemctl控制,需要安装iptables-services、iptables-devel这两个依赖包

二、将firewalld切换到 iptables

1. 停止并禁用 firewalld

systemctl stop firewald.service

systemctl disable firewald.service

2.安装iptables-services、iptables-devel

yum install iptables-services iptables-devel

3.启用并启动iptables

systemctl enable iptables.service

systemctl start iptables.service

4.查看iptables配置文件

vim /etc/sysconfig/iptables

5.开启转发功能

(1) 在 /etc/sysctl.conf 中添加 net.ipv4.ip_forward=1

(2) sudo sysctl -p 同步内核参数

(3) 继续查看内核参数 less /proc/sys/net/ipv4/ip_forward  如果为1 则配置生效

  1 # sample configuration for iptables service
  2 # you can edit this manually or use system-config-firewall
  3 # please do not ask us to add additional ports/services to this default configuration
  4 *filter
  5 :INPUT ACCEPT [0:0]
  6 :FORWARD ACCEPT [0:0]
  7 :OUTPUT ACCEPT [0:0]
  8 -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
  9 -A INPUT -p icmp -j ACCEPT
 10 -A INPUT -i lo -j ACCEPT
 11 -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
 12 -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
 13 -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
 14 -A INPUT -p tcp -m state --state NEW -m tcp --dport 139 -j ACCEPT
 15 -A INPUT -p tcp -m state --state NEW -m tcp --dport 445 -j ACCEPT
 16 -A INPUT -p tcp -m state --state NEW -m tcp --dport 137 -j ACCEPT
 17 -A INPUT -p tcp -m state --state NEW -m tcp --dport 138 -j ACCEPT
 18 -A INPUT -p tcp -m state --state NEW -m tcp --dport 15672 -j ACCEPT
 19 
 20 -A INPUT -j REJECT --reject-with icmp-host-prohibited
 21 -A FORWARD -j REJECT --reject-with icmp-host-prohibited
 22 COMMIT
#查看iptables现有规则  
iptables -L -n  
#先允许所有,不然有可能会杯具  
iptables -P INPUT ACCEPT  
#清空所有默认规则  
iptables -F  
#清空所有自定义规则  
iptables -X  
#所有计数器归0  
iptables -Z  
#允许来自于lo接口的数据包(本地访问)  
iptables -A INPUT -i lo -j ACCEPT  
#开放22端口  
iptables -A INPUT -p tcp --dport 22 -j ACCEPT  
#开放21端口(FTP)  
iptables -A INPUT -p tcp --dport 21 -j ACCEPT  
#开放80端口(HTTP)  
iptables -A INPUT -p tcp --dport 80 -j ACCEPT  
#开放443端口(HTTPS)  
iptables -A INPUT -p tcp --dport 443 -j ACCEPT  
#允许ping  
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT  
#允许接受本机请求之后的返回数据 RELATED,是为FTP设置的  
iptables -A INPUT -m state --state  RELATED,ESTABLISHED -j ACCEPT  
#其他入站一律丢弃  
iptables -P INPUT DROP  
#所有出站一律绿灯  
iptables -P OUTPUT ACCEPT  
#所有转发一律丢弃  
iptables -P FORWARD DROP
#保存上述规则  
service iptables save 
 




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值