CARA BLOKIR SITUS DENGAN SQUID PROXY
CARA BLOKIR SITUS DENGAN SQUID PROXY
babang-teknik.blogspot.com - CARA BLOKIR SITUS DENGAN SQUID PROXY – Sebetulnya banyak cara yang bisa dilakukan untuk blokir situs. Tetapi pada artikel ini penulis akan memberikan tips blokir situs menggunakan squid proxy. Bagi pengguna squid proxy silahkan ikuti beberapa langkah dibawah ini. Bagi yang belum melakukan install squid bisa teman-teman ikuti artikel berikut.
Instalasi Squid3 as Transparent Proxy And Support Cache HTTPS
1. Silahkan buka putty kemudian login menggunakan user root.
2. Buat file baru dengan nama “blokir.txt” dan simpan ke dalam directory / folder “/etc/squid”. Command nya seperti ini:
1 touch /etc/squid/blokir.txt
Berikan hak akses agar squid dapat mengesekusi file tersebut.
1
chown -R proxy:proxy /etc/squid/blokir.txt 2
chmod 777 /etc/squid/blokir.txt
Buka file “blokir.txt” menggunakan tool nano kemudian masukan nama-nama situs yang ingin anda blokir.
1 nano /etc/squid/blokir.txt
Perhatian!!..
File blokir.txt nantinya akan dibaca oleh squid baris per baris.
Dan squid akan membaca isi file tersebut berdasarkan nama domain (bukan url)… …Pastikan hanya masukan nama situs berdasarkan nama domain dan beri tanda “.” sebelum nama domain.
Contoh anda ingin blokir situs namanya : http://youdomain.com,
http://www.testdomain.com dan http://blog.maindomain.com.
Anda hanya perlu masukan nama domain dan beri tanda “titik” sebelum nama domain. .youdomain.com
.testdomain.com
.maindomain.com
Kenapa memilih nama domain dari pada url?…
…Jawabannya agar situs yang ingin di blokir lebih tepat sasaran. Gimana sudah paham kan?…
Sekarang lanjut bro…
Buka file “squid.conf” kemudian cari baris yang tulisannya “acl connect….bla bla bla”… …Kemudian masukan script berikut tepat dibawah tulisan acl connect… 1 acl blokir dstdomain
"/etc/squid/blokir.txt"
Gimana kalau tulisan “acl connect” ga ada?…
…Simpan dimana saja deh yang penting masih di dalam file “squid.conf” bukan di rak sepatu….
Masih di file “squid.con” cari baris yang tulisannya “http_access allow localnet”… …Kemudian masukan script berikut tepat diatas tulisan http_access… 1 http_access deny blokir
Tutup dan simpan squid.conf yang barusan kita edit. Lakukan “squid -k reconfigure” agar perubahan pada squid.conf dapat di baca.
Sampai disini anda bisa test, apakah domain yang sudah dimasukan berhasil di blokir. Agar tampilan blokir situs nya lebih mantap lagi, arahkan ke web server lokal atau ke gambar yang ada di google.
Formatnya seperti berikut….
1 deny_info http://url_gamar_atau_webserver.com blokir
BLOKIR SITUS PADA JAM-JAM TERTENTU
Saya ingin blokir pada jam-jam tertentu apakah bisa?…
….tentu bisa dong. Apa si yang ga bisa squid lakukan…
1 acl jam_blokir time SMTWHFA 07:00-20:00
Maka jika digabungkan dengan script diatas jadinya seperti ini
1
acl blokir dstdomain "/etc/squid/blokir.txt" 2
acl jam_blokir time SMTWHFA 07:00-20:00
Silahkan rubah “http_access deny blokir” menjadi seperti ini:
1 http_access deny blokir jam_blokir
Perhatian!!..
SMTWHFA itu nama-nama hari dalam bahasa inggris..
07:00 sampai 20:00 adalah jam dimana blokir situs dimulai, maka diluar jam tersebut blokir situs tidak diaktifkan.
Pengaturan jam h1:m1-h2:m2 h1 dan m1 harus lebih kecil daripada h2 dan m2. Selesai…..
Membuat DNS Filtering dengan BIND RPZ
Pemerintah saat ini sedang berusaha melakukan pemblokiran konten pornografi dengan gencarnya. Para penyedia layanan internet (ISP dan NAP) diwajibkan untuk melakukan pemblokiran terhadap situs-situs yang mengandung konten pornografi. Pemerintah melakukan sidak ke ISP / NAP untuk mengecek apakah sudah dilakukan pemblokiran konten pornografi atau belum. Jika ternyata masih bisa mengakses situs-situs yang mengandung konten pornografi, maka mereka akan ditegur dengan surat peringatan resmi.
Untuk melakukan pemblokiran konten pornografi, cara yang paling mudah adalah dengan menggunakan DNS filtering yang cara kerjanya me-redirect request DNS dari pengguna ke halaman web tertentu yang berisi peringatan bahwa situs yang berusaha diakses telah diblokir karena mengandung konten pornografi.
Sebenarnya saat ini sudah tersedia publik DNS filtering di Indonesia yang dibuat oleh Yayasan Nawala Nusantara biasa disebut dengan DNS Nawala. Namun terkadang masih bisa lolos dari filtering mungkin overload dikarenakan terlalu banyak yang menggunakannya. Oleh karena itu Pemerintah dalam hal ini Kementrian Kominfo mewajibkan ISP / NAP untuk membangun DNS filtering sendiri. Tulisan singkat ini untuk memberikan panduan bagaimana cara membuat DNS filtering dengan RPZ menggunakan software BIND. RPZ (Response Policy Zones) merupakan salah satu fitur yang terdapat pada BIND9.8+ yang memungkinkan resolver (DNS server) untuk melakukan penerjemahan terhadap request yang sudah didefinisikan pada zone file. Situs-situs yang akan diblokir harus didefinisikan terlebih dahulu di zone file untuk diarahkan (di-redirect) ke server tertentu yang sudah kita siapkan. Dalam panduan ini saya akan menggunakan Ubuntu 14.04 dengan BIND versi 9.9.5. Konfigurasi pada distro Linux yang lain seperti CentOS, RedHat, Fedora, atau Slackware mestinya identik hanya penamaan dan penempatan file konfigurasinya saja yang mungkin berbeda. Mari kita langsung saja ke langkah-langkahnya:
1. Install BIND 9
sudo apt-get install bind9
2. Edit file /etc/bind/named.conf.options menjadi seperti berikut:
options {
directory "/var/cache/bind";
dnssec-validation auto;
auth-nxdomain no;
listen-on-v6 { any; };
check-names master ignore;
check-names slave ignore;
allow-query { 127.0.0.1; 10.11.12.0/24; };
response-policy { zone "rpz.zone"; };
};
zone "rpz.zone" {
type master;
file "/etc/bind/db.rpz.zone";
allow-query { any; };
};
3. Buat file baru dengan nama ‘db.rpz.zone’ di folder /etc/bind/
Inilah file zone yang nantinya akan berisi domain-domain yang akan di-redirect ke server kita sendiri yang sudah disiapkan. Isi file ‘db.rpz.zone’ adalah sebagai berikut: $TTL 1H
@ IN SOA LOCALHOST. hostmaster.local. (1 1h 15m 30d 2h)
@ IN NS LOCALHOST.
@ IN A 127.0.0.1
@ IN AAAA ::1
4. Download database domain yang harus diblokir di website Kominfo (http://trustpositif.kominfo.go.id/files/)
Untuk men-download-nya, klik menu Shares > Database > blacklist > porn, kemudian klik ‘domains’ untuk mulai mengunduhnya. File berukuran sekitar 12.37 MB.
5. Setelah selesai mengunduh file ‘domains’ pada langkah no. 4 di atas, langkah berikutnya adalah membuat zone entry dengan format “namadomain IN A IP_ADDRESS” yang ditambahkan ke dalam file db.rpz.zone. Kalau kita buka file ‘domains’ tersebut hanya berisi daftar domain saja. Supaya bisa dibaca oleh BIND DNS, kita perlu mengubahnya dalam format “namadomain IN A IP_ADDRESS”. Kita akan menggunakan tool ‘awk’ untuk meng generate-nya.
awk '{print $1" IN A 10.11.12.13"}' domains >> /etc/bind/db.rpz.zone
awk '{print "*."$1" IN A 10.11.12.13"}' domains >> /etc/bind/db.rpz.zone Script pertama akan mengambil semua baris dalam file ‘domains’ dan menambahkan “IN A 10.11.12.13” pada tiap baris dan kemudian memasukkan / menambahkannya ke dalam file ‘db.rpz.zone’.
Script kedua akan mengambil semua baris dalam file ‘domains’ dengan menambahkan “*.” (bintang dan titik) sebelum namadomain dan “IN A 10.11.12.13” setelah namadomain pada tiap baris dan kemudian memasukkan / menambahkannya ke dalam file ‘db.rpz.zone’. contohnya adalah sbb:
17bb.info IN A 10.11.12.13
*.17bb.info IN A 10.11.12.13
Sebagaimana kita tahu, jika hanya ada entry baris pertama (17bb.info), maka sub-domain dari domain tersebut (misalnya www.17bb.info, web.17bb.info) tidak ikut terblokir. Maka dari itu kita perlu menambahkan entry baris kedua (*.17bb.info) supaya semua sub-domain ikut terblokir.
Kemudian restart service BIND9 nya.
service bind9 restart
6. Test query DNS
Waktunya untuk melakukan tes dari server DNS (localhost) dengan menggunakan ‘dig’ dig
@127.0.0.1 redtube.com
; <<>> DiG 9.9.5-3ubuntu0.2-Ubuntu <<>> @127.0.0.1 redtube.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49180
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;redtube.com. IN A
;; ANSWER SECTION:
redtube.com. 5 IN A 10.11.12.13
;; AUTHORITY SECTION:
rpz.zone. 3600 IN NS LOCALHOST.
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon May 11 02:47:21 WIB 2015
;; MSG SIZE rcvd: 87
Dari hasil command dig di atas terlihat bahwa domain redtube.com mempunyai address 10.11.12.13 seperti yang sudah didefinisikan di zone file db.rpz.zone
7. Tes akses dengan menggunakan browser.
Setelah dipastikan DNS RPZ berjalan dengan benar, terakhir kita pastikan bahwa jika kita mengakses website nya, yang muncul adalah situs web yang sudah kita persiapkan yang berisi pemberitahuan bahwa website yang diakses telah diblokir karena mengandung konten pornografi seperti gambar di bawah ini sebagai contoh:
Dan itulahcara memblokir situs menggunakan Squid Proxy. Semoga artikel ini dapat membantu teman-teman khususnya untuk teman-teman para Networking. Selamat mencoba. 🙂
Mantap om artikelnya komplit bener.
BalasHapusmksh juga kunjungannya
https://www.sukadibaca.com/