mirror of
https://github.com/bigbeartechworld/big-bear-scripts.git
synced 2026-04-05 09:04:07 -04:00
This commit refactors all the shell scripts to use `#!/usr/bin/env bash` instead of `#!/bin/bash`. This change ensures that the scripts will run with the system's default Bash interpreter, even if it is not located at the standard `/bin/bash` path.
48 lines
1.6 KiB
Bash
48 lines
1.6 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
# Path to the configuration file
|
|
CONFIG_FILE="/etc/casaos/gateway.ini"
|
|
|
|
# Check if the configuration file exists
|
|
if [[ -f $CONFIG_FILE ]]; then
|
|
# Use grep to find the line with 'port' and use awk to print the value
|
|
PORT=$(grep '^port=' $CONFIG_FILE | awk -F'=' '{print $2}')
|
|
# Get the local IP address
|
|
IP_ADDR=$(hostname -I | awk '{print $1}')
|
|
echo "The local IP address is: $IP_ADDR"
|
|
echo "The port number is: $PORT"
|
|
echo "You can access it in the browser at: http://$IP_ADDR:$PORT"
|
|
|
|
# Check if UFW is active
|
|
UFW_ACTIVE=$(sudo ufw status | grep "Status: active")
|
|
|
|
if [[ ! -z $UFW_ACTIVE ]]; then
|
|
# If UFW is active, check if the port is listed in the UFW status
|
|
UFW_PORT_STATUS=$(sudo ufw status | grep "$PORT")
|
|
|
|
# If port is not listed or if it's listed as DENY, it's considered blocked
|
|
if [[ -z $UFW_PORT_STATUS || $UFW_PORT_STATUS == *DENY* ]]; then
|
|
echo "The port $PORT is blocked by UFW."
|
|
|
|
# Ask the user if they want to unblock the port
|
|
read -p "Do you want to unblock port $PORT in UFW? (yes/no): " choice
|
|
case "$choice" in
|
|
yes|y|Y|YES)
|
|
sudo ufw allow $PORT
|
|
echo "Port $PORT has been unblocked in UFW."
|
|
;;
|
|
*)
|
|
echo "Port remains blocked."
|
|
;;
|
|
esac
|
|
else
|
|
echo "The port $PORT is not blocked by UFW."
|
|
fi
|
|
else
|
|
echo "UFW is not active."
|
|
fi
|
|
|
|
else
|
|
echo "Error: Configuration file not found."
|
|
fi
|