服务器防火墙firewalld,指定端口开放
为了服务器安全,减少被攻击的可能性,选择开启防火墙,如果需要用到指定的端口,那么就专门给这个端口开启通道
1 firewalld开启
开启防火墙:systemctl start firewalld
关闭防火墙:systemctl stop firewalld
防火墙状态:systemctl status firewalld
防火墙开机自启:systemctl enable firewalld
禁用防火墙:systemctl disable firewalld
2 端口开放
防火墙开启后,所以端口都是禁止访问的,所以需要根据需求开启指定的端口
## 查看开放的端口,这里是没有的
root@zxy_slave1 sysconfig]# firewall-cmd --zone=public --list-ports
## 添加你需要开放的端口XXXX
[root@zxy_slave1 sysconfig]# firewall-cmd --zone=public --add-port=XXXX/tcp --permanent
success
## 添加成功后从加载
[root@zxy_slave1 sysconfig]# firewall-cmd --reload
success
## 再次查看开放的端口,已经开启成功,测试后通过远程也可以使用,已正常
[root@zxy_slave1 sysconfig]# firewall-cmd --zone=public --list-ports
XXXX/tcp
3.脚本
添加和删除端口,主要是通过传参,使用$取到执行脚本中的参数,进而传给执行脚本
使用脚本的目的主要是为了方便自己在每次使用的时候比较方便,直接sh执行脚本即可
3.1 添加端口脚本[sh add-firewalld-port.sh port]
#!/bin/bash
# filename:add-firewalld-port.sh
# autho:zxy
# date:2022-05-17
# desc:add port
CMD=$1
firewall-cmd --zone=public --add-port=${CMD}/tcp --permanent
3.2 重载端口脚本[sh reload-firewalld-port.sh]
#!/bin/bash
# filename:reload-firewalld-port.sh
# autho:zxy
# date:2022-05-17
# desc:reload port
firewall-cmd --reload
3.3 列举端口脚本[sh list-firewalld-port.sh]
#!/bin/bash
# filename:list-firewalld-port.sh
# autho:zxy
# date:2022-05-17
# desc:list port
firewall-cmd --zone=public --list-ports
3.4 移除端口脚本[sh remove-firewalld-port.sh port]
#!/bin/bash
# filename:remove-firewalld-port.sh
# autho:zxy
# date:2022-05-17
# desc:remove port
CMD=$1
firewall-cmd --zone=public --remove-port=${CMD}/tcp --permanent