いつもの箇条書き
Q:なぜNextCloudタグがついているんですか?
A:オンプレでNextCloudがすでに動いてるマシンにAdgurdHomeのっけたから。(ポート80の奪い合いが発生)
結論から
- オンプレのNextCloudは退けれなかったのでAdgurdHomeはDockerで起動した
- ポート53はDNSで指定する都合なんとかフリーに開けてね!(うちではたまたま使ってなかった)
- その後OpenVPNをPiVPNでDNSを自分指定で立てた
- セキュリティ設定その他は各自の環境に合わせて頑張ってね!(ここでは取り扱わない)
最初にやること
- 現環境をDDコマンド等できちんとバックアップ取ること(下記手順試行錯誤の過程で何度か環境壊れたのでバックアップしてないと詰んでた)
- Dockerを動かせる環境の準備
どちらも詳細は特に書く予定はないので必要に応じて調べてください。
詳細と参考にしたページ
- DockerのAdGurdHomeの設定は下記のページの内容をベースにカスタマイズしたものを使用
https://zenn.dev/zilch/articles/b915c82c23c326
ポート80や443の奪い合いを調整したdocker-compose.yml
重要なのはXXXXと伏せ字にしたところを適当な使ってないポートに変えてNextCloudなどの既存の80番と取り合わないようにするところ(53はなんとか開けよう)
version: "3"
services:
adguard:
image: adguard/adguardhome:latest
ports:
- '53:53/tcp'
- '53:53/udp'
- 'XXXXX:80/tcp'
- 'XXXXX:443/tcp'
- '3000:3000/tcp'
volumes:
- './work:/opt/adguardhome/work'
- './conf:/opt/adguardhome/conf'
restart: unless-stopped
- ひとまずこの時点でAdGurdHomeのDNSがちゃんと動いてるかをPCなどからDNSを直接変更して確認する
- 次にPiVPNを下記の記事を参考にインストール
https://qiita.com/morinokami/items/8b58f210c2bdec2b13cd- 重要な点1つ目としてOpenVPNを選ぶこと。(WireGuardでは下記のDNS設定をするとうまく繋がらなくなった)
- ここで重要なのは途中のDNS設定の場面で固定済み(のはず)の自身へのローカルIPを指定すること。(IPV4環境でのみ確認、127.0.0.1でもOKなのかは確認していない)
- DDNSサービスは予め取得しておくこと、こちらなどを参照(下記ではWireguardをセットアップしている)
https://raspida.com/pivpn
- 最後に普通に?VPNファイルを作り接続する
上記手順で作ったVPNに繋いだ状態で広告ブロックされていれば成功。
余談
- PiVPN自体にPi-holeがついている?ようなのでちゃんと設定できるならAdGurdHomeをわざわざ別に入れなくても多分良さそうな気はする(設定の仕方がわからなかった)
- 上記の仕様のためかPi-holeを何も考えず入れると環境ぶっ壊れる(壊した)
- また、Pi-holeをDockerで動かしてみたが思うように動作せずAdGurdHomeに切り替えることに(多分おま環と知識不足が原因)
- Docker関係は下記のURLを参考にした
https://qiita.com/morinokami/items/8b58f210c2bdec2b13cd
https://qiita.com/taiga_tech/items/d9361f10d521a55659ee
https://junchang1031.hatenablog.com/entry/2016/05/18/000605
https://qiita.com/eijenson/items/25b35916afa38cdf9cea
https://www.takunoko.com/blog/docker-compose%E3%81%A7docker%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E3%82%92os%E8%B5%B7%E5%8B%95%E6%99%82%E3%81%AB%E7%AB%8B%E3%81%A1%E4%B8%8A%E3%81%92%E3%82%8B/
https://qiita.com/okyk/items/a374ddb3f853d1688820