diff --git a/advanced/Scripts/webpage.sh b/advanced/Scripts/webpage.sh
new file mode 100755
index 00000000..bcb45a14
--- /dev/null
+++ b/advanced/Scripts/webpage.sh
@@ -0,0 +1,74 @@
+#!/usr/bin/env bash
+# Pi-hole: A black hole for Internet advertisements
+# Network-wide ad blocking via your Raspberry Pi
+# http://pi-hole.net
+# Web interface settings
+#
+# Pi-hole is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+
+args=("$@")
+
+helpFunc() {
+	cat << EOM
+::: Set admin options for the web interface of pihole
+:::
+::: Usage: pihole -a [options]
+:::
+::: Options:
+:::  -p, password		Set web interface password, an empty input will remove any previously set password
+:::  -c, celsius		Set Celcius temperature unit
+:::  -f, fahrenheit		Set Fahrenheit temperature unit
+:::  -h, --help			Show this help dialog
+EOM
+	exit 1
+}
+
+SetTemperatureUnit(){
+
+	# Remove setting from file (create backup setupVars.conf.bak)
+	sed -i.bak '/TEMPERATUREUNIT/d' /etc/pihole/setupVars.conf
+	# Save setting to file
+	if [[ $unit == "F" ]] ; then
+		echo "TEMPERATUREUNIT=F" >> /etc/pihole/setupVars.conf
+	else
+		echo "TEMPERATUREUNIT=C" >> /etc/pihole/setupVars.conf
+	fi
+
+}
+
+SetWebPassword(){
+
+	# Remove password from file (create backup setupVars.conf.bak)
+	sed -i.bak '/WEBPASSWORD/d' /etc/pihole/setupVars.conf
+	# Set password only if there is one to be set
+	if (( ${#args[2]} > 0 )) ; then
+		# Compute password hash twice to avoid rainbow table vulnerability
+		hash=$(echo -n ${args[2]} | sha256sum | sed 's/\s.*$//')
+		hash=$(echo -n ${hash} | sha256sum | sed 's/\s.*$//')
+		# Save hash to file
+		echo "WEBPASSWORD=${hash}" >> /etc/pihole/setupVars.conf
+		echo "New password set"
+	else
+		echo "Password removed"
+	fi
+
+}
+
+for var in "$@"; do
+	case "${var}" in
+		"-p" | "password"   ) SetWebPassword;;
+		"-c" | "celsius"    ) unit="C"; SetTemperatureUnit;;
+		"-f" | "fahrenheit" ) unit="F"; SetTemperatureUnit;;
+		"-h" | "--help"     ) helpFunc;;
+	esac
+done
+
+shift
+
+if [[ $# = 0 ]]; then
+	helpFunc
+fi
+
diff --git a/pihole b/pihole
index 83046675..530dac8d 100755
--- a/pihole
+++ b/pihole
@@ -22,6 +22,11 @@ if [[ ! $EUID -eq 0 ]];then
   fi
 fi
 
+webpageFunc() {
+  /opt/pihole/webpage.sh "$@"
+  exit 0
+}
+
 whitelistFunc() {
  "${PI_HOLE_SCRIPT_DIR}"/list.sh "$@"
   exit 0
@@ -180,7 +185,7 @@ helpFunc() {
 ::: Control all PiHole specific functions!
 :::
 ::: Usage: pihole [options]
-:::		Add -h after -w (whitelist), -b (blacklist), or -c (chronometer)  for more information on usage
+:::		Add -h after -w (whitelist), -b (blacklist), -c (chronometer), or -a (admin)  for more information on usage
 :::
 ::: Options:
 :::  -w, whitelist            Whitelist domains
@@ -195,6 +200,7 @@ helpFunc() {
 :::  -v, version              Show current versions
 :::  -q, query                Query the adlists for a specific domain
 :::  -l, logging              Enable or Disable logging (pass 'on' or 'off')
+:::  -a, admin                Admin webpage options
 :::  uninstall                Uninstall Pi-Hole from your system :(!
 :::  status                   Is Pi-Hole Enabled or Disabled
 :::  enable                   Enable Pi-Hole DNS Blocking
@@ -228,5 +234,6 @@ case "${1}" in
   "disable"                     ) piholeEnable 0;;
   "status"                      ) piholeStatus "$2";;
   "restartdns"                  ) restartDNS;;
+  "-a" | "admin"                ) webpageFunc "$@";;
   *                             ) helpFunc;;
 esac