CentOS7安装iptables防火墙的方法
程序员文章站
2022-12-26 12:29:37
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调用mysql存储过程
下一篇: 设计模式-工厂方法模式学习笔记
推荐阅读
-
分享在PHP 7下安装Swoole与Yar,Yaf的方法教程
-
Ubuntu 16.04 LTS中源码安装Python 3.6.0的方法教程
-
win10系统电脑安装卡巴斯基后qq可以上但网页打不开的解决方法
-
安装phpMyAdmin的具体方法及注意事项_PHP教程
-
HP笔记本UEFI导致无法安装win7系统的解决方法
-
在Linux下安装PHP,APACHE,ORACLE,PERL的方法
-
Mysql的基础使用之MariaDB安装方法详解_MySQL
-
快速自动安装php扩展模块的方法
-
MYSQL安装时解决要输入current root password的解决方法
-
Oracle删除后不能重新安装的解决方法