13

How do I change pi hole's URL?

It's currently 10.0.0.20/admin.

I want to use the /admin path for something else but couldn't find a way to change Pi-Hole's path to something else.

Michael Yochpaz
  • 133
  • 1
  • 1
  • 7

5 Answers5

16

There are many ways that you could do this, but the easiest is to change the port that pi-hole is using.

Edit /etc/lighttpd/lighttpd.conf and change the line that says server.port = 80 to use some other port number such as 8080. Then restart LigHTTPD using sudo service lighttpd restart, and you will be able to access the pi-hole administrative interface at http://10.0.0.20:8080/admin.

Note that if you ever re-run the pi-hole installer, it will reset this value back to the original port 80.

Shubhzgang
  • 103
  • 3
Moshe Katz
  • 582
  • 6
  • 17
11

This is another way to change its port and the benefit is that it won't get reset any time you reconfigure pi-hole or update it.

Add server.port := 8000 or your desired port to /etc/lighttpd/external.conf then restart. Then restart lighttpd using sudo systemctl restart lighttpd, and you will be able to access the pi-hole administrative interface at http://localhost:8000/admin.

Bananz0
  • 111
  • 1
  • 4
1

For whatever reason putting the server.port in external.conf results in an error on restart. Changing it in lighttpd.conf works fine.

To get rid of the /admin in the URL one could create a link in the /html folder. ln admin pi-hole -s

Together with the port change it could look like this http://op:88/pi-hole/ (well the /admin path would still be there, it would just be for cosmetics)

oppiman
  • 11
  • 1
1

It's kinda sad there isn't a more straight forward answer to this. I'd like to do the same as the OP but changing ports negates the point for my use case. The issue is the URL being a common exploit attempt. I know this is a pi-hole feature request rather than a pi related issue...but you should be able to denote your admin URL so you can put a device on the front line and at least remove the obvious things scripts and worms look for.

Basically:

sudo mv /var/www/html/admin /var/www/html/r4nd0N4m3

Then

sudo vi /etc/lighttpd/lighttpd.conf (find and replace admin with r4nd0N4m3.)

Restart the service and maybe your browser if it's caching. Repeat on updates or anything that overwrites the changes...

MatsK
  • 2,882
  • 3
  • 17
  • 22
g0Brrrr
  • 11
  • 2
0

OK.. I just did this... by changing the admin page from /myip/admin to /myip/anything

It's not as straight forward, since the "admin" path are hardcoded. You need change the admin path as well as modify Pi-hole's scripts to make it work.

I am using Ubuntu 20.04 with Apache2 server. However, I believe most server are similar.

  1. Change webpage location:

    sudo mv /www/html/admin /www/html/anything

  2. restart apache2 server

    sudo service apache2 restart

  3. Go to pi-hole script directory

    cd /opt/pihole

  4. Modify any instance of /www/html/admin into /www/html/anything I found following files contains this string:

  uninstall.sh
  updatecheck.sh
  update.sh
  webpage.sh

Just cat *.sh | grep html/admin to find any remaining instance

  1. Profit!