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

相关推荐
Sheffield4 分钟前
command和shell模块到底区别在哪?
linux·云计算·ansible
历程里程碑16 分钟前
Linux20 : IO
linux·c语言·开发语言·数据结构·c++·算法
郝学胜-神的一滴18 分钟前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
承渊政道22 分钟前
Linux系统学习【Linux系统的进度条实现、版本控制器git和调试器gdb介绍】
linux·开发语言·笔记·git·学习·gitee
技术路上的探险家23 分钟前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker
代码AC不AC27 分钟前
【Linux】深入理解缓冲区
linux·缓冲区·标准错误
Doro再努力31 分钟前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
全栈工程师修炼指南42 分钟前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp
Lsir10110_1 小时前
【Linux】进程信号(上半)
linux·运维·服务器
开开心心就好1 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节