Lompat ke konten Lompat ke sidebar Lompat ke footer

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. 

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 
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. 🙂
JSI-Tech Solution
JSI-Tech Solution Penyedia Jasa Setting alat jaringan di Bandung.

1 komentar untuk "CARA BLOKIR SITUS DENGAN SQUID PROXY "

  1. Mantap om artikelnya komplit bener.

    mksh juga kunjungannya
    https://www.sukadibaca.com/

    BalasHapus