前言:
CentOS 7 is using FirewallD now!
Example:
firewall-cmd --zone=public --add-port=3000/tcp --permanent
reload rules:
firewall-cmd --reload 由于CentOS 7在文件系统上有较大的改变,主要改变为网卡配置接口名称,启动项管理等方式有了很大不同,CentOS 7中启动项管理采用的是systemcl的方式管理,而之前的版本中采用的是service 服务名 start | restart | reload。本文将以安装iptables-services服务为例,来讲解如何安装服务,并使用一个简单的示例来说明iptables的用途。
1、首先关闭firewall
#停止firewall systemctl stop firewalld.service #禁止firewall开机启动 systemctl disable firewalld.service
2、安装iptables
yum install iptables-services -y #查看安装路径 sudo rpm -ql iptables-services /etc/sysconfig/ip6tables /etc/sysconfig/iptables /usr/lib/systemd/system/ip6tables.service /usr/lib/systemd/system/iptables.service /usr/libexec/initscripts/legacy-actions/ip6tables /usr/libexec/initscripts/legacy-actions/ip6tables/panic /usr/libexec/initscripts/legacy-actions/ip6tables/save /usr/libexec/initscripts/legacy-actions/iptables /usr/libexec/initscripts/legacy-actions/iptables/panic /usr/libexec/initscripts/legacy-actions/iptables/save /usr/libexec/iptables /usr/libexec/iptables/ip6tables.init /usr/libexec/iptables/iptables.init
3、添加iptables策略
我们来做一个示例,假设有一台公网主机A,IP为:10.12.123.1,内网主机B,IP为:192.168.1.8,A主机与B主机通过内网网线相连接,是可以网络上互通的,当我们访问主机A的端口8322时,实际上访问的是内网主机B的22号端口,如何通过iptables做转发?我们只需要在主机A中添加以下三条即可:
#首先需要开启NAT转发 sudo echo 1 > /proc/sys/net/ipv4/ip_forward sudo iptables -t nat -I PREROUTING -p tcp --dport 8322 -j DNAT --to-destination=192.168.208.4:22 sudo iptables -t nat -I POSTROUTING -p tcp --dport 22 -d 192.168.208.4 -j MASQUERADE
4、保存配置令其永久生效
保存开启转发配置:
sudo echo "echo 1 > /proc/sys/net/ipv4/ip_forward" >> /etc/rc.locale
接下来,我们可以使用以下命令进行iptables规则的保存:
sudo service iptables save
附录:
关于iptables的使用,可以查看我博客中的文章:
http://www.guoziweb.com/2014/12/25/iptables%E8%AF%A6%E8%A7%A3/
- 微信扫码赞助
-
- 支付宝赞助
-