这个脚本会接收一个参数,即你想要开放的端口号,然后使用firewalld命令来配置防火墙规则。请确保你的系统中已安装并启用了firewalld服务。
#!/bin/bash# 检查是否提供了端口号作为参数
if [ "$#" -ne 1 ]; thenecho "使用方法: $0 端口号"exit 1
fiPORT=$1# 检查用户是否为root
if [ "$(id -u)" -ne 0 ]; thenecho "请以root用户执行此脚本以开放端口"exit 1
fi# 使用firewall-cmd命令开放指定端口
firewall-cmd --zone=public --add-port=${PORT}/tcp --permanent# 重新加载firewalld规则以应用更改
firewall-cmd --reloadecho "端口 ${PORT} 已成功开放"
使用方法:
将上面的脚本保存到文件中,例如命名为open_port.sh。
给脚本文件赋予执行权限:chmod +x open_port.sh。
执行脚本并传入要开放的端口号作为参数,如:sudo ./open_port.sh 8080。
注意事项:
确保你有足够的权限来修改防火墙规则,通常需要root权限。
在执行脚本之前,请确保firewalld服务正在运行,你可以用systemctl status firewalld命令来检查。
这个脚本将永久开放指定的端口,如果你想临时开放端口,可以在firewall-cmd命令中移除–permanent标志,然后不需要重新加载规则。