#!/bin/bash
# init
function pause(){
echo 'Press any key to continue...';   read -p "$*"
}
clear
    OPTION=$(whiptail --backtitle "Option Menu" \
     --title "FirewallD Menu" \
     --menu "Make a Selection" 20 65 13 \
    "1."  "Firewall Enable........,.. Start firewall on boot" \
    "2."  "Firewall Start........,... Start firewall if stopped" \
    "3."  "Firewall Stop........,.... Stop firewall" \
    "4."  "Firewall Reload........... Reload firewall" \
    "5."  "Firewall Status........... Show open services and ports" \
    "6."  "Firewall State............ Run status" \
    "7."  "Firewall Open RDP......... Open 3389" \
    "8."  "Firewall Open Web Server.. Open http/https" \
    "9."  "Firewall Reset to Default. Close http/https/3389" \
    "10." "Firewall Panic On......... ENABLE PANIC MODE" \
    "11." "Firewall Panic Off........ DISABLE PANIC MODE" \
    "12." "Firewall Panic Status..... Check panic mode status" \
    "0." "Exit" 3>&1 1>&2 2>&3)
case "$OPTION" in
   1.)  systemctl enable firewalld --now
       pause;;
   2.)  systemctl start firewalld
       pause;;
   3.)  systemctl stop firewalld
       pause;;
   4.)  firewall-cmd --reload
      pause;;
   5.)  firewall-cmd --list-all
      pause;;
   6.)  firewall-cmd --state
      pause;;
   7.)  firewall-cmd --add-port=3389/tcp --permanent
        firewall-cmd --reload
      pause;;
   8.)  firewall-cmd --add-service=http --permanent
        firewall-cmd --add-service=https --permanent
        firewall-cmd --reload
      pause;;
   9.)  firewall-cmd --remove-service=http --permanent
        firewall-cmd --remove-service=https --permanent
        firewall-cmd --remove-port=3389/tcp --permanent
        firewall-cmd --reload
      pause;;
   10.) firewall-cmd --panic-on
        firewall-cmd --reload
      pause;;
   11.) firewall-cmd --panic-off 
        firewall-cmd --reload
      pause;;
   12.) firewall-cmd --query-panic 
      pause;;
   0.) exit 0 ;;
  esac
fw
