dhcp dns proxy server linux

Download DHCP DNS Proxy Server Linux

If you can't read please download the document

Upload: alamadi-syahfri

Post on 05-Jul-2015

335 views

Category:

Documents


5 download

TRANSCRIPT

DNS Server, DHCP Server dan Proxy ServerDNS Server di Slackware 13Simple DNS dengan Bind Install bind: root@slacky:~# slackpkg install bind trus muncul kek ini :

letak konfigurasi bind untuk dns server di slackware ada di /etc/, file nya named.conf (/etc/named.conf)root@slacky:/# ls -la /etc |grep named -rw-rr 1 root root 681 2009-07-30 04:22 named.conf

secara default, dns server ini (bind) sudah isa langsung di gunakan, meskipun hanya di localhost saja. simple bukan ?

untuk mengaktifkan service ato layanan dns server simple ini di slackware, agar tiap kali booting langsung aktif, jalankan perintah

pkgtool > Setup > services > rc.bind > ok tes dns server nyaroot@slacky:/# /etc/rc.d/rc.bind usage /etc/rc.d/rc.bind start|stop|reload|restart|status root@slacky:/# trus root@slacky:/# /etc/rc.d/rc.bind start Starting BIND: /usr/sbin/named root@slacky:/# cek port nya root@slacky:/# netstat -pln Active Internet connections (only servers) Proto Recv-Q Send-Q tcp 0 0 tcp 0 0 tcp 0 0 tcp 0 0 tcp 0 0 tcp 0 0 tcp6 0 0 tcp6 0 0 udp 0 0 udp 0 0 udp 0 0 udp 0 0 Local Address 0.0.0.0:37 0.0.0.0:113 192.168.1.2:53 127.0.0.1:53 0.0.0.0:22 127.0.0.1:953 :::22 ::1:953 0.0.0.0:512 0.0.0.0:37 192.168.1.2:53 127.0.0.1:53 Foreign Address 0.0.0.0:* 0.0.0.0:* 0.0.0.0:* 0.0.0.0:* 0.0.0.0:* 0.0.0.0:* :::* :::* 0.0.0.0:* 0.0.0.0:* 0.0.0.0:* 0.0.0.0:* State LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN PID/Program name 2600/inetd 2600/inetd 7650/named 7650/named 2607/sshd 7650/named 2607/sshd 7650/named 2600/inetd 2600/inetd 7650/named 7650/named

Active UNIX domain sockets (only servers) Proto RefCnt Flags Type State unix 2 [ ACC ] STREAM LISTENING 7931 unix 2 [ ACC ] STREAM LISTENING 8493 root@slacky:/#

I-Node PID/Program name Path 2619/acpid /var/run/acpid.socket 2652/gpm /dev/gpmctl

done. buat simple DNS Server menggunakan bind di Slackware 13. ok, sekarang cuman contoh aja jika ingin menambahkan domain sendiri. misalnya blitar.org. edit file /etc/named.conf, dan tambahkan baris berikut :zone blitar.org IN { type master; file caching-example/blitar.org.zone; };

buat file blitar.org.zone di /var/named/caching-example/root@slacky:/# vim /var/named/caching-example/blitar.org.zone

isinya seperti ini :$TTL 86400 blitar.org. 42 3H 15M 1W 1D ) IN NS localhost blitar.org IN SOA blitar.org root.blitar.org (

localhost IN A IN A

127.0.0.1 74.86.158.94

Ada banyak program untuk membuat DNS server, berhubung yang default terinstall di slackware adalah bind9 maka kita akan menggunakan itu saja. Jika bind9 terinstall maka akan terdapat beberapa file file instalasi default seperti : var/named/caching-example/named.ca var/named/caching-example/named.local var/named/caching-example/localhost.zone etc/rc.d/rc.bind etc/named.conf Tiga file awal adalah contoh dari konfigurasi bind9, file selanjutnya adalah init script (rc.bind) dan konfigurasi dari bind (named.conf). Berikut adalah isi dari file named.conf yang masih perawan :options { directory /var/named; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ // query-source address * port 53; }; // // a // zone type file caching only nameserver config . IN { hint; caching-example/named.ca;

}; zone localhost IN { type master; file caching-example/localhost.zone; allow-update { none; }; }; zone 0.0.127.in-addr.arpa IN { type master; file caching-example/named.local; allow-update { none; }; };

Kita akan bahas per blok, dan apa saja modifikasi yang akan kita buat. Blok pertamaoptions { directory /var/named; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ // query-source address * port 53; };

Blok ini merupakan global setting dari bind, directory /var/named adalah direktory kerja dari bind, di direktory tersebut di tempatkan file file konfgurasi domain yang biasa di sebut zone. Tidak disarankan untuk mengutak atik blok ini kecuali Anda tahu apa yang Anda kerjakan. Atau dengan kata lain, biarkan mi saja begitu. Blok Keduazone . IN { type hint; file caching-example/named.ca; };

Blok ini merupakan blok root zone atau kasarnya alamat alamat dari domain domain internasional. Kita membutuhkan blok root zone ini. Biasanya saya melakukan perubahan dengan menghilangkan cachingexample/ pada baris file sehingga hanya berbentuk seperti ini : file named.ca; Ini soal kebiasaan saja, saya lebih senang melihat semua file file zone berada di bawah direktori /var/named, jadi tinggal ganti saja baris file tersebut dan pindahkan filenya :# mv /var/named/caching-example/* /var/named

Blok Ketigazone localhost IN { type master; file localhost.zone; allow-update { none; }; };

Blok ini adalah forward localhost, Dalam artian jika dns server mendapatkan perintah untuk mengetahui alamat ip dari localhost maka bagian blok ini yang mengurusnya. saya sarankan untuk tetap menyimpan blok ini tapi berhubung sudah memindahkan file /var/named/cachingexample/ jadi bari filemenjadi : file localhost.zone; Blok Keempatzone 0.0.127.in-addr.arpa IN { type master;

file named.local; allow-update { none; }; };

Blok ini merupakan kebalikan dari blok localhost atau biasa disebut reverse, karena kebalikan reverse kerjanya juga terbalik yaitu mencari nama dari ip yang diquerykan ke DNS server. Semua konfigurasi diatas jika betul (termasuk nama filenya dan direktorinya) maka DNS server kita sudah bisa digunakan, kita tinggal mengaktifkannya mengeksekusi file rc.bind# /etc/rc.d/rc.bind start

Jika tidak ada error maka kita bisa mengquery domain domain luar misalnya yahoo, google dll dengan syarat kita terhubung ke internet. Perintah untuk megquery domain bisa menggunakan dig atau nslookup :arman@oridecon:~$ dig yahoo.com ; DiG 9.4.1 yahoo.com ;; global options: printcmd ;; Got answer: ;; ->>HEADER yahoo.com Server: localhost Address: 127.0.0.1#53 Non-authoritative answer: Name: yahoo.com Address: 216.109.112.135 Name: yahoo.com Address: 66.94.234.13

Jika keluarnya seperti ini maka dns kita sudah siap untuk di kaccaki (oprek) lagi. Untuk menambahkan domain lain (jika kita punya domain yang terdaftar atau sekedar iseng saja) kita bisa mengcopy konfigurasi dari localhost.zone. Misalnya kita ingin membuat domain gorilla.com dengan ip 192.168.1.1 maka kita buat entry dari gorilla.zone seperti ini :zone gorilla.com IN { type master; file gorilla.zone; allow-update { none; }; }; zone 1.168.192.in-addr.arpa IN { type master; file 192.168.1.zone; allow-update { none; };

};

Yang perlu diperhatikan adalah :zone gorilla.com IN {

Ini kita sesuaikan dengan nama domain yang kita buat. Jika kita membuat domain kingkong.com maka baris zone itu juga berisi kingkong.com, selanjutnya adalah jenis dari domain tersebut apakah merupakan domain master atau slave, untuk lebih detil tentang master dan slave dari domain silahkan baca dokumentasi tentang dns. Baris berikut adalah file dari domain. File bisa kita namakan terserah kita namun yang pasti sama dengan yang ada pada blok zone, dalam hal ini kita menggunakan nama file gorilla.zone, saya sarankan nama file yang digunakan representatif sehingga untuk administrasi ataupun trouble shooting tidak lagi pusing soal nama file dan domain. Blok terakhir yang kita buat adalah reverse dari domain gorilla.com, berhubung karena kita dalam tahap belajar maka kita menggunakan ip address lokal saja, dalam hal ini kita defenisikan adalah 192.168.1.X, yang perlu diperhatikan pada pendefenisian reverse, penulisan alamat ip itu ditulis terbalik (namanya juga reverse) jadi jika kita menggunakan ip 192.168.1.X maka yang dituliskan di zone reverse adalah 1.168.192.in-addr.arpa, demikian juga halnya jika menggunakan ip ip yang lain atau ip publik. Baris selanjutnya sama dengan forward dari gorilla.com yaitu type domain dan file zone, dalam hal ini kita menset 192.168.1.zone untuk file dari reverse kita. File file zone Setelah file named.conf kita acak acak sekarang kita berurusan sama yang berwajib, eh file file zone. Seperti kita definisikan sebelumnya di file named conf bahwa direktory dari bind berada di /var/named/ :directory /var/named;

Karena kita juga sudah memindahkan file di /var/named/caching-example/, sekarang di direktori /var/named terdapat file file berikut :arman@oridecon:~$ ls total 12 -rw-rr 1 root root -rw-rr 1 root root -rw-rr 1 root root /var/named/ -l 195 2007-06-08 13:42 localhost.zone 2517 2007-06-08 13:42 named.ca 433 2007-06-08 13:42 named.local

Seperti yang kita sudah defenisikan sebelumnya pada file named.conf terdapat tiga file zone dari instalasi default. File named.ca adalah file dari root zone, kita bisa saja membuat file ini tapi sebaiknya gunakan saja file dari instalasi default. File localhost.zone adalah file dari domain localhost sedangkan named.local adalah reverse dari domain localhost. Untuk lebih jelasnya kita lihat saja langsung kedua file tersebut.arman@oridecon:/var/named$ cat localhost.zone $TTL 86400 $ORIGIN localhost. @ 1D IN SOA @ root ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum 1D IN NS @ 1D IN A 127.0.0.1

Yang perlu diperhatikan adalah dua baris terakhir. Baris kedua dari terakhir, entry tenang NS, ns inilah yang akan digunakan pada pencarian sebuah domain. Entry pada kolom terakhir yaitu @, yang menunjuk ke A record. Pada baris terakhir menentukan alamat ip yang digunakan pada domain dalam hal ini adalah localhost dengan ip 127.0.0.1. Selanjutnya adalah file reversed dari localhost yaitu named.local :arman@oridecon:/var/named$ cat named.local $TTL 86400 @ IN SOA localhost. root.localhost. ( 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry

3600000 ; Expire 86400 ) ; Minimum IN NS localhost. 1 IN PTR localhost.

Perhatikan pada baris terakhir yang entry pada kolom pertama adalah 1, berarti reverse mempunyai ip 127.0.0.1 karena telah disebutkan di file named.conf. Yang juga perlu diperhatikan adalah entry serial, jika mengunakan dns slave setiap kali mengganti entry dari file zone kita juga harus mengganti serial (formatnya biasanya sesuai dengan tanggal) sehingga server dns slave bisa menyesuaikan setiap perubahan seperti yang di dns master. Domain Kita Setelah file localhsot dan reversenya kita intip sekarang kita mo buat domain buat kita, seperti yang disinggung diatas kita bisa membuat domain untuk kita, seperti contoh kita diatas gorrilla.com dengan ip 192.168.1.1, tambahkan bari berikut di named.confzone gorilla.com IN { type master; file gorilla.zone; allow-update { none; }; }; zone 1.168.192.in-addr.arpa IN { type master; file 192.168.1.zone; allow-update { none; }; };

Saya sarankan untuk mengcopy saja entry dari localhost dan reversenya, untuk menghindari kesalahan pengetikan kecuali anda termasuk orang yang teliti dan suka buang waktu . Setelah membuat perubahan pada file named.conf sekarang kita buat filenya, seperti yang telah di defenisikan bahwa file yang digunakan oleh domain gorilla.com adalah gorilla.zone dan reversenya adalah 192.168.1.zone. Saya juga menyarankan untuk mengcopy saja dari file zone localhost.# cp localhost.zone gorilla.zone # cp named.local 192.168.1.zone

Selanjutnya adalah menyesuaikan dengan domain kita, ganti semua kata localhost dengan gorilla.com pada file tersebut seperti ini :$TTL 86400 $ORIGIN gorilla.com. @ 1D IN SOA @ root ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum 1D IN NS dns.gorilla.com. 1D IN A 192.168.1.1 dns 1D IN CNAME @ www 1D IN CNAME @ arman 1D IN A 192.168.1.99

Pada konfigurasi ini kita juga menambahkan subdomain, yaitu dns.gorilla.com, www.gorilla.com dan arman.gorilla.com. Untuk dns.gorilla.com dan www.gorilla.com menunjuk pada ip yang sama yaitu 192.168.1.1 . Kita bahas baris yang menurut saya penting.$ORIGIN gorilla.com.

Biasanya berisikan nama domain yang digunakan. Pada kasus kita gorilla.com.1D IN NS dns.gorilla.com.

Bagian ini merupakan entry dari NS server dari domain kita. Jika kita menggunakan lebih dari satu NS untuk domain kita tinggal tambahkan saja NS entry berikutnya. Umumnya jika kita mendaftarkan domian di registrant

domain dibutuhkan lebih dari satu NS.1D IN A 192.168.1.1

Baris merupakan alamat ip dari domain yang digunakan, yaitu 192.168.1.1.www 1D IN CNAME @ arman 1D IN A 192.168.1.99

Baris pertama merupakan subdomain www yang menunjuk pada A record, jadi jika mengakses www.gorilla.com maka yang ip address yang di tuju adalah 192.168.1.1. Untuk baris berikutnya adalah sebuah sub domain dengan nama arman yang menunjuk ke ip 192.168.1.99, baris ini tidak lagi menggunakan CNAME melainkan A karena ip yang digunakan adalah berbeda dengan ip dari default domain yaitu gorilla.com. Jika kita mengakses arman.gorilla.com sebetulnya mengakses ke 192.168.1.99. Hal yang sama juga kita buat untuk membuat domain dengan ip public. Silahkan menambahkan sub sub domain yang lain lagi jika memang dibutuhkan. Selanjutnya adalah reverse dari gorilla.com.$TTL 86400 @ IN SOA gorilla.com. root.gorilla.com. ( 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS gorilla.com. 1 IN PTR gorilla.com. 99 IN PTR arman.gorilla.com.

Seperti halnya reverse dari localhost kita juga hanya mengisikan ip dari daftar domain dan sub domain yang kita buat. Jika sudah selesai, silahkan merestart bind :# /etc/rc.d/rc.bind restart

DNS Server di Centos 51.Tujuan Dikantor saya sekarang sudah dibangun beberapa server, dimana akses ke server masih menggunakan IP Address. Seiring dengan perkembangan layanan yang akan digunakan maka semakin banyak server yang akan dibangun, supaya memudahkan karyawan untuk mengakses server ini maka akan dibuat domain dengan nama nockplace.net, dengan catatan bahwa domain ini hanya bersifat lokal dan hanya dikenali lewat dns lokal. 2. Intall Paket[root@kuningan ~]# yum install bind bind-chroot bind-libs bind-utils caching-nameserver

3. Konfigurasi RNDC[root@kuningan ~]# cd /var/named/chroot/etc/ [root@kuningan etc]# rndc-confgen > rndc.key [root@kuningan etc]# chown root:named rndc.key

Edit rndc.key seperti ini:[root@kuningan etc]# vim rndc.key # Start of rndc.conf key rndckey { algorithm hmac-md5; secret HegIBd7PDqY5mQYzCe5L0w==; };

4. Konfigure named.conf[root@kuningan etc]# vim /var/named/chroot/etc/named.conf

Konfigurasi named.conf seperti dibawah://sertakan isi file rndc.key rndc.key created earlier) key "rndckey" { algorithm hmac-md5;

secret "hm02WBI+QIkj1foxW881+w=="; }; //dns server adalah 10.200.16.11 dimana akan //memberikan kontrol kepada alamat jaringan yang //menggunakan dns controls { inet 127.0.0.1 allow { 127.0.0.1; } keys { "rndckey"; }; inet 10.200.16.11 allow { 10.200.16.0/25; } keys { "rndckey"; }; inet 10.200.16.11 allow { 10.200.15.128/25; } keys { "rndckey"; }; }; options { directory "/var/named"; pid-file "/var/run/named/named.pid"; recursion yes; allow-recursion { 127.0.0.1; 10.200.16.0/25; 10.200.15.128/25; }; forwarders { 202.51.96.5; 202.51.96.10; }; listen-on { 127.0.0.1; 10.200.16.11; }; query-source address * port 53; // so people can't try to guess what version you're running version "REFUSED"; allow-query { 127.0.0.1; 10.200.16.0/25; 10.200.15.128/25; }; }; server 10.200.16.11 { keys { rndckey; }; }; zone "." IN { type hint; file "named.ca"; }; zone "nockplace.net" IN { type master; file "nockplace.net.db"; };

5. Membuat zona[root@kuningan etc]# vim /var/named/chroot/var/named/ nockplace.net.db

Isinya adalah seperti berikut :$ttl 38400 nockplace.net. IN SOA ns.nockplace.net. admin.nockplace.net. ( 2007020400 ; Serial 10800 ; Refresh after 3 hours 3600 ; Retry after 1 hour 604800 ; Expire after 1 week 86400 ) ; Minimum TTL of 1 day nockplace.net. IN NS ns.nockplace.net. nockplace.net. IN MX 1 mx.nockplace.net. nockplace.net. IN MX 5 mx2.nockplace.net. www.nockplace.net. IN A 10.200.16.11 ns.nockplace.net. IN A 10.200.16.11 cacti.nockplace.net. IN A 10.200.16.11 mrtg.nockplace.net. IN A 10.200.16.17

mx.nockplace.net. IN A 10.200.16.11 mx2.nockplace.net. IN A 10.200.16.11 mail.nockplace.net. IN CNAME mx.nockplace.net.

6. Mengubah resolv.conf[root@kuningan etc]# vim /etc/resolv.conf

Ubah nameserver menjadi : nameserver 127.0.0.1[root@kuningan etc]# service network restart

7. Menjalankan Service DNS[root@kuningan etc]# service named start [root@kuningan etc]# chkconfig named on

8. Query[root@kuningan etc]# nslookup www.nockplace.net Server: 127.0.0.1 Address: 127.0.0.1#53 Name: www.nockplace.net Address: 10.200.16.17

9. Pengaturan Document Root[root@kuningan etc]# vim /etc/httpd/conf/httpd.conf

Tambahkan:DocumentRoot /var/www/html/mrtg-mon ServerName mrtg.nockplace.net

10. Troubleshooting Untuk menghilangkan firewall:[root@kuningan etc]# iptables -F

I. PENDAHULUAN DNS (Domain Name System) adalah sebuah sistem yang menjaga informasi tentang nama host (hostname) dan juga nama domain (domain name) dalam bentuk database tersebar (distributed database) pada jaringan komputer. Dengan DNS, sebuah alamat IP dapat dipetakan ke dalam hostname dan domain name yang lebih mudah diingat oleh manusia. Adalah lebih mudah bagi kita untuk mengingat nama www.google.com dibandingkan dengan 66.249.89.99. DNS ditemukan oleh Paul Mockapertis pada tahun 1983.Ada beberapa metode untuk membuat server DNS, namun dalam tutorial ini akan dijelaskan cara membuat server DNS menggunakan BIND karena aplikasi BIND merupakan aplikasi terpopuler dalam membuat server pada saat ini dan dengan asumsi bahwa paket BIND sudah ada di dalam sistem. II. Istilah-istilah Pada DNS

RR atau Resource Records adalah kumpulan sumber informasi yang berhubungan dengan nama-nama domain. Namespace adalah struktur dari seluruh DNS yang berbentuk pohon terbalik Nameserver adalah program-program yang menyimpan informasi tentang namespace domain. TLD or Top-Level Domain adalah level domain paling atas dibawah root (.). Contoh dari TLD adalah .com, .net, .org, dan sebagainya. Delegation atau delegasi adalah memberikan sbuah tanggung jawab kepada sebuah subdomain untuk mengatur dirinya sendiri. Registry adalah sebuah organisasi yang bertanggung jawab untuk menjaga file-file data di TLD dan mendelegasikannya ke setiap subdomain dari TLD itu. Contoh Verisign untuk mengelola TLD .com dan .net. Registrar adalah sebuah organisasi yang bertindak sebagai antar muka (interface) antara pelanggan

dan registry atau lebih dikenal dengan nama ISP. Contohnya idwebhost.

Registration adalah proses dimana pelanggan mendelegasikan sebuah subdomain kepadanya.

memberitahukan

ke

sebuah

registrar

untuk

Zone atau zona adalah sebuah daerah yang mencakup sebuah domain utuh atau hanya sebagian saja.

III. BIND BIND singkatan dari Berkeley Internet Name Domain yang ditulis oleh Kevin Dunlap untuk BSD UNIX 4.3 Berkeley. Pada umumnya, setiap distro linux mempunyai paket BIND, tetapi jika kita tidak menemukan paket BIND dalam distro linux, kita bisa mendapatkan BIND versi terakhir di sini. Di Centos 5, versi terakhir dari BIND adalah versi 9. Pada paket ini, BIND menyertakan paket chroot untuk meningkatkan keamanan server DNS. ada beberapa file penting di dalam BIND yang harus diperhatikan, yaitu: a) named.conf --> File konfigurasi utama untuk membuat DNS dan digunakan sebagai referensi untuk menentukan prosedur server DNS

b) named.ca --> Digunakan untuk menangani informasi server DNS root yang diperlukan untukmenginisialisasi cache dari domain server DNS internet yang disediakan oleh layanan registrasi interNIC. Di centos 5, file ini tidak ada sehingga harus di download dari sini (hasil download akan bernama named.root, namun kita akan merubah menjadi named.ca). c) resolv.conf --> Berisi alamat domain atau alamat IP dari nameserver (biasanya IP ISP) d) Zona forward --> Memetakan domain name ke alamat IP e) Zona Reverse --> Memetakan alalamt IP ke domain name

III. CARA KERJA DNS Untuk memahami bagaimana DNS itu bekerja, lihat gambar berikut ini:

Misal kita mau mengecek email kita di warnet dan dibrowser kita ketikkan http://mail.yahoo.com. Setelah itu PC kita akan mengontak server DNS lokal (Jaringan ISP yang terhubung ke warnet itu) untuk menanyakan alamat IP dari http://mail.yahoo.com. (Panah 1) Server DNS lokal akan melihat ke dalam memori cachenya (Panah 2) Jika data itu ada di cachenya, server tersebut akan memberikan alamat IP ke browser PC kita (Panah 5). Jika tidak, maka server tersebut mengontak server DNS di atasnya untuk mengetahui alamat IP tersebut. Jika domain itu benar-benar ada, maka root DNS akan mendapatkan alamat IP tersebut, kemudian akan dikirimkan ke server DNS lokal kita (Panah 3). Server DNS lokal akan mengontak server DNS mail.yahoo.com untuk menanyakan alamat IP-nya, dan

server mail.yahoo.com akan mengirimkannya ke server DNS lokal kita (Panah 4). Server DNS lokal kita akan memberitahukan alamat IP untuk mail.yahoo.com kepada browser PC kita. Kemudian PC kita akan menggunakan alamat IP tersebut untuk mengontak mail.yahoo.com

IV. Persiapan nama domain Kita akan membuat domain baru untuk server DNS, mail server dan webserver. Domain name: example.com DNS server name: ns1.example.com IP DNS server: 192.168.1.2 Mail server name:mail.example.com HTTP serever: www.example.com V. Konfigurasi BIND 1. Cek paket BIND Cek paket BIND di sistem kita, apakah sudah ada atau belum dengan cara:# rpm -qa | grep bind

2. Konfigurasi rndc key rndc key digunakan untuk mengendalikan operasi dari server DNS. Asalnya, rndc key sudah tersedia di dalam paket BIND. Kita bisa menggunakan apakah menggunakan yang sudah tersedia atau membuat yang baru. Jika kita ingin membuat RNDC key yang baru, maka berikan perintah:# cd /var/named/chroot/etc/ # rndc-confgen > rndc.key

Setelah itu lihat file rndc.key dan akan berbentuk seperti ini:

Hapuslah dari baris options sampai selesai dan salin bagian yang tidak dihapus untuk ditaruh di file named.conf. 3. Konfigurasi named.conf Sesudah mengkonfigurasi rndc.key, kita harus memasukkan file rndc.key dan menyalinKey rndc.key { };

Maka sesudah itu kita harus membuat file named.conf di direktory yang sama dengan cara:# vi named.conf dan menambahkan seperti berikut: // mulai named.conf //kita masukkan rndc.key (copy-paste dari rndc.key yang baru dibuat) key "rndckey" { }; // kita asumsikan server kita mempunyai IP 192.168.1.2 yang melayani 192.168.1.0/24 controls { inet 192.168.1.2 allow { 192.168.1.0/24; } keys { "rndckey"; }; }; options { directory "/var/named"; pid-file "/var/run/named/named.pid"; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ query-source address * port 53; // so people can't try to guess what version you're running version "REFUSED"; allow-query { any; }; }; server 192.168.1.2 { keys { rndckey; }; }; zone "." IN { type hint; file "data/named.ca"; };

// Kita asumsikan dns server kita adalah example.com zone "example.com" IN { type master; file "data/example.com.zone"; allow-update { none; }; }; // Kita asumsikan bahwa zona reverse kita adalah 1.168.192 zone "1.168.192.in-addr.arpa" IN { type master; file "data/1.168.192.zone"; }; // end of named.conf

4. Konfigurasi zona forward Sesudah kita mengkonfigurasi named.conf kita harus membuat forward zone di dengan cara# vi /var/named/chroot/var/named/data/example.com.zone

dan mengkonfigurasinya seperti ini:$TTL 38400 @ ; 10 hours 40 minutes IN SOA ns1.example.com. admin.example.com. ( 2007020400 ; serial 180 360 604800 86400 NS A MX ftp mail ns1 www IN IN IN IN A CNAME CNAME CNAME ns1 ns1.example.com. 192.168.1.2 10 mail.example.com. ns1 ns1 192.168.1.2 ; refresh (3 minutes) ; retry (6 minutes) ; expire (1 week) ; minimum (1 day) )

Penjelasan singkat: TTL (Time to Live) --> Panjang waktu nameserver untuk menyimpan sebuah record. Jika TTL berakhir, nameserver harus membuang data yang tersimpan dan mendapatkan data baru dari nameserver otoritative SOA (Start of Authority) --> Mengindikasikan otoritas untuk zona ini IN (Internet Name) --> Digunakan jika menggunakan protokol TCP/IP ns1.example.com --> Hostname yang bertanggungjawab untuk domain example.com admin.example.com --> Alamat email administrator serial --> Nomor serial yang akan bertambah jika data berubah, biasanya ditulis dengan format YYMMDDxx

refresh --> Panjang waktu untuk server secondary untuk mengecek perubahan di server primer retry --> Panjang waktu untuk server secondary untuk menunggu verifikasi terhadap perubahan di server primer jika server primer tidak memberikan respon ketika refresh expire --> Panjang waktu untuk secondary server untuk menahan zona file jika server secondary tidak melakukan keadaan refresh @ --> Bagian ini identik dengan dengan zona yang didefinisikan di named.conf dan bisa digantikan dengan nama DNS (misal: example.com) NS (Name Server) --> Digunakan untuk mendefinisikan sever hostname DNS dan harus diakhiri dengan tanda titik. minimum ttl --> Menentukan nilai ttl untuk seluruh record di zona forward IN NS ns1.example.com --> Mendefinisikan bahwa hostname ns.example.com yang memegang tanggung jawab terhadap domain example.com IN MX 10 mail.example.com --> Mendefinisikan bahwa hostname mail.example.com yang memegang tanggung jawab sebagai mail server di domain example.com. nomor mewakili prioritas ketika pengiriman surat dan nomor kecil menjadi prioritas utama ns IN A 192.168.1.2 --> Mengecek bahwa hostname ns.example.com mempunyai alamat IP di 192.168.1.2 mail IN CNAME NS --> Mengecek bahwa hostname ns.example.com mempunyai nama lain (name alias) mx.example.com 5. Konfigurasi zona reverse Sesudah mengkonfigurasi zona forward, kita harus membuat zona reverse di dalam direktori yang sama dan mengkonfigurasinya seperti ini:# vi /var/named/chroot/var/named/data/1.168.192.zone

dan mengkonfigurasinya seperti ini:$TTL 38400 @ ; 10 hours 40 minutes IN SOA ns1.example.com. admin.example.com. ( 2007020404 ; serial 180 360 604800 86400 NS 2 IN PTR ns1.example.com. arfie.example.com ; refresh (3 minutes) ; retry (6 minutes) ; expire (1 week) ; minimum (1 day) )

penjelasan singkat: 2 IN PTR arfie.example.com --> mengecek bahwa hostname arief.example.com mempunyai alamat IP di 192.168.1.2 sisanya sama dengan zona forward 6. Konfigurasi resolve.conf Kita harus mengkonfigurasi file resolve.conf di /etc/resolv.conf dan mengkonfigurasinya seperti ini:nameserver 192.168.1.2

7. Menambahkan named.ca Setelah mendownload named.root, maka ubahlah namanya menjadi named.ca dengan cara

# mv named.root named.ca

lalu pindahkan file ini ke /var/named/chroot/var/named/data# mv named.ca /var/named/chroot/var/named/data

8. Menyalakan Server DNS Sesudah mengkonfigurasi server DNS, kita harus mengecek apakah server DNS kita sudah bekerja atau belum. Gunakan perintah ini:# service named start

9. Mengecek server DNS Gunakan nslookup atau dig untuk mengecek server DNS# nslookup example.com

# dig example.com

VI. Troubleshooting Mungkin apabila kita pertama kali membuat server DNS, akan banyak error yang terjadi. Biasanya, error akan langsung muncul setelah kita mencoba menyalakan DNS. Tapi, terkadang error itu tidak muncul dan DNS kita tidak bekerja. Untuk itu, lihatlah di file /var/log/messages sehingga kita bisa mengidentifikasi error apa dan bagaimana cara menghilangkan error itu. Di bawah ini ada beberapa solusi untuk menghilangkan error-error yang terjadi ketika membuat server DNS:

1. File tidak ada Error:xxxxxxxxxx: file not found

Solusi: Kita memasukkan zona forward atau reverse ke direktory yang salah yang tidak sama dengan parameter yang ada di file named.conf atau bisa juga kita salah dalam membuat nama zona forward atau reverse yang tidak sama dengan parameter yang ada di file named.conf. Maka dari itu, pastikan bahwa nama file baik itu zona forward maupun zona reverse sesuai dengan yang ada di file named.conf. Dan juga pastikan bahwa, file-file tersebut sesuai dengan apa yang ada di file named.conf. 2. Non existent Domain Error:*** xxx can't find xxx: Non-existent domain

Solusi: Cek di zona reverse apakah kita sudah memberi pointer kepada file itu. Jika belum, buatlah pointer seperti pada bagian diatas (Konfigurasi Zona Reverse). 3. Refused Error:** server can't find ****: REFUSED

Solusi: Ganti IP DNS di /etc/resolv.conf

DNS Server di Debian 5Untuk mengkonfigurasi DNS Server menggunakan linux debian versi 5.0, ikuti langkah langkah dari gambar berikut: 1 Sebelum konfigurasi, kita Install Paket Bind-nya

2. Kemudian masukkan DVD-1 dan tekan Enter. Maka akan tampak gambar sbg berikut.

3. Lalu kita pindahkan posisi kita ke /etc/bind/

4. Lalu masukkan perintah berikut.

5. Lalu edit menjadi seperti ini.

6. Lalu edit file named.conf.options

7. Lalu edit file tsb

8. Masukkan perintah berikut.

9. Edit file db.antoksmkn1

10. Ubahlah agar menjadi seperti ini:

11. Kemudian Editlah file db.172.16.1

12. Editlah agar menjadi seperti ini:

13. Edit file /etc/resolv.conf

14. Edit mjd spt ini

15. Setelah itu, restart paket bind nya. Jika Starting domain name service failed . Maka ada kesalahan dlm Penulisan anda. Cek dari awal.!

16. Jika sudah kita jalankan perintah nslookup berikut :

15. Lalu kita cek apakah DNS server kita sudah berhasil atau belum. Masuk ke windows. Lalu klik start-run-cmd. Lalu ketikkan perintah nslookup, sama seperti di server. :

16. Jika sudah Nampak seperti gambar berikut. Maka anda sudah berhasil dalam konfigurasi DNS server. 17. Lalu kita akan mengecek konfigurasi Router dan DNS Server kita secara keseluruhan. Bukalah komp client (windows) anda, lalu buka browser. Namun sebelummnya pastikan IP di windows anda sudah anda setting dengan benar dan antara computer windows dan computer yang terinstall debian sudah terhubung menggunakan kabel cross. Lalu silahkan browsing, jika berhasil maka anda benar-benar berbakat dalam hal ini.

1. langkah pertama, buka terminal di application --> accessoris-->terminal kemudian ketikkan su masukkan password root anda 2. langkah kedua, mounting cdrom debian 5 caranya: ketik apt-cdrom add proses ini akan memerlukan waktu sedikit lama proses ini diperlukan, jika cd or dvd debian tidak terbaca dengan baik. 3. langkah ketiga install bind9 pada dvd debian 5 caranya: ketik apt-get install bind9 tunggu sampai proses selesai 4. langkah keempat ketikkan di terminal yang sudah login root: cd /etc/bind nah di direktori bind tersebut ada 3 file penting yaitu db.local, db.127, dan named.conf file-file tersebut harus ada,. 5. langkah kelima copy db.local dan db.127 dengan nama db.1 dan db.2 caranya:cp db.local db.1

dancp db.127 db.2

6. langkah keenam edit db.1 yang tadi telah di copy dari db.local caranya: nano db.1 maka akan muncul text yang kurang lebih seperti di bawah ini; ; BIND data file for local loopback interface ; $TTL 604800 @ IN SOA localhost. root.localhost. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS localhost. @ IN A 127.0.0.1 www IN A 127.0.0.1

lalu edit semua yang bernama localhost dengan debian5lenny.com, dan 127.0.0.1 dengan ip yang akan menjadi domain, disini saya gunakan 200.100.50.20 jadi kurang lebih seperti di bawah ini:; ; BIND data file for local loopback interface ; $TTL 604800 @ IN SOA www.debian5lenny.com. root.debian5lenny.com. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL

; @ IN NS debian5lenny.com. @ IN A 127.0.0.1 www IN A 200.50.100.20

jika sudah mirip seperti kode di atas, tekan ctrl+x lalu enter 7. langkah ketujuh edit db.2 ketikkan di terminal : nano db.2 maka akan muncul kode kurang lebih seperti di bawah ini:; ; BIND reverse data file for local loopback interface ; $TTL 604800 @ IN SOA localhost. root.localhost. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS localhost. 1.0.0 IN PTR localhost.

KET: 1.0.0 ada host ID dari IP anda lalu editlah menjadi seperti ini:; ; BIND reverse data file for local loopback interface ; $TTL 604800 @ IN SOA www.debian5lenny.com. root.debian5lenny.com. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS localhost. 20 IN PTR www.debian5lenny.com.

jika sudah mengedit save file tersebut dengan menekan ctrl+x lalu enter 8. langkah kedelapan edit file named.conf, caranya: nano named.conf lalu cari kode berikut:zone "localhost" {type master;file "/etc/bind/db.local"; }; dan zone "127.in-addr.arpa" { type master;file "/etc/bind/db.127"; };

kemudian edit kode tersebut hingga menjadi seperti di bawah ini:zone "debian5lenny.com" {type master;file "/etc/bind/db.1"; }; dan zone "50.100.200.in-addr.arpa" { type master;file "/etc/bind/db.2";

};

KET: 50.100.200 adalah network ID dari IP save file named.conf tersebut dengan menekan ctrl+x lalu enter 9. langkah terakhir konfigurasi resolv.conf caranya : nano /etc/resolv.conf kemudian ketikkan kode dibawah ini dibawah kode "##END INFO##"nameserver 200.100.50.20

jika sudah save dengan ctrl+x lalu enter kemudian restart bind dengan mengetikkan /etc/init.d/bind restart jika bind berhasil di restart, berarti tidak ada kesalahan konfigurasi cek koneksi apakah dns bisa atau tidak dengan mengetikkan nslookup www.debian5lenny.com

DHCP Server di Fedora 10Berikut yang akan dibahas dalam tulisan ini: 1. Instalasi DHCP 2. Konfigurasi DHCP 3. Cek konfigurasi DHCP 4. Menjalankan DHCP Intalasi DHCP Untuk melakukan intalasi anda harus mempunyai akses sebagai root, berikut cara instalasi dhcp server dengan YUM[root@]# yum install dhcp

Setelah intalasi selesai kita bisa cek apakah dhcp sudah terinstall atau belum dengan Command Line sbb[root@]# yum list dhcp

Loaded plugins: refresh-packagekit Installed Packages dhcp.i386 12:4.0.0-33.fc10 installed Konfigurasi DHCP File konfigurasi dhcp ada di /etc/dhcpd.conf Edit file dhcpd.conf dan masukkan konfigurasi sbb# Start of Configuration option domain-name "bayu.local"; # Isi sesuai dengan domain anda option domain-name-servers 202.123.22.155; # Isi dengan dns server yang anda pakai default-lease-time 600; max-lease-time 7200; #Konfigurasi Range IP yang akan diberikan di network subnet 172.16.5.0 netmask 255.255.255.0 { range 172.16.5.241 172.16.5.250; option domain-name-servers 202.123.22.155; option domain-name "nmx-sby.local"; option routers 172.16.5.225; option broadcast-address 172.16.5.210; default-lease-time 600; max-lease-time 7200; } #Konfigurasi untuk fix address berdasarkan mac Address host komputerku {

hardware ethernet 00:11:D8:B8:1D:0F; fixed-address 172.16.5.149; }

Cek konfigurasi DHCPSetelah konfigurasi selesai check konfigurasi dengan Command sbb [root@]# /etc/init.d/dhcpd configtest Syntax: OK

Kalo muncul syntax ok berarti file konfigurasi sudah benar Menjalankan DHCP Server Untuk menjakan dhcp server ketikkan command sbb :[root@]/etc/init.d/dhcpd start

Dan untuk menjalankan dhcp server saat server di restart ketiikan Command line sbb:[root@]ntsysv

akan muncul suatu dialog yang berisi service-service yang tersedia di server anda , setalah dialog muncul pilih dhcpd lalu tekan OK.

DHCP Server di Debian 5Bagi Anda yang ingin membangun jaringan yang besar, bila Anda tidak ingin mengisi ip kepada host-host atau client Anda secara manual dan melelahkan (karena harus mengisi satu-satu) inilah solusinya. Dengan menggunakan DHCP (Dinamyc Host Configuration Protocol) Anda akan sangat terbantu karena pengisian ip dilaksanakan otomatis. berikut caranya : 1. Masuk sebagai Root. 2. Menginstal DHCP#apt-get install dhcp3-server

3. backup file dhcpd.conf (opsional/antisipasi kesalahan setting)#cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcp.conf.bak

4. Pertama kali tentukan interface mesin anda dengan mengedit file /etc/default/dhcp3-server menggunakan editor kesukaan anda (kalo saya biasa pake pico or nano)# nano /etc/default/dhcp3-server

Pada baris INTERFACES, masukkan ethernet yang anda gunakan untuk melayani permintaan dhcp dari client. Jika ada lebih dari satu interface gunakan spasi.INTERFACE=eth0

5. Edit dhcp.conf, caranya: ketik mc masuk directory /etc/dhcp3/ sorot dhcp.conf lalu tekan F4

6. Berikut ini contoh dari file konfigurasi tersebut :subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.2 192.168.1.200; option domain-name-servers 192.168.100.1; option domain-name smktelkom.edu; option routers 192.168.1.1; option broadcast-address 192.168.1.255; default-lease-time 600; max-lease-time 7200; }

7. Baris-baris diatas kurang lebih mengandukng makna sebagai berikut : subnet 192.168.1.0 netmask 255.255.255.0 alamat network (subnet) yang digunakan

range 192.168.1.2 192.168.1.200; range ip address yang diterima client dalam hal ini mulai 192.168.1.2 s/d 192.168.1.200 option domain-name-servers 192.168.100.1; alamat DNS server pada network kita option domain-name internal.example.org; nama domain kita option routers 192.168.1.1; alamat ip server dhcp yang berperan juga sebagai router option broadcast-address 192.168.1.255; alamat broadcast default-lease-time 600; waktu peminjaman 600 detik = 10 menit max-lease-time 7200; maksimum waktu peminjaman 7200 detik = 2 jam

8. Setelah semua konfigurasi benar dan sesuai dengan konfigurasi network anda, selanjutnya jalankan layanan dhcp server# /etc/init.d/dhcp3-server start

Ok konfigurasi telah sukses, tinggal setting TCP/IP pada client menjadi automatically ddnsupdatestyle Memberitahukan DHCP server untuk mengupdate sebuah DNS server jika IP address pada jaringan sudah diganti. option domainnameserver Memberitahukan DHCP server bahwa DNS servernya dapat diberikan pada client serta dapat menspesifikasikan lebih dari satu DNS server. Defaultleasetime, maxleasetime. Sebuah client dapat memberitahukan DHCP server berapa lama untuk memperoleh sebuah IP address. Defaultleasetime 86400 dan maxleasetime 604800. Authoritative Jika ini tidak disetting, berarti jika ada client yang meminta sebuah address maka hal tersebut tidak benar untuk segment network, server tidak akan mengirimkan sebuah DHCPNAK (yang memberitahukan client bahwa itu dapat memberhentikan addressnya) Subnet Subnet yang digunakan 192.168.100.0. Netmask Netmask yang digunakan 255.255.255.0. Range Memberitahukan server DHCP dari range mana IP address yang dapat diberikan pada client, disini range yang diberikan dari IP address 192.168.100.10 sampai dengan 192.168.100.25. option broadcastaddress broadcast address yang digunakan 192.168.100.255. option routers Memberitahukan DHCP server gateway address yang dapat diberikan untuk permintaan client adalah 192.168.100.1.

DHCP Server di Centos 5I. Pendahuluan DHCP (Dynamic Host Configuration Protocol) adalah protokol TCP/IP yang tugasnya memberikan alamat IP secara otomatis kepada client yang bersifat dinamis, sehingga vlient tidak perlu

mengisikan alamat IP secara manual. Program di linux yang berlaku sebagai server DHCP adalah dhcpd. Supaya dapat memperoleh layanan DHCP, komputer client harus memasang program klien yaitu dhcpcd. Layanan DHCP tidak hanya memberikan alamat IP pada masing-masing klien, layanan ini dapat juga digunakan untuk mengatur konfigurasi jaringan pada komputer klien seperti server DNS, server NIS, dan sebagainya. Dengan adanya server DHCP, konfigurasi jaringan komputer klien dapat diatur secara terpusat. II. Karakteristik Server DHCP Karakteristik dari server DHCP yang berjalan di sistem linux adalah: 1. Server dapat berjalan lebih cepat & stabil. Sistem-sistem Unix clone sudah diakui mempunyai reliabilitas yang sangat tinggi dalam menjalankan aplikasi-aplikasinya, dan ini berarti termasuk juga di Linux yang juga merupakan salah satu clone Unix. Linux juga seperti turunan Unix lain dapat dioperasikan hanya dengan command text saja. Ini berarti resource yang dibutuhkan server pasti lebih kecil daripada resource yang dibutuhkan untuk menjalankan software berbasis grafis seperti di sistem Windows. 2. Dijalankan dengan dua aplikasi daemon untuk server dan client, misalnya : dhcpd (DHCP daemon) untuk server dan dhcpcd (DHCP client daemon) untuk client. 3. File-file setting untuk DHCP di Linux umumnya diletakkan di dalam direktori /etc dan /var/lib/dhcp. 4. Setting DHCP dilakukan dalam sebuah file yaitu : /etc/dhcpd.conf dan akan menyimpan hasil transaksi penyewaan IP address di dalam sebuah file yang bernama /var/lib/dhcpcd.leases. Bila file ini tidak ada, DHCP tidak akan dapat bekerja. 5. Setting relatif mudah karena hanya dipusatkan di satu file saja (/etc/dhcpd.conf) dan hanya terdiri dari beberapa baris perintah untuk memberikan layanan yang cukup lengkap. III. Cara Kerja Pada saat suatu client boot-up, mesin tersebut membroadcast suatu request ke server DHCP, kemudian server membalas dengan alamat IP, netmask dan berbagai macam konfigurasi. Komunikasi tergantung sepenuhnya pada broadcast, hingga percakapan antara client dan server berakhir, client tidak memiliki IP valid. DHCP menggunakan UDP sebagai transportnya,server DHCP akan listening atau mendengarkan pada port 67. Client DHCP broadcast ke UDP port 67, dan server menjawab ke UDP port 68.

IV. Langkah-Langkah A. Di sisi server 1. Cek Paket Cek paket-paket dhcp dengan cara: # rpm -qa | grep dhcp

2. Copy File dhcp Untuk mengkonfigurasi dhcp, buka file dhcp dengan cara: # vi /etc/dhcpd.conf

maka kita hanya akan melihat tampilan sebagai berikut:

oleh karena itu, gunakan perintah berikut agar kita bisa mengkonfigurasi file dhcp:# cp /usr/share/doc/dhcp*/dhcp.conf.sample /etc/dhcpd.conf

Perlu diperhatikan disini bahwa dhcp* merupakan versi dari dhcp itu sendiri. Untuk melihat versi dhcp pada saat pengetikan perintah diatas, tekan saja tombol tab. Di server penulis, dhcpnya versi 3.0.5, maka penulisan perintah di atas menjadi:# cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf

sehingga file dhcpd.conf akan terlihat sebagai berikut:

3. Konfigurasi dhcp

Kita mulai mengkonfigurasi dhcp, namun kita harus melihat keterangan sebagai berikut: - ddns-update-style --> Pilihan ddns-update-style diletakkan pada konfigurasi awal dhcpd.conf anda, parameter ini diperlukan jika server anda menggunakan dynamic dns lokal, yang akan memetakan client lokal anda dengan sebuah nama, untuk setiap ip yang di pinjamkan ke client, sehingga dhcp server akan melakukan update dns jika server menggunakan dns untuk meresolve nama server dan client. ISC (Internet Software Consortium) yang membuat aplikasi isc-dhcp ini mengisyaratkan untuk secara default menggunakan parameter ddns-update-style ini. Ada 3 pilihan ddns-update-style ini yakni interim, adhoc, dan none. ddns-update-style interim;

subnet 192.168.0.0 netmask 255.255.255.0 --> Jaringan yang diatur dengan layanandhcp ini mempunyai alamat jaringan 192.168.0.0 dengan netmask 255.255.255.0

Option routers --> Menentukan default gateway komputer klien option subnet mask --> Menentukan subnet mask untuk subnetoption domain-name --> menentukan Domain Name dari server dhcp anda, jika ada. atau bisa diisi sebagai penamaan host lokal anda, tanpa harus menggunakan domain yang terdaftar.option domain-name "domain.org";

option domain-name-servers --> Menentukan Informasi DNS, diperlukan oleh client untuk meresolve informasi domain name, jika akan melakukan sambungan ke internet.option domain-name-servers 192.168.1.2;

option ntp-servers --> Menentukan server NTP untuk subnet option netbios-name-servers --> Menentukan server NetBIOS atau disebut juga serverWINS

range dynamic-bootp --> Menentukan range alamat IP untuk subnet default-lease --> Menentukan waktu yang dialokasikan ketika sebuah ip dipinjamkankepada komputer client, setelah waktu pinjam ini selesai, maka ip tersebut dapat dipinjam lagi oleh komputer yang sama, atau komputer tersebut mendapatkan nomer ip lain jika komputer yang sebelumnya dipinjam dipergunakan oleh komputer lain. default-lease-time --> Lama waktu server meminjamkan alamat ip kepada client, dalam satuan detik.default-lease-time 21600;

max-lease-time --> Menentukan waktu maksimum yang di alokasikan untuk peminjaman ip oleh dhcp server ke client dalam satuan detik.Max-lease-time 43200;

host ns --> Menentukan klien agar diberikan alamat IP khusus. Tentu saja, tidak semua baris konfigurasi di atas diperlukan. Jika kita tidak memerlukannya beri tanda pagar (#) di bagian paling kanan dari pernyataan yang tidak kita butuhkan. Dalam kasus ini, kita akan membuat server DHCP dengan IP 192.200.200.100 dan subnet mask 255.255.255.0 dengan range IP klien dari 192.200.200.200 sampai 192.200.200.250. Maka dari itu kita mengkonfigurasi file dhcpd.conf seperti di bawah ini:

4. Menyalakan Server dhcp Berikan perintah di bawah ini untuk menyalakan server dhcp: # service dhcpd start

B. Di sisi klien 1. Cek paket Cek paket-paket dhcp di komputer klien. 2. Konfigurasi client Jika komputer klien sudah mempunyai IP, maka hapus IP tersebut dan arahkan gateway clien tersebut ke server DHCP (Dalam hal ini 192.200.200.100). Setelah itu restart jaringan dengan cara: # service network restart Jika semua tidak ada masalah, maka server dhcp akan memberikan IP ke clien tersebut.

V. Lain-lain 1. IP Khusus Jika kita ingin memberikan IP khusus kepada satu komputer saja, maka gunakan host ns yang ada pada file /etc/dhcpd.conf. Masukkan ethernet komputer dan IP yang akan digunakan. 2. DHCP Lebih Dari Satu Jaringan Contoh di atas menggunakan satu jaringan saja. Lalu bagaimana jika ada lebih dari satu jaringan? Hal itu bisa disiasati dengan cara menyalin skrip yang ada di file /etc/dhcpd.conf, lalu hasil salinannya ditempatkan di bawah skrip tadi dan kita bisa mulai mengkonfigurasi jaringan yang berbeda dengan skrip sebelumnya.

DHCP SERVER Dengan Linux Slackware 13Intall Paket DHCP Untuk paket yang di butuhkan : dhcp-3.1.2p1.i486-1.txz -> paket yang wajib untuk membuat server dhcpd dhcpcd-3.2.3-i486-1.txz -> paket ini di gunakan jika server ini di gunakan sebagai client-server jika tidak sebagai client tidak perlu di install. Disini saya hanya menggunakan paket dhcp-3.1.2p1.i486-1.txz karna tidak sebagai client-server Cuma sebagai server aja. Pertama-tama kita ambil paket di dalam flashdisk dengan mengecek slot flashdisk ada dmana & harus login sbagai root.fahran@slacker:~# dmesg

sebelumnya kita membuat directory baru di media untuk memount semua isi flashdisk.fahran@slacker:~#cd /media fahran@slacker: /media/#mkdir usb fahran@slacker:~#cd

selanjutnya kita akan mengambil paket dari dalam flashdisk yang sudah kita mount di media/usb.fahran@slacker:~#mount /dev/sda1 /media/usb/ -> sda1 ini dmana slot flashdisk terpasang bisa di sdb1

dan sdc1 untuk mengeceknya gunakan perintah dmesg cari nama flashdisk kita di slot mana terpasang. Selanjutnya kita masuk ke dalam directory /media/usb.fahran@slacker:~#cd /media/usb/

dsini kita akan menginstall paket-paket yang dibutuhkan yang ada di dalam /media/usb.fahran@slacker: /media/usb/#installpkg dhcp-3.1.2p1.i486-1.txz -> paket wajib untuk membuat dhcp

serverfahran@slacker: /media/usb/#installpkg dhcpcd-3.2.3-i486-1.txz -> ini tidak perlu di install jika server

tidak sebagai client, dsini kami tdak menginstall dhcpcd-3.2.3-i486-1.txz.fahran@slacker: /media/usb/#cd

setelah selesai install dan tidak terjadi error pada paketnya selanjutnya kita cek apakah sudah terinstall apa belum.

fahran@slacker:~# ls /var/log/packages/ | grep dhcp dhcp-3.1.2p1.i486-1 dhcpcd-3.2.3-i486-1 -> ini akan muncul jika kita install dhcpcdnya

Selanjutnya kita masuk ke konfigurasi dhcpnya, sebelumnya pada file dhcp.conf berisi file kosong untuk mengisinya kita copy aja sample dari dhcp.confnya.fahran@slacker:~# cp /usr/doc/dhcp-3.1.2p1/examples/dhcpd.conf /etc/dhcpd.conf fahran@slacker:~# vi /etc/dhcpd.conf # dhcpd.conf # # Sample configuration file for ISC dhcpd # # option definitions common to all supported networks... #option domain-name "example.org"; -> untuk nama domain kita samakan saja di /etc/hosts sebagai contoh

wedusupnvj.org#option domain-name-servers ns1.example.org, ns2.example.org; -> adalah IP Address dari DNS

server sebagai contoh 192.168.10.10 ket : Domain Name dari server dhcp anda, jika ada. atau bisa diisi sebagai penamaan host lokal anda, tanpa harus menggunakan domain yang terdaftar. Ket : jika anda mempunyai DNS hilangkan tanda pagar # agar dibaca oleh server.ddns-update-style none;

ket : Pilihan ddns-update-style diletakkan pada konfigurasi awal dhcpd.conf anda, parameter ini diperlukan jika server anda menggunakan dynamic dns lokal, yang akan memetakan client lokal anda dengan sebuah nama, untuk setiap ip yang di pinjamkan ke client, sehingga dhcp server akan melakukan update dns jika server menggunakan dns untuk meresolve nama server dan client. ISC (Internet Software Consortium) yang membuat aplikasi isc-dhcp ini mengisyaratkan untuk secara default menggunakan parameter ddns-update-style ini. Ket : hilangkan tanda # pada ddns-update-style none.default-lease-time 600; max-lease-time 7200;

ket : Lease time, adalah waktu yang dialokasikan ketika sebuah IP Address dipinjamkan kepada komputer client, setelah waktu pinjam ini selesai, maka IP tersebut dapat dipinjam lagi oleh komputer yang sama, atau komputer tersebut mendapatkan IP Address lain jika komputer yang sebelumnya dipinjam dipergunakan oleh komputer lain. default-lease-time, maksudnya adalah lama waktu server meminjamkan alamat ip kepada client, dalam satuan detik, 600 detik. sedangankan max-lease-time adalah waktu maksimum yang di alokasikan untuk peminjaman ip oleh dhcp server ke client dalam satuan detik, 7200 detik.# If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. # authoritative;

ket : Parameter ini dipergunakan untuk mengembalikan ke status awal, jika ada client yang baru bergabung dengan LAN dhcp, yang berasal dari subnet lain, untuk kembali ke status awal, dan menghapus status jaringan yang lama. Jika anda ingin dhcp server anda lebih reliable dalam menangani lease ip client anda, maka jangan lupakan parameter berikut ini.# Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; # This is a very basic subnet declaration. subnet 192.168.10.0 netmask 255.255.255.0 { -> alamat Network yang digunakan dalam jaringan range 192.168.10.10 192.168.10.20; -> alamat ip yang akan disewakan kepada client #option routers rtr-239-0-1.example.org; -> IP Address computer server untuk di jadikan gateway, contoh 192.168.10.10 }

# This declaration allows BOOTP clients to get dynamic addresses, # which we don't really recommend. #subnet 10.254.239.32 netmask 255.255.255.224 { # range dynamic-bootp 10.254.239.40 10.254.239.60; # option broadcast-address 10.254.239.31; # option routers rtr-239-32-1.example.org; #} # A slightly different configuration for an internal subnet. #subnet 10.5.5.0 netmask 255.255.255.224 { # range 10.5.5.26 10.5.5.30; # option domain-name-servers ns1.internal.example.org; # option domain-name "internal.example.org"; # option routers 10.5.5.1; # option broadcast-address 10.5.5.31; # default-lease-time 600; # max-lease-time 7200; #} # # # # Hosts which require special configuration options can be listed in host statements. If no address is specified, the address will be allocated dynamically (if possible), but the host-specific information will still come from the host declaration.

#host passacaglia { # hardware ethernet 0:0:c0:5d:bd:95; # filename "vmunix.passacaglia"; # server-name "toccata.fugue.com"; #} Di bawah ini adalah konfigurasi untuk host khusus jika client ingin memesan IP pada server (Host Khusus) , maka serevr akan memberikan ip yang telah di pesan oleh client. Untuk mengecek MAC address pada client XP gunakan perintah di command prompt: C:\>ipconfig /all Kemudian lihat pada Physical Address disana ada MAC Address Ethernet kita 09:32:44:5E:2F:46 kita isi di bagian hardware Ethernet pada konfigurasi dhcp.conf. #host fahran { ->Host name pada client #hardware ethernet 09:32:44:5E:2F:46; ->MAC address client di windows #fixed-address 192.168.10.15; -> IP yang dipesan oleh client #} Ket : hilangkan tanda # jika ingin menggunakan host khusus # Fixed IP addresses can also be specified for hosts. These addresses # should not also be listed as being available for dynamic assignment. # Hosts for which fixed IP addresses have been specified can boot using # BOOTP or DHCP. Hosts for which no fixed address is specified can only # be booted with DHCP, unless there is an address range on the subnet # to which a BOOTP client is connected which has the dynamic-bootp flag # set. # host fantasia { # hardware ethernet 08:00:07:26:c0:a5; # fixed-address fantasia.fugue.com; #} # # # # You can declare a class of clients and then do address allocation based on that. The example below shows a case where all clients in a certain class get addresses on the 10.17.224/24 subnet, and all other clients get addresses on the 10.0.29/24 subnet.

#class "foo" { # match if substring (option vendor-class-identifier, 0, 4) = "SUNW"; #}

#shared-network 224-29 { # subnet 10.17.224.0 netmask 255.255.255.0 { # option routers rtr-224.example.org; # } # subnet 10.0.29.0 netmask 255.255.255.0 { # option routers rtr-29.example.org; # } # pool { # allow members of "foo"; # range 10.17.224.10 10.17.224.250; # } # pool { # deny members of "foo"; # range 10.0.29.10 10.0.29.230; # } #}

Untuk mengaktifkan DHCP Server gunakan perintah:fahran@slacker:~# /usr/sbin/dhcpd start

setelah dijalanin nanti akan muncul :Internet Systems Consortium DHCP Server Copyright 2004-2007 Internet Systems Consortium. All rights reserved. For info, please visit http://www.isc.org/sw/dhcp/ Wrote 0 leases to leases file. ** Ignoring requests on start. If this is not what you want, please write a subnet declaration in your dhcpd.conf file for the network segment to which interface start is attached. ** Not configured to listen on any interfaces! If you did not get this software from ftp.isc.org, please get the latest from ftp.isc.org and install that before requesting help. If you did get this software from ftp.isc.org and have not yet read the README, please read it before requesting help. If you intend to request help from the [email protected] mailing list, please read the section on the README about submitting bug reports and requests for help. Please do not under any circumstances send requests for help directly to the authors of this software please send them to the appropriate mailing list as described in the README file. exiting.

jika ingin melihat komputer yang pernah terhubung dengan dhcp server kita, ihat isi file dhcpd.leases, secara default slackware file ini terletak di bawah direktori /var/state/dhcp, jika belum ada maka kita perlu membuat file kosong bernama dhcpd.leases.fahran@slacker:~# touch /var/state/dhcp/dhcpd.leases fahran@slacker:~# vi /var/state/dhcp/dhcpd.leases

di dalam folder ini terdapat file yang berakhiran .lease, ini adalah log dari dhcp (baik dhcp-client maupun dhcpserver) selanjutnya kita buat sebuah shell file rc.dhcpd di dalam folder /etc/rc.d/ untuk itu kita buat dengan Text Editor :fahran@slacker:~#cd /etc/rc.d fahran@slacker: /etc/rc.d/#vi rc.dhcpd #!/bin/sh # # /etc/rc.d/rc.dhcpd #

# Start/stop/restart the DHCP daemon. # # To make dhcpd start automatically at boot, make this # file executable: chmod 755 /etc/rc.d/rc.dhcpd # ############################################# CONFIGFILE=/etc/dhcpd.conf LEASEFILE=/var/state/dhcp/dhcpd.leases INTERFACES=eth0r43; -> bisa eth0 dan eth1 tergantung Ethernet yang di pasang OPTIONS=-q ############################################# dhcpd_start() { if [ -x /usr/sbin/dhcpd -a -r $CONFIGFILE ]; then echo Starting DHCPD /usr/sbin/dhcpd -cf $CONFIGFILE -lf $LEASEFILE $OPTIONS $INTERFACES # /usr/sbin/dhcpd -q $INTERFACES fi } dhcpd_stop() { killall dhcpd } dhcpd_restart() { dhcpd_stop sleep 2 dhcpd_start } case $1r43; in start) dhcpd_start ;; stop) dhcpd_stop ;; restart) dhcpd_restart ;; *) echo usage $0 start|stop|restart ;; esac

setelah kita buat sebuah shell rc.dhcpd selanjutnya file ini kita executable agar bisa di eksekusi dengan perintah :fahran@slacker:~# chmod 755 /etc/rc.d/rc.dhcpd fahran@slacker:~# ifconfig eth0 192.168.10.10 -> bisa di eth1 juga Supaya DHCP Server aktif setiap kali boot maka masukkan di rc.dhcpd: fahran@slacker:~# echo "/usr/sbin/dhpcd" >> /etc/rc.d/rc.dhcpd fahran@slacker:~# /etc/rc.d/rc.dhcpd start

cek di client apakah udah mendapatka ip dari dhcp server..

PROXY Server di Slackware 13Berikut ini adalah Step by step instalasi squid proxy di slackware 13.0 menurut pengalaman saya. Saya asumsikan mesin slackware anda sudah terkoneksi dengan internet. Baiklah kita mulai langkah - langkahnya. - login ke server dengan mengisikan username dan password - download dulu paket squidnya, disini saya menggunakan squid-2.6.STABLE17root@slackidsproxy:~# wget http://www.squid-cache.org/Versions/v2/2.6/squid2.6.STABLE17.tar.gz

- kopikan file squid-2.6.STABLE17.tar.gz ke direktori /usr/local/root@slackidsproxy:~# cp squid-2.6.STABLE17.tar.gz /usr/local/

- masuk ke direktori /usr/local/root@slackidsproxy:~# cd /usr/local/

- ekstrak file squid-2.6.STABLE17.tar.gz ke direktori /usr/localroot@slackidsproxy:/usr/local# tar -zxvf squid-2.6.STABLE17.tar.gz

- masuk ke direktori squid-2.6.STABLE17root@slackidsproxy:/usr/local# cd squid-2.6.STABLE17

- konfigurasi squidroot@slackidsproxy:/usr/local/squid-2.6.STABLE17# ./configure

- kompile dan instal squidroot@slackidsproxy:/usr/local/squid-2.6.STABLE17# make && make install

- buat user dan group squidroot@slackidsproxy:/usr/local/squid-2.6.STABLE17# groupadd squid root@slackidsproxy:/usr/local/squid-2.6.STABLE17# useradd -c "SQUID PROXY CACHE" -d /dev/null -s /bin/false -g squid squid

- buat cache direktori dan rubah kepemilikanroot@slackidsproxy:/usr/local/squid-2.6.STABLE17# mkdir /var/spool/squid root@slackidsproxy:/usr/local/squid-2.6.STABLE17# chown -R squid.squid /var/spool/squid

- buat file squid.pid dan rubah kepemilikanroot@slackidsproxy:/usr/local/squid-2.6.STABLE17# touch /var/run/squid.pid root@slackidsproxy:/usr/local/squid-2.6.STABLE17# chown -R squid.squid /var/run/squid.pid

- buat direktori untuk file access.log dan rubah kepemilikanroot@slackidsproxy:/usr/local/squid-2.6.STABLE17# mkdir /var/log/squid root@slackidsproxy:/usr/local/squid-2.6.STABLE17# touch /var/log/squid/access.log root@slackidsproxy:/usr/local/squid-2.6.STABLE17# chown -R squid.squid /var/log/squid/access.log

- edit squid.conf nyaroot@slackidsproxy:~# pico /usr/local/squid/etc/squid.conf

untuk isi dari squid.conf bisa anda sesuaikan sendiri, jika anda ingin copy contoh squid.conf saya, silahkan download disini. - buat direktori swapnya (jalankan hanya satu kali saja)root@slackidsproxy:~# /usr/local/squid/sbin/squid -z

- cek konfigurasi squid sudah benar atau belum (jika tidak ada pesan error brarti udah bener)root@slackidsproxy:~# /usr/local/squid/sbin/squid -k parse

- menjalankan squidroot@slackidsproxy:~# /usr/local/squid/sbin/squid -D

- cek squid udah jalan ato belumroot@slackidsproxy:~# ps -x | grep squid

- karena pada konfigurasi squid menggunakan mode transparen pada port 8181 maka disini hanya perlu untuk membuat direct dari port 80 (http) ke port 8181 (transparent proxy)iptables -t nat -A PREROUTING -i eth1 -p tcp dport 80 -j REDIRECT to-port 8181

Demikian step by step instalasi squid proxy di slackware 13.0 saya, bagi anda mungkin ada yang kurang jelas ataupun mengalami error sana - sini, silahkan kita berbagi pengalamannya dan menemukan pemecahannya.

masuk dl dalam mode root dulu add user grup buat squidgroupadd proxy useradd proxy -g proxy -d /usr/local/squid -s /usr/bin/nologin

terus rubah owner direktori webcachenya misal kita mau simpen di /cache (partisi ini gw buat sendiri khusus untuk cache squid dengan partisi reiserfs) (sesuaikan untuk cache yang ditaruh di direktori cache lainnya)chown -R proxy.proxy /cache

edit squid.conf di /etc/squid.conf memakai editor kesayangan klo gw memakai kwrite (soalnya gw khan pake sendiri jadi ga masalah make gui )kwrite /etc/squid/squid.conf

lalu hapus isinya dan ini config gw klo mo pake silahkan dipake berdasarkan penyesuaian penyesuaian kondisi lo####################### # HIGH PERFORMANCE SQUID 3.1 # Config date : 14 May 2010 ####################### # ACCESS CONTROLS # acl QUERY urlpath_regex -i cgi-bin \? \.php$ \.asp$ \.shtml$ \.cfm$ \.cfml$ \.phtml$ \.php3$ localhost acl all src acl localnet src 10.0.0.0/8 acl localnet src 172.16.0.0/12 acl localnet src 192.168.0.0/16 acl localhost src 127.0.0.1/32 acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901 81 3128 1025-65535 acl sslports port 443 563 81 acl manager proto cache_object acl purge method PURGE acl connect method CONNECT acl ym dstdomain .messenger.yahoo.com .psq.yahoo.com acl ym dstdomain .us.il.yimg.com .msg.yahoo.com .pager.yahoo.com acl ym dstdomain .rareedge.com .ytunnelpro.com .chat.yahoo.com acl ym dstdomain .voice.yahoo.com acl ymregex url_regex yupdater.yim ymsgr myspaceim http_access http_access http_access http_access http_access http_access http_access http_access http_access http_access http_access deny ym deny ymregex allow manager localhost deny manager allow purge localhost deny purge deny !safeports deny CONNECT !sslports allow localhost allow localnet deny all

# NETWORK OPTIONS # http_port 3128 # OPTIONS WHICH AFFECT THE CACHE SIZE # cache_mem 8 MB maximum_object_size_in_memory 32 KB memory_replacement_policy heap GDSF cache_replacement_policy heap LFUDA

cache_dir aufs /cache 4000 10 256 maximum_object_size 128000 KB cache_swap_low 95 cache_swap_high 99 # LOGFILE PATHNAMES AND CACHE DIRECTORIES # access_log none cache_log /cache/cache.log #cache_log /dev/null cache_store_log none logfile_rotate 5 log_icp_queries off # OPTIONS FOR TUNING THE CACHE # cache deny QUERY refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i \.(gif|png|jp?g|ico|bmp|tiff?)$ 10080 95% 43200 override-expire overridelastmod reload-into-ims ignore-no-cache ignore-private refresh_pattern -i \.(rpm|cab|deb|exe|msi|msu|zip|tar|gz|tgz|rar|bin|7z|doc?|xls?|ppt?|pdf| nth|psd|sis)$ 10080 90% 43200 override-expire override-lastmod reload-into-ims ignore-nocache ignore-private refresh_pattern -i \.(avi|iso|wav|mid|mp?|mpeg|mov|3gp|wm?|swf|flv|x-flv|axd)$ 43200 95% 432000 override-expire override-lastmod reload-into-ims ignore-no-cache ignore-private refresh_pattern -i \.(html|htm|css|js)$ 1440 75% 40320 refresh_pattern -i \.index.(html|htm)$ 0 75% 10080 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 1440 90% 10080 quick_abort_min 0 KB quick_abort_max 0 KB quick_abort_pct 100 store_avg_object_size 13 KB # HTTP OPTIONS # vary_ignore_expire on # ANONIMITY OPTIONS # request_header_access request_header_access request_header_access request_header_access request_header_access # TIMEOUTS # forward_timeout 240 second connect_timeout 30 second peer_connect_timeout 5 second read_timeout 600 second request_timeout 60 second shutdown_lifetime 10 second # ADMINISTRATIVE PARAMETERS # cache_mgr Rh354 cache_effective_user proxy cache_effective_group proxy httpd_suppress_version_string on visible_hostname Rh354 # DNS OPTIONS From deny all Server deny all Link deny all Via deny all X-Forwarded-For deny all

# dns_timeout 10 seconds dns_nameservers 180.131.144.144 180.131.144.145 # MISCELLANEOUS # memory_pools off client_db off reload_into_ims on coredump_dir /cache pipeline_prefetch on offline_mode off ### END CONFIGURATION ###

klo udah silahkan lakukan ini di terminalsquid -k parse

klo ada warning kek gini diabaikan aja yProcessing Configuration File: /etc/squid/squid.conf (depth 0) WARNING: use of 'override-expire' in 'refresh_pattern' violates HTTP WARNING: use of 'override-lastmod' in 'refresh_pattern' violates HTTP WARNING: use of 'reload-into-ims' in 'refresh_pattern' violates HTTP WARNING: use of 'ignore-no-cache' in 'refresh_pattern' violates HTTP WARNING: use of 'ignore-private' in 'refresh_pattern' violates HTTP

klo udah ga ada error lg silahkan ketik perintah inisquid -z

sekarang qta buat skrip rc.squid agar mempermudah dalame mengeksekusi squid silahkan ketik ini di terminalkwrite /etc/rc.d/rc.squid

isi dengan script di bawah ini#!/bin/sh # Start/stop/restart/reload the Squid Internet Object Cache (squid) # To make Squid start automatically at boot, make this # file executable: chmod 755 /etc/rc.d/rc.Squid # # Written for Slackware Linux by Erik Jan Tromp # Modified by David Somero SQUIDCFG=/etc/squid/squid.conf SQUIDCMD=/usr/sbin/squid if [ ! -r $SQUIDCFG ]; then echo Please set the correct path to $SQUIDCFG exit 1 fi if [ ! -x $SQUIDCMD ]; then echo $SQUIDCMD not found exit 1 fi squid_start() { # Create cache directory hierarchy if needed ALL_DIRS=$(awk /^cache_dir/ {print $3} $SQUIDCFG) [ -z "$ALL_DIRS" ] && ALL_DIRS=/var/cache/squid for CACHE_DIR in $ALL_DIRS ; do if [ ! -d $CACHE_DIR/00 ] ; then echo Creating swap directories: $SQUIDCMD -z $SQUIDCMD -z 2> /dev/null break

fi done echo Starting Squid: $SQUIDCMD -SDYCF $SQUIDCMD -SDYCF } squid_stop() { COUNTDOWN=$(awk /^shutdown_lifetime/ {print $2} $SQUIDCFG) [ -z "$COUNTDOWN" ] && COUNTDOWN=30 echo -n Shutting down Squid in $COUNTDOWN seconds: $SQUIDCMD -k shutdown 2> /dev/null while $SQUIDCMD -k check 2> /dev/null ; do sleep 1 echo -n . COUNTDOWN=$[ $COUNTDOWN - 1 ] if [ $COUNTDOWN -le 0 ] ; then $SQUIDCMD -k interrupt 2> /dev/null sleep 1 break fi done echo } squid_restart() { squid_stop sleep 1 squid_start } squid_reload() { $SQUIDCMD -k reconfigure 2> /dev/null } case $1 in start) squid_start ;; stop) squid_stop ;; restart) squid_restart ;; reload) squid_reload ;; *) echo usage: $0 start|stop|restart|reload esac

klo udah disave lalu di chmod agar menjadi executablechmod 755 /etc/rc.d/rc.squid

atauchmod +x /etc/rc.d/rc.squid

klo udah sekarang waktunya untuk membuat squid running start up serta stop pada saat mo shutdown.. untuk startup silahkan lakukan ini di terminalkwrite /etc/rc.d/rc.local

masukkan skrip ini# Start SQUID (Squid proxy 3.0): if [ -x /etc/rc.d/rc.squid ]; then . /etc/rc.d/rc.squid start

fi

untuk shutdown squid otomatis ketika shutdown sistem silahkan masukkan perintah seperti ini buat file baru di /etc/rc.dkwrite /etc/rc.d/rc.local_shutdown

isi dengan script di bawah ini#!/bin/sh # # /etc/rc.d/rc.local_shutdown: Local system shutdown script. # # Put any local shutdown commands in here. # Stop SQUID (Squid proxy 3.0): if [ -x /etc/rc.d/rc.squid ]; then . /etc/rc.d/rc.squid stop fi

klo udah lalu di chmod biar bisa jadi executablechmod 755 /etc/rc.d/rc.local_shutdown

atauchmod +x /etc/rc.d/rc.local_shutdown

jalankan squidnyasquid -SDYCF

setting di browser kesayangan..dalam hal ini mozilla firefox buka FF -> edit -> preferences -> advanced di tab advanced masuk ke network setel offline storage ke 0 lalu clear now masuk ke connection -> setting pilih manual proxy configuration, di HTTP Proxy setel 127.0.0.1 port 3128 lalu centang use this proxy server for all protocols untuk memudahkan koneksi messenger lebih baik jangan setting messenger tuk melewati port squid jadi silahkan di cek bener2 n pastikan pilihan ke no proxy di messenger nambahin aj script moddingan dr centos mastah- EOF #!/bin/sh # /etc/rc.d/rc.squid: start/stop/restart/reload Squid Proxy Service # # chmod +x /etc/rc.d/rc.squid # or # chmod 755 /etc/rc.d/rc.squid # to make squid automatically start at system startup # adjust the path with yours. # # ####################################################################### # ## based on Squid for CentOS 5.x ## # ## mod invisible_theater for properly working on sLackWare 13.1 ## # ####################################################################### # # config: /etc/squid/squid.conf ######################################################################### PATH=/usr/bin:/sbin:/bin:/usr/sbin export PATH

# Source function library. if [ -f /etc/init.d/functions ]; then . /etc/init.d/functions elif [ -f /etc/rc.d/init.d/functions ]; then . /etc/rc.d/init.d/functions else echo Could not find functions file, exit()ing exit 1 fi # check if the squid conf file is present if [ ! -f /etc/squid/squid.conf ]; then echo Could not find config file failure Could not find config file echo exit 1 fi # determine the name of the squid binary [ -f /usr/sbin/squid ] && SQUID=squid [ -z "$SQUID" ] && failure Could not find binary && exit 0 # determine the cache_swap directory from squid config CACHE_SWAP=`sed -ne /^\s*cache_dir\s/p /etc/squid/squid.conf | awk {print $3}` [ -z "$CACHE_SWAP" ] && CACHE_SWAP=/cache0 # determine squid pid file from squid config INITLOCK=`sed -ne /^\s*pid_filename\s/p /etc/squid/squid.conf | awk {print $2}` # default squid options # -D disables initial dns checks. If you most likely will not to have an # internet connection when you start squid, uncomment this SQUID_OPTS=-sYD RETVAL=0 # squid start squid_start(){ if [ -f $INITLOCK ]; then $0 status RETVAL=$? if [ $RETVAL -eq 0 ]; then failure $TEXT echo else rm -f $INITLOCK $0 start RETVAL=$? fi else for adir in $CACHE_SWAP; do if [ ! -d $adir/00 ]; then TEXT=setting up cache_dir $adir echo -n $0: $TEXT $SQUID -z -F 2>/dev/null RETVAL=$? if [ $RETVAL -eq 0 ]; then success $TEXT else failure $TEXT fi echo fi done TEXT=Starting $SQUID: echo -n $TEXT # custom command echo 1024 65535 > /proc/sys/net/ipv4/ip_local_port_range

ulimit -HSn 65535 # end custom command $SQUID $SQUID_OPTS & RETVAL=$? if [ $RETVAL -eq 0 ]; then success $TEXT touch $INITLOCK echo else failure $TEXT echo fi fi } # squid stop squid_stop(){ TEXT=Stopping $SQUID: echo -n $TEXT $SQUID -k shutdown & RETVAL=$? if [ $RETVAL -eq 0 ] ; then while : ; do [ -f $INITLOCK ] || break sleep 2 && echo -n . done success $TEXT else failure $TEXT fi echo } # squid restart squid_restart(){ squid_stop squid_start } # squid status squid_status(){ status $SQUID $SQUID -k check exit $? } # squid reload squid_reload(){ $SQUID $SQUID_OPTS -k reconfigure exit $? } # squid probe squid_probe(){ exit 0; } case $1 in start) squid_start ;; stop) squid_stop ;; reload) squid_reload ;;

restart) squid_restart ;; status) squid_status ;; probe) squid_probe ;; *) echo Usage: $0 {start|stop|status|reload|restart} esac exit $RETVAL - EOF

Bismillah Cerita : Biasanya kalo lagi browsing, yang namanya cache tuh sangat membantu. Soalnya sewaktu browsing, cache menyimpan sejumlah file yang sering kita ambil. Jadinya, sewaktu browsing ke situs yang pernah diakses, cache segera menyediakan file yang terkait. Hasilnya kita merasakan "begitu" cepatnya akses ke situs tersebut Wah, membayangkan ... mestinya ada aplikasi khusus yang mengumpulkan cache macam gitu ya? Eh ... ada koq, namanya web proxy. Salah satu yang terkenal sih ... si Squid. Lalu gimana ya cara instalasinya? Langkah-langkah : 1.Unduh paket Squid dan lakukan instalasi. Kebetulan penulis sudah compile sendiri, jadi paketnya tersedia disini.#installpkg squid-2.6.STABLE18-i386-1lipi.tgz

2.Buatkan user squid dan group squid. Hal ini untuk memudahkan pengaturan dan pemisahan hak akses atas layanan lainnya.#groupadd squid #useradd squid -u 210 -g squid -d /usr/local/squid

3.Sebenarnya konfigurasi squid default sudah memadai untuk mengaktifkan layanan web proxy. Tapi tidak ada salahnya juga, menggunakan konfigurasi dasar yang sudah digubah Silakan klik disini, untuk ambil konfigurasi dasar yang penulis pakai. Konfigurasi dalam format compress, gunakan command gzip -d squid.conf.gz untuk de-compress-nya. Konfigurasi yang penulis sediakan adalah sebagai berikut :-IP LAN : 192.168.0.0/24 -Port Proxy : 3128, transparent -Kapasitas Cache Proxy : 2 Gb (/squid/cache) -DSN : opendns.com -Delay Pools : 4 seksi

Rujukan : ViSolve 4.Menyiapkan struktur cache bagi squid. 4.a)Saatnya membuat direktori khusus untuk menampung file-file cache, yang dipergunakan oleh web-proxy. Bila selesai, silakan langsung ke poin 4.c.#mkdir /squid/cache

--------------------------------------------------------4.b) Bilamana ada partisi tertentu yang ingin dipergunakan khusus sebagai cache. Silakan ikuti langkah berikut: 4.b.1) #mount /dev/hda5 /squid