Skip to content

AdGuard Home on a VPS

DNS ad blocker

Category
Dev / Tools
Author
AdGuard Software
License
GPL-3.0
Version
0.107.79

The script is free · VPS from $2.79 per month · installs in about 60 seconds

Install over SSH

root@vps:~# curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v

  • SystemUbuntu 24.04 · x86_64ok
  • Sourcegithub.com/AdguardTeam/AdGuardHomeok
  • Version0.107.79ok
  • Port3000/tcplisten
  • Port53/tcp/udplisten
  • Port80/tcplisten

✓ AdGuard Home 0.107.79 installed · about 60 seconds

root@vps:~#

Install command from the library. Output is shortened and may differ on your server.

What it is

  • DNS
  • Ad blocking
  • DoH
  • Privacy

AdGuard Home is your own DNS server that blocks ads, trackers and malicious domains for every device at once, with no browser extensions.

On a VPS it pairs especially well with a VPN: set it as the DNS in WireGuard or Amnezia and every client gets ad blocking. Encrypted DNS-over-HTTPS, DNS-over-TLS and DNS-over-QUIC are supported.

The web interface shows which domains your devices request, and filter lists and per-client rules take just a couple of clicks to set up.

  • DNS-level ad and tracker blocking
  • DNS-over-HTTPS, DNS-over-TLS and DNS-over-QUIC
  • Query log and statistics
  • Parental control and safe search
  • Custom rules and per-client settings

Recommended plan

For AdGuard Home: at least 1 vCPU, 2 GB RAM and 10 GB NVMe.

Minimum to run
1 vCPU · 1 GB RAM · 10 GB disk
Systems
Ubuntu 22.04 · Ubuntu 24.04 · Debian 11 · Debian 12 · AlmaLinux 9

How to install

Three steps in the bot or one command over SSH; installation takes about 60 seconds.

  1. 01

    Choose a plan in the bot

    Open @ExpressHost_bot and pay for a VPS. The server will be ready in about 60 seconds.

  2. 02

    Add AdGuard Home

    At the “Add-ons” step pick the script from the library, or run it later: Server settings → Scripts.

  3. 03

    Open http://server-IP:3000 and complete the wizard: interface and DNS ports, admin login

    The bot will send the server address and login details to the chat.

Manually over SSH

Connect to the server as root and run the command. Supported systems: Ubuntu 22.04, Ubuntu 24.04, Debian 11, Debian 12, AlmaLinux 9.

Install command
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v

Ports

AdGuard Home ports
PortProtocolPurpose
3000tcpInitial setup wizard
53tcp/udpDNS server
80tcpWeb interface after setup (port chosen in the wizard)
853tcpDNS-over-TLS (if enabled)

After installation

  1. 1.Open http://server-IP:3000 and complete the wizard: interface and DNS ports, admin login
  2. 2.On Ubuntu, port 53 is taken by systemd-resolved: disable DNSStubListener in /etc/systemd/resolved.conf and run systemctl restart systemd-resolved
  3. 3.Don't leave DNS open to everyone: allow only your own IPs under "DNS settings" or use it inside a VPN
  4. 4.Set the server IP as the DNS in your VPN clients' settings

AdGuard Home FAQ

Didn’t find an answer? Message @ExpressHost_SupportBot.

Can I use it together with a VPN?

Yes, it's a common setup: AdGuard Home runs on the same server, and WireGuard or Amnezia configs point to its address as the DNS.

How do I update AdGuard Home?

Use the update button in the web interface, or re-run the install script with the -r flag.

Where are the settings stored?

In /opt/AdGuardHome: the AdGuardHome.yaml config and the data folder with statistics and the query log.

AdGuard Home installs at checkout — in the bot.