adguard home은 pc나 모바일기기에 설치하는 응용프로그램이나 adblock 같이 브라우저에 플러그인 형태가 아니라 라우터에 설치하여 네트워크 단에서 dns를 통해 광고, 멀웨어, 추적기 등을 차단하는 오픈소스 프로그램으로 OpenWrt에 설치하여 구동할 수 있습니다.
아래 설치방법은 adguard home이 dns서버에 보내는 쿼리를 OpenWrt 라우터에 별도 설치한 stubby나 https-dns-proxy가 중간에서 DoT/DoH로 처리하는 방법으로 구성하였습니다.
let's encrypt ssl 무료 인증서를 생성해 adguard home이 직접 DoT/DoH로 dns 서버에 쿼리를 보내는 방법은 여기를 참고하세요.
사전준비
- OpenWrt 라우터에 adguard home을 설치하기 위해서는 최소 20MB의 여유공간이 필요하며 구동시 쿼리로그 등의 데이터가 계속 축척되고 구동을 위한 많은 메모리가 필요하므로 라우터 메모리 확보를 위해 usb 저장장치를 마운트하여 usb에 설치합니다.
- OpenWrt에 stubby나 https-dns-proxy로 DoT 또는 DoH 구성을 합니다. (아래 예시는 DoT(stubby)입니다)
adguard home 설치
- 설치 스크립트를 다운받습니다 (아래 install.sh)
- install.sh 쉘스크립트를 다운받아 확인해 보면 adguard home의 기본 설치경로는 /opt 로 usb에 설치하려는 경로와 다르므로 vi 편집기로 수정하거나 아래처럼 sed명령으로 설치 경로를 /mnt/sda1/opt로 수정한 후 스크립트를 실행하여 OS 및 cpu 아키텍처를 파악해 해당 최신버전의 adguard home을 다운받게 합니다.
opkg update
opkg install curl
mkdir /mnt/sda1/opt
curl -sSL https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh > install.sh
sed -e 's/OUT_DIR=\/opt/OUT_DIR=\/mnt\/sda1\/opt/g' install.sh | sh
adguard home 설정하기
- 설치를 완료하면 /mnt/sda1/opt/AdGuardHome에 adguard가 설치가 되며 /etc/init.d/AdguardHome 화일이 복사되어 OpenWrt의 서비스로 등록이 됩니다.
- 웹브라우저 주소창에 http://192.168.1.1:3000으로 접속하여 adguard home설정을 합니다.
- id/password 생성하고
- 웹브라우저 접속포트를 변경합니다.(예 3000에서 8080으로)
- adguard home의 DNS 설정 : 127.0.0.1:5553 으로 설정
- adguard home에서 dns 쿼리를 보낼 upstream DNS 설정 : 127.0.0.1:5453 으로 설정(stubby 설치시 설정한)
- adguard home에 내장된 DoT/DoH 구성은 따로 할 필요가 없습니다.(OpenWrt에 stubby로 구성된 127.0.0.1:5453을 사용하므로)
- ipv6 비활성화 : check
- dnssec 활성화 : check
- 기타 필요한 설정은 상황에 따라 하면됩니다.
- 아래 /etc/config/dhcp 재구성 및 dnsmasq를 재시작하고 adguard home 대시보드에서 보호활성화를 눌러 구동합니다.






/etc/config/dhcp 재구성 및 dnsmasq 재시작
- option dnssec, option dnsseccheckunsigned 주석처리 합니다. (위에서 dnssec은 adguard home에서 수행)
- DoT 설정한 사용자라면 stubby가 listen하는 127.0.0.1#5453 주석처리 (stubby는 중지시키지 않음)
- DoH 설정한 사용자라면 https-dns-proxy가 listen하는 127.0.0.1#5053 주석처리(https-dns-proxy 중지시키지 않음)
- adguard home에서 listen하는 127.0.0.1#5553 새롭게 추가
- dnsmasq 재시작 합니다.
config dnsmasq ... option noresolv '1' # option dnssec '1' # option dnsseccheckunsigned '1' # list server '127.0.0.1#5453' # list server '127.0.0.1#5054' list server '127.0.0.1#5553' list server '/openwrt.pool.ntp.org/1.1.1.1'
/etc/init.d/dnsmasq restart
Before and after
pc에 설치하는 adguard는 광고가 제거되고 웹페이지가 빈 공간없이 깔끔하게 정리되는 반면 adguard home은 광고만 제거되고 그 자리는 구멍이 뚫인 듯한 모습을 볼 수 있는데 어쨋거나 저는 불만없이 사용하고 있습니다.
![]() | ![]() |