
iPhone中のすべての広告をVPSのAdGuard Homeでブロックしてみた
ウェブサイトだけでなく、iPhone内のアプリに勝手に表示される広告はうるさいですよね。AdGuard Homeを使用すれば簡単に解決できます。Raspberry Piにインストールして、家のルーターのデフォルトDNSサーバーをAdGuard Homeに設定するのが1つの方法ですが、外出先では広告のブロックが効かなくなります。
外でも広告のない生活を送りたいので、VPSにAdGuard Homeをインストールして設定してみました。
AdGuard Homeをインストール
AdGuard Homeのインストールは難しくありません。具体的な手順については、公式ドキュメントを参照してください。
https://github.com/AdguardTeam/AdGuardHome/wiki/VPS
Dockerを使えるVPSであればさらに便利でしょう。
https://github.com/AdguardTeam/AdGuardHome/wiki/Docker
TLS/SSL証明書をインストール
個人的に費用を抑えるためにLet's Encryptを使っています。手順はこちらです。
CertBotをインストール
sudo snap install --classic certbot
証明書を生成
sudo certbot certonly --manual --preferred-challenges=dns --preferred-chain="ISRG Root X1"
証明書をAdGuard Homeへ登録
AdGuard Homeの管理画面である「Settings」→「Encryption Settings」にアクセスし、TLS/SSLなどの設定を有効にし、同時にplain DNSをオフにします。
-
有効にする
- Enable Encryption (HTTPS, DNS-over-HTTPS, and DNS-over-TLS)
- Server name(AdGuard Homeサーバーのドメイン)
- Redirect to HTTPS automatically
- DNS-over-TLS port(853へ)
-
無効にする
- Enable plain DNS

- CertBotで生成された証明書の登録
- Set a certificates file pathを選んで、
/etc/letsencrypt/live/[AdGuard Homeサーバーのドメイン]/fullchain.pemに設定 - Set a private key fileを選んで、
/etc/letsencrypt/live/[AdGuard Homeサーバーのドメイン]/privkey.pemに設定
- Set a certificates file pathを選んで、
問題なかったら、Certificate chain is validとThis is a valid ECDSA private keyが表示されます。

VPS上のAdGuard Homeの管理画面にHTTPSでアクセスできるようになりました。また、DNS-over-HTTPSとDNS-over-TLSも利用できるようになりました。
DNSサーバーのポート解放
DNS-over-HTTPSを使用する場合はポート443を、DNS-over-TLSを使用する場合はポート853を開放してください。
AdGuard Homeの管理画面へのアクセスを制限するため、443ポートではなく853ポートのみを解放しました。
iPhoneの設定
Androidとは異なり、iPhoneではWiFiスポット以外のプライベートDNSサーバーを簡単に設定できません。代わりに、OSSの「DNSecure」をダウンロードして設定してみましょう。
DNSecureをiPhoneにインストール
ソースコードは:https://github.com/kkk669/DNSecure ダウンロードリンクは:Download DNSecure on APP Store
DNS-over-TLSサーバーの追加
DNSecureにAdGuard Homeサーバーを追加します。
- Name: AdGuardTLS
- Servers: AdGuard HomeサーバーのIPアドレス
- Server Name: AdGuard Homeサーバーのドメイン

その他の設定
DNSecureの手順に従って、「一般」中のVPNに「DNSecure」を選んだら完了となります。
完了
ブラウザだけでなく、アプリ内の広告もブロックされているはずです。AdGuard Homeの管理画面にアクセスし、ブロックされたログを確認してみましょう。
その後、DNSのブロックリストに気に入らないサイトをすべてブロックするために追加しましょう。

※日本専用のブロックリスト:フィルターリスト

Blog part of ThunderMiracle.com
コメントは表示領域に入ると読み込みます