Enabling SSL for Pi Hole Admin Interface lighttpd UPDATED

Channel:
Subscribers:
14,500
Published on ● Video Link: https://www.youtube.com/watch?v=yUdmBGe9wYA



Category:
Vlog
Duration: 6:58
4,290 views
23


#Pi-Hole #SSL #lighttpd

Full steps can be found at https://i12bretro.github.io/tutorials/0131.html

--------------------------------------------------------------------
Prerequisites
--------------------------------------------------------------------
   - A XCA PKI database  https://youtu.be/ezzj3x207lQ
 
--------------------------------------------------------------------
Create Your SSL Certificate
--------------------------------------------------------------------
   01. Launch XCA
   02. Open the PKI database if it is not already (File ≫ Open DataBase), enter password
   03. Click on the Certificates tab, right click on your Intermediate CA certificate
   04. Select New
   05. On the Source tab, make sure Use this Certificate for signing is selected
   06. Verify your Intermediate CA certificate is selected from the drop down
   07. Click the Subject tab
   08. Complete the Distinguished Name section
         internalName: Pi-Hole SSL
         countryName: US
         stateOrProvinceName: Virginia
         localityName: Northern
         organizationName: i12bretro
         organizationUnitName: i12bretro Certificate Authority
         commonName: pihole.i12bretro.local
   09. Click the Generate a New Key button
   10. Enter a name and set the key size to at least 2048
   11. Click Create
   12. Click on the Extensions tab
   13. Select End Entity from the type list
   14. Click Edit next to Subject Alternative Name
   15. Add any DNS or IP addresses that the certificate will identify
   16. Update the validity dates to fit your needs
   17. Click the Key Usage tab
   18. Under Key Usage select Digital Signature, Key Encipherment
   19. Under Extended Key Usage select Web Server and Web Client Authentication
   20. Click the Netscape tab
   21. Select SSL Server
   22. Click OK to create the certificate
 
--------------------------------------------------------------------
Exporting Required Files
--------------------------------------------------------------------
   01. In XCA, click on the Certificates tab
   02. Right click the Intermediate CA certificate ≫ Export ≫ File
   03. Set the file name with a .pem extension and verify the export format is PEM chain (*.pem)
   04. Click OK
   05. Right click the SSL certificate ≫ Export ≫ File
   06. Set the file name with a .pem extension and verify the export format is PEM + Key (*.pem)
   07. Click OK
 
--------------------------------------------------------------------
Applying the Certificates
--------------------------------------------------------------------
   01. If not already installed, Install xrdp to simplify administration by running the following command
         sudo apt-get install xrdp
   02. Connect to the Raspberry Pi via Remote Desktop Client
   03. Copy the certificates exported above to the Pi
   04. Copy the certificates exported above to /etc/lighttpd
         cp ~/Downloads/PiHole.pem /etc/lighttpd
         cp ~/Downloads/ca-chain.pem /etc/lighttpd
   05. Edit lighttpd.conf
         mousepad
   06. File ≫ Open /etc/lighttpd/conf-available/10-ssl.conf
   07. Add/edit the following lines:
         ssl.engine = "enable"
         ssl.pemfile = "/etc/lighttpd/PiHole.pem"
         ssl.ca-file = "/etc/lighttpd/ca-chain.pem"
   08. Optionally, to redirect all http traffic to https, add the following to the end of the file:
         $HTTP["scheme"] == "http" {
         url.redirect = ("" =≫ "https://${url.authority}${url.path}${qsa}")
         }
   09. File ≫ Save ≫ ~/Downloads/10-ssl.conf
   10. In terminal, paste the following commands
         sudo cp ~/Downloads/10-ssl.conf /etc/lighttpd/conf-available/
         sudo ln -s /etc/lighttpd/conf-available/10-ssl.conf /etc/lighttpd/conf-enabled/10-ssl.conf
         sudo service lighttpd restart
   11. Open a web browser and navigate to PiHole via https://
 


### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro







Tags:
Ad Blocker
Ad Blocking
Browser Based
Certificate
DNS
DNS Ad Blocking
FOSS
Free Software
HTTPS
Home Lab
Home Lab Ideas
How To
LigHTTPd
Network Wide Ad Blocking
Open Source
PKI
Pi-Hole
PiHole
Raspberry Pi OS
Raspbian
SSL
System Administration
Tutorial
Web Administration
Web Based Tools
Web Server Administration
i12bretro