adguardhome
Run AdGuard Home DNS server
TLDR
Run AdGuard Home
Specify a configuration file
Store the data in a specific work directory
Install or uninstall AdGuard Home as a service
Start the AdGuard Home service
Reload the configuration for the AdGuard Home service
Stop or restart the AdGuard Home service
SYNOPSIS
adguardhome [options] [command]
Common usage examples:
adguardhome --help
adguardhome --version
adguardhome --config /etc/adguardhome.yaml
adguardhome --service install
PARAMETERS
--help
Displays the help message and exits.
--version
Shows the AdGuard Home version and exits.
--config
Specifies the path to the YAML configuration file. Defaults to AdGuardHome.yaml in the working directory.
--work-dir
Sets the working directory where data (logs, statistics, filter lists) is stored. Defaults to the directory where the executable is located.
--service
Manages AdGuard Home as a system service. Actions include install, uninstall, start, stop, restart, and status.
DESCRIPTION
AdGuard Home is a network-wide software for blocking ads, tracking, and malware. It acts as a DNS server that reroutes DNS queries, filtering out unwanted domains. Unlike browser extensions, it protects all devices connected to your network without needing client-side software. This includes desktops, mobile phones, smart TVs, and IoT devices. It supports a wide range of DNS protocols such as DNS-over-HTTPS (DoH), DNS-over-TLS (DoT), DNS-over-QUIC (DoQ), and DNSCrypt, enhancing privacy and security. Users can customize blocking lists, implement parental controls, view detailed query logs, and set up custom filtering rules through its intuitive web interface. It is an open-source, powerful, and easy-to-deploy solution for improving network security and user experience.
CAVEATS
Requires a dedicated network port (typically 53 for DNS, 80/443 for web interface) which should not be used by other services.
Misconfiguration can lead to network connectivity issues or unexpected blocking of legitimate content.
Performance depends on the host machine's resources and the number of active filters.
Relies on DNS blocking, which cannot block ads embedded directly within content or within non-DNS communication.
WEB INTERFACE (GUI)
AdGuard Home provides a comprehensive web-based user interface (GUI) typically accessible on port 80 or 3000 (configurable). This GUI allows for easy configuration of DNS settings, filter lists, parental controls, viewing query logs and statistics, and managing various AdGuard Home features without direct command-line interaction after initial setup.
CONFIGURATION FILE
The primary configuration of AdGuard Home is managed through a YAML file (e.g., AdGuardHome.yaml). This file defines listening interfaces, DNS server settings, upstream DNS servers, security settings, and paths to various data files, allowing for fine-grained control over its operation.
DNS PROTOCOLS SUPPORT
A key feature of AdGuard Home is its extensive support for modern encrypted DNS protocols, including DNS-over-HTTPS (DoH), DNS-over-TLS (DoT), DNS-over-QUIC (DoQ), and DNSCrypt. This allows it to communicate securely with upstream DNS servers, protecting privacy and preventing DNS manipulation.
HISTORY
AdGuard Home is an open-source project developed by AdGuard Software Ltd. It was created to provide a robust, self-hosted, and network-wide ad-blocking solution, initially as an alternative to existing tools like Pi-hole, focusing on ease of use, a powerful web interface, and broader support for modern DNS protocols. Its development is active, with continuous updates and improvements driven by community feedback and AdGuard's expertise in ad-blocking technologies.
SEE ALSO
dnsmasq(8), unbound(8), hosts(5)