Linux系统(CentOS)安装iptables防火墙

1,先检查是否安装了iptables

检查安装文件-执行命令:rpm -qa|grep iptables

检查安装文件-执行命令:service iptables status

2,如果安装了就卸装(iptables-1.4.21-35.el7.x86_64 是上面命令查出来的版本)

执行命令:rpm -e --nodeps iptables-1.4.21-35.el7.x86_64

3,安装iptables-services

执行命令:yum install iptables-services

4,查看是否安装成功

执行命令:iptables --version

5,查看iptables运行状态

执行命令:systemctl status iptables

看到以下信息就说明正常运行了:

6,禁用/停止自带的firewalld

a,停止firewalld服务命令:systemctl stop firewalld

b,禁用firewalld服务命令:systemctl mask firewalld

7,iptables启动

执行命令:systemctl start iptables

8,设置iptables系统启动时自动启动

执行命令:systemctl enable iptables

9,清理iptables

先允许所有,不然有可能会出现奇怪的问题

执行命令:iptables -P INPUT ACCEPT

清空所有默认规则

执行命令:iptables -F

清空所有自定义规则

执行命令:iptables -X

所有计数器归0

执行命令:iptables -Z

10,设置开放端口

执行命令:

powershell 复制代码
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
powershell 复制代码
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
powershell 复制代码
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
powershell 复制代码
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
powershell 复制代码
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
powershell 复制代码
iptables -A INPUT -p tcp --dport 6379 -j ACCEPT

或者

powershell 复制代码
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
powershell 复制代码
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
powershell 复制代码
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT

11,让上面的规则生效

执行命令:service iptables save

12,注册iptables服务

执行命令:systemctl enable iptables.service

13,开启iptables服务

执行命令:systemctl start iptables.service

14,查看iptables服务状态

执行命令:systemctl status iptables.service

或者命令:systemctl status iptables

看到以下信息就说明正常运行了:

15,关闭SELINUX

在linux系统找到文件:/etc/selinux/config

或者命令:vi /etc/selinux/config

16,注释config文件以下配置

powershell 复制代码
SELINUX=enforcing 
SELINUXTYPE=targeted

注释如下:

powershell 复制代码
#SELINUX=enforcing 
#SELINUXTYPE=targeted

17,设置使配置立即生效,在config文件添加:

添加 :setenforce 0

18,查看iptables开放了哪些端口号

执行命令:iptables -L -n

或者:/sbin/iptables -L -n

19,其他规则

其他入站一律丢弃

powershell 复制代码
iptables -P INPUT DROP

所有出站一律绿灯

powershell 复制代码
iptables -P OUTPUT ACCEPT

所有转发一律丢弃

powershell 复制代码
iptables -P FORWARD DROP

20,其他命令:

启动服务命令:service iptables start

停止服务命令:service iptables stop

重启服务命令:service iptables restart

相关推荐
努力学习的小廉16 分钟前
深入了解linux网络—— 自定义协议(上)
linux·服务器·网络
bcgbsh1 小时前
Linux开机启动脚本(cron 的 @reboot 特性)
linux·cron
听风吹雨yu1 小时前
RK3588从数据集到训练到部署YoloV8
linux·yolo·开源·rk3588·rknn
要做朋鱼燕2 小时前
【AES加密专题】1.AES的原理详解和加密过程
运维·网络·密码学·c·加密·aes·嵌入式工具
yunson_Liu2 小时前
jenkins更新了gitlab后出现报错
运维·gitlab·jenkins
iconball2 小时前
个人用云计算学习笔记 --19 (MariaDB服务器)
linux·运维·笔记·学习·云计算
Lynnxiaowen2 小时前
今天我们开始学习python3编程之python基础
linux·运维·python·学习
Chandler242 小时前
一图掌握 操作系统 核心要点
linux·windows·后端·系统
skywalk81632 小时前
term.everything‌ 通过终端运行任意GUI应用程序
运维
dragoooon343 小时前
[Linux系统编程——Lesson6.进程切换与调度]
linux·运维·服务器