Networking With Debian Lenny

Embed Size (px)

Citation preview

Networking with Debian Lenny

Alyan - NRP 2205 100 170 Jurusan Teknik Elektro, Fakultas Teknologi Industri, Institut Teknologi Sepuluh Nopember (ITS) SurabayaOperating System (OS) Debian pertama kali diperkenalkan pada 16 Agustus 1993 oleh Ian Murdock, seorang mahasiswa di Universitas Purdue, Jerman. Awalnya Murdock menyebut sistemnya dengan sebutan "Debian Linux Release". Murdock meluncurkan distribusi baru Linux karena termotivasi oleh kurangnya perawatan dan juga lemahnya pertahanan distribusi Linux sebelumnya terhadap bugs. Dalam Debian Manifesto, Murdock menginginkan agar distribusi Debian dikembangkan secara terbuka dengan semangat Linux dan GNU. Dia memberi nama Debian sebagai gabungan kata dari nama pacarnya (sekarang istrinya) Debra dan namanya sendiri. Proyek Debian tumbuh secara lamban pada awalnya dan me-rilis versi 0.9x pada tahun 1994 dan 1995. Port pertama yang dikembangkan untuk arsitektur computer lain dimulai pada 1995 dan versi 1.x Debian mulai di-rilis pada tahun 1996. Tabel 1. versi yang telah dan akan di-rilis Debian: versi code name tanggal rilis 1.2 1.1 Buzz 17 juni 1996 1.3 Rex 12 des 1996 2.0 Bo 5 juni 1997 2.1 Hamm 24 juli 1998 2.2 Slink 9 maret 1999 3.0 Potato 15 agustus 2000 3.1 Woody 19 juli 2002 4.0 Sarge 6 juni 2005 TBA Etch 8 april 2007 Lenny direncanakan sept 2008, saat ini sedang testing

Instalasi Debian LennyDebian Lenny bisa dibilang merupakan Operating System yang sangat kaya aplikasi. Ia hadir dengan membawa aplikasi yang sangat lengkap dalam bentuk packages atau paket-paket. Perkembangannya pun begitu cepat, sehingga tak cukup jika kita hanya meng-install-nya dari CD saja. Akan lebih baik jika kita 1

menginstallnya dengan langsung terhubung ke internet dan meng-unduh paketpaket Debian Lenny dari mirror yang menyediakan package Lenny di internet. Kali ini, kami meng-install Debian Lenny dengan langsung terhubung ke internet. Koneksi internet ini nanti akan sangat berguna untuk mendapatkan package dari Debian Lenny yang sangat banyak. Untuk instalasi system dasar, tetap menggunakan installer dari CD-ROM. Langkah-langkah instalasi secara umum adalah sebagai berikut: 1. Nyalakan PC dan masukkan CD installer sistem dasar Debian Lenny 2. ubah rst boot device pada BIOS menjadi CD-ROM 3. ikuti petunjuk instalasi pada tiap-tiap langkah 4. saat proses akan ditanya zona tempat PC berada, kami pilih Indonesia 5. ditanya apakah kongurasi internetnya memakai DHCP atau tidak, kami pilih tidak dan memasukkan IP Address dan info lain tentang PC secara manual 6. saat proses juga akan diminta melakukan proses partisi. Kami men-setting partisi LVM (Logical Volume Manager) dan juga men-set partisi yang terenkripsi 7. saat proses akan ditanya apakah memakai koneksi ke mirror ataukah tidak, jika ya akan dicarikan lokasi mirror terdekat. Kami pilih tidak, karena kami akan men-settingnya nanti ketika system dasar telah ter-install 8. proses akan mendeteksi hardware yang dipakai. Jika berhasil maka proses instalasi system dasar akan berlanjut. Proses instalasi system dasar akan memakan waktu yang cukup lama. Setelah selesai, maka kita akan berhadapan dengan konsol shell yang memaksa kita menggunakan perintah dasar bahasa shell dalam bentuk command line dioalog karena kita belum memiliki tampilan gras berupa GNOME atau pun KDE. Setelah system dasar selesai di-install, kini kami berhadapan dengan konsol shell yang memaksa kami menggunakan command line. 1. pertama kita set sambungan ke mirror di /etc/network/source.list dengan menggunakan perintah nano /etc/network/source.list mirror yang kami pakai adalah :http://mirror.computer.ee.its.ac.id/debian lenny main contrib non-free

dengan DNS 202.46.129.2 2. kami juga perlu meng-congure koneksi Ethernet card yang tersambung ke PC dengan perintahifcong

2

3. setelah itu, kami juga men-start layanan networking dengan perintah/etc/init.d/networking start

4. sebelum meng-unduh package dari mirror, kami update dulu dengan mengetik perintahapt-get update

5. setelah itu, kita perlu menginstall system dasar untuk tampilan GNOME sebagai tampilan gras atau GUI (Graphical User Interface). Paket-paket yang perlu di-install di antaranya: xbase-clients, xserver-xorg, xserverxfree86, xfonts, lalu yang terakhir adalah gnome 6. sebelum mengunduh package dan meng-install-nya, ada baiknya mengecek keberadaaan package tersebut terlebih dahulu dengan menggunakan perintah:apt-cache search [package yang dicari]

7. untuk meng-unduh package, gunakan perintah:apt-get install [package yang diinstall]

8. Sebelum masuk ke tampilan gnome, ada baiknya kita mengecek ulang apakah package-package dasar untuk masuk ke tampilan gnome seperti yang disebutkan di atas telah ter-install semua. Untuk masuk ke GNOME, ketikkan perintah gdm. Setelah kita masuk ke tampilan gnome, kita akan lebih mudah melakukan setting karena tampilannya sudah memakai tampilan gras yang tentunya sangat membantu. Sekarang kita bisa menikmati tampilan gras gnome. Berbagai layanan aplikasi yang dibawa debian pun dapat kita manfaatkan. Hampir segala macam bentuk ekstensi le dapat dikenali dan dibaca dengan baik oleh system debian lenny ini. Namun, ternyata kita tidak lama menikmati tampilan gras ini. Untuk proses instalasi dan setting aplikasi atau layanan yang diberikan lenny pada jaringan ternyata harus memakai command line dialog melalui terminal shell console.

Aplikasi-aplikasi yang diberikan Debian Lenny

1 Partisi TerenkripsiSetting partisi yang ter-enkripsi telah diatur sejak saat instalasi. Namun, password enkripsinya baru disetting setelah instalasi selesai. Proses enkripsi partisi membutuhkan instalasi package cryptsetup. 3

Proses Pembuatan Partisi Ter-Enkripsi1. Siapkan system dg meng-install program cryptsetup, dmsetup, gpartedroot:~# apt-get install cryptsetup dmsetup gparted

2. buat partisi baru dg cfdisk / tools partisi hardisk lainnya (gparted, fdisk, dll), lalu reboot.misal : partisi baru adalah /dev/sda6

3. Inisialisasi partisi baru dengan cara :root:~# cryptsetup luksFormat /dev/sda6

4. Open / Mapping ke /dev/mapper dengan cara :root:~# cryptsetup luksOpen /dev/sda6 CRYPT-DATA

5. Format device baru tsb dg lesystem yg anda inginkanroot:~# mkfs.reiserfs -l CRYPT-DATA /dev/mapper/data

6. Mounting partisi yg sudah terenkripsi bisa dilakukan dg 2 step, yaitu : (a) Mapping ke /dev/mapper/CRYPT-DATA (step 3) (b) Lalu mount-lah ke direktori yg anda inginkanroot:~# cryptsetup luksOpen /dev/sda6 CRYPT-DATA root:~# mount /dev/mapper/CRYPT-DATA /data

Penting : Partisi yg terenkripsi ini tidak bisa dibuka secara langsung, melainkan

harus di lakukan perintah spt diatas utk kemudian muncul sebagai device baru yaitu /dev/mapper/CRYPT-DATA. Setelah muncul pada direktori /dev/mapper, device baru ini bisa kita format, bisa kita baca (mount) selayaknya device pada umumnya.

Manajemen Password pada partisi ter-EnkripsiPada dasarnya partisi terenkripsi ini bisa diumpamakan sebagai suatu rumah yang memiliki banyak pintu. Pintu-pintu itulah yang bisa kita buatkan kunci (baca : password), setiap pintu pada awalnya adalah tertutup, ketika kita membuatkan kunci (key / password) pada pintu tersebut, maka barulah pintu itu bisa kita buka dg kunci yg kita buat. Oleh karena itu untuk masuk ke dalam rumah, kita hanya memerlukan salah satu kunci saja. Partisi terenkripsi ini bisa diberi maksimal 8 slot kunci, dimana hanya dengan memiliki salah satu kunci saja kita sudah bisa mengakses partisi tersebut. 1. Menambahkan key / password (maximal ada 8 key, yaitu slot 0 s.d slot 7)root:~# cryptsetup luksAddKey /dev/sda6.

Ketika proses menambahkan kunci ini, anda akan ditanya tentang salah satu kunci yg sudah dibuat. 4

2. Melihat password yg ada pada partisiroot:~# cryptsetup luksDump /dev/sda6

3. Delete key / password pada slot tertenturoot:~# cryptsetup luksDelKey /dev/sda6 1

Perintah diatas berarti akan mendelete key pada slot 1. Ketika proses menghapus kunci, anda akan ditanya tentang salah satu kunci yg ada. 4. Ganti password dengan cara : Menambahkan key / password baru spt pada no (1) Lalu delete password lama pada slot yg ingin anda hapus spt pada no (3)

2 LVM (Logical Volume Manager)LVM telah disetting saat instalasi. LVM adalah sebuah manajemen penyimpan di sistem operasi GNU/Linux yang menyediakan eksibilitas dalam membuat dan mengubah partisi dalam sebuah disk. LVM menambahkan lapisan antara antarmuka I/O kernel dengan perangkat sik untuk mendapatkan logical-view dari penyimpan. Dengan adanya lapisan inilah kita dapat melakukan perubahan partisi baik itu resize, penghapusan, dan lain-lain secara live pada sistem baik untuk satu atau lebih media. Kemudahan tersebut akan membuat administrator maupun pengguna lebih nyaman dalam melakukan manajemen dan alokasi ruang penyimpan hingga penamaan volume. Selain itu kita dapat melakukan snapshot dan membuat block-device salinan sebuah partisi atau lebih untuk mencatat statusnya dengan tujuan backup.

3 DNS (Domain Name System) ServerDomain Name System adalah suatu sistem yang membuat alamat IP (yang dalam bentuk numerik) suatu host dapat dikenali dengan suatu nama (domain name) yang umum dikenal dan sebaliknya. Misalnya, situs resmi ITS memiliki alamat IP sekian, namun orang umum tidak akan mudah mengingat alamat dalam bentuk numeric tersebut. Dengan adanya DNS, kita bisa mengakses alamat IP situs ITS dengan mengakses nama domain-nya yang mudah kita ingat, yaitu www.its.ac.id. Dalam jaringan yang kami buat, kami membuat domain bakti.lab dengan debian lenny sebagai server-nya dan host-host yaitu: winserver, solaris, freebsd, suse dan fedora. Tiap host memiliki IP address masing-masing seperti dalam gambar 2 di atas. Tiap host dikenali melalui alamat IP-nya masing-masing. Dengan adanya DNS server, kami akan membuat agar tiap host dapat dikenali bukan hanya dari alamat IP-nya saja, tapi juga dengan alamat domainnya yang unik untuk masing-masing host.

5

Untuk memberikan servis DNS server, kami menggunakan bind9. Kongurasi bind9 mencakup kongurasi forward DNS dan juga reverse DNS. Forward DNS berguna untuk menerjemahkan domain name ke IP address. Sedangkan Reverse DNS untuk menerjemahkan IP address ke domain name. Berikut ini adalah langkah-langkah instalasi dan kongurasi bind9 untuk jaringan yang kami buat. 1. Install bind9root:~#apt-get install bind9

setelah meng-install, kita tak langsung bisa memakai service bind9 ini. Kita perlu menyetting le-le kongurasi sesuai kondisi jaringan yang kita miliki. 2. edit le /etc/bind/named.conf.options Isinya sebagai berikut:options { directory "/var/cache/bind"; // If there is a rewall 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 and later use an unprivileged // port by default. // query-source address * port 53; // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder. // forwarders { // 0.0.0.0; // }; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; # Tambahan version none; allow-query { 10.122.67.0/24; 192.168.1.0/24; 192.168.0.0/24; 10.10.2.0/24; 192.168.2.0/24; 10.10.0.0/24; }; allow-transfer { none; }; };

Sekarang kita perlu me-restart servis bind9 6

/etc/init.d/bind9 restart

lalu kita edit le /etc/bind/named.conf.local// Do any local conguration here zone "bakti.lab" { type master; le "/etc/bind/db.bakti.lab"; }; zone "camp.lab" { type master; le "/etc/bind/db.camp.lab"; }; zone "2.168.192.in-addr.arpa" { type master; le "/etc/bind/db.2.168.192"; }; zone "1.168.192.in-addr.arpa" { type master; le "/etc/bind/db.1.168.192"; }; //Consider adding the 1918 zones here, if they are not used in your // organization //include "/etc/bind/zones.rfc1918";

3. buat le untuk Forward DNS dengan nama /etc/bind/db.namadomain forward DNS berguna untuk menterjemahkan nama domain ke IP address yang bersesuaian le etc/bind/db.bakti.lab :

$TTL 24h bakti.lab. IN SOA baktilab.bakti.lab. root.bakti.lab ( 2007062800 ; serial 3h ; refresh 30m ; retry 7d ; expire 3h ; negative caching ttl ); ;Name server bakti.lab. IN NS 202.46.129.2.;

7

;Host-host baktilab.bakti.lab IN A 192.168.1.2 Solaris.bakti.lab IN A 192.168.0.2 FreeBSD.bakti.lab IN A 10.10.2.2 le /etc/bind/db.camp.lab :

$TTL 24h camp.lab. IN SOA debian.camp.lab. root.camp.lab ( 2007062800 3h 30m 7d 3h); ;Name server camp.lab. IN NS 10.122.67.110; ;Host-host debian.camp.lab. IN A 10.122.67.110 suse.camp.lab. IN A 192.168.2.2 fedora.camp.lab. IN A 10.10.0.18

4. buat le untuk reverse DNS dengan nama /etc/bind/db.IPaddress reverse DNS berguna untuk menterjemahkan IP address ke nama domainnya le /etc/bind/db/1/db.1.68.192

$TTL 24h bakti.lab. IN SOA baktilab.bakti.lab root.bakti.lab ( 2007062800 3h 30m 7d 3h); ;Nameserver bakti.lab. IN NS 202.46.129.2; ;host-host 2.1.168.192.in-addr.arpa. IN PTR baktilab.bakti.lab. 2.2.10.10.in-addr.arpa. IN PTR FreeBSD.bakti.lab. 2.0.168.192.in-addr.arpa. IN PTR Solaris.bakti.lab.

8

File /etc/bind/db.2.168.192

$TTL 24h 2.168.192.in-addr.arpa. IN SOA debian.camp.lab. root.camp.lab ( 2007062800 3h 30m 7d 3h); ;nameserver camp.lab. IN NS 10.122.67.110.; ;host-host 18.0.10.10.in-addr.arpa. IN PTR fedora.camp.lab. 2.2.168.192.in-addr.arpa. IN PTR suse.camp.lab. 110.67.122.10.in-addr.arpa. IN PTR debian.camp.lab.

5. sekarang servis bind sudah siap dipakai ketik perintah /etc/init.d/bind9 restart

4 Shorewall (rewall)Shorewall merupakan salah satu jenis rewall yang berguna untuk mem-protect jaringan agar terhindar dari gangguan hacker yang mencoba merusak jaringan kita. Shorewall juga berfungsi sebagai pintu akses dari dan ke jaringan kita. Oleh karena itu, berbagai macam aturan tertentu dapat kita terapkan pada setting shorewall untuk menghindari hal-hal yang tidak kita inginkan terjadi pada jaringan kita. Shorewall memanfaatkan prinsip IPTables. Pada dasarnya kita dapat membuat sebuah rewall dengan menggunakan IPTables. Namun, IPTables terkesan sangat rumit bagi orang kebanyakan. Dengan adanya shorewall, membuat rewall tidak lagi terasa sulit, karena pada dasarnya shorewall merupakan IPtables yang disederhanakan. Perintah yang kita tuliskan pada shorewall akan menggenerate IPTables. Jelaskan tentang IPTables Langkah-langkah untuk instalasi dan setting shorewall adalah sebagai berikut: 1. install shorewallapt-get install shorewall

2. edit le kongurasi /etc/shorewall/shorewall.conf##################################

9

STARTUP ENABLED ################################## STARTUP_ENABLED=Yes

3. modikasi le zones /etc/shorewall/zones#ZONETYPE OPTIONS IN OUT # OPTIONS OPTIONS fw rewall net ipv4 loc ipv4 loc1 ipv4

4. modikasi le interfaces /etc/shorewall/interfaces################################## #ZONE INTERFACE BROADCAST OPTIONS net loc loc1 eth0 eth1 eth2 detect detect detect tcpags,dhcp,routelter,nosmurfs,logmartians tcpags,nosmurfs

5. modikasi le policy /etc/shorewall/policy#SOURCE DEST POLICY LOG LEVEL LIMIT:BURST # # Note about policies and logging: # This le contains an explicit policy for every combination of # zones dened in this sample. This is solely for the purpose of # providing more specic messages in the logs. This is not # necessary for correct operation of the rewall, but greatly # assists in diagnosing problems. The policies below are logically # equivalent to: # # loc net ACEPT # net all DROP info # all all REJECT info # # The Shorewall-perl compiler will generate the individual policies # below from the above general policies if you set # EXPAND_POLICIES=Yes in shorewall.conf. # Policies for trac originating from the local LAN (loc) # # If you want to force clients to access the Internet via a proxy server # in your DMZ, change the following policy to REJECT info.

10

loc net ACCEPT loc1 net ACCEPT # If you want open access to DMZ from loc, change the following policy # to ACCEPT. (If you chose not to do this, you will need to add a rule # for each service in the rules le.) loc loc1 REJECT info loc $FW REJECT info loc all REJECT info ## Policies for trac originating from the rewall ($FW) # # If you want open access to the Internet from your rewall, change the # $FW to net policy to ACCEPT and remove the 'info' LOG LEVEL. $FW net REJECT info $FW loc1 REJECT info $FW loc REJECT info $FW all REJECT info # # Policies for trac originating from the De-Militarized Zone (dmz) # # If you want open access from DMZ to the Internet change the following # policy to ACCEPT. This may be useful if you run a proxy server in # your DMZ. #loc1 net REJECT info loc1 $FW REJECT info loc1 loc REJECT info loc1 all REJECT info # # Policies for trac originating from the Internet zone (net) # net loc1 DROP info net $FW DROP info net loc DROP info net all DROP info # THE FOLLOWING POLICY MUST BE LAST all all REJECT info

6. modikasi le routestopped /etc/shorewall/routestopped###################################### #INTERFACE HOST(S)

11

eth1 eth2

192.168.1.0/24 192.168.2.0/24

7. modikasi le rules /etc/shorewall/rules#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE # PORT PORT(S) DEST LIMIT # # # # Accept DNS connections from the rewall to the Internet #DNS/ACCEPT $FW net Web/ACCEPT $FW net Web/ACCEPT loc $FW Web/ACCEPT loc1 $FW ## Accept SSH connections from the local network to the rewall and DMZ #SSH/ACCEPT loc $FW Web/ACCEPT loc net Web/ACCEPT loc1 net SSH/ACCEPT loc loc1 SSH/ACCEPT loc1 $FW SSH/ACCEPT loc1 loc SSH/ACCEPT net loc SSH/ACCEPT net loc1 ## DMZ DNS access to the Internet ##DNS/ACCEPT net loc DNS/ACCEPT loc1 $FW DNS/ACCEPT loc $FW # Reject Ping from the "bad" net zone. Ping/REJECT net $FW ## Make ping work bi-directionally between the dmz, net, Firewall and local zone # (assumes that the loc-> net policy is ACCEPT). #Ping/ACCEPT loc $FW Ping/ACCEPT loc1 $FW Ping/ACCEPT loc loc1 Ping/ACCEPT loc1 loc Ping/ACCEPT $FW net Ping/ACCEPT $FW net

12

Ping/ACCEPT loc1 net Ping/ACCEPT loc net ACCEPT $FW net icmp 80 ACCEPT $FW loc icmp 80 ACCEPT $FW loc1 icmp 80 # Uncomment this if using Proxy ARP and static NAT and you want to allow ping from # the net zone to the dmz and loc #Ping/ACCEPT net dmz #Ping/ACCEPT net loc ACCEPT loc1 net tcp 22,80,8080,901,20,25,110 ACCEPT loc net tcp 22,80,8080,21,901,20,25,110 ACCEPT fw net tcp 22,80,8080,21,901,20,25,110 ACCEPT fw loc tcp 22,80,8080,21,901,20,25,110 ACCEPT fw loc udp 53,161,25,110 #ACCEPT loc loc1 tcp 901 #ACCEPT loc ACCEPT fw loc1 udp 53,161,25,110 ACCEPT fw loc1 tcp 22,80,8080,21,901,20,25,110 #ACCEPT loc net udp 53,161,25,110 #ACCEPT loc1 net udp 53,161,25,110 ACCEPT fw net udp 53,161,25,110 ACCEPT loc fw tcp 22,80,8080,21,901,20,25,110 ACCEPT loc fw udp 53,161,25,110 ACCEPT all all icmp 80

8. service shorewall kini dapat kita gunakan Stop service shorewall/etc/init.d/shorewall stop

Lalu start service shorewall/etc/init.d/shorewall start

5 NAT (Network Address Translation) dan IP MasqueradeNetwork Address Translation (NAT) atau biasa jug adisebu IP masquerading adalah suatu teknik untuk mengirimkan dan kemudian menerima trac dalam 13

jaringan melalui router yang melibatkan penulisan kembali alamat IP dari sumber (Source) dan Tujuan (Destination) serta alamat port TCP/UDP selama paket ditransmisikan. Dengan NAT, sejumlah host dalam suatu jaringan dapat meng-akses internet dengan menggunakan satu alamat IP public yang sama. NAT menyembunyikan alamat-alamat IP yang dikelola secara internal dari jaringan-jaringan eksternal dengan menerjemahkan alamat internal pribadi menjadi alamat eksternal umum. Hal ini mengurangi biaya registrasi alamat IP dengan cara membiarkan para pelanggan memakai alamat IP yang tidak terdaftar secara internal melalui suatu terjemahan ke sejumlah kecil alamat IP yang terdaftar secara eksternal. Hal ini juga menyembunyikan struktur jaringan internal, mengurangi resiko penolakan serangan layanan terhadap sistem internal.

6 Shaper dan Trac ShapingTrac Shaping adalah suatu usaha untuk mengatur trac dalam suatu jaringan dengan tujuan meningkatkan performa jaringan atau memperkecil bandwidth yang digunakan dengan cara men-delay packet. Lebih spesik lagi, Trac Shaping adalah segala bentuk aksi yang dilakukan pada sekelompok paket yang menyebabkan terjadinya tambahan delay pada paket tersebut. Trac Shaping menyediakan suatu metode untuk mengontrol volume trac yang dikirim dari dan ke dalam jaringan kita dalam periode tertentu, atau membatasi rate maximum data yang di-transmisikan (rate limiting). Kontrol ini dapat dilakukan dengan banyak cara dan juga karena banyak alasan. Namun biasanya, trac shaping dapat dicapai dengan men-delay paket. Trac Shaping biasanya dipakai di ujung depan sebuah jaringan (pada server) untuk mengontrol trac mernuju jaringan, tapi juga bisa dilakukan oleh sumber trac yang bersangkutan (misal komputer atau network card) atau oleh sebuah elemen dalam jaringan.

7 SPF dan RBLKita semua pasti mengetahui bahwa bila ada email yang masuk ke kita, maka pasti email itu dikirimkan melalui salah satu server SMTP di muka bumi ini. Yang kemudian menjadi permasalahan adalah: "Apakah server yang mengirimkan email itu memang berhak mengirimkan email atas nama domain yang dipakai?". Contoh kasus: Saya menggunakan domain sokam.or.id, dan alamat server SMTP saya katakanlah 10.11.12.13. Seharusnya, yang mengirimkan email dengan menggunakan domain sokam.or.id hanyalah alamat IP tersebut. Kemudian bagaimana kalau ada yang mengirim menggunakan domain sokam.or.id namun berasal dari IP 192.168.5.3? Apakah IP itu juga berhak? Di sinilah peran SPF hadir untuk membantu kita menentukannya.

14

MekanismeInformasi SPF disimpan dalam DNS dengan menggunakan record TXT untuk domain yang bersangkutan. Contoh kasus: Saya ingin menambahkan record SPF untuk domain sokam.or.id. SMTP server yang berhak mengirim email dengan alamat sokam.or.id adalah server itu sendiri (10.11.12.13), serta sebuah server lagi dengan alamat IP 5.6.7.8. Bentuk record DNS ini kira-kira seperti ini: Dengan setup seperti di atas, bila server SMTP yang beralamat 2.3.4.5 mengirimkan email dengan domain sokam.or.id, maka email tersebut dianggap sebagai SPAM. Bagaimana dengan domain yang tidak mempublish record SPF? segala SMTP server yang mengirim email menggunakan domain tersebut dianggap valid.sokam.or.id. IN TXT "v=spf1 mx ip4:5.6.7.8 -all"

Instalasiroot# apt-get install libmail-spf-query-perl

Kongurasi SPFKongurasi SPF ini dilakukan pada le kongurasi postx, yakni master.cf dan main.cf.

le master.cfTambahkan baris di bawah ini. policy unix - n n - - spawn user=nobody argv=/usr/bin/perl /usr/local/sbin/postxpolicyd.pl

le main.cfTambahkan check_policy_service unix:private/policy pada bagian smtpd_recipient_restrictions, sehingga lengkapnya seperti potongan di bawah ini. smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unauth_destination, reject_unauth_pipelining, reject_invalid_hostname, Perhatikan bagian kongurasi yang dicetak tebal. Restartlah postx/etc/init.d/postx restart

check_policy_service unix:private/policy

15

8 DHCP ServerDynamic Host Conguration Protocol (DHCP) adalah suatu protocol dalam jaringan untuk memberikan informasi TCP/IP kepada host client. Tiap client yang terhubung kepada server DHCP akan diberi kongurasi jaringannya oleh server DHCP mulai dari info IP address, gateway dan DNS Server-nya. DHCP sangat berguna pada kongurasi jaringan yang membutuhkan akses cepat. Ketika mengkongurasi system client, administrator tak perlu memasukkan informasi IP address, gateway, netmask ataupun DNS servernya. Client mendapatkan informasi ini dari DHCP server. DHCP juga sangat berguna ketika administrator ingin megganti IP address dari sejumlah system. Administrator cukup mengubah satu kongurasi DHCP pada server untuk mengubah alamat IP, tanpa perlu mengkongurasi ulang system. Jika DNS server jaringan berubah, perubahan tak perlu dilakukan pada semua client, tapi cukup pada DHCP server. Lebih lanjut, jika sebuah laptop disetting sebagi DHCP client, maka ia bisa berpindah dari satu jaringan ke jaringan lain selama dalam jaringan tersebut ada DHCP server yang membolehkannya terhubung ke dalam jaringan.

Kongurasi DHCP serverLangkah-langkah instalasi dan kongurasi dhcp server yang kami lakukan adalah sebagai berikut: 1. meng-install dhcp serverroot:~# apt-get install dhcp3-server

2. kongurasi DHCP Server kita perlu memodikasi le /etc/dhcp3/dhcpd.conf berikut ini adalah isi le kongurasinya:subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.1 192.168.1.50; option domain-name "bakti.lab"; deny unknown-clients; } subnet 192.168.2.0 netmask 255.255.255.0 { range 192.168.2.1 192.168.2.50; option domain-name "camp.lab"; deny unknown-clients; }

16

3. restart service dhcp/etc/init.d/dhcp3-server restart

4. sekarang service DHCP server dapat dimanfaatkan

9 FTP (File Transfer Protocol)FTP (File Transfer Protocol) adalah sebuah protocol yang merupakan standar untuk transfer le antar host dalam sebuah jaringan. FTP merupakan salah satu protocol yang paling awal dikembangkan, dan masih digunakan hingga saat ini untuk download dan juga upload le antara klien FTP dan server FTP. Sebuah server FTP diakses dengan menggunakan Universal Resource Identier (URI) dengan format ftp://namaserver. Klien FTP dapat menghubungi server FTP dengan membuka alamat URI tersebut. FTP menggunakan protokol Transmission Control Protocol (TCP) untuk komunikasi data antara klien dan server, sehingga di antara kedua komponen tersebut akan dibuatlah sebuah sesi komunikasi sebelum transfer data dimulai. Sebelum membuat koneksi, port TCP nomor 21 di sisi server akan "mendengarkan" percobaan koneksi dari sebuah klien FTP dan kemudian akan digunakan sebagai port pengatur (control port) untuk 1. membuat sebuah koneksi antara klien dan server, 2. mengizinkan klien untuk mengirimkan sebuah perintah FTP kepada server dan juga 3. mengembalikan respons server ke perintah tersebut. Sekali koneksi kontrol telah dibuat, maka server akan mulai membuka port TCP nomor 20 untuk membentuk sebuah koneksi baru dengan klien untuk mentransfer data aktual yang sedang dipertukarkan saat melakukan pengunduhan dan penggugahan. Ada dua tipe FTP berdasarkan cara user masuk ke server FTP, yaitu secara anonymous dan authenticated: Anonymous

Pada anonymous FTP, pengguna tidak memerlukan account pada server sebagai ijin masuk. Biasanya, username yang digunakan adalah 'anonymous'. Account ini tidak memerlukan password. Walaupun user biasanya diminta mengisi alamat email sebagai password, namun biasanya hal ini tidak memerlukan verikasi dan user bisa langsung masuk ke server FTP. Tapi, ini juga tergantung kongurasi FTP server yang bersangkutan. Authenticated

Dengan authenticated FTP, user memerlukan account dan password untuk bisa masuk ke ftp server. 17

FTP server yang kami pakai untuk memberikan servis FTP adalah proftpd. Langkah-langkah setting proftpd yang kami lakukan adalah sebagai berikut: 1. install proftpdroot:~#apt-get install proftpd

2. modikasi le kongurasi /etc/ptoftpd.conf# /etc/proftpd/proftpd.conf This is a basic ProFTPD conguration le. # To really apply changes reload proftpd after modications. # Includes DSO modules Include /etc/proftpd/modules.conf # Set o to disable IPv6 support which is annoying on IPv4 only boxes. #UseIPv6 on ServerName "Debian" ServerType standalone DeferWelcome o MultilineRFC2228 on DefaultServer on ShowSymlinks on TimeoutNoTransfer 600 TimeoutStalled 600 TimeoutIdle 1200 DisplayLogin welcome.msg DisplayChdir .message true ListOptions "-l" DenyFilter \*.*/ # Use this to jail all users in their homes # DefaultRoot ~ # Users require a valid shell listed in /etc/shells to login. # Use this directive to release that constrain. # RequireValidShell o # Port 21 is the standard FTP port. Port 21 # In some cases you have to specify passive ports range to by-pass # rewall limitations. Ephemeral ports can be used for that, but # feel free to use a more narrow range. # PassivePorts 49152 65534

18

# If your host was NATted, this option is useful in order to # allow passive tranfers to work. You have to use your public # address and opening the passive ports used on your rewall as well. # MasqueradeAddress 1.2.3.4 # To prevent DoS attacks, set the maximum number of child processes # to 30. If you need to allow more than 30 concurrent connections # at once, simply increase this value. Note that this ONLY works # in standalone mode, in inetd mode you should use an inetd server # that allows you to limit maximum number of processes per service # (such as xinetd) MaxInstances 30 # Set the user and group that the server normally runs at. User root Group nogroup # Umask 022 is a good standard umask to prevent new les and dirs # (second parm) from being group and world writable. Umask 022 # Normally, we want les to be overwriteable. AllowOverwrite on # Uncomment this if you are using NIS or LDAP via NSS to retrieve passwords: # PersistentPasswd o # This is required to use both PAM-based authentication and local passwords # AuthOrder *mod_auth_pam.c mod_auth_unix.c # Be warned: use of this directive impacts CPU average load! # Uncomment this if you like to see progress and transfer rate with ftpwho # in downloads. That is not needed for uploads rates. # # UseSendFile o # Choose a SQL backend among MySQL or PostgreSQL. # Both modules are loaded in default conguration, so you have to specify the backend # or comment out the unused module in /etc/proftpd/modules.conf. # Use 'mysql' or 'postgres' as possible values. # # # SQLBackend mysql # TransferLog /var/log/proftpd/xferlog

19

SystemLog /var/log/proftpd/proftpd.log QuotaEngine o Ratios o # Delay engine reduces impact of the so-called Timing Attack described in # http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02 # It is on by default. DelayEngine on ControlsEngine o ControlsMaxClients 2 ControlsLog /var/log/proftpd/controls.log ControlsInterval 5 ControlsSocket /var/run/proftpd/proftpd.sock AdminControlsEngine o # Alternative authentication frameworks #Include /etc/proftpd/ldap.conf #Include /etc/proftpd/sql.conf # This is used for FTPS connections #Include /etc/proftpd/tls.conf # A basic anonymous conguration, no upload directories. User ftp Group nogroup # We want clients to be able to login with "anonymous" as well as "ftp" UserAlias anonymous ftp

20

# Cosmetic changes, all les belongs to ftp user DirFakeUser on ftp DirFakeGroup on ftp RequireValidShell o # Limit the maximum number of anonymous logins MaxClients 10 # We want 'welcome.msg' displayed at login, and '.message' displayed # in each newly chdired directory. DisplayLogin welcome.msg DisplayChdir .message # Limit WRITE everywhere in the anonymous chroot DenyAll # Uncomment this if you're brave. # # Umask 022 is a good standard umask to prevent new les and dirs # (second parm) from being group and world writable. Umask 022 DenyAll AllowAll

10 NFS (Network File Sharing)Network File Sharing (NFS) adalah metode yang paling banyak digunakan untuk le sharing antar sistem yang menggunakan UNIX. NFS memungkinkan client terhubung ke remote server dan me-mount le system yang ada pada server ke le system yang ada pada client seakan le system tersebut adalah drive milik client. Bergantung pada akses yang dimilikinya, client dapat memiliki akses read dan write kepada NFS server. Langkah-langkah kongurasi NFS Server adalah sebagai berikut: 21

1. install nfs-kernel-serverroot:~# apt-get install nfs-common nfs-kernel-server

2. meng-kongurasi le /etc/exports mengatur le mana yang di-share, untuk siapa saja le tersebut kita share dan juga permission yang akan kita berikan. Berikut ini sebagian dari isi le /etc/exports/opt/share 192.168.1.0/24(sync,no_wdelay,subtree_check,rw,root_squash) 192.168.2.0(sync,no_wdelay,subtree_check,rw,root_squash)

3. restart nfs-kernel-server/etc/init.d/nfs-kernel-server restart

4. sekarang NFS server dapat digunakan

11 LDAP (Lightweight Directory Access Protocol)Lightweight Directory Access Protocol (LDAP) adalah protokol aplikasi yang dapat digunakan untuk mengatur dan memodikasi layanan direktori yang berjalan dalam protokol TCP/IP. Direktori adalah sekumpulan objek dengan atribut serupa dan diatur dalam urutan logis dan bertingkat. Contoh yang paling mudah adalah direktori telepon yang berisi sekumpulan nama yang diatur secara alfabetis dengan tiap nama memiliki alamat dan nomor telepon. Mengacu pada desain dasar ini, LDAP seringkali digunakan untuk proses autentikasi. Pohon direktori LDAP dapat mereeksikan batas-batas organisasi, geogras, atau politik bergantung model yang dipilih. Penyebaran LDAP saat ini cenderung memakai nama Domain Name System (DNS) untuk menempatkan tingkat tertinggi dari hirarki. Lebih dalam ke direktori akan muncul entri yang merepresentasikan manusia, unit organisasi, printer, dokumen, sekelompok orang atau apapun yang merepresentasikan entri tree yang diberikan.

InstalasiUntuk seting LDAP server, kita memerlukan paket-paket berikut ter-istall: jawab pertanyaan lalu atur kongurasi ulang slapd agar dpkg menanyai kita bebrapa pertanyaan lagi.#dpkg-recongure slapd Omit OpenLDAP server conguration? ... No DNS domain name: ... debuntu. local Name of your organization: ... Whatever & Co # apt-get install slapd ldap-utils migrationtools

22

sekarang kita telah men-set up domain kita. Start servis LDAP dengan mengetik:# /etc/init.d/slapd start

Admin Password: XXXXX Conrm Password: XXXXX OK BDB Do you want your database to be removed when slapd is purged? ... No Move old database? ... Yes Allow LDAPv2 Protocol? ... No

Setelah itu kita harus menembah user dan grup ke dalam database LDAP

Mengumpulkan databaseDengan menggunakan migration tools kita dapat meng-import semua user dan grup yang ada dari local system ke dalam database LDAP. Kita harus meng-edit le kongurasi migrationtools migrate_common.ph mengganti parameter berikut:$DEFAULT_MAIL_DOMAIN = "debuntu.local"; $DEFAULT_BASE = "dc=debuntu,dc=local"; #cd /usr/share/migrationtools/

lalu export nilai berikut:

sayangnya, script yang ada tidak membuatkan node Group dan Orang, maka kita perlu membuatnya. Untuk membuatnya, buatlah le ~/people_group.ldif dan isi sebagai berikut:dn: ou=People, dc=debuntu, dc=local ou: People objectclass: organizationalUnit dn: ou=Group, dc=debuntu, dc=local ou: Group objectclass: organizationalUnit

# ./migrate_group.pl /etc/group ~/group.ldif # ./migrate_passwd.pl /etc/passwd ~/passwd.ldif

kita telah merubah user dan grup ke dalam format ldif LDAP. Sekarang kita harus meng-import mereka ke dalam database LDAP.

# cd # ldapadd -x -W -D "cn=admin,dc=debuntu,dc=local" -f ~/people_group.ldif # ldapadd -x -W -D "cn=admin,dc=debuntu,dc=local" -f ~/group.ldif # ldapadd -x -W -D "cn=admin,dc=debuntu,dc=local" -f ~/passwd.ldif

dengan:

-x menunjukkan bahwa kita tidak memakai sasl

23

-W membutuhkan password -D digunakan untuk mengenali administrator -f untuk menentukan le di mana ldapadd menemukan data untuk diambil

sekarang, server siap mengidentikasi user.

12 IP AliasIP aliasing adalah suatu metode yang memungkinkan server memberikan lebih dari satu alamat IP bagi suatu interface yang bisa dikenali oleh jaringan luar selain alamat IP asli interface tersebut. IP aliasing berguna dalam hosting secara virtual Web dan server FTP serta dalam meng-organisasi ulang server tanpa harus merubah kongurasi mesin lain (sangat berguna bagi nameserver). Kita bisa memisalkan IP alias sebagai anak kecil yang menumpang ke punggung interface orang tuanya (yang memiliki alamat utama interface sik). Pemberian IP alias kami setting pada le /etc/network/interfaces dan hasilnya adalah sebagai berikut:# This le describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 #IP Alias untuk eth0 auto eth0:0 iface eth0:0 inet static address 192.168.1.5 network 192.168.1.0 #IP address eth0 auto eth0 iface eth0 inet static address 10.122.67.110 netmask 255.255.255.0 network 10.122.67.0 broadcast 10.122.67.255 gateway 10.122.67.1 #IP alias untuk eth2 auto eth2:2 iface eth2:2 inet static address 192.168.2.12 #IP address eth2 auto eth2 iface eth2

24

inet static address 192.168.2.1 netmask 255.255.255.0 up route add -net 10.10.0.0 netmask 255.255.255.0 gw 192.168.2.2 #gateway 192.168.2.1 #IP alias untuk eth1 auto eth1:1 iface eth1:1 address 192.168.1.19 #IP address eth1 auto eth1 iface eth1 inet static address 192.168.1.1 netmask 255.255.255.0 up route add -net 10.10.2.0 netmask 255.255.255.0 gw 192.168.1.2 up route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.1.2 #gateway 192.168.1.0

13 IP ForwardIP Forwarding berguna untuk mem-forward semua request yang ditujukan ke url tertentu untuk diarahkan menuju IP address spesik yang sesuai. Misalnya, request ke url www.its.ac.id akan di-redirect ke alamat IP address 202.46.129.23 Secara default, setting IP forward adalah disabled. Hal ini dikarenakan suatu host yang bertindak sebagai client tidak memerlukan IP forward. Namun, karena debian Lenny berlaku sebagai router, maka kita perlu meng-enable IP Forward. Untuk meng-enable IP forward, sebelumnya kita perlu mengecek apakah IP forwarding telah enable Jika nilai keluarannya adalah 0, maka hal itu berarti IP forwarding disable. Untuk meng-enable, kita perlu memodikasi le /etc/sysctl.conf dan menambahkan baris berikut: jika sudah, maka kita tinggal me-restart network kita dengan me-restart servis procps/etc/init.d/procps.sh restart net.ipv4.ip_forward = 1 cat /proc/sys/net/ipv4/ip_forward 0

25

14 MRTG (Multi Router Trac Grapher) dan CACTIMRTG (Multi Router Trac Grapher)adalah suatu tool untuk me-monitor beban trac pada suatu link dalam jaringan. MRTG meng-generate suatu halaman HTML yang berisi gambar dalam format le PNG yang menggambarkan representasi secara Visual dari trac yang ada dalam suatu link. Setting dan kongurasi MRTG cukup mudah dilakukan. Yang harus kita lakukan adalah: 1. Install package MRTG 2. Membuat/memodikasi le kongurasi 3. Membuat halaman web untuk tampilan MRTG Berikut ini adalah tahap-tahap yang kami lakukan dalam proses instalasi dan setting MRTG. 1. meng-install apache apt-get install apache 2. install MRTGroot:~#apt-get install mrtg

3. membuat le kongurasi /etc/mrtg.cfg# Global Settings RunAsDaemon: yes EnableIPv6: no WorkDir: /var/www/mrtg Options[_]: bits,growright # Targets Target[10.10.2.0]: -/10.10.2.0:[email protected] MaxBytes[10.10.20.0]: 1250000 Title[10.10.2.0]: Win Server ke Free BSD - 10.10.2.0 PageTop[10.10.2.0]: Win Server ke Free BSD - 10.10.2.0 Unscaled[10.10.2.0]: ymwd Target[192.168.0.1]: -/192.168.0.1:[email protected] MaxBytes[192.168.0.1]: 1250000 Title[192.168.0.1]: Win Server ke Solaris - 192.168.0.1 PageTop[192.168.0.1]: Win Server ke Solaris - 192.168.0.1 Unscaled[192.168.0.1]: ymwd

26

Target[10.10.0.1]: /10.10.0.1:[email protected] MaxBytes[10.10.0.1]: 1250000 Title[10.10.0.1]: Suse ke Fedora - 10.10.0.1 PageTop[10.10.0.1]: Suse ke Fedora - 10.10.0.1 Unscaled[10.10.0.1]: ymwd

4. membuat halaman web untuk tampilan dengan indexmaker edit le /var/www/mrtg/newindex.sh dan tambahkan baris perintah berikutindexmaker /etc/mrtg.cfg output /var/www/mrtg/index.html

agar le yang baru kita buat dapat di-eksekusi, maka ketikkan perintah berikut pada konsolchmod 770 /var/www/mrtg/newindex.sh

5. sekarang servis MRTG bisa kita pakai

CACTICACTI merupakan software monitoring trac pada jaringan yang memanfaatkan RRDtool sebagai software graphing/perekam trac dan menyajikannya dalam bentuk gras. Berikut adalah proses instalasi dan kongurasi CACTI 1. Install cactiroot:~# apt-get install cacti

2. Kongurasi cacti pada saat proses instalasi, akan diminta untuk mengkongurasi setting MySql dengan wizard. Di akhir proses, sebuah database MySql dan cacti yang telah memiliki username akan dibuat secara otomatis. 3. Diminta untuk memberi Password user root MySql 4. Lalu, akan diminta memberi Password user MySql Cacti yang baru 5. Konrmasi password user MySql Cacti 6. Diminta memilih web server yang akan digunakan oleh Cacti. Pilih apache2 Sekarang Cacti sudah siap digunakan lewat http://localhost/cacti. login default dan passwordnya adalah admin. Perhatikan bahwa script poller.php yang mengirim request ke host dikeluarkan oleh user apache2. Untuk mengkongurasi ulang Cacti, gunakan perintah berikut:

#dpkg-recongure cacti

Untuk mengaktifkan poller secara manual:

#/usr/share/cacti/site/php5 poller.php27

kita perlu mengaktifkan poller pertama kali, lalu akan berjalan secara otomatis setiap 5 menit.

15 VOIP (Voice Over Internet Protocol) ServerVoice Over Internet Protocol (VoiP) adalah prinsip yang dikembangkan untuk transmisi suara antara dua device melalui protokol internet. Server Voip bisa menggunakan software TrixBox. TrixBox yang juga dikenal dengan 'Asterisk@home' adalah bagian dari distribusi Centos UNIX yang menyediakan paket opensource untuk internet telephony yang bebasis Voice Over-IP Asterisk yang terkenal. Protokol yang digunakan dalam hal ini adalah SIP untuk pen-sinyalan dan RTP untuk transmisi suara. Session Initialitation Protocol (SIP) digunakan untuk mengontrol session multimedia seperti suara atau video call. Sedangkan Real-Time Transport Protocol (RTP) digunakan untuk transmisi data multimedia.

16 XDMCPX Display Manager Control Protocol (XDMCP) menyediakan suatu metode bagi user pada client untuk menjalankan X Display dan berkomunikasi dengan server yang juga menjalankan X Display. Ketika Koneksi telah terjadi, user dapat masuk dan menjalankan program seperti halnya user sedang menjalankan remote pada komputer server. Station di mana user me-remote server biasa disebut dengan X terminal yang sebenarnya merupakan jendela menuju server. Semua software terletak pada server, semua pemrosesan dilakukan pada CPU server, dan semua le yang diakses juga terletak pada server. sehingga, X Terminal hampir tidak memerlukan sumber daya dari dirinya sendiri. Sebaliknya, CPU server haruslah sangat stabil.

Kongurasi DasarXDMCP merupakan protokol komunikasi yang sangat bermanfaat untuk menghemat sumber daya akan tetapi seperti halnya ftp, protokol ini tidak aman dari kemungkinan gangguan hacker. Sangat mudah bagi hacker untuk mengendap masuk dan mengambil informasi username dan password yang dilayangkan melalui koneksi tanpa enkripsi. XDMCP mestinya hanya dijalankan pada jaringan yang terpercaya. Server XDMCP harus menjalankan X Display Manager seperti xdm, kde atau gdm. Pada dasarnya, jika server telah masuk ke login screen gras, maka server telah menjalankan display manager. Pada server debian lenny yang kami pakai menggunakan display manager GNOME atau gdm. Untuk mengkongurasi mesin sebagai XDMCP server, kami mengkongurasinya saat booting. Hal ini kami lakukan dengan memodikasi le /etc/inittab. Hasilnya akan menunjukkan baris berikut:id:5:initdefault:

lalu ketikkan perintah telinit 5 untuk masuk ke login gras. 28

Kita tak perlu tergesa-gesa meng-kongrasi X terminal. Kita perlu mengecek apakah kongurasi XDMCP telah di-enable dan dikongurasi untuk layanan fonts serta tidak ada rewall yang menghalangi. Jika semua telah kita cek, maka XDMCP server mestinya dapat berjalan dengan baik. Kita juga perlu memodikasi le /etc/gdm/gdm.conf dan mengeset Agar X Terminal dapat mengakses servis yang diberikan XDMCP server, X Terminal harus menjalankan OS yang memiliki kongurasi X server. Windows dapat menggunakan Xming untuk mengakses XDMCP yang diberikan server.Enable=true

17 QuaggaQuagga adalah sebuah software aplikasi untuk routing protokol. Quagga tersusun atas bebrapa daemon. Satu untuk tiap protokol routing dan yang lain disebut Zebra yang berlaku sebagai kernel routing manager. Tiap daemon memiliki kongurasi dan terminal interface masing-masing yang bisa diakses melalui telnet. Quagga bekerja secara terpisah dari Operating Sistem di mana Quagga di-install. Harus ditekankan bahwa Quagga hanya memiliki kemampuan routing dan fungsi yang berhubungan dengannya, seperti route maps dan access list. Quagga tidak menyediakan servis non-routing seperti DHCP server, NFS server atau akses ssh.

18 SSH (Secure Shell)Menurut RFC (Request For Comment), pengertian dari Secure Shell (SSH): Secure Shell adalah program yang melakukan loging terhadap komputer lain dalam jaringan, mengeksekusi perintah lewat mesin secara remote, dan memindahkan le dari satu mesin ke mesin lainnya. Algoritma enkripsi yang didukung oleh SSH di antaranya BlowFish (BRUCE SCHNEIER), Triple DES (Pengembangan dari DES oleh IBM), IDEA (The International Data Encryption Algorithm), dan RSA (The Rivest-Shamir-Adelman). Dengan berbagai metode enkripsi yang didukung oleh SSH, Anda dapat menggantinya secara cepat jika salah satu algoritma yang Anda terapkan mengalami gangguan.

Instalasi SSHBeberapa paket program utama yang dijadikan satu paket dalam SSH suite adalah : 1. make-ssh-known-host Skrip Perl yang membuat database dari host-host yang otomatis dibuat berdasarkan domain.

29

2. scp The Secure Shell Copy Program, mengamankan penggAndaan data dari satu komputer ke komputer lainnya. Data ditransfer dalam bentuk enkripsi oleh SSH. 3. ssh The Secure shell client, program yang bekerja seperti telnet. Perintah dapat Anda jalankan secara remote sebagaimana telnet bekerja. 4. ssh-add Menambahkan kunci (key) baru terhadap autentikasi ssh-agent 5. ssh-agent Digunakan untuk autentikasi lewat jaringan dengan model RSA. 6. sshd Secure shell server, secara default bekerja pada port 22. 7. ssh-keygen Program pembuat kunci (key generator) untuk ssh. Selesai proses instalasi, Anda dapat mulai mengedit le kongurasi untuk SSH : /etc/sshd_cong (File kongurasi server) /etc/ssh_cong (File kongurasi klien)

Kongurasi Serversetelah di-edit, le /etc/sshd_cong akan tampak sebagai berikut :# Package generated conguration le # See the sshd(8) manpage for details # What ports, IPs and protocols we listen for Port 22 # Use these options to restrict which interfaces/protocols sshd will bind to #ListenAddress :: #ListenAddress 0.0.0.0 Protocol 2 # HostKeys for protocol version 2 HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key #Privilege Separation is turned on for security UsePrivilegeSeparation yes # Lifetime and size of ephemeral version 1 server key KeyRegenerationInterval 3600 ServerKeyBits 768 # Logging SyslogFacility AUTH LogLevel INFO # Authentication: LoginGraceTime 120 PermitRootLogin yes StrictModes yes RSAAuthentication yes PubkeyAuthentication yes # AuthorizedKeysFile %h/.ssh/authorized_keys # Don't read the user's ~/.rhosts and ~/.shosts les

30

IgnoreRhosts yes # For this to work you will also need host keys in /etc/ssh_known_hosts RhostsRSAAuthentication no # similar for protocol version 2 HostbasedAuthentication no # Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication # IgnoreUserKnownHosts yes # To enable empty passwords, change to yes (NOT RECOMMENDED) PermitEmptyPasswords no # Change to yes to enable challenge-response passwords (beware issues with # some PAM modules and threads) ChallengeResponseAuthentication no # Change to no to disable tunnelled clear text passwords # PasswordAuthentication yes # Kerberos options # KerberosAuthentication no # KerberosGetAFSToken no # KerberosOrLocalPasswd yes # KerberosTicketCleanup yes # GSSAPI options # GSSAPIAuthentication no # GSSAPICleanupCredentials yes X11Forwarding yes X11DisplayOset 10 PrintMotd no PrintLastLog yes TCPKeepAlive yes # UseLogin no # MaxStartups 10:30:60 # Banner /etc/issue.net # Allow client to pass locale environment variables AcceptEnv LANG LC_* Subsystem sftp /usr/lib/openssh/sftp-server UsePAM yes

Untuk menjalankan sshd, cukup ketikkan sshd pada konsole. Ada beberapa pilihan dalam menjalankan sshd. Pilihan ini diketikkan sebagai preks saat menjalankan sshd. Misal : # sshd -g 60 (menjalankan sshd dengan timeout untuk klien 60 detik)# sshd

Kongurasi KlienUntuk klien, ssh mempergunakan le /etc/ssh_cong. Setelah di-edit, le tersebut berisi :# This is the ssh client system-wide conguration le. See

31

# ssh_cong(5) for more information. This le provides defaults for # users, and the values can be changed in per-user conguration les # or on the command line. # Conguration data is parsed as follows: # 1. command line options # 2. user-specic le # 3. system-wide le # Any conguration value is only changed the rst time it is set. # Thus, host-specic denitions should be at the beginning of the # conguration le, and defaults at the end. # Site-wide defaults for some commonly used options. For a comprehensive # list of available options, their meanings and defaults, please see the # ssh_cong(5) man page. Host * # ForwardAgent no # ForwardX11 no # ForwardX11Trusted yes # RhostsRSAAuthentication no # RSAAuthentication yes # PasswordAuthentication yes # HostbasedAuthentication no # GSSAPIAuthentication no # GSSAPIDelegateCredentials no # GSSAPIKeyExchange no # GSSAPITrustDNS no #BatchMode no # CheckHostIP yes # AddressFamily any # ConnectTimeout 0 # StrictHostKeyChecking ask # IdentityFile ~/.ssh/identity # IdentityFile ~/.ssh/id_rsa # IdentityFile ~/.ssh/id_dsa # Port 22 # Protocol 2,1 # Cipher 3des #Ciphers #aes128-cbc,3des-cbc,blowsh-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc # MACs hmac-md5,hmac-sha1,[email protected],hmac-ripemd160 # EscapeChar ~ # Tunnel no # TunnelDevice any:any # PermitLocalCommand no SendEnv LANG LC_* HashKnownHosts yes GSSAPIAuthentication yes GSSAPIDelegateCredentials no

32

DedicationTulisan ini merupakan hasil dari praktek langsung membuat jaringan komputer (LAN) yang dijalani oleh penulis selama satu minggu penuh. Dilaksanakan pada saat liburan semester Gasal 2007/2008, tepatnya tanggal 20-26 Januari 2008 silam. Praktek yang dijalani penulis bersama 5 orang rekannya tersebut merupakan salah satu dari sekian rangkaian seleksi untuk menjadi warga lab B201 (Lab Komputer dan Digital) di Jurusan Teknik Elektro ITS Surabaya. Saat itu, penulis dan rekan-rekannya diminta untuk membangun sebuah jaringan yang terdiri dari 6 buah PC dengan Operating System (OS) yang berbeda-beda untuk tiap PC. Tiap orang dalam grup tersebut bertanggung jawab terhadap satu buah PC berikut OS-nya. OS yang dipakai di antaranya: Debian Lenny, Windows Server 2003, Open Solaris, Free BSD, Open SuSe, dan yang terakhir adalah Fedora. Selain meng-kongurasi jaringan, tiap PC dengan OS-nya yang 'unik' harus dapat memberikan servis aplikasi-aplikasi yang telah ditentukan oleh 'senior'. Penulis sendiri mendapatkan 'jatah' OS Debian Lenny dengan 18 aplikasi yang 'kudu' diberikannya. Aplikasi yang diberikan Lenny bisa dibilang paling banyak dan juga paling sulit. Maklum, Debian Lenny bertindak sebagai server dalam jaringan yang dibuat. Meski di akhir praktek tidak semua servis mampu diselesaikan oleh penulis, tapi penulis coba mencari-cari lagi metode penyelesaian yang tepat dari internet dan belajar dari rekan yang lain. Kalaupun tidak ketemu caranya, penulis coba memberikan gambaran seperti apakah aplikasi yang dimaksud. Penulis berharap ilmu yang didapat dari pengalamannya selama mengkongurasi jaringan bersama rekan-rekannya ini akan dapat bermanfaat bagi mereka yang ingin belajar meng-administrasi jaringan LAN dengan server berbasis Debian Lenny. Surabaya, Maret 2008 ttd Penulis

33