#!/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