CentOS7安装iptables防火墙的方法
程序员文章站
2022-05-14 12:03:18
centos7默认的防火墙不是iptables,而是firewalle.
安装iptable iptable-service
#先检查是否安装了iptables...
centos7默认的防火墙不是iptables,而是firewalle.
安装iptable iptable-service
#先检查是否安装了iptables service iptables status #安装iptables yum install -y iptables #升级iptables yum update iptables #安装iptables-services yum install iptables-services
禁用/停止自带的firewalld服务
#停止firewalld服务 systemctl stop firewalld #禁用firewalld服务 systemctl mask firewalld
设置现有规则
#查看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
其他规则设定
#如果要添加内网ip信任(接受其所有tcp请求) iptables -a input -p tcp -s 45.96.174.68 -j accept #过滤所有非以上规则的请求 iptables -p input drop #要封停一个ip,使用下面这条命令: iptables -i input -s ***.***.***.*** -j drop #要解封一个ip,使用下面这条命令: iptables -d input -s ***.***.***.*** -j drop
保存规则设定
#保存上述规则 service iptables save
开启iptables服务
#注册iptables服务 #相当于以前的chkconfig iptables on systemctl enable iptables.service #开启服务 systemctl start iptables.service #查看状态 systemctl status iptables.service
解决vsftpd在iptables开启后,无法使用被动模式的问题
1.首先在/etc/sysconfig/iptables-config中修改或者添加以下内容
#添加以下内容,注意顺序不能调换 iptables_modules="ip_conntrack_ftp" iptables_modules="ip_nat_ftp"
2.重新设置iptables设置
iptables -a input -m state --state related,established -j accept
以下为完整设置脚本
#!/bin/sh iptables -p input accept iptables -f iptables -x iptables -z iptables -a input -i lo -j accept iptables -a input -p tcp --dport 22 -j accept iptables -a input -p tcp --dport 21 -j accept iptables -a input -p tcp --dport 80 -j accept iptables -a input -p tcp --dport 443 -j accept iptables -a input -p icmp --icmp-type 8 -j accept 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 systemctl restart iptables.service
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: PHP 编写大型网站问题集
推荐阅读
-
Symfony2安装的方法(2种方法)
-
安装sql server2008后再安装sql 2005找不到本地服务器的解决方法
-
在VMware虚拟机中安装Linux(Fedora16)的方法
-
虚拟机中的Linux安装VMware Tools的方法
-
虚拟机VMware中安装VMware Tools for Linux的方法(Fedora16)
-
Visual Studio 2017安装失败的解决方法
-
linux下安装oracle后使用命令行启动的方法 linux启动oracle
-
Win8.1系统电脑安装补丁失败提示此更新不适合计算机的解决方法图文教程
-
安装.NET Framework严重错误回滚怎么办?完美解决NET Framework4回滚问题的方法
-
Microsoft Visual Studio 2010 Ultimate 下安装wcsf 2010出现问题的解决方法