firewall防火墙
1、查看firewall服务状态
systemctl status firewalld
出现Active: active (running)切高亮显示则表示是启动状态。
出现 Active: inactive (dead)灰色表示停止,看单词也行。
2、开启、重启、关闭、firewalld.service服务
开启
systemctl start firewalld
重启
systemctl restart firewalld
关闭
systemctl stop firewalld
3、查看防火墙规则
firewall-cmd --list-all
4、查询、开放、关闭端口
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、–permanent:表示设置为持久;
3、–add-port:标识添加的端口;
iptables防火墙
规则判断顺序
从上至下依次为:第一条规则,第二条规则……
从第一条开始一条条往下,遇到对应的规则就执行,ACCEPT与DROP两种策略将直接执行并退出,不会继续往下
特别强调
: (policy ACCEPT)
可以理解成默认值,如果没有手动配置DROP策略,说明所有端口默认开放,如下图所示,说明所有端口默认开放
基本操作
# 增加开放的端口
iptables -A INPUT -p tcp --dport 8000 -j ACCEPT
# 查看已开放的端口策略
iptables -L -n --line-numbers
# 删除指定端口策略,序号,从上往下序号依次为:1,2,3,4……
iptables -D INPUT 1
# 修改默认规则为拒绝
iptables -P INPUT DROP
'仅允许某些服务器可以访问对应端口'
# 先关闭所有的8080端口
iptables -A INPUT -p tcp --dport 8080 -j DROP
# 仅开启10.0.0.112服务器允许访问8080端口
iptables -A INPUT -s 10.0.0.112 -p tcp --dport 8080 -j ACCEPT
# 开启ip段211.123.16.123/24允许访问8080端口
iptables -A INPUT -s 211.123.16.123/24 -p tcp --dport 8080 -j ACCEPT
持久化配置
iptables防火墙配置重启服务器后会丢失,需要进行持久化配置,以下提供Ubuntu的配置方法:通过安装iptables-persistent来实现
# 安装iptables-persistent
sudo apt install iptables-persistent
# 在安装过程中,系统会要求您保存当前/现有的 iptables 规则。这里直接选择yes
# 它将分别为 IPv4 和 IPv6创建现有的 iptables 规则并将其保存到/etc/iptables/rules.v4和/etc/iptables/rules.v6
# 保存ipv4
sudo iptables-save -f /etc/iptables/rules.v4
# 规则可以恢复到上次保存它们时的状态
sudo netfilter-persistent reload
注意:无论何时更改iptables的规则,都应该使用iptables-save命令将其保存到文件中,以便在重新启动后使更改保持不变。
Semanage
Semanage是用于配置SELinux策略某些元素而无需修改或重新编译策略源的工具。 这包括将Linux用户名映射到SELinux用户身份以及对象(如网络端口,接口和主机)的安全上下文映射。
开启与查看selinux
# 开启
[root@localhost ~]# sed -i '/^SELINUX/s/disabled/enforcing/g' /etc/selinux/config
# 然后重启一下操作系统
[root@localhost ~]# reboot
# 重启完成之后检查一下是否是enforcing模式
[root@localhost ~]# getenforce
Enforcing
常用参数
port:
管理定义的网络端口类型
fcontext:
管理定义的文件上下文
-l:
列出所有记录
-a:
添加记录
-m:
修改记录
-d:
删除记录
-t:
添加的类型
-p:
指定添加的端口是tcp或udp协议的,port子命令下使用
-e:
目标路径参考原路径的上下文类型,fcontext子命令下使用
常用命令
# 列出所有端口
[root@localhost ~]# semanage port -l
# 列出指定的端口类型的端口
[root@localhost ~]# semanage port -l|grep -w http_port_t
# 添加新端口8888
[root@localhost ~]# semanage port -a -t http_port_t -p tcp 8888
# 查看新添加的端口
[root@localhost ~]# semanage port -l|grep -w 8888
# 可以使用-C参数查看自定义的端口号
[root@localhost ~]# semanage port -lC
# 添加一个范围的端口
[root@localhost ~]# semanage port -a -t http_port_t -p tcp 10000-19999
# 删除端口
[root@localhost ~]# semanage port -d -t http_port_t -p tcp 8888
[root@localhost ~]# semanage port -d -t http_port_t -p tcp 11180-11188
标签:iptables,操作手册,--,端口,firewalld,tcp,port,localhost
From: https://blog.csdn.net/weixin_43514003/article/details/141472497