Skip to content

Instantly share code, notes, and snippets.

@ShanuDey
Last active June 8, 2024 11:12
Show Gist options
  • Save ShanuDey/979cd1acba041d1db9f905dbac231de2 to your computer and use it in GitHub Desktop.
Save ShanuDey/979cd1acba041d1db9f905dbac231de2 to your computer and use it in GitHub Desktop.
Enable Encryption (HTTPS, DNS-over-HTTPS, and DNS-over-TLS) in AdGuard Home

Official Methods:

My Installation:

Requirements:

  • A registered domain
  • DNS Management admin portal access like I am using Cloudflare to manage DNS settings for the purchased domain.

Installation:

  • Install Certbot and it’s Nginx plugin with apt:

    sudo apt install certbot
    
    • Note: snapd is not required
  • Generate certificate using the following command:

    sudo certbot certonly --manual --preferred-challenges=dns --preferred-chain="ISRG Root X1"
    
  • Follow the instructions

    • Provide the domain name which you registered. I have created a subdomain for managing DNS.
    • Add the TXT records in the DNS management admin portal for verification.
  • Two files fullchain.pem and privkey.pem will generated. Pleas note the paths for these two files.

  • Navigate to the AdGuard Home Web UI -> Settings -> Encryption Settings

    • Check the Enable Encryption (HTTPS, DNS-over-HTTPS, and DNS-over-TLS) to enable the below settings
    • provide the server name
    • mention the certificate and private key paths which are generated by the certbot
    • Done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment