Install AdGuardHome sebagai DNS-over-HTTPS (DoH) di NAT VPS – NATVPS.id


NATVPS.idAdGuardHomeadalah software pemblokir iklan & tracker di tingkat jaringan. AdGuardHome berfungsi sebagai DNS server yang akan memblokir koneksi iklan dari perangkat pengguna. AdGuardHome bersifat open-source dan dapat di-selfhost pada server kita.

Artikel ini membahas mengenai langkah-langkah install AdGuardHome di NAT VPS beserta konfigurasi NGINX untuk reverse-proxy DNS-over-HTTPS (DoH). Artikel ini menggunakan Ubuntu 22.04 sebagai acuan, namun Anda dapat menggunakan distribusi lain seperti Debian dan CentOS. Pastikan OS yang digunakan didukung oleh AdGuardHome.

Konfigurasi Port Forwarding

Mengingat kita menggunakan NAT, kita perlu menambahkan 2 konfigurasi port forwarding pada panel Virtualizor (atau panel VPS lain sesuai provider), yaitu port forwarding HTTP dan HTTPS untuk akses AdGuardHome.

Sebagai contoh, pada artikel ini akan menggunakan domain adguard.tutorial.mdinata.my.id. Anda bebas mengganti domain sesuai pilihan Anda. Catat port dan domain ini, karena kita akan menggunakannya lagi pada proses instalasi.

blank

Jangan lupa untuk menambahkan DNS record yang menuju ke IP publik NAT VPS Anda, seperti ini:

blank

Menonaktifkan Systemd-Resolved (Port 53)

Distribusi seperti Ubuntu dan turunannya secara bawaan menggunakan systemd-resolved yang berjalan di port 53. Port ini akan digunakan oleh AdGuardHome untuk menjalankan DNS server, sehingga systemd-resolved perlu dinonaktifkan.

Untuk mengecek apakah port 53 sedang digunakan, gunakan perintah:

sudo lsof -i :53

blank

Pertama, buat konfigurasi untuk systemd-resolved

sudo mkdir -p /etc/systemd/resolved.conf.d
 nano /etc/systemd/resolved.conf.d/adguardhome.conf

Isikan dengan konfigurasi berikut:

[Resolve]
 DNS=127.0.0.1
 DNSStubListener=no

blank

Simpan file tersebut dengan Ctrl-Xy, kemudian Enter.

Kemudian, ganti resolv.conf menggunakan:

sudo mv /etc/resolv.conf /etc/resolv.conf.backup
 sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf

Terakhir, restart systemd-resolved:

sudo systemctl reload-or-restart systemd-resolved

blank

Cek lagi port 53, seharusnya sudah tidak ada program yang berjalan sekarang.

blank

Install AdGuardHome

Unduh rilis terbaru AdGuardHome:

curl -LO

blank

Ekstrak AdGuardHome ke /opt:

tar -xzvf AdGuardHome_linux_amd64.tar.gz -C /opt

blank

Terakhir, mulai instalasi AdGuardHome:

cd /opt/AdGuardHome
 ./AdGuardHome -s install

blank

Konfigurasi NGINX (Reverse Proxy)

Agar kita dapat mengakses AdGuardHome melalui domain seperti adguard.tutorial.mdinata.my.id, kita dapat menggunakan reverse proxy seperti NGINX.

Pertama, install NGINX melalui perintah:

# Hapus Apache2 dan pendukungnya (biasanya terpasang secara bawaan di VPS OpenVZ)
 apt purge apache2* -y
 
 # Install NGINX
 apt install nginx -y

blank

Buat konfigurasi host baru khusus untuk AdGuardHome:

nano /etc/nginx/sites-available/adguard

Kemudian tempelkan konfigurasi berikut:

# 
 server {
 listen 80;
 listen [::]:80;
 
 server_name adguard.tutorial.mdinata.my.id;
 
 location / {
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header X-Forwarded-Proto $scheme;
 proxy_set_header Host $host;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_pass proxy_redirect / /;
 proxy_cookie_path / /;
 }
 
 location /dns-query {
 proxy_set_header Host $http_host;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_bind 12.0.0.17;
 
 proxy_pass }
 }

Ganti adguard.tutorial.mdinata.my.id dengan domain Anda. Ganti juga 12.0.0.17 dengan alamat IP private NAT VPS Anda (bukan publik!).

blank

Aktifkan konfigurasi tersebut dengan:

ln -sf /etc/nginx/sites-available/adguard /etc/nginx/sites-enabled/adguard
 
 # Restart NGINX
 systemctl restart nginx

blank

Generate Sertifikat SSL (Let’s Encrypt)

Agar domain kita dapat diakses melalui HTTPS, kita perlu membuat sertifikat SSL. Kita dapat menggunakan sertifikat SSL gratis dari Let’s Encrypt melalui Certbot.

Install Certbot dan plugin NGINX nya menggunakan perintah:

apt install python3-certbot python3-certbot-nginx

blank

Lalu, generate sertifikat melalui Certbot dengan perintah

certbot --nginx -d adguard.tutorial.mdinata.my.id

Ganti adguard.tutorial.mdinata.my.id dengan domain Anda.

blank

Selamat! Domain Anda saat ini dapat diakses melalui koneksi aman HTTPS.

Mengonfigurasi AdGuardHome

AdGuardHome dapat diakses melalui domain Anda sebelumnya. Contoh: https://adguard.tutorial.mdinata.my.id.

blank

Pada Antarmuka Halaman Admin, pilih interface dari NAT VPS, kemudian ganti port ke 4000.Pada Server DNS, gunakan juga interface yang sama dengan sebelumnya.

blank

Pada Otentikasi, masukkan username/password yang ingin Anda gunakan.

blank

Jika sudah, maka AdGuardHome akan tidak dapat diakses untuk sementara, karena kita menggunakan port 4000. Menggunakan port 3000 langsung akan menyebabkan error di web UI AdGuardHome.

Ganti lagi ke port 3000 dengan membuka file /opt/AdGuardHome/AdGuardHome.yaml:

nano /opt/AdGuardHome/AdGuardHome.yaml

Ganti port pada address menjadi 3000:

blank

Terakhir, restart AdGuardHome:

systemctl restart AdGuardHome

blank

Penutup

Demikianlah artikel ini mengenai langkah-langkah install AdGuardHome di NAT VPS. Jika bingung atau ragu, jangan sungkan untuk bertanya di grup Telegram @IPv6Indonesia. Terima kasih!



Hiburan

Berita Olahraga

News

Berita Terkini

Berita Terbaru

Berita Teknologi

Seputar Teknologi

Drama Korea

Resep Masakan

Pendidikan

Berita Terbaru

Berita Terbaru

Berita Terbaru

Lifestyle

Leave a Reply

Your email address will not be published. Required fields are marked *