shell 永久开放端口号
#!/bin/bash # 检查参数数量 if [ "$#" -ne 1 ]; then echo "Usage: $0 <port_number>" exit 1 fi # 获取端口号 PORT=$1 # 检查端口号是否为数字 if ! [[ "$PORT" =~ ^[0-9]+$ ]]; then echo "Error: Port number must be a positive integer." exit 1 fi # 开放端口 sudo firewall-cmd --zone=public --add-port=$PORT/tcp --permanent # 重新加载防火墙配置 sudo firewall-cmd --reload # 检查端口是否已开放 if sudo firewall-cmd --zone=public --query-port=$PORT/tcp; then echo "Port $PORT has been opened successfully." else echo "Failed to open port $PORT." exit 1 fi
保存上面的脚本到一个文件,例如open_port.sh
,然后给予执行权限:
chmod +x open_port.sh
之后,你可以通过以下方式运行脚本,开放指定的端口:
./open_port.sh 8080
这将永久开放8080端口。请注意,运行此脚本可能需要root权限,因此你可能需要使用sudo
:
sudo ./open_port.sh 8080