5651 Sayılı Kanuna göre DNS ile engelleme.
Bilindiği gibi kanun yoluyla gelen engellenme isteklerinin karşılanması gerekmektedir. Türk Telekom’un yapmış olduğu engelleme yöntemi bu iş için şimdilik yeterli görülmektedir.
Temelde İnternet’te dolaşabilmek için IP (veya şu aralar IPv6) kullanılmaktadır. Bu IP adreslerinin akılda tutulmasını kolaylaştırmak için çeşitli sistemler kullanılmış ve bunlardan INTERNIC tarafından sağlananı en çok tutulanı olmuştur. DNS deyince aklımıza gelen yöntemdir. Kısaca ‘Alan Adı’na adresine karşılık gelen IP adreslerinin tutulduğu bir veri tabanıdır.
En çok kullanılan Alan Adı Sunucusu BIND olduğundan bu örnekte bu sistem kullanılacaktır. Alan Adı Sunucu’su kuruluolduğu varsayılacaktır.
# cat named.conf
include “/etc/rndc.key”;
controls {
inet 127.0.0.1 allow { localhost; } keys { “rndc-key”; };
};acl bogusnets { 0.0.0.0/7; 10.0.0.0/8; 127.0.0.0/8; 169.254.0.0/16; 172.16.0.0/12; 192.168.0.0/16; 224.0.0.0/3; };
acl our-nets { 10.0.0.0/8; };options {
directory “/data”;
pid-file “/var/run/named.pid”;
statistics-file “/data/named.stats”;
allow-recursion { our-nets; 127.0.0.1; };
allow-query-cache { our-nets; 127.0.0.1; };
allow-transfer { none; };
blackhole { bogusnets; };
listen-on { any; };
version “Fake Type 1.3.0.1″;
};
logging {
channel security_debug {
syslog daemon;
severity notice;};
channel more_debug {
syslog daemon;
severity warning;
};
channel query-log {
file “/data/query.log” versions 30 size 1g;
};
category lame-servers { null; };
//category cname { null; };
//category response-checks { null; };
category update { default_syslog; default_debug; };
category security { more_debug; security_debug; };
// category queries { query-log; };
};
zone “.” IN {
type hint;
file “db.cache”;
};
zone “localhost” IN {
type master;
file “db.localhost”;
allow-update {none;};};
zone “0.0.127.in-addr.arpa” IN {
type master;
file “db.127.0.0″;
allow-update {none;};};
// Kendimize ait zone tanımları
zone “10.in-addr.arpa” {
type master;
file “db.10″;
allow-update {none;};
};
zone “ornek.net.tr” {
type master;
file “db.ornek-net-tr”;
allow-update {none;};
};
// Buraya istenmeyen siteler icin bir dosya adı ekleyelim.
include “/etc/istenmeyen.siteler”;
Şimdi de bu istenmeyen siteler dosyasının içeriğine bakalım:
# cat istenmeyen.siteler
zone “ornek.com” {type master; file “kapali.siteler”;};
zone “ornek2.net.tr” {type master; file “kapali.siteler”;};
zone “ornek3.com.tr” {type master; file “kapali.siteler”;};
zone “or-nek.ru” {type master; file “kapali.siteler”;};
Son olarak da kapali siteler dosyasının içeriğine bakalım. Burada kapatmak istediğiniz siteyi ve tüm alt alan adlarını bir IP’ye yönlendirebilirsiniz. Bu IP’den de insanları bilgilendirebilirsiniz.
# cat kapali.siteler
$TTL 86400
@ IN SOA 10.0.0.1 hostmaster.ornek.net.tr. (2007061000 ; serial number YYMMDDNN
28800 ; refresh 8 hours
7200 ; retry 2 hours
864000 ; expire 10 days
86400 ) ; min ttl 1 dayNS 10.0.0.1
A 10.0.0.10* IN A 10.0.0.10
Bundan sonrası ise insanların sizin DNS’nizi kullanmasını sağlamaktır. Esasen bu yöntemi aşmak çok basittir ama çok basit olan bu yöntem ile pek çok insanın bu sitelere erişmesi engellenebilir. Tüm gelen istekler 10.0.0.10 numaralı IP’ye yönlendirilmektedir. Bu bir karadelik olabileceği gibi balküpü veya HTTP sunucu da olabilir.
Aynı yöntem dns blackhole olarak da kullanılmaktadır.
Kolay gelsin.