防火墙开放某个端口
1.查看防火墙的状态
# firewall-cmd --state
2.如果上一步处于关闭状态,输入命令
# systemctl start firewalld.service
3.开启8080端口,输入命令
# firewall-cmd --zone=public --add-port=8080/tcp --permanent
--zone=public:表示作用域为公共的;
--add-port=8080/tcp:添加tcp协议的端口8080;
--permanent:永久生效,如果没有此参数,则只能维持当前服务生命周期内,重新启动后失效;
4.输入命令重启防火墙
# systemctl restart firewalld.service
5.重新载入配置
# firewall-cmd --reload
查看防火墙都放行了哪些端口
# firewall-cmd --permanent --zone=public --list-ports
3306/tcp 6379/tcp 8080/tcp
关闭防火墙
firewall-cmd --permanent --zone=public --remove-port=8080/tcp
有一个放行端口和关闭端口的shell脚本,使用everything搜索shell之即可找到
shell安装脚本
#!/bin/bash
echo "你输入的内容是:$0 $1 $2"
#查看防火墙状态
#FW_STATE=$(firewall-cmd --state)
# 传入一个参数
if [ $1 != "null" ]
then
#关闭防火墙
FW_STOP=$(systemctl stop firewalld.service)
echo "正在关闭防火墙......$FW_STOP"
FW_START=$(systemctl start firewalld.service)
echo "正在重新启动防火墙.....$FW_START"
FW_CMD=$(firewall-cmd --zone=public --add-port=$1/tcp --permanent)
echo "正在放行 $1 端口......$FW_CMD"
FW_RE=$(systemctl restart firewalld.service)
echo "正在重启防火墙......$FW_RE"
FW_RELOAD=$(firewall-cmd --reload)
echo "正在重新载入配置......$FW_RELOAD"
# 开放的端口号
RELEASE=$(firewall-cmd --permanent --zone=public --list-ports)
echo "放行的端口号有:$RELEASE"
fi
if [ -n "$2" ]
then
#关闭防火墙
FW_STOP=$(systemctl stop firewalld.service)
echo "正在关闭防火墙......$FW_STOP"
FW_START=$(systemctl start firewalld.service)
echo "正在重新启动防火墙.....$FW_START"
FW_CMD=$(firewall-cmd --permanent --zone=public --remove-port=$2/tcp)
echo "正在关闭 $2 端口......$FW_CMD"
FW_RE=$(systemctl restart firewalld.service)
echo "正在重启防火墙......$FW_RE"
FW_RELOAD=$(firewall-cmd --reload)
echo "正在重新载入配置......$FW_RELOAD"
# 开放的端口号
RELEASE=$(firewall-cmd --permanent --zone=public --list-ports)
echo "放行的端口号有:$RELEASE"
fi
安装脚本使用说明
[root@iZbp1brrrx37m2od1ml754Z ~]# sh firewalld-port.sh 8002
你输入的内容是:firewalld-port.sh 8002
正在关闭防火墙......
正在重新启动防火墙.....
正在放行 8002 端口......success
正在重启防火墙......
正在重新载入配置......success
放行的端口号有:8080/tcp 9200/tcp 2181/tcp 3306/tcp 8002/tcp
[root@iZbp1brrrx37m2od1ml754Z ~]# sh firewalld-port.sh null 8002
你输入的内容是:firewalld-port.sh null 8002
正在关闭防火墙......
正在重新启动防火墙.....
正在关闭 8002 端口......success
正在重启防火墙......
正在重新载入配置......success
放行的端口号有:8080/tcp 9200/tcp 2181/tcp 3306/tcp
[root@iZbp1brrrx37m2od1ml754Z ~]#
查看防火墙放行的端口
firewall-cmd --permanent --zone=public --list-ports