Indonesia | English
Following this instruction is in your own risk. I'm not responsible for content you are trying to access after following this tutorial or the damage you done during the installation process. Please use it wisely and follow the instruction carefully
- Pertama-tama, kita login ke OpenWRT kita melalui SSH sebagai admin dengan mengetikan IP dari OpenWRT kita
- Setelah login, jalankan perintah
opkg update
di terminal dan tunggu sampai selesai - Setelah itu, jalankan perintah
opkg install iptables ip6tables git git-http nano
untuk menginstall package yang digunakan untuk proses installasi Zapret - Pergi ke file tmp dengan mengetikan
cd /tmp
di Terminal - Jalankan perintah
git clone https://github.com/bol-van/zapret.git
dan tunggu sampai selesai
Karena Kominfo menerapkan peraturan DNS Nasional yang dimana setiap ISP wajib membelokan Port 53 ke server ISP masing-masing dan probing tehnik bypassnya Zapret akan menggunakan resolve DNS dari OpenWRT kita, kita harus membypass DNS ISP terlebih dahulu sebelum melakukan proses installasi Zapret
Ada 4 cara untuk bypass:
- Menggunakan host BebasID
- Buatlah file bernama bebasid di system dengan mengetikan
touch /etc/bebasid
di terminal - Buka filenya dengan mengetikan
nano /etc/bebasid
- Silahkan copy isi hosts BebasID kedalam file yang kita buat tadi lalu save
- Login ke OpenWRT melalui Web dengan mengetikan IP dari OpenWRT, lalu pergi ke Network >> DHCP & DNS
- Pergi ke bagian Resolv and Hosts Files, tambahkan
/etc/bebasid
dibagian Additional hosts files dan klik + seperti dibawah ini:
- Klik Save & Apply
- Untuk mengecek apakah Host BebasID sudah terpasang dengan benar, jalankan
nslookup lamanlabuh.aduankonten.id
di terminal OpenWRT
Jika hasilnya seperti diatas ini, maka konfigurasi host BebasID telah berhasil
- Buatlah file bernama bebasid di system dengan mengetikan
- Menggunakan DNS dengan port selain 53
- Login ke OpenWRT
- Pergi ke Network >> Interfaces dan Edit WAN (atau apapun interface sumber internet kalian)
- Pergi ke Advanced Settings dan uncheck opsi
Use DNS servers advertised by peer
- Setting DNS ke 127.0.0.1 dan klik +
- Lalu Save dan Apply
- Setelah itu, pergi ke Network >> DHCP and DNS
- Dibagian DNS Forwarding, silahkan isi DNS dan alt-portnya dengan format
IP#PORT
Contohnya seperti ini:
Contoh menggunakan DNS dari BebasID dengan alt-port 1753
Untuk pengguna Moratel/Oxygen, jangan menggunakan alt-port 5353 karena Moratel memblokir port tersebut. Gunakan DNS yang mempunyai alternatif port selain 5353 jika anda memakainya
- Lalu klik + dan Save & Apply
- Menggunakan DNS-over-TLS (Stubby)
- Sebelum anda menggunakan DoT di OpenWRT, pastikan port 853 tidak terblokir oleh ISP
- Cek dengan menjalankan perintah
curl -v portquiz.net:853
di terminal
Pastikan muncul tulisan `Port test successful!`
Jika tidak, silahkan pakai cara lain seperti memakai hosts, alt port, dan DoH - Jika tes berhasil, jalankan command
opkg update
di terminal - Lalu jalankan command
opkg install stubby
dan tunggu sampai selesai
- Jalankan command
nano /etc/stubby/stubby.yml
untuk mengedit config Stubby - Catat port yang digunakan
Nanti akan digunakan di konfigurasi DNS - Jika anda mau mengganti atau DNS provider default (Cloudflare 1.1.1.1), silahkan ganti bagian
address-data:
dantls_auth_name:
Seperti Contoh, untuk mengganti ke DNS-over-TLS milik BebasID:
- Save hasilnya lalu jalankan perintah
nano /etc/config/stubby
- Ubah
option manual '0'
menjadioption manual '1'
lalu save
- Jalankan perintah
service stubby restart
danservice stubby enable
- Setelah itu, login ke OpenWRT melalui Web Interface
- Pergi ke Network >> Interfaces dan Edit WAN (atau apapun interface sumber internet kalian)
- Pergi ke Advanced Settings dan uncheck opsi
Use DNS servers advertised by peer
- Setting DNS ke 127.0.0.1 dan klik +
- Lalu Save dan Apply
- Pergi ke Network >> DHCP and DNS
- Dibagian DNS Forwarding, silahkan isi DNS dengan hasil settingan tadi
127.0.0.1#5453
- Klik + dan Save and Apply
- Check dengan melakukan nslookup ke domain yang diblokir Kominfo (Mis:
nslookup reddit.com
) Pastikan tidak muncul IP internet positif
- Menggunakan DNS-over-HTTPS
( TO BE CONTINUED... )
- Setelah selesai menjalankan perintah git clone di terminal dan membypass DNS Nasional / DNS ISP, silahkan navigasi ke /tmp/zapret dengan mengetikan
cd /tmp/zapret
di terminal - Jalankan
./install-easy.sh
di Terminal - Jika muncul pesan
Silahkan ketik
easy install is supported only from default location : /opt/zapret currently its run from /tmp/zapret do you want the installer to copy it for you (default : N) (Y/N) ?
Y
dan Enter - Untuk Firewall, pilih iptables dengan mengetik 1 dan enter
- Untuk enable IPv6 support, silahkan pilih
Y
untuk jaga-jaga
- Untuk Mode, silahkan pilih
3
dan enter
- Pastikan enable HTTP support, HTTPS support di enablekan dengan pilih
Y
pada saat proses instalasi
- Setelah itu klik Enter sampai selesai
- Hapus folder Zapret di /tmp untuk menyimpan memory dengan cara pergi ke
cd /tmp
dan jalankanrm zapret -r
- Pergi ke folder
cd /opt/zapret/
dan jalankan script./install_bin.sh
- Saat proses sudah berhasil, silahkan jalankan
./blockpage.sh
untuk mencari setting Zapret yang optimal untuk ISP anda - Jika muncul pesan:
Silahkan isi dengan domain yang diblokir Kominfo (Misalkan:
specify domain(s) to test. multiple domains are space separated. domain(s) (default: rutracker.org) :
reddit.com
,vimeo.com
,omegle.com
, dll) - Jika muncul presan
ip protocol version
, sesuaikan dengan jaringan anda- Misalkan jaringan anda hanya support IPv4, maka ketik
4
dan enter - Tetapi, jika Jaringan anda support IPv4 dan IPv6, maka ketik
46
dan enter
- Misalkan jaringan anda hanya support IPv4, maka ketik
- Klik Enter sampai pesan
how many times to repeat each test (default: 1)
. Ketik2
dan Enter - Setelah itu, akan muncul pesan berbunyi
do all test despite of result?
. Ketik Y dan Enter - Tunggu hingga Zapret menemukan settingan optimal untuk ISP anda
- Jika sudah selesai, akan muncul seperti ini:
Catat hasilnya - Setelah itu, stop service Zapret di OpenWRT dengan mengetikan
service zapret stop
- Edit Config nya dengan mengetikan
nano /opt/zapret/config
- Cari bagian ini di confignya dan replace dengan config yang sesuai pada gambar yang anda dapat tadi
Hilangkan # pada NFQWS
#NFQWS_OPT_DESYNC_HTTP= #NFQWS_OPT_DESYNC_HTTPS= #NFQWS_OPT_DESYNC_HTTP6= #NFQWS_OPT_DESYNC_HTTPS6=
Untuk curl_test_https_tls12, isi di bagian HTTPS dan HTTPS6 (Tulis setelah huruf nfqws di hasil tadi)
Dan, untuk curl_test_http, isi di bagian HTTP dan HTTP6 (Tulis setelah huruf nfqws di hasil tadi)
Sebagai Contoh: (Jangan ikuti ini melainkan sesuaikan dengan apa yang anda dapat)NFQWS_OPT_DESYNC_HTTP="--hostcase" NFQWS_OPT_DESYNC_HTTPS="--dpi-desync=split2" NFQWS_OPT_DESYNC_HTTP6="--hostcase" NFQWS_OPT_DESYNC_HTTPS6="--dpi-desync=split2"
- Lalu, save hasilnya dan nyalakan Zapret dengan mengetikan
service zapret start
- Jangan lupa enable iptables dan zapret dengan mengetikan
service zapret enable
danservice iptables enable
agar servicenya berjalan saat startup
Beberapa bank akan menolak request anda jika anda mengaktifkan Zapret di Router OpenWRT karena itu, kita harus buat whitelist untuk beberapa situs bank
- Pergi ke folder
/opt/zapret
lalu ketik perintahnano whitelist.txt
- Lalu isikan:
(Silahkan tambahkan jika kurang)
bankbjb.co.id bankbsi.co.id bankmandiri.co.id bca.co.id bi.go.id blubybcadigital.id bni.co.id bri.co.id btn.co.id cimbniaga.co.id danamon.co.id hanabank.co.id hsbc.co.id jago.com klikbca.com maybank.co.id permatabank.com permatanet.com sc.com
- Lalu Save dan jalankan command
chmod 755 whitelist.txt
di terminal - Edit config Zapret dengan mengetikan
nano config
- Cari line bertuliskan
NFQWS_OPT_DESYNC
dan tambah--hostlist-exclude=/opt/zapret/whitelist.txt
disetiap akhir line sebelum"
- Sebagai contoh, Konfigurasi Zapret kita seperti ini:
# CHOOSE NFQWS DAEMON OPTIONS for DPI desync mode. run "nfq/nfqws --help" for option list DESYNC_MARK=0x40000000 NFQWS_OPT_DESYNC="--dpi-desync=fake --dpi-desync-ttl=0 --dpi-desync-ttl6=0 --dpi-desync-fooling=badsum" NFQWS_OPT_DESYNC_HTTP="--hostcase" NFQWS_OPT_DESYNC_HTTPS="--dpi-desync=split2" NFQWS_OPT_DESYNC_HTTP6="--hostcase" NFQWS_OPT_DESYNC_HTTPS6="--dpi-desync=split2"
- Yang kita harus lakukan adalah menambah
--hostlist-exclude=/opt/zapret/whitelist.txt
dibelakang sehingga menjadi seperti ini:# CHOOSE NFQWS DAEMON OPTIONS for DPI desync mode. run "nfq/nfqws --help" for option list DESYNC_MARK=0x40000000 NFQWS_OPT_DESYNC="--dpi-desync=fake --dpi-desync-ttl=0 --dpi-desync-ttl6=0 --dpi-desync-fooling=badsum --hostlist-exclude=/opt/zapret/whitelist.txt" NFQWS_OPT_DESYNC_HTTP="--hostcase --hostlist-exclude=/opt/zapret/whitelist.txt" NFQWS_OPT_DESYNC_HTTPS="--dpi-desync=split2 --hostlist-exclude=/opt/zapret/whitelist.txt" NFQWS_OPT_DESYNC_HTTP6="--hostcase --hostlist-exclude=/opt/zapret/whitelist.txt" NFQWS_OPT_DESYNC_HTTPS6="--dpi-desync=split2 --hostlist-exclude=/opt/zapret/whitelist.txt"
- Sebagai contoh, Konfigurasi Zapret kita seperti ini:
- Save dan restart Zapret dengan mengetikan
service zapret restart