# Как установить AdGuard на Ubuntu 24.04 Дата публикации: 2025-10-20T11:28:21 Теги: ["ubuntu", "Adguard"] => /index.gmi ⏪ Вернуться домой => /gemlog.gmi ⏪ В Gemlog Существуют различные способы блокировки интернет-рекламы (рекламы). Одним из самых популярных является использование расширения браузера. Но что происходит, когда вы хотите использовать рекламу, которая работает в других приложениях или даже в мобильных играх? В таком случае нужно блокировать объявления из их источника, то есть непосредственно в сети. Именно здесь появляется AdGuard. С помощью AdGuard вы можете блокировать все или большинство объявлений, заставляя AdGuard действовать в качестве посредника (сервера DNS), который фильтрует контент между вашей сетью и Интернетом. В этой статье вы установите и настроите AdGuard Home на Ubuntu 24.04, включите шифрование TLS с автоматическим обновлением и настройте пользовательские настройки DNS. ## Предпосылки * Сервер с Ubuntu 24.04 в качестве ОС * Права пользователя: пользователь root или обычный пользователь с привилегиями sudo. ## Конвенции ``` # - данные команды должны выполняться с правами root либо непосредственно от имени пользователя root, либо с помощью команды sudo. $ - данные команды должны выполняться от имени обычного пользователя. ``` ## Шаг 1. Обновите систему Свежая установка Ubuntu 24.04 требует обновления пакетов до последних доступных версий. ``` $ sudo apt update -y && sudo apt upgrade -y ``` Система может нуждаться в перезагрузке после обновления. ``` $ sudo reboot -f ``` ## Шаг 2. Свободный порт 53 от systemd-resolved Ubuntu 24.04 использует `systemd-resolved` для локального кэширования DNS и разрешения, которое связывается с портом `53` по умолчанию. Страж для домашнего использования требуется порт DNS. Выполните следующие действия, чтобы перенастроить `systemd-resolved` и свободный порт `53`. Создайте каталог для хранения нового файла конфигурации. ``` $ sudo mkdir -p /etc/systemd/resolved.conf.d ``` Создание и редактирование нового файла конфигурирования. ``` $ sudo nano /etc/systemd/resolved.conf.d/adguardhome.conf ``` Создание нового файла конфигурации вместо редактирования существующего гарантирует, что изменения не будут перезаписаны во время обновления системы. Добавьте в файл следующее содержимое. ``` [Resolve] DNS=127.0.0.1 DNSStubListener=no ``` Сохраните и закройте файл. Далее сохраните существующий файл `resolv.conf`. ``` $ sudo mv /etc/resolv.conf /etc/resolv.conf.backup ``` Создайте новый симлинк. ``` $ sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf ``` Перезапуск `systemd-resolved` для применения изменений. ``` $ sudo systemctl restart systemd-resolved ``` Проверить порт 53 можно бесплатно. ``` $ sudo lsof -i :53 ``` ## Шаг 3. Настройка правил Firewall Настройте UFW для подключения к требуемым портам AdGuard Home перед установкой и настройкой. ``` $ sudo ufw allow 53 $ sudo ufw allow 853 $ sudo ufw allow 3000/tcp $ sudo ufw allow 80/tcp $ sudo ufw allow 443/tcp $ sudo ufw reload ``` ## Шаг 4. Установите AdGuard Home Следуйте шагам ниже, чтобы установить AdGuard Home с помощью официального скрипта установки. ``` $ curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v ``` Создание каталогов для сертификатов и сценариев. ``` $ sudo mkdir -p /opt/AdGuardHome/{certs,scripts} ``` Проверьте статус сервиса AdGuard Home. ``` $ sudo /opt/AdGuardHome/AdGuardHome -s status ``` Выход должен включать строку, указывающую, что услуга работает. ## Шаг 5. Установите SSL-сертификат Мы установим бесплатный SSL-сертификат от Let’s Encrypt с помощью certbot. Certbot - это инструмент ACME для создания SSL-сертификатов, предоставляемых Let’s Encrypt. Прежде чем создать новый SSL-сертификат для вашего `adguard.example.com`, убедитесь, что вы уже указали запись DNS домена/субдомена на ваш IP-адрес сервера. ``` $ sudo apt install certbot python3-certbot-nginx -y ``` После установки вы можете запустить эту команду для выдачи SSL-сертификата. ``` $ sudo certbot ``` Вам будет предложено несколько вопросов, и вы увидите такой выход: ``` Saving debug log to /var/log/letsencrypt/letsencrypt.log Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): you@example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.5-February-24-2025.pdf. You must agree in order to register with the ACME server. Do you agree? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing, once your first certificate is successfully issued, to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: n Account registered. Which names would you like to activate HTTPS for? We recommend selecting either all domains, or all domains in a VirtualHost/server block. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: adguard.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate numbers separated by commas and/or spaces, or leave input blank to select all options shown (Enter 'c' to cancel): 1 Requesting a certificate for adguard.example.com Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/adguard.example.com/fullchain.pem Key is saved at: /etc/letsencrypt/live/adguard.example.com/privkey.pem This certificate expires on 2025-10-20. These files will be updated when the certificate renews. Certbot has set up a scheduled task to automatically renew this certificate in the background. Deploying certificate Successfully deployed certificate for adguard.example.com to /etc/nginx/conf.d/adguard.example.com.conf Congratulations! You have successfully enabled HTTPS on https://adguard.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - If you like Certbot, please consider supporting our work by: * Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate * Donating to EFF: https://eff.org/donate-le - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ``` Если есть проблема при создании SSL-сертификата или Certbot не может генерировать сертификат, вполне вероятно, что обновление DNS не полностью распространяется. Создайте сценарий копии сертификата на основе вашего метода установки. ``` $ sudo nano /opt/AdGuardHome/scripts/copy-certs.sh ``` Добавьте содержимое сертификата копии сценария. Замените `adguard.example.com` своим фактическим доменом. ``` #!/bin/bash DOMAIN="adguard.example.com" CERT_DIR="/opt/AdGuardHome/certs" cp /etc/letsencrypt/live/$DOMAIN/fullchain.pem $CERT_DIR/cert.pem cp /etc/letsencrypt/live/$DOMAIN/privkey.pem $CERT_DIR/key.pem chmod 644 $CERT_DIR/cert.pem chmod 600 $CERT_DIR/key.pem /opt/AdGuardHome/AdGuardHome -s restart ``` Сделайте сценарий исполняемым и запустите его. ``` $ sudo chmod +x /opt/AdGuardHome/scripts/copy-certs.sh $ sudo /opt/AdGuardHome/scripts/copy-certs.sh ``` Проверьте сертификаты. ``` $ sudo ls -la /opt/AdGuardHome/certs/ ``` Вы должны увидеть `cert.pem` и `key.pem`. Файлы с правильными разрешениями. ## Шаг 6. Настройка автоматического обновления сертификата Срок действия сертификатов шифрования истекает каждые 90 дней. В этом разделе настройте автоматическое обновление сертификатов TLS. Создайте сценарий обновления Certbot. ``` $ sudo nano /etc/letsencrypt/renewal-hooks/deploy/adguard-renewal.sh ``` Добавьте в файл следующее содержимое. ``` #!/bin/bash /opt/AdGuardHome/scripts/copy-certs.sh ``` Сохраните и закройте файл. Сделайте сценарий исполняемым. ``` $ sudo chmod +x /etc/letsencrypt/renewal-hooks/deploy/adguard-renewal.sh ``` Чтобы справиться с конфликтами порта 80 во время обновления (поскольку AdGuard Home связывается с портом 80 после установки), создайте сценарии остановки и запуска, а затем добавьте предварительные и пост-обманки в конфигурацию обновления Certbot. Это временно останавливает AdGuard Home перед попыткой обновления и начинает ее после. Создайте стоп-сценарий. ``` $ sudo nano /opt/AdGuardHome/scripts/stop-adguard.sh ``` Добавьте в файл следующее содержимое. ``` #!/bin/bash /opt/AdGuardHome/AdGuardHome -s stop > /dev/null 2>&1 ``` Создайте стартовый сценарий. ``` $ sudo nano /opt/AdGuardHome/scripts/start-adguard.sh ``` Добавьте в файл следующее содержимое. ``` #!/bin/bash /opt/AdGuardHome/AdGuardHome -s start > /dev/null 2>&1 ``` Сделайте их исполняемыми. ``` $ sudo chmod +x /opt/AdGuardHome/scripts/{stop-adguard.sh,start-adguard.sh} ``` Отредактируйте конфигурацию обновления Certbot, чтобы добавить хуки. Замените `adguard.example.com` своим доменом. ``` $ sudo nano /etc/letsencrypt/renewal/adguard.example.com.conf ``` Добавить или обновить в разделе `[renewalparams]`: ``` pre_hook = /opt/AdGuardHome/scripts/stop-adguard.sh post_hook = /opt/AdGuardHome/scripts/start-adguard.sh ``` Сохраните и закройте файл. Проверьте процесс автоматического обновления. ``` $ sudo certbot renew --dry-run ``` Результат: ``` ... Congratulations, all simulated renewals succeeded ... ``` ## Шаг 7. Настройка начальной настройки AdGuard Home Доступ к веб-интерфейсу AdGuard Home для завершения начальной конфигурации. Откройте свой веб-браузер и перейдите к интерфейсу настройки. ``` http://YOUR_SERVER_IP:3000 ``` Нажмите Get Started на странице приветствия. AdGuard Home Setup Добро пожаловать Настройка веб-интерфейса Admin: Listen Interface: Выберите Все интерфейсы Порт: `80` Настройка DNS-сервера: Listen Interface: Выберите Все интерфейсы Порт: `53` Нажмите Далее и создайте учетную запись администратора с именем пользователя и надежным паролем. Нажмите Далее. Вы попадете на страницу Настройка устройств, где вы увидите настройки конфигурации для различных типов устройств. Нажмите Далее. Нажмите Open Dashboard для доступа к основному интерфейсу. Удалите порт `3000` из межсетевого экрана после завершения начальной конфигурации. ``` $ sudo ufw delete allow 3000/tcp $ sudo ufw reload ``` ## Шаг 8. Настройка TLS Шифрование Настройка доступа HTTPS с использованием сертификатов TLS для безопасного доступа к панели инструментов. Доступ к панели инструментов AdGuard Home и вход в панель инструментов с учетными данными, которые вы установили ранее. ``` http://YOUR_SERVER_IP ``` => pic/how-to-install-adguard-on-ubuntu-24-04/1.png изображение Нажмите кнопку «Настройки» в верхнем меню навигации и нажмите «Настройки шифрования». => pic/how-to-install-adguard-on-ubuntu-24-04/2.png изображение настройка_меню Настройте следующие настройки шифрования: Включите шифрование: Проверьте, чтобы включить. Имя сервера: Введите свое доменное имя. Перенаправить на HTTPS автоматически: Включить. Порт HTTPS: `443` Порт DNS-over-HTTPS: `443` DNS-over-TLS порт: `853` DNS-over-QUIC порт: `853` => pic/how-to-install-adguard-on-ubuntu-24-04/3.png изображение Настройка траекторий сертификатов: Выбрать Установите опцию пути файла сертификата. Путь сертификатов: `/opt/AdGuardHome/certs/cert.pem` Путь закрытого ключа: `/opt/AdGuardHome/certs/key.pem` Нажмите сохранить, чтобы применить настройки шифрования. После включения шифрования, доступ к AdGuard Home с помощью `https://adguard.example.com`. ## Шаг 9. Настройка DNS Настройки конфиденциальности AdGuard Home поддерживает зашифрованные DNS-протоколы. Настройте вышестоящие DNS-серверы, которые поддерживают DNS-over-HTTPS (DoH) или DNS-over-TLS (DoT) для повышения конфиденциальности. Нажмите кнопку «Настройки» в верхнем меню навигации и нажмите «Настройки DNS». В поле Upstream DNS-серверов добавьте зашифрованные DNS-провайдеры по вашему выбору, такие как: ``` https://dns.cloudflare.com/dns-query https://dns.google/dns-query https://dns.quad9.net/dns-query tls://1.1.1.1 tls://8.8.8.8 ``` Эти вышестоящие серверы используют шифрование HTTPS или TLS для защиты DNS-запросов между AdGuard Home и вышестоящими провайдерами. Настройка DNS-серверов Fallback для резервирования. Эти серверы используются, когда зашифрованные вышестоящие серверы недоступны. Добавьте DNS-серверы по вашему выбору ``` 1.1.1.1 8.8.8.8 9.9.9.9 ``` > Резервные серверы обычно используют стандартный незашифрованный DNS (порт 53), потому что они служат в качестве аварийного резервного копирования при отказе зашифрованных соединений. Во время нормальной работы AdGuard Home использует только зашифрованные серверы. Включите следующие функции DNS: Параллельные запросы: Возможность одновременного запроса нескольких серверов для более быстрых ответов Включение DNSSEC: проверка DNS-ответов на подлинность Включите подсеть клиента EDNS: Улучшение производительности CDN Отключить IPv6: Включить только в том случае, если ваша сеть не поддерживает IPv6. Нажмите сохранить, чтобы применить конфигурацию DNS. ## Шаг 10. Настройка Blocklist AdGuard имеет встроенный DNS-фильтр, но вы можете расширить его возможности, добавив дополнительные блок-списки. Эти общедоступные списки содержат десятки тысяч известных доменов рекламы, трекера, вредоносных программ и телеметрии. Из верхнего меню навигации нажмите Фильтры и выберите блок-списки DNS. => pic/how-to-install-adguard-on-ubuntu-24-04/4.png изображение Щелкнуть Добавьте блок-лист и нажмите Выберите из списка. Выберите опции на изображении ниже, затем нажмите Сохранить. => pic/how-to-install-adguard-on-ubuntu-24-04/5.png изображение Добавить в блок-лист. Просмотрите интернет некоторое время, а затем проверьте панель инструментов AdGuard Home в своем браузере. ``` http://SERVER-IP ``` Вы увидите все сайты, трекеры и объявления, которые были заблокированы. ## Шаг 11. Пользовательский DNS Переписывание DNS - это правила, которые отменяют стандартное разрешение DNS, отображая конкретные доменные имена на пользовательские IP-адреса. AdGuard поддерживает переписывание DNS, что позволяет отображать доменные имена на конкретные IP-адреса в вашей сети. Это работает как мини-локальный DNS-сервер для внутреннего использования. Например, вы можете создать карту `Adguard Home` для `SERVER-IP`, чтобы получить доступ к панели инструментов AdGuard. Следуйте шагам ниже, чтобы получить доступ к панели инструментов AdGuard Home с помощью Adguard. Домашний, а не серверный IP-адрес. Из верхнего меню навигации нажмите Фильтры и выберите DNS-перезаписи. щелкнуть Добавьте DNS-переписку. Введите домен и IP-адрес вашего сервера, а затем нажмите «Сохранить». => pic/how-to-install-adguard-on-ubuntu-24-04/6.png изображение ## Шаг 12. Настройка клиентских устройств Вы можете настроить свои устройства на использование AdGuard Home в качестве DNS-сервера. Конфигурация варьируется между различными типами устройств. В разделе ниже описывается настройка маршрутизатора для использования сервера AdGuard Home в качестве DNS-сервера. ## Шаг 13. Конфигурация маршрутизатора Настройте маршрутизатор, чтобы автоматически применять AdGuard Home DNS ко всем подключенным устройствам. Доступ к веб-странице администратора вашего маршрутизатора обычно `http://192.168.1.1`. Перейдите в раздел настроек DHCP или DNS. Включите пользовательский DNS и добавьте IP-адрес вашего сервера AdGuard Home или замените существующие адреса DNS-сервера IP-адресом вашего сервера AdGuard Home. Сохраните и примените настройки. Вы можете найти настройки конфигурации для большинства типов устройств из опции «Руководство по настройке» в верхнем меню навигации панели инструментов AdGuard Home. => pic/how-to-install-adguard-on-ubuntu-24-04/7.png изображение ## Шаг 14. Мониторинг и обслуживание AdGuard Home показывает статистику запросов DNS на своей панели инструментов. ## Шаг 15. Посмотреть статистику Доступ к панели инструментов по адресу `https://adguard.example.com`. Вы должны увидеть журналы запросов DNS, которые достигли вашего DNS-сервера AdGuard Home. ## Завершение Вы успешно развернули AdGuard Home на Ubuntu 24.04 с автоматическим обновлением сертификата TLS и зашифрованными протоколами DNS с использованием официального скрипта установки. Чтобы узнать больше о его использовании, обратитесь к странице AdGuard Home Wiki. Если вам понравился этот пост, пожалуйста, поделитесь им со своими друзьями или оставьте комментарий ниже.