| Home | Posts RSS | Comments RSS | Edit


Custom Search
CO.CC:Free Domain

Senin, 10 September 2012

Sedikit sharing membuat DNS Filtering dengan PowerDNS MySql backend

Ini sedikit catatan dari pengalaman saya sewaktu coba-coba membuat DNS Filtering dengan PowerDNS. Itung-itung ini juga sebagai dokumentasi, maklum sering lupa.

Ada beberapa hal yang perlu diperhatikan:
1. Saya tidak menjamin 100% yang ditulis disini dapat berjalan di mesin anda...(klo disaya sih work 1000%).
2. Gunakan logika anda ketika menjumpai kegagalan dan dilarang mengganggu saya dengan pm, comment dan satu lagi jangan cengeng.
3. Saya mengaplikasikan dilinux ubuntu server dengan lebih spesifik di ubuntu server 12.04.1, untuk jenis linux lainnya silahkan googling atau ke howtoforge.
 4. pdns server dan pdns recursor saya install disatu mesin.

Ok lanjut ke tema utama.
Untuk menginstall powerdns diubuntu ini saya menganggap jika ubuntu servernya sudah selesai diinstall dan running well.
Untuk install powerdns dengan mysql backend cukup ketik ini di terminal:

#apt-get install mysql-client mysql-server pdns-server pdns recursor pdns-backend-mysql
sewaktu diminta mengconfig database buat powerdns lewat debconfig (CMIIW) dipilih saja "no", karena akan dibuat sendiri databasenya.

untuk jelasnya bisa merujuk kesini http://www.howtoforge.com/installing-powerdns-with-mysql-backend-and-poweradmin-on-ubuntu-9.10
gak usah dipikirin itu klo tutornya buat ubuntu 9.10 karena dipake untuk ubuntu 12.04 juga bisa.

sedikit perbedaan karena pdns server dan pdns recursor jadi satu mesin ada di confignya:
ini punya saya, tolong di sesuaikan ya,
1.pdns.conf

allow-recursion=127.0.0.1, 192.168.1.0/24, 192.168.4.0/24, 192.168.14.0/24
config-dir=/etc/powerdns
daemon=yes
disable-axfr=yes
distributor-threads=4
guardian=yes
launch=gmysql
gmysql-host=127.0.0.1
gmysql-user=root
gmysql-password=password
gmysql-dbname=powerdns
gmysql-socket=/var/run/mysqld/mysqld.sock
lazy-recursion=yes
local-address=0.0.0.0
local-port=53
master=yes
module-dir=/usr/lib/powerdns
recursor=127.0.0.1:5300
setgid=pdns
setuid=pdns
socket-dir=/var/run
webserver=yes
webserver-address=192.168.1.27
webserver-port=8081
wildcards=on
version-string=powerdns

2.recursor.conf
allow-from=127.0.0.1, 192.168.1.0/24, 192.168.4.0/24, 192.168.14.0/24
forward-zones-recurse=.=8.8.8.8;8.8.4.4;180.131.144.144;180.131.145.145
local-address=127.0.0.1
local-port=5300
quiet=yes
setgid=pdns
setuid=pdns


setelah itu:
#service pdns restart
#service pdns-recursor restart


selanjutnya kita akan memasukan domain2 yang akan diblacklist, untuk caranya bisa mengacu kesini http://impeza.wordpress.com/2011/03/02/block-content-porno-dengan-powerdns/
untuk blacklist domain bisa ambil disini http://urlblacklist.com/?sec=download
klo saya hanya mengambil domains yang ada di file BL/porn/domains dari hasil extract blacklist yang sudah didonlot.

hanya sedikit tambahan sehingga ada tiga file yang akan diinsert ke tabel records:
#awk ‘{print “NULL” “\t” $1 “\t” $2 “\t” “SOA” “\t” “hostname-dari-powerdns hostmaster@hostname-powerdnsmu 1″ “\t” “86400″ “\t” “0″ “\t” “NULL″ }’ forrecord > soarecords
sehingga urutan insert ke table records nya menjadi:
#mysql -uroot -papasaja -Dpowerdns -e “LOAD DATA INFILE ‘soarecords’ INTO TABLE records"
#mysql -uroot -papasaja -Dpowerdns -e “LOAD DATA INFILE ‘sqlrecords’ INTO TABLE records"
#mysql -uroot -papasaja -Dpowerdns -e “LOAD DATA INFILE ‘wildcard’ INTO TABLE records”


tinggal arahkan client untuk memakai powerdns yang baru dibuat

===happy oprek===

Read More......
 
from my XP © Template Design by Herro