Admin Server Linux . . . . . . . 1 Membangun SERVER LINUX DEBIAN 6.0 ( SQUEEZE ) Kompetensi ke-17 / Kls.XII TKJ TEKNIK KOMPUTER JARINGAN SMK NEGERI 1 TALAGA Jl. Sekolah No. 20 Talagakulon, Kec. Talaga, Kab. Majalengka 45463 Tlp. 0233-3316613 http://www.smkn1talaga.net/web .::. e-mail : [email protected] Admin Server Linux . . . . . . . 2 DAFTAR ISI 1. PENDAHULUAN .......................................................................................................................3 1.1. Komputer Server...................................................................................................................4 1.2. Fitur–Fitur Server..................................................................................................................7 1.3. Spesifikasi Hardware............................................................................................................8 1.4. Spesifikasi Software............................................................................................................12 2. SISTEM OPERASI SERVER....................................................................................................13 2.1. Instalasi Debian 6.0 (Squeeze)............................................................................................15 2.2. Perintah Linux.....................................................................................................................30 2.3. Port dalam Server................................................................................................................34 2.4. Konfigurasi NIC / LAN Card.............................................................................................35 3. APLIKASI SERVER..................................................................................................................37 3.1. dhcp3-server (DHCP).........................................................................................................37 3.2. bind9 (DNS)........................................................................................................................39 3.3. apache2 (Web / HTTP).......................................................................................................43 3.4. postfix (Mail)......................................................................................................................46 3.5. proftpd (FTP)......................................................................................................................52 3.6. samba (File & Printer Sharing)...........................................................................................54 3.7. mysql-server (Database).....................................................................................................57 3.8. squid (Proxy).......................................................................................................................60 4. KEAMANAN SERVER.............................................................................................................60 4.1. Username dan Password.....................................................................................................60 4.2. Web / https..........................................................................................................................61 4.3. htacces.................................................................................................................................61 4.4. ssh.......................................................................................................................................61 4.5. ssl........................................................................................................................................61 5. MONITORING / REMOTE SERVER.......................................................................................61 5.1. Monitoring Server...............................................................................................................61 5.2. Remote Server.....................................................................................................................61 Admin Server Linux . . . . . . . 3 1. PENDAHULUAN Di era Teknologi Informasi sekarang ini manusia dituntut untuk mendapatkan segala informasi dengan cepat dan akurat. Selain itu juga harus dapat menyimpan informasi / data pribadi yang dapat diakses dengan cepat pula. Dengan kata lain manusia membutuhkan informasi yang cepat dan akurat. Gbr. Penggunaan Server Informasi /data (baik data pribadi, data kelompok, data perusahaan, ataupun datadata lainnya) sebenarnya dapat disimpan dalam dua cara yaitu : 1. Disimpan pada tempat Dinamis (yang dapat bergerak dan dapat dibawa kemanamana) seperti Buku Agenda, PDA, Laptop, dan lain-lain. Hal ini berarti bahwa kita dapat mengakses dan menyimpan data kapan dan dimana pun kita memerlukannya, akan tetapi resikonya kita harus selalu membawa perangkat penyimpan data tersebut. 2. Disimpan pada tempat Statis (berada pada satu tempat dan tidak bisa dibawa kemana-mana) seperti Komputer server (Server Internet). Hal ini berarti kita tidak perlu lagi membawa perangkat penyimpanan data tersebut karena kita dapat mengkses dan menyimpan data kapan dan dimanapun berada, dengan catatan ada jaringan internet dan perangkat untuk mengkoneksikan ke internetnya. Dari dua tempat penyimpanan tersebut tentunya yang lebih praktis digunakan setiap inidividu sekarang ini adalah cara ke dua (cara statis) karena cukup membawa satu perangkat saja (Handphone yang sudah mendukung internet browser) maka sudah Admin Server Linux . . . . . . . 4 dapat menyimpan dan mengambil data yang diperlukannya saat bekerja atau berbisnis. Internet Banking juga sistemnya sama seperti cara ke dua tadi yaitu menggunakan Komputer Server yang dapat diakses melalui internet sehingga nasaabah dapat melakukan transaksi dimanapun berada, dan masih banyak contoh lainnya yang menggunakan cara ke dua karena ke praktisannya. 1.1. Komputer Server Komputer server sebenarnya sama seperti komputer-komputer lainnya yang biasa digunakan dalam pekerjaan sehari-hari. Perbedaannya ada pada Kecepatan Proses, Kapasitas Penyimpanan, dan Ketahanan perangkatnya. Komputer server harus memiliki kecepatan premrosesan yang sangat tinggi karena akan diakses oleh jutaan pengguna dimanapun yang mungkin secara bersamaan mengaksesnya. Selain itu juga harus memiliki kapasitas penyimpanan yang sangat besar karena akan digunakan sebagai tempat penyimpanan data oleh jutaan pengguna dimanapun berada, dan yang terakhir komputer server harus memiliki ketahanan dalam pengoperasian yang terus-menerus (nonstop) karena juataan pengguna akan menggunakan data tersebut kapan pun saat mereka membutuhkannya (baik itu pagi, siang, atau malam) selama 24 jam. Gbr. Server Lokal Admin Server Linux . . . . . . . 5 Salah satu contoh komputer server adalah server lokal pada suatu instansi (perusahaan). Masing-masing divisi/bagian di perusahaan tersebut dapat mengambil dan menyimpan data perusahaan pada server lokal. Data tersebut dapat digunakan oleh divisi lain yang membutuhkannya sehingga antar divisi jika membutuhkan data tidak perlu mengantarkan ke divisi lain tetapi cukup mengakses pada komputer di divisinya saja. Selain itu, cabang perusahan yang lokasinya di luar kota juga dapat mengaksesnya melalui internet. Contoh lain yang lebih besar lagi adalah server Google, Yahoo, dan serverserver lainnya. Kedua server tersebut tidak pernah berhenti beroperasi dan kalaupun ada perawatan maka sebelum server utama dihentikan, server cadangan sudah beroperasi terlebih dahulu sehinnga pelayanan data tidak terhenti dan seolah-olah server tersebut tak pernah dimatikan. Gbr. Server Google Admin Server Linux . . . . . . . 6 Gbr. Server Yahoo Komputer server juga harus memiliki karakter Availibility (Ketersediaan) dan Scalability (Ketercakupan). Availibility maksudnya adalah : sebuah server harus mampu selalu tersedia “melayani” user/client secara terus menerus, yang di-istilahkan dengan 24-jam x 7 hari seminggu. Server juga seharusnya hanya memiliki sedikit “Fault-Tolerant”, yaitu gangguan yang menyebabkan downtime (kegagalan sistem server). Jadi dapat disimpulkan karakter availibility merupakan kemampuan server untuk merespon segala hal permintaan user kapan-pun waktunya. Definisi Scalability adalah : sebuah server harus dapat ditingkatkan kemampuannya, yaitu dari sisi performa, fungsi & penambahan jumlah klien. Scalability dibagi menjadi dua, yaitu : • Scale-Up, yaitu kemampuan server untuk di-upgrade komponen & periferalnya (misal : Processor atau RAM) sehingga performa-nya secara keseluruhan akan meningkat dan waktu penggunaan (life-cyle) bisa lebih lama. • Scale-Out, yaitu kemampuan unit server untuk ditambah (misal dari satu menjadi tiga unit) agar beban kerja pemrosesannya dapat dibagi rata dan lebih optimal. Misalnya : sebuah perusahaan membuat memisahkan fungsi web e-commerce pada server (Web Server) terpisah dari server database-nya. Salah satu implementasi dari Scale-Out adalah pada server rackmount dan blade system yang akan diterangkan selanjutnya. Admin Server Linux . . . . . . . 7 1.2. Fitur–Fitur Server Sebuah server biasanya memiliki dan menyediakan fitur-fitur yang diperlukan oleh client. Fitur ini bisa disediakan hanya 1 saja atau bahkan bisa lebih dari satu. Hal ini tergantung pada kebutuhan dan ketersediaan infrastruktur yang ada. Secara umum setiap server memiliki fitur-fitur yang sama akan tetapi fitur-fitur itu memiliki kelebihan masing-masing tergantung pada sistem operasi server yang digunakannya. Fitur yang umum terdapat pada server adalah sebagai berikut : a. DHCP (Dynamic Host Configuration Protocol) Fitur ini menyediakan pemberian no IP (Internet Protocol) secara otomatis untuk setiap Client yang terhubung ke server. Nomor ini diberikan pada saat pertama kali komputer client tersebut dinyalakan lalu terkoneksi ke server. Setiap no IP yang diberikan diawali dari nomor terkecil dan tidak akan ada nomor yang sama karena jika nomor tersebut telah digunakan, maka diberikan nomor baru untuk client yang baru terkoneksi (baru nyala). b. DNS (Domain Name System) Dengan layanan DNS maka client tidak harus menghafalkan setiap IP address server yang akan diakses. Client hanya menuliskan Address nya untuk dapat mengakses server karena fungsi dari DNS ini adalah menerjemahkan no IP ke Address dan sebaliknya menerjemahkan Address ke no IP kembali. c. HTTP (Hypertext Transfer Protocol) Fitur ini berfungsi untuk menampilkan data/informasi berbasis web (data HTML) dan biasanya disebut sebagai web server. Client dapat berbagi dan menyimpan data di server dengan datanya berbasis web. d. Mail Server menyediakan layanan pengelolaan surat elektronik (email) dimana client dapat berbagi informasi/data yang berbentuk surat elektronik. Client dapat mengirim dan menerima surat dan dapat pula menyisipkan lampiran file gambar, data, dan lainnya. e. FTP (File Transfer Protocol) Fitur ini menyediakan layanan untuk menyimpan dan mengambil informasi berbentuk file dan dapat diakses dimana saja tanpa dibatasi oleh perbedaan network / subnetting. Dengan demikian seseorang dapat barbagi data / file langsung (file word, excel, software, dan lainnya), akan tetapi dapat Admin Server Linux . . . . . . . 8 memperkecil ukuran file yang akan dibaginya untuk mempercepat proses transfer datanya yaitu dengan mengkompress data tersebut terlebih dahulu. f. Sharing (File dan Printer) Fitur ini mirip dengan FTP akan tetapi pada fitur ini setiap client yang akan berbagi / share (file atau printer) harus terkoneksi dalam network / subnetting yang sama. Jika berbeda subnet / network maka tidak bisa saling berbagi. Setiap client dapat berbagi sebuah printer (mencetak data lewat printer) dari mana saja (dari client mana saja). g. Database Client dapat menyimpan, mengambil, dan menampilkan database yang diinginkan pada sebuah server dengan fitur ini dimanapun dia berada. Akan tetapi database ini akan dapat diproses melalui aplikasi database yang berbasis web. h. Proxy Fitur ini menyediakan layanan keamanan jaringan (firewall) dan akan mengelola / mengatur / bahkan memproteksi client yang terkoneksi ke server. Selain itu juga menyediakan layanan cache web / memori sementara untuk menyimpan data-data web yang sering diakses oleh client pada rentang waktu tertentu sehingga akan menghebat bandwidth. 1.3. Spesifikasi Hardware Sebuah server yang bagus biasanya akan beroperasi / running 24 jam nonstop tanpa henti, kecuali saat perawatan server, maka server akan dimatikan sejenak tetapi server cadangan tetap berfungsi karena untuk melayani client yang membutuhkan data dari server setiap saat. Dengan demikian server tersebut secara hardware harus tahan terhadap panas, kerja yang multitasking secara maksimal. Oleh karena itu spesifikasi hardware dari sebuah server yang harus diperhatikan adalah : a. Motherboard harus memiliki Address dan Data Bus yang cukup besar yang nantinya digunakan sebagai transfer data secara maksimal. Harus memiliki socket memory (RAM) yang support besar kapasitasnya, juga harus support processor yang tertinggi / tercepat pemrosesannya. Admin Server Linux . . . . . . . 9 Gbr. Motherboard INTEL-S5500BCR Spesifikasi Tehnik : – – – – – – – Processor Support Chipset Memory Storage Integrated LAN Integrated Graphics Harga : : : : : : : Up to 2 Intel Xeon processors 5500 or 5600 series Intel® 5500 chipset with Intel® I/O Controller Hub ICH10R 8 DDR3 DIMM sockets (800/1066/1333 MHz) 6 SATA ports (3 Gbps) via ICH10R 2 Embedded dual Intel® Gigabit Ethernet Controllers 8 MB allocated to graphics Rp. 3.589.000,- b. Microprocessor / Processor harus memiliki kemampuan mengolah / memproses data yang maksimal dan ditunjang dengan FSB yang maksimal pula sehingga proses akan lebih maksimal. Spesifikasi Tehnik : – Clock Speed : 3.46 GHz – c# of Cores : 6 Core – Memory Cache : 12 MB – QPI / FSB : 6.4 GT/s – Socket Support : FCLGA1366 – Harga : US $1,663 Gbr. Processor INTEL Xeon 5600 Admin Server Linux . . . . . . . 10 c. Memory (RAM) harus memiliki transfer data yang maksimal dan tentunya memiliki kapasitas data yang maksimal pula. Gbr. Memory/RAM DDR 3 Spesifikasi Tehnik : – Clock Speed – Capacity – Socket – Pin : 1333 MHz : 2 GB / 4 GB / 8 GB / 16 GB : DIMM (DDR3) : 240 pin d. Harddisk harus memiliki putaran cylinder yang maksimal sehingga pembacaan datanya pun akan maksimal. Spesifikasi Tehnik : Gbr. Hard Disk SATA – Model – Interface – Capacity : Baracuda ST32000542AS – Spin Speed : 5900 RPM : Rp. 1.000.000,- – Price : SATA 3Gb/s : 2 TB Admin Server Linux . . . . . . . 11 e. NIC / LAN Card sebagai sarana komunikasi server dengan client, harus memiliki kecepatan hingga GigaByte karena akan banyak clien yang akan koneksi ke server. Spesifikasi Tehnik : – Model : Intel E10G41AT2 – Interface – Connectors : PCI Express 2.0 x8 – Speed : 10Gbps : US$ 525 – Price Gbr. LAN Card Gigabits : 1 x RJ45 f. Power Supply harus tahan terhadap panas dan daya tinggi serta tahan terhadap perubahan tegangan yang bisa naik / turun sehingga tidak menggangu kerja Processor. Spesifikasi Tehnik : – Model – Wattage – Form Fa ctor : ULTRA ULT-LSP750 – Input Voltage – Price : 115V ~ 230V : US$ 79.99 : 750 W : ATX Gbr. Power Supply Admin Server Linux . . . . . . . 12 g. Pendingin / Heatsink harus memadai baik pendingin dalam komputer sendiri maupun pendingin ruangan sehingga suhu pada komputer akan stabil dan komputer akan bekerja dengan maksimal pula. 1.4. Spesifikasi Software Software yang digunakan pada sebuah server tentunya harus memiliki spesifikasi yang akan menghasilkan kerja server tersebut akan maksimal, dengan kata lain tidak ada proses yang tertunda atau berputar-putar sehingga mengganggu kinerja server. Adapun spesifikasi software bagi sebuah server agar mendapatkan kerja maksimal adalah : a. Operating System / Sistem Operasi harus dapat mengakses langsung ke titik yang diperintahkan tanpa perantara / penerjemah proses lainnya. b. Aplikasi server dan jaringan harus terbaru dan support untuk semua jenis komputer client serta stabil. c. Konfigurasi harus seefektif mungkin sehinnga tidak menggangu konfigurasi lainnya saat konfiguri yang satu terganggu. d. Mempunyai sistem keamanan (Security System) yang tinggi sehingga data aman dan tidak dapat dirusak / dimodifikasi selain oleh yang memilikinya saja. e. Memiliki antivirus yang baik. Dari kesekian spesifikasi software yang disarankan untuk sebuah terdapat dua pilihan software yang tersedia, yaitu yang menggunakan software private license atau yang General Public License (GPL). Kedua pilihan tersebut tentunya memiliki kelebihan masing-masing tergantung dari kebutuhannya. Akan tetapi secara umum kelebihan terbesar terdapat pada software yang General Public License (GPL) yang lebih dikenal dengan nama Linux. Hal ini disebabkan dalam OS (Operating System) linux sudah terdapat semua aplikasi server yang dibutuhkan dengan fitur-fitur yang sama seperti software private license. Selain itu karena GPL maka tidak harus mengeluarkan biaya tambahan pada setiap softwarenya. Admin Server Linux . . . . . . . 13 2. SISTEM OPERASI SERVER Karena server akan melayani banyak client, maka sistem operasi yang paling efektif untuk sebuah server adalah sistem operasi yang mendukung jaringan, multitasking (dapat mengerjakan beberapa operasi secara bersamaan), multiuser (dapat diakses oleh banyak pengguna secara bersamaan), dan biasanya berbasis text (karena perintahnya langsung diakses ke hardware tanpa banyak konversi perintah seperti pada GUI sehingga akan menghemat RAM komputer). Selain itu juga harus mendukung keamanan / security yang sangat ketat atau berlapis, serta dari segi biaya tentu lebih murah. Pilihan dari semua itu tentunya mengarah kepada Linux, dimana linux adalah sistem operasi yang mendukung jaringan, multitasking, multiuser, support Server & Desktop (text & GUI), keamanannya tinggi dan berlapis serta tentunya GPL (Lisensi Publik) sehingga tidak perlu bayar lisensi. Sistem operasi Linux ini digolongkan ke dalam 3 kelompok besar yaitu Debian, Slackware, dan RedHat. Dari tiga kelompok besar ini kemudian berkembanglah distro-distro linux lainnya yang dikembangkan sesuai dengan kebutuhannya, diantaranya adalah : 1. Kelompok Debian : Debian, BackTrack, Damn Small Linux (DSL), Helix, Knoppix, MEPIS, Ubuntu, Ultimate Edition, dan masih banyak lagi yang lainnya. Ultimate Edition Admin Server Linux . . . . . . . 14 2. Kelompok Slackware : Slackware, SuSE, VectorLinux, Zenwalk, Kongoni, dan masih banyak lagi yang lainnya. 3. Kelompok RedHat : RedHat, Mandrake, PCLinuxOS, Fedora, CentOS, Mandriva, Caldera, dan masih banyak lagi yang lainnya. Linux yang banyak digunakan sebagai sistem operasi server adalah kelompok Redhat, diantaranya adalah Red Hat Enterprise Linux (RHEL) dan Fedora, tetapi pada prinsipnya semua distro linux dapat dijadikan server. Admin Server Linux . . . . . . . 15 2.1. Instalasi Debian 6.0 (Squeeze) Sebelum melakukan instalasi sistem operasi linux, yang harus diperhatikan terlebih dahulu adalah pembagian partisi linux dimana partisi ini harus dibuat didalam proses instalasinya. Partisi ini menggunakan sistem file ext2, ext3, atau ext4 yang berbeda dengan sistem file di windows. Partisi minimal yang harus ada didalam instalasi linux sebanyak dua partisi yaitu partisi “ / “ (baca: root ) dan partisi “ swap “, dimana “ / “ adalah partisi utama yang akan diisi dengan sistem linux dan partisi “ swap “ adalah partisi yang difungsikan sebagai Virtual Memory dari sistem linux tersebut. Fungsi Virtual Memory ini adalah sebagai memory tambahan bagi sistem linux yang akan digunakan jika memory utama (RAM yang ada di Motherboard) sudah penuh oleh sistem linux. Partisi dalam sistem linux dibagi menjadi 2 macam yaitu partisi Primary dan partisi Logical, dimana primary berjumlah maksimal 4 partisi sedangkan Logical bisa berjumlah banyak partisi. Penamaan partisi ini tergantung dari device yang terpasang pada sebuah komputer. Device yang dapat dipartisi tersebut diantaranya adalah Harddisk, Flashdisk, dan storage device / media penyimpanan lainnya. Biasanya device ini diberi nama sdxn, dimana “x” adalah variabel dari nama device yang terpasang dan “n” adalah nomor partisi ke berapa dari suatu device. Sebagai contoh jika terpasang sebuah harddisk dengan 6 buah partisi, diantaranya 4 partisi primary dan 2 partisi logical, maka penamaan dari device ini adalah sebagai berikut : – Partisi 1 (Primary 1) memiliki nama sda1 – Partisi 2 (Primary 2) memiliki nama sda2 – Partisi 3 (Primary 3) memiliki nama sda3 – Partisi 4 (Primary 4) memiliki nama sda4 – Partisi 5 (Logical 1) memiliki nama sda5 – Partisi 6 (Logical 2) memiliki nama sda6 dimana “a” adalah keterangan dari harddisk pertama / device 1 dan “1” s/d “6” adalah nomor partisi ke-1 s/d ke-6 dari harddisk tersebut. Admin Server Linux . . . . . . . 16 Selain partisi tersebut, sebenarnya masih ada beberapa partisi yang akan lebih baik dibuat untuk menyimpan direktori-direktori yang ada dibawah direktori “ / “. Partisi tersebut dibuat untuk menyimpan direktori-direktori yaitu direktori “ /home “, “ /boot “, “ /var “, “ /usr “, dan “ /tmp “. Secara normal direktoridirektori ini berada dibawah direktori “ / “ pada partisi utama. Susunan direktori linux secara umum adalah sebagai berikut : Gbr. Struktur Direktori Linux Langkah Instalasi Linux Debian 6.0 ( ) Server 1. Siapkan semua kebutuhan instalasi seperti DVD Debian 6.0 Unit PC yang dilengkapi dengan DVD Drive. 2. Setting Boot Order pada BIOS setup menjadi CD/DVD sebagai media booting yang pertama (First Boot). Admin Server Linux . . . . . . . 17 3. Lakukan booting hingga muncul tampilan awal seperti gambar berikut : Gbr. 1 Tampilan awal BootingCD 4. Pilih “Install” kemudian tekan “ENTER” Gbr. 2 Select a language 5. Pilih “English – English” kemudian tekan “ENTER” Admin Server Linux . . . . . . . 18 Gbr. 3 Select your location 6. Pilih “United States” kemudian tekan “ENTER” Gbr. 4 Select a keyboard layout 7. Pilih “American English” kemudian tekan “ENTER” dan tunggu proses loading files... Admin Server Linux . . . . . . . 19 Gbr. 5 Configure the network 8. Kosongkan saja, kemudian tekan “ENTER” Gbr. 5a Configure the network (Hostname) 9. Tulis “debian” sebagai hostname nya, kemudian tekan “ENTER” Admin Server Linux . . . . . . . 20 Gbr. 5b Configure the network (Domain name) 10. Kosongkan saja, kemudian tekan “ENTER” Gbr. 6 Set up user and passwords (root password) 11. Tulis “utama” kemudian tekan “ENTER” Admin Server Linux . . . . . . . 21 Gbr. 6a Set up user and passwords (retype root) 12. Tulis “utama” sekali lagi sebagai konfirmasi password kemudian tekan “ENTER” Gbr. 6b Set up user and passwords_Full name 13. Tulis “Kelas XII TKJ” kemudian tekan “ENTER” Admin Server Linux . . . . . . . 22 Gbr. 6c Set up user and passwords_Username 14. Tulis username-nya“tekaje” kemudian tekan “ENTER” Gbr. 6d Set up user and passwords_Password 15. Tulis password-nya “latihan” kemudian tekan “ENTER” Admin Server Linux . . . . . . . 23 Gbr. 6e Set up user and passwords_Re-enter Password 16. Tulis kembali passwordnya “latihan” kemudian tekan “ENTER” Gbr. 7 Configure the clock 17. Pilih “East Indiana” kemudian tekan “ENTER”, tunggu proses... Admin Server Linux . . . . . . . 24 Gbr. 8 Partition disks 18. Pilih “Guided – use entire disk” kemudian tekan “ENTER” Gbr. 8 Partition disks _ Select disk to partition 19. Tekan “ENTER” saja... Admin Server Linux . . . . . . . 25 Gbr. 8 Partition disks _ Partitioning scheme 20. Disini Tekan “ENTER” lagi... Gbr. 8 Partition disks _ Finish Partitioning 21. Disini Tekan “ENTER” lagi... Admin Server Linux . . . . . . . 26 Gbr. 8 Partition disks _ Write changes to disks 22. Pilih “<Yes>” kemudian Tekan “ENTER”, tunggu prosess ... Gbr. 8 Scan another CD or DVD 23. Pilih “<No>” kemudian Tekan “ENTER” Admin Server Linux . . . . . . . 27 Gbr. 8a Use a network mirror 24. Pilih “<No>” kemudian Tekan “ENTER”, tunggu prosess ... Gbr. 8b Configurasi repository 25. Pilih “<Continue>” kemudian Tekan “ENTER”, tunggu prosess install software... Admin Server Linux . . . . . . . 28 Gbr. 9 Participate in the package usage 26. Pilih “<No>” kemudian Tekan “ENTER”, tunggu prosess install software... Gbr. 10 Software selection 27. Pilih hanya “Standard system utulities” kemudian Tekan “ENTER”, tunggu prosess install software... Admin Server Linux . . . . . . . 29 Gbr. 11 Configure grub-pc (boot loader) 28. Pilih “<Yes>” kemudian Tekan “ENTER”, tunggu prosess ... Gbr. 12 Finish the installation 29. Pilih “<Continue>” kemudian Tekan “ENTER”, tunggu prosess restart... 30. Selesai proses instalasi. Admin Server Linux . . . . . . . 30 2.2. Perintah Linux Perintah linux harus dikuasai bagi seorang administrator server karena hanya dengan perintah itu dia bisa berinteraksi dengan server baik local (berinteraksi pada servernya langsung) ataupun remote (berinteraksi dengan server melalui jaringan dari luar server). Sebelum mempelajari perintah lunux tentunya ada satu hal yang perlu diketahui oleh seorang operator ataupun administrator server linux yaitu keterangan prompt yang muncul setelah proses booting selesai. Keteranga tersebut adalah sebagai berikut : rusnandi@server1:~$ keterangan : rusnandi = adalah nama user yang sedang aktif @ = adalah batas pemisah antara Username dan Computer Name / Host Name server1 = adalah nama dari Computer Name / Host Name : = adalah pembatas antara Computer Name / Host Name dan direktori utama User ~ = adalah tanda direktori utama / root directory dari pengguna / user biasa $ = adalah tanda prompt dari Pengguna Biasa / User root@server1:/# keterangan : root = adalah nama user yang sedang aktif @ = adalah batas pemisah antara Username dan Computer Name / Host Name server1 = adalah nama dari Computer Name / Host Name : = adalah pembatas antara Computer Name / Host Name dan direktori utama User / = adalah tanda direktori utama / root directory dari Pengguna Super/ Super User # = adalah tanda prompt dari Pengguna Super / Super User Selain keterangan prompt, yang perlu diperhatikan lagi bagi seorang administrator server linux adalah hak akses file. Hak akses ini nantinya akan membatasi / memproteksi siapa saja yang bisa menangani file tersebut. Ketentuan dari hak akses file adalah sebagai berikut : 1 2 3 4 5 drwxr-xr-x 4 root -rw-r--r-- 1 rusnandi rusnandi root 6 1024 lrwxrwxrwx 1 rusnandi rusnandi 7 8 9 2011-04-24 23:53 boot 115172 2011-05-02 06:18 LA32C450.pdf 54 2011-06-03 15:24 squid -> /home/squid.pdf Gbr. Identitas File Admin Server Linux . . . . . . . 31 Keterangan Identitas File : 1. Indikator Direktori ( d ), File ( - ), atau Link / Shortcut ( l ) 2. Hak akses file 3. Jumlah File / Direktori didalamnya 4. Pemilik User 5. Pemilik Group 6. Kapasitas file / direktori 7. Thn-Bln-Tgl file dibuat / diedit 8. Jam:Menit file dibuat / diedit 9. Nama File / direktori / link berikut keterangannya Hak akses pada identitas file diatas memiliki 3 wilayah sebagai berikut : “rwx rwxrwx “ Warna merah merupakan hak akses dari pengguna “root” Warna hijau merupakan hak akses dari pengguna “group” Warna biru merupakan hak akses dari pengguna “other” / “guest” dimana “root” berkuasa penuh terhadap sistem linux, “group” berhak mengakses pada wilayah groupnya saja, sedangkan “other” atau “guest” hanya terbatas diluar kedua wilayah tadi. Hak akses ini memiliki 3 ketentuan yaitu : “r” = read, menandakan bahwa file tersebut bisa dibaca. “w” = write, menandakan bahwa file tersebut bisa diubah / dihapus. “x” = execute, menandakan bahwa file tersebut bisa dieksekusi / dijalankan. Ketentuan nilai dari hak akses ini adalah sebagai berikut : “r” = 4 (mempunyai nilai 4), “w” = 2 (mempunyai nilai 2), “x” = 1 (mempunyai nilai 1), sehingga jika ada keterangan file seperti berikut : -rw–r--r-- 1 rusnandi rusnandi 115172 2011-05-02 06:18 LA32C450.pdf maka file tersebut dapat dibaca dan dihapus/diedit oleh user root, hanya dapat dibaca oleh group dan other / guest. Kalau kita konfersi hak aksesnya ke desimal, maka menjadi 644 dimana 6=( - r w ), 4=( r - - ), dan 4=( r - - ). Admin Server Linux . . . . . . . 32 Perintah linux yang sering digunakan adalah sebagai berikut : a). su => digunakan untuk login / masuk sebagai pengguna super (Super User) dimana hanya pengguna ini yang dapat menangani sistem linux, pengguna yang lain hanya bisa menangani data penggunanya saja tetapi tidak bisa mengubah sistem. penulisan : su <Enter> b). ls => untuk melihat isi suatu direktori penulisan: ls <Enter> contoh : ls -la c). exit <Enter> => untuk keluar dari user / logout penulisan : exit <Enter> d). cd => untuk pindah direktori penulisan : cd [target_direktori] contoh : cd /home/rusnandi e). mkdir => untuk membuat direktori penulisan : mkdir [target_direktori] contoh : mkdir /home/dataku f). rmdir => untuk menghapus direktori penulisan : rmdir [target_direktori] contoh : rmdir /home/dataku g). rm => untuk menghapus file penulisan : rm [target_file] contoh : rm /home/rusnandi/test.odt h). mv => untuk memindahkan / mengganti nama file penulisan : mv [file_sumber] [target_file / target_direktori] contoh : mv /home/rusnandi/test.odt /home/dia/ i). cp => untuk membuat duplikat / copy file penulisan : cp [sumber] [target] contoh : cp /home/rusnandi/test.odt /home/rusnandi/coba.odt Admin Server Linux . . . . . . . 33 j). ln => untuk membuat link file penulisan : ln -s [namafilesumber] [namalink] contoh : ln -s /home/rusnandi/data.odt /home/data k). mount => mendaftarkan device agar bisa dibaca (membuat titik kait) l). umount => melepaskan device jika selesai digunakan (mencabut titik kait) penulisan : mount [sumber] [target] contoh : mount /dev/sdb1 /home/dataflash penulisan : Umount [target] contoh : umount /dev/sdb1 m). ifconfig => mengetahui konfigurasi network interface yang terpasang penulisan : ifconfig [parameter] contoh : ifconfig -a n). nano/pico=> untuk mengedit/membuat suatu file (ada display menu) penulisan : nano [nama_file] contoh : nano configuration.conf o). vi/vim => fungsinya sama seperti nano/pico (tanpa display menu) penulisan : vi [nama_file] contoh : vi configuration.conf p). apt-get install => melakukan instalasi paket aplikasi linux yang terdapat dalam repository. penulisan : apt-get install [nama_file_aplikasi] contoh : apt-get install bind9 q). apt-get remove => melakukan penghapusan / pencabutan paket aplikasi linux yang ada di server. penulisan : apt-get remove [nama_file_aplikasi] contoh : apt-get remove bind9 r). apt-cdrom add => menambah daftar repository yang ada dalam cd image repository linux kedalam sumber repository sistem linux yang sedang beroperasi. penulisan : apt-cdrom add contoh : apt-cdrom add Admin Server Linux . . . . . . . 34 2.3. Port dalam Server Sebuah port dalam protokol jaringan TCP/IP, adalah mekanisme yang mengizinkan suatu komputer dapat terkoneksi dengan komputer lainnya dan program di dalam jaringan. Port dapat mengidentifikasikan aplikasi dan layanan yang menggunakan koneksi di dalam jaringan TCP/IP, port juga mengidentifikasikan sebuah proses tertentu di mana sebuah server dapat memberikan sebuah layanan kepada klien atau bagaimana sebuah klien dapat mengakses sebuah layanan yang ada dalam server. Port dapat dikenali dengan angka 16-bit (dua byte) yang disebut dengan Port Number dan diklasifikasikan dengan jenis protokol transport apa yang digunakan, ke dalam Port TCP dan Port UDP. Karena memiliki angka 16-bit, maka total maksimum jumlah port untuk setiap protokol transport yang digunakan adalah 65536 buah. Dilihat dari penomorannya, port UDP dan TCP dibagi menjadi tiga jenis, yakni sebagai berikut: ▪ Well-known Port : yang pada awalnya berkisar antara 0 hingga 255 tapi kemudian diperlebar untuk mendukung antara 0 hingga 1023. Port number yang termasuk ke dalam well-known port, selalu merepresentasikan layanan jaringan yang sama, dan ditetapkan oleh Internet Assigned Number Authority (IANA). Beberapa di antara port-port yang berada di dalam range Well-known port masih belum ditetapkan dan direservasikan untuk digunakan oleh layanan yang bakal ada di masa depan. Well-known port didefinisikan dalam RFC 1060. ▪ Registered Port : Port-port yang digunakan oleh vendor-vendor komputer atau jaringan yang berbeda untuk mendukung aplikasi dan sistem operasi yang mereka buat. Registered port juga diketahui dan didaftarkan oleh IANA tapi tidak dialokasikan secara permanen, sehingga vendor lainnya dapat menggunakan port number yang sama. Range registered port berkisar dari 1024 hingga 49151 dan beberapa port di antaranya adalah Dynamically Assigned Port. Admin Server Linux . . . . . . . 35 ▪ Dynamically Assigned Port: merupakan port-port yang ditetapkan oleh sistem operasi atau aplikasi yang digunakan untuk melayani request dari pengguna sesuai dengan kebutuhan. Dynamically Assigned Port berkisar dari 1024 hingga 65536 dan dapat digunakan atau dilepaskan sesuai kebutuhan. Sedangkan port yang sering digunakan dalam komputer server adalah sebagai berikut : → → → → → → → → → → → 21: File Transfer Protocol (FTP) 22: Secure Shell (SSH) 23: Telnet remote login service 25: Simple Mail Transfer Protocol (SMTP) 53: Domain Name System (DNS) service 80: Hypertext Transfer Protocol (HTTP) used in the World Wide Web 110: Post Office Protocol (POP) 119: Network News Transfer Protocol (NNTP) 143: Internet Message Access Protocol (IMAP) 161: Simple Network Management Protocol (SNMP) 443: HTTPs with Transport Layer Security or Secure Sockets Layer (TLS/SSL) 2.4. Konfigurasi NIC / LAN Card Konfigurasi awal yang perlu diperhatikan setelah instalasi OS adalah konfigurasi NIC / LAN Card. Hal ini dimaksudkan untuk memastikan bahwa LAN Card sudah terkonfigurasi dengan benar atau tidak. Jika belum terkonfigurasi dengan benar, maka perlu diperbaiki. File konfigurasi NIC / LAN Card diberi nama “interfaces” yang ada di dalam subdirektori “network” dan “etc” (/etc/network). File ini berisi data-data IP address antara lain address, network, netmask, broadcast, dns-nameservers, dan data konfigurasi interface jaringan lainnya. jika belum pernah dikonfigurasi interfaces-nya (masih kondisi default) maka isi dari file tersebut seperti berikut : auto lo iface lo inet loopback dimana “lo” merupakan nama interface yang di set. Admin Server Linux . . . . . . . 36 Untuk melakukan konfigurasi LAN Card (jika menggunakan 1 buah LAN card yang terpasang) dengan IP address otomatis (dynamic) dari server, kita bisa tulis perintahnya diikuti nama file konfigurasi yang akan kita edit, akan tetapi posisi kita harus sebagai “root”. Perintahnya sebagai berikut : root@server1:# nano /etc/network/interfaces kemudian masukan konfigurasi berikut ke dalam file interfaces tersebut. auto eth0 iface eth0 inet dhcp “eth0” merupakan nama interface (LAN card) yang terpasang dan “dhcp” menandakan bahwa LAN card tersebut di set dengan pemberian IP address otomatis dari server DHCP. Sedangkan jika LAN card tersebut ingin di set static (diberi nomor IP=192.168.1.55/24 dengan gateway=192.168.1.254 dan dns=192.168.1.1), maka isi dari konfigurasi file interfaces-nya adalah sebagai berikut : auto eth0 iface eth0 inet static address 192.168.1.55 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.254 dns-nameservers 192.168.1.1 dimana : eth0 = nama interface / LAN card static = keterangan bahwa setting IP addres menggunakan manual / static address = nomor IP address yang akan diberikan / diset pada LAN card netmask = nilai dari subnet mask ( “/24”) dalam bentuk desimal network = nomor IP address terendah pada subnet tersebut broadcast = nomor IP address tertinggi pada subnet tersebut gateway = nomor IP address yang dijadikan gateway didalam router pada subnet tersebut dns-nameservers = nomor IP address yang dijadikan dns untuk koneksi ke internetnya. Admin Server Linux . . . . . . . 37 3. APLIKASI SERVER Aplikasi server merupakan software aplikasi yang disediakan linux khusus untuk server. Aplikasi ini disediakan untuk menangani berbagai kebutuhan client sehingga client dapat mengaksesnya dengan mudah dimana pun dia berada. Untuk meringankan beban kerja suatu server, biasanya satu aplikasi server hanya ditanam / diinstall pada satu server komputer saja. Hal ini dimaksudkan untuk mengantisipasi bila terjadi banyak client yang mengakses aplikasi server secara bersamaan, dengan demikian jika hanya satu aplikasi server yang terpasang maka kerja server akan maksimal. 3.1. dhcp3-server (DHCP) dhcp3-server adalah aplikasi yang disediakan linux debian khusus untuk menangani fitur pemberian no IP secara otomatis dari server kepada client, atau lebih dikenal dengan istilah DHCP server. Secara default sebuah OS linux tidak menyertakan aplikasi ini, akan tetapi kita harus menginstallnya secara manual. Untuk melakukan installasi fitur DHCP server kita harus menuliskan perintah sebagai berikut : # apt-get install dhcp3-server Setelah terinstall maka langkah selanjutnya adalah melakukan pengeditan file konfigurasi dari fitur DHCP server ini. File tersebut bernama “dhcpd.conf” yang ada di direktori “dhcp” dan “etc” (“/etc/dhcp”). Untuk melakukan pengeditan kita tuliskan perintahnya sebagai berikut : # nano /etc/dhcp/dhcpd.conf kemudian akan muncul isi dari file dhcpd.conf tersebut dan kita tinggal mengaktifkan settingan dari dhcp servernya dengan cara membuang tanda “#” yang ada didepan instruksinya dan mengubah no IP address dan subnetmask nya sesuai dengan kebutuhan kita. Kita cari instruksi seperti berikut ini pada file dhcpd.conf tersebut. Admin Server Linux . . . . . . . 38 subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option domain-name-servers ns1.tekaje.net; option domain-name “tekaje.net”; option routers 192.168.1.254 option broadcast-address 192.168.1.255 default-lease-time 600; max-lease-time 7200; } dimana : subnet = no IP awal dari subnet yang akan diotomatiskan (192.168.1.0) netmask = nilai subnet mask dalam desimal (255.255.255.0 ) range = batasan IP yang akan diotomatiskan yaitu dari 192.168.1.100 sampai 192.168.1.200 option domain-name-servers = nama server (ns1.tekaje.net) option domain-name = nama DNS (tekaje.net) option routers = no IP gateway pada subnet yang diotomatiskan yaitu 192.168.1.254 option broadcast-address = no IP tertinggi dari subnet yang diotomatiskan yaitu 192.168.1.255 Langkah selanjutnya adalah melakukan pengeditan konfigurasi interface yang digunakan untuk DCHP ini pada file “dhcp3-server” yang ada dalam direktori “default” dan “etc” (“/etc/default”). Perintah untuk mengedit file konfigurasi tersebut adalah sebagai berikut : # nano /etc/default/dhcp3-server kemudian akan muncul isi konfigurasi tersebut dan isi parameter yang bertuliskan yang INTERFACES=“” dengan interfaces dari server DHCP digunakan. Dalam hal ini isi dengan eth0, sehingga berisikan seperti berikut ini : INTERFACES=”eth0” Langkah terakhir adalah melakukan restart aplikasi dhcp3-server dengan perintah seperti berikut : # /etc/init.d/dhcp3-server restart Selanjutnya kita bisa lakukan pengujian pada komputer client dengan mengeset IP addressnya dengan automatic / dynamic. Admin Server Linux . . . . . . . 39 3.2. bind9 (DNS) Aplikasi ini berfungsi untuk menyediakan layanan DNS server, dimana memiliki 2 fungsi yaitu sebagai penerjemah / pengkonversi dari address ke no IP dan fungsi yang kedua adalah menterjemahkan / mengkonversi dari no IP ke address. Fungsi penerjemah address ke IP dikonfigurasi dalam sebuah file dan biasanya diberi nama “*.zone” (dikenal dengan nama file forward), sedangkan fungsi penerjemah IP ke address biasanya disimpan dalam file yang diberi nama “*.rev” (dikenal dengan nama file reverse). Konfigurasi utama untuk settingan DNS ini terdapat dalam file yang bernama “named.conf” yang berada di dalam direktori “bind” dan “etc” (“/etc/bind”). Untuk membuat sebuah DNS server, langkah pertama adalah kita install terlebih dahulu aplikasi “bind9” yang sudah terdapat dalam repository debian. Perintah instalasinya adalah sebagai berikut : # apt-get install bind9 Setelah terinstall maka langkah selanjutnya adalah melakukan konfigurasi terhadap file “named.conf” dan membuat file forward (“*.zone”) dan file reverse (“*.rev”). Untuk mengedit konfigurasi utama (file “named.conf.default-zones”) yang ada di dalam direktori “bind” dan “etc” (“/etc/bind”) maka kita gunakan perintahnya sebagai berikut : # nano /etc/bind/named.conf.default-zones Kemudian akan muncul konfigurasi standar dan kita tinggak menambahkan konfigurasi tambahan untuk DNS yang akan kita buat. Parameter yang harus kita copy adalah dua parameter seperti berikut : dimana : zone “localhost” { = setting forward zone (diberi nama “localhost”) file “/etc/bind/db.local”; = nama file untuk parameter konfigurasi forward Admin Server Linux . . . . . . . 40 (diberi nama “db.local”) zone “127.in-addr.arpa” { = setting reverse zone (diberi nama “127.inaddr.arpa”) file “/etc/bind/db.127 = nama file untuk parameter konfigurasi forward (diberi nama “db.127”) kita copy atau ketik ulang kedua parameter diatas dan hasil copy-nya disimpan dibaris paling bawah dari file tersebut dan diubah parameternya sesuai dengan DNS yang akan kita buat seperti berikut : zone "tekaje.net" { type master; file "/etc/bind/db.tekaje.zone"; }; zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/db.tekaje.rev"; }; dimana : zone “tekaje.net” { = setting forward zone (diberi nama “tekaje.net”) file “/etc/bind/db.tekaje.zone” = nama file untuk parameter konfigurasi forward (diberi nama “db.tekaje.zone”) zone “1.168.192.in-addr.arpa”= setting reverse zone (diberi nama “1.168.192.in-addr.arpa”) file “/etc/bind/db.tekaje.rev = nama file untuk parameter konfigurasi forward (diberi nama “db.tekaje.rev”) Setelah mengedit file konfigurasi utama tersebut, maka langkah selanjutnya adalah membuat settingan file forward dengan nama “db.tekaje.zone” dan file reverse “db.tekaje.rev” dimana kedua file tersebut terletak satu direktori dengan file “named.conf.default-zones”. Cara membuat file-file tersebut adalah dengan meng-copy file “db.local” menjadi “db.tekaje.zone” dan copy file “db.127” menjadi “db.tekaje.rev”. Langkah meng-copy-nya sebagai berikut : # cp /etc/bind/db.local /etc/bind/db.tekaje.zone # cp /etc/bind/db.127 /etc/bind/db.tekaje.rev Admin Server Linux . . . . . . . 41 Setelah di-copy, maka langkah selanjutnya adalah mengedit satu-persatu file konfigurasi tersebut. Pertama kita edit file “db.tekaje.zone” dengan perintah sebagai berikut : # nano /etc/bind/db.tekaje.zone kemudian edit isi / parameter file tersebut sesuai dengan data yang kita butuhkan sebagai berikut : $TTL @ 604800 IN SOA ; @ ns1 www IN IN IN NS A CNAME ns1.tekaje.net. 2 604800 86400 2419200 604800 ) root.tekaje.net. ( ; Serial ; Refresh ; Retry ; Expire ; Negative Cache TTL ns1.tekaje.net. 192.168.1.55 ns1 Langkah kedua kita edit file “db.tekaje.rev” dengan perintah sebagai berikut : # nano /etc/bind/db.tekaje.rev kemudian edit isi / parameter file tersebut sesuai dengan data yang kita butuhkan sebagai berikut : $TTL @ 604800 IN SOA ; @ 55 IN IN NS PTR ns1.tekaje.net. root.tekaje.net. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ns1.tekaje.net. www.tekaje.net. Setelah semua konfigurasi selesai jangan lupa untuk melakukan restart aplikasi yang sudah diedit tadi. Hal ini dimaksudkan agar konfigurasi yang baru saja dibuat dapat langsung diproses/dijalankan. Perintah untuk melakukan restart aplikasi bind9 adalah sebagai berikut : # /etc/init.d/bind9 restart Langkah selanjutnya adalah melakukan pengujian DNS pada komputer server diawali dengan mengecek konfigurasi dari file “resolv.conf” yang ada didalam Admin Server Linux . . . . . . . 42 direktori “etc” dengan perintah sebagai berikut : # nano /etc/resolv.conf masukan parameter berikut kedalam file “resolv.conf” (jika file tersebut belum ada parameterna / berbeda parameternya dengan parameter yang berikut) : nameserver 192.168.1.55 Jika sudah sama “resolv.conf” nya maka langkah selanjutnya adalah melakukan pengetesan aplikasi DNS servernya dari komputer server itu sendiri dengan perintah sebagai berikut : # nslookup www.tekaje.net (pengujian fungsi forward) Jika DNS berfungsi dengan benar / berhasil maka seharusnya akan muncul seperti tampilan berikut : Pengetesan kedua masih dilakukan dengan perintah yang sama tp diikuti no IP sehingga perintahnya sebagai berikut : # nslookup 192.168.1.55 (pengujian fungsi reverse) Jika DNS berfungsi dengan benar / berhasil maka seharusnya akan muncul seperti tampilan berikut : Admin Server Linux . . . . . . . 43 3.3. apache2 (Web / HTTP) Apache 2 adalah aplikasi server yang berfungsi untuk mengelola dan menampilkan halaman web pada server (disebut web server). Aplikasi ini juga sudah termasuk dalam repository debian dan merupakan aplikasi default web / http server linux. Pada instalasi standar / desktop, aplikasi apache ini belum tersinstal. Oleh karena itu untuk membuat suatu web / http server, kita harus melakukan instalasi aplikasi ini secara manual. Langkah instalasinya sama seperti instalasi aplikasi server yang lainnya yaitu menggunakan perintah seperti berikut : # apt-get install apache2 Setelah proses instalasi selesai maka default direktori tempat menyimpan file web / http nya diberi nama “www” yang berada didalam direktori “var” (“/var/www”). File utama / standar yang sudah ada pada saat instalasi apache2 adalah file “index.html”. File ini adalah default file yang akan dibaca pada saat kita membuka halaman utama / home pada sebuah situs. Untuk melakukan pengetesan web server, kita bisa lakukan browsing di client dengan web browsing dan tulis address-nya seperti berikut : address : http://www.tekaje.net jika web server berjalan dengan baik maka akan tampil pada browser seperti berikut : Direktori tempat menyimpan halaman web ini dapat kita pindahkan dari direktori defaultnya ke direktori lain. Hal ini dimaksudkan untuk memudahkan mengelola file-file web jika suatu server memiliki/menangani berbagai macam halaman web atau memiliki banyak user yang menyimpan / hosting web pada Admin Server Linux . . . . . . . 44 server tersebut. Pemindahan / pengarahan direktori default halaman web ini dilakukan dengan konfigurasi pada “Virtual Host”. Virtual Host ini memiliki tiga metode yaitu : 1. Name-based yaitu menggunakan banyak Host Name (web site) pada sebuah web server yang memiliki satu IP address (disebut juga sub domain). 2. IP-based yaitu menggunakan banyak IP addres untuk banyak website (1 IP address untuk 1 website). Dalam hal ini kita akan membahas “Name-based” Virtual Host saja yang biasa digunakan untuk membuat sub domain. Untuk membuat “Virtual Host” langkah yang harus dipersiapkan adalah mengedit file konfigurasi web server yang bernama “default” yang ada dalam direktori “sites-available”, dibawah “apache2” dan “etc” (“/etc/apache2/sites-available”), membuat direktori dokumen / file web, menempatkan file webnya, dan mengkonfigurasi sub domain-nya pada konfigurasi DNS (dalam file db.tekaje.zone dan db.tekaje.rev). Langkah awal dalam membuat Virtual host adalah mengedit file konfigurasi web servernya sebagai berikut : # nano /etc/apache2/sites-available/default setelah itu akan muncul konfigurasinya dan kita tinggal menambahkan parameter berikut ini pada bagian bawah file tersebut : <VirtualHost *:80> ServerAdmin [email protected] ServerName rusnandi.tekaje.net DocumentRoot /home/rusnandi/web </VirtualHost> Langkah kedua adalah mengedit file “db.tekaje.zone” dengan perintah sebagai berikut : # nano /etc/bind/db.tekaje.zone Setelah itu modifikasi / tambahkan parameter tersebut pada bagian bawah dengan parameter dibawah ini : rusnandi IN CNAME ns1 Admin Server Linux . . . . . . . 45 Langkah ketiga adalah mengedit file “db.tekaje.rev” dengan perintah sebagai berikut : # nano /etc/bind/db.tekaje.rev Setelah itu modifikasi / tambahkan parameter tersebut pada bagian bawah dengan parameter dibawah ini : 55 IN PTR rusnandi.tekaje.net. Langkah keempat adalah membuat direktori tempat menyimpan file web dengan perintah sebagai berikut : # mkdir /home/rusnandi/web Langkah kelima adalah mengcopy file web ke dalam direktori yang sudah kita buat tadi. Sebagai langkah terakhir kita harus melakukan restart aplikasi yang sudah kita ubah konfigurasinya tadi (apache2 dan bind9) dengan perintah sebagai berikut : # /etc/init.d/apache2 restart # /etc/init.d/bind9 restart untuk melakukan pengujian pada sisi client, kita gunakan web browser seperti pada pengujian web server hanya address yang kita tulis adalah address sub domain yang kita tuliskan pada kolom address di web browser seperti berikut ini : address : http://rusnandi.tekaje.net dan bila sukses / berhasil konfigurasinya berjalan dengan benar, maka akan muncul tampilan pada web browser tersebut seperti berikut : Admin Server Linux . . . . . . . 46 3.4. postfix (Mail) Salah satu aplikasi mail server adalah “postfix” merupakan MTA (mail Transfer Agen mengelola/menangani mail di dalam server. Dalam mail server ini terdapat dua fungsi yaitu fungsi untuk mengirim mail dari client/mail server luar ke mail server kita yang menggunakan protokol SMTP dan fungsi untuk mengambil / mengirim mail dari server kita ke client/mail server luar lain yang menggunakan protokol POP3 atau IMAP. File-file pendukung mail server ini harus diinstall yaitu “postfix”, “courier-pop”, “courier-imap”. Selain mail server, kita juga perlu tambahan aplikasi untuk dapat membaca / menampilkan email yang ada pada mail server tersebut dengan aplikasi Email Client seperti “Squirrelmail”. Untuk memulai membangun web server maka langkah pertama adalah menginstall semua aplikasi pendukung mail server tersebut. Proses instalasi dapat dilakukan sekaligus / bersamaan dengan menggunakan perintah sebagai berikut : # apt-get install postfix courier-imap courier-pop squirrelmail Setelah itu akan muncul tampilan berikut : pilih “Internet Sites”, selanjutnya muncul tampilan berikut : Admin Server Linux . . . . . . . 47 Tulis : “mail.tekaje.net”, selanjutnya muncul tampilan berikut : Pilih “No”, tunggu proses..... Setelah proses instalasi selesai, maka langkah kedua adalah melakukan konfigurasi mail server pada file “main.cf” yang berada dalam direktori “postfix” dan “etc” (“/etc/postfix”). Perintah untuk mengedit file tersebut adalah sebagai berikut : # nano /etc/postfix/main.cf Setelah itu akan muncul tampilan konfigurasi, diantaranya sebagai berikut : Admin Server Linux . . . . . . . 48 kita tinggal memodifikasi settingan tersebut dengan parameter yang bergaris tebal / bold sebagai berikut : myhostname = server-lenny alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = mail.sekolah.sch.id, server-lenny, localhost.localdomain, localhost relayhost = mynetworks = 192.168.0.0/24 127.0.0.0/8 #mailbox_command = procmail -a “$EXTENSION” mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all home_mailbox = Maildir/ Langkah ketiga adalah membuat direktori yang nantinya digunakan untuk menyimpan file email di masing-masing user. Nama direktorinya adalah “Maildir” yang dibuat di dalam direktori “skel” dan “etc” (“/etc/skel”). Perintah untuk membuat direktori tersebut adalah sebagai berikut : # maildirmake /etc/skel/Maildir Langkah keempat adalah menambahkan parameter untuk “mail.tekaje.net” pada konfigurasi DNS dalam file “db.tekaje.zone” dan “db.tekaje.rev”. Parameter yang harus dimasukan ke dalam “db.tekaje.zone” di baris paling bawah adalah sebagai berikut : (perintahnya sama seperti edit DNS) mail IN CNAME ns1 Sedangkan Parameter yang harus dimasukan ke dalam “db.tekaje.rev” di baris paling bawah adalah sebagai berikut : (perintahnya sama seperti edit DNS) 55 IN PTR mail.tekaje.net. Selesai sudah proses membangun web server linux dan jangan lupa untuk melakukan restart semua aplikasi pendukung mail server yaitu “postfix”, ”courier-imap”, “courier-pop”, “courier-authdaemon” dengan perintah sebagai berikut : # /etc/init.d/postfix restart # /etc/init.d/courier-imap restart # /etc/init.d/courier-pop restart # /etc/init.d/courier-authdaemon restart Admin Server Linux . . . . . . . 49 Sekarang kita lakukan pengetesan mail server tersebut dengan menggunakan perintah telnet. Akan tetapi sebelum melakukan pengetesan kita perlu membuat user account sebagai pengguna mail server tersebut. Kita buat user “siswa” dengan perintah sebagai berikut : # adduser siswa Kemudian muncul pertanyaan yang harus diisi sebagi identitas user tersebut. Isikan data-data user pada pertanyaan tersebut untuk user pertama dengan data yang dicetak tebal / bold sebagai berikut : Adding user `siswa' ... Adding new group `siswa' (1001) ... Adding new user `siswa' (1001) with group `siswa' ... Creating home directory `/home/siswa' ... Copying files from `/etc/skel' ... Enter new UNIX password: siswa Retype new UNIX password: siswa passwd: password updated successfully Changing the user information for siswa Enter the new value, or press ENTER for the default Full Name []: Siswa Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y Selanjutnya kita buat satu user lagi dengan nama “siswi” agar kita bisa tes kirim surat dari “siswa” ke “siswi” dengan perintah sama seperti pembuatan user “siswa” yaitu : # adduser siswi Kemudian muncul pertanyaan seperti tadi yang harus diisi sebagi identitas user tersebut. Isikan data-data user pada pertanyaan tersebut untuk user kedua ini dengan data yang dicetak tebal / bold sebagai berikut : Adding user `siswa' ... Adding new group `siswa' (1002) ... Adding new user `siswa' (1002) with group `siswi' ... Creating home directory `/home/siswi' ... Copying files from `/etc/skel' ... Enter new UNIX password: siswi Retype new UNIX password: siswi passwd: password updated successfully Changing the user information for siswa Enter the new value, or press ENTER for the default Admin Server Linux . . . . . . . 50 Full Name []: Siswi Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y Setelah ke dua user tersebut dibuat, maka kita dapat melakukan tes mail server pada komputer server tersebut dengan menggunakan perintah “telnet” . Perintah “telnet” ini diikuti dengan port 25 untuk mengirim surat ke server dan port 110 untuk membaca surat yang ada di server. Perintah untuk melakukan tes mengirim surat dari user “siswa” ke user “siswi” dengan pesannya adalah “Apa kabar...?” adalah sebagai berikut : # telnet mail.tekaje.net 25 kemudian muncul seperti berikut dan isikan isian tersebut dengan yang dicetak tebal / bold : mail from: [email protected] 250 2.1.0 Ok rcpt to: [email protected] 250 2.1.5 Ok data 354 End data with <CR><LF>.<CR><LF> Apa kabar...? . 250 2.0.0 Ok: queued as AAFE416BB quit 221 2.0.0 Bye Sekarang kita periksa apakah email tersebut telah sampai ke user “siswi” dengan perintah sebagai berikut : # telnet mail.tekaje.net 110 kemudian muncul seperti berikut dan isikan isian tersebut dengan yang dicetak tebal / bold : Admin Server Linux . . . . . . . 51 user siswa +OK Password required. pass siswi +OK logged in. stat +OK 1 460 retr 1 Jika muncul seperti tampilan diatas, berarti mail server sudah berjalan dengan baik. Langkah yang terakhir dari pengetesan mail server ini adalah menggunakan aplikasi basis web yang dapat diakses dari client atau sering disebut sebagai aplikasi email-client. Dalam hal ini kita gunakan “squirrelmail”. Untuk dapat mengoperasikan “squirrelmail”, kita harus membuat / menambahkan konfigurasi “Virtual Host” terlebih dahulu pada web servernya. Masukan parameter “Virtual Host” berikut ke file konfigurasi web server “default” yang ada dalam direktori “sites-available” dibawah “apache2”, dan “etc” (“/etc/apache2/sites-available/default”) dan letakkan di paling bawah : <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /usr/share/squirrelmail ServerName mail.tekaje.net </VirtualHost> Setelah itu jalankan ulang aplikasi “apache2” dengan perintah : # /etc/init.d/apache2 restart Admin Server Linux . . . . . . . 52 Selanjutnya kita coba menggunakan web browser yang ada di client untuk mencoba mengakses mail server dengan menuliskan pada kolom address seperti berikut : address : http://mail.tekaje.net Kemudian kalau konfigurasi “Virtual Host” untuk squirrelmail-nya benar, maka akan muncul tampilan seperti gambar berikut : 3.5. proftpd (FTP) FTP adalah protokol jaringan basis TCP/IP yang digunakan untuk berbagi file antar client dan server dalam jaringan tersebut. Salah satu software aplikasinya adalah proftpd yang biasanya sudah termasuk dalam paket distro linux. FTP server biasa digunakan sebagai fasilitas download/upload dalam sebuah server. Dengan aplikasi ini kita bisa mengirim file ke server (upload) atau mengambil file dari server (download). Untuk membangun sebuah FTP server kita perlu install salah satu aplikasinya dulu, dalam hal ini kita perlu install proftpd sebagi langkah awal. Perintahnya sebagi berikut : # apt-get install proftpd kemudian akan tampil seperti berikut : pilih “standalone”, tunggu proses... Admin Server Linux . . . . . . . 53 Setelah proses instalasi selesai, maka langkah selanjutnya adalah melakukan pengetesan dari komputer server itu sendiri dengan perintah sebagai berikut : # ftp localhost kemudian muncul seperti tampilan berikut dan isi seperti yang dicetak tebal / bold : Connected to localhost. 220 ProFTPD 1.3.3a Server (Debian) [::ffff:127.0.0.1] Name (localhost:tekaje): siswa 331 Password required for administrator Password: siswa <password tidak akan tampil karakternya> 230 User siswa logged in Remote system type is UNIX. Using binary mode to transfer files. ftp> setelah muncul seperti di atas, maka aplikasi “proftpd” sudah berfungsi dengan benar. Kita bisa melihat isi direktori user kita yang ada di server dengan perintah “ls -la” pada prompt “ftp>”. Kemudian muncul seperti tampilan berikut : tampilan tersebut adalah isi dari direktori utama dengan user “siswa”, kita bisa mengakhiri koneksi ftp tersebut dengan perintah “quit”. Kita bisa lakukan juga pengetesan ftp server ini di komputer client yang terhubung ke server dengan menuliskan “ftp://www.tekaje.net” pada kolom address dalam aplikasi web browser seperti berikut : kemudian akan muncul konfirmasi username dan password seperti berikut ini : gambar Admin Server Linux . . . . . . . 54 isikan username dan password dengan account “siswa” yang sudah dibuat di awal, maka akan muncul tampilan dari direktori utama user tersebut seperti berikut : kita bisa mengatur/mengubah konfigurasi aplikasi ini pada file “proftpd.conf” yang ada dalam direktori “proftpd” dan “etc” (“/etc/proftpd”). 3.6. samba (File & Printer Sharing) Samba adalah aplikasi server yang berfungsi untuk menangani sharing file atau sharing printer. Aplikasi ini sangat diperlukan bagi client yang membutuhkan sumber data yang dapat digunakan bersama-sama sehingga satu data bisa dibagi-bagi / diambil ke dan dari semua client yang memerlukannya. Sharing ini dapat dilakukan pada komputer yang terhubung jaringan dalam satu subnet saja, akan tetapi tidak berlaku jika berbeda subnet. Untuk membuat suatu samba server, maka kita perlu menginstall terlebih dahulu aplikasi samba tersebut dengan perintah sebagai berikut : # apt-get install samba Admin Server Linux . . . . . . . 55 Kemudian akan muncul seperti gambar berikut : tulis “workgroup” atau tergantung group apa yang akan kita buat dalam jaringan samba tersebut. Setelah itu muncul tampilan seperti berikut : pilih “No” kemudian tunggu proses... Setelah proses instalasi aplikasi selesai, maka langkah selanjutnya adalah melakukan editing pada file konfigurasi samba dengan nama filenya “smb.conf” yang terletak dalam direktori “samba” dan “etc” (“/etc/samba”). Perubahan konfigurasi ini sesuai dengan kebutuhan kita saja. Untuk membuat mengaktifkan password sharing sesuai dengan user maka konfigurasi yang perlu diedit adalah “# security = user”. Perintah edit filenya adalah sebagai berikut : # nano /etc/samba/smb.conf kemudian muncul isi dari konfigurasi file tersebut dan kita cari baris konfigurasi yang berisi “# security = user”. Hapus tanda “#” untuk mengaktifkan fungsi sekuritinya sehingga menjadi “security = user”. Admin Server Linux . . . . . . . 56 Untuk membuat direktori / file sharing, maka kita perlu menambahkan parameter sebagai berikut : #..... [data-sharing] comment = data yang di sharing path = /home/rusnandi/data browseable = yes read only = yes guest ok = yes #...... keterangan : [data-sharing] => nama sharing yang tampil di komputer lain comment => keterangan dari yang disharing path = /home/rusnandi/data => direktori yang di sharing browsable => dapat di brown dari komputer lain read only = > hak akses direktori guest ok => user guest dapat mengakses direktori sharing Langkah terakhir adalah melakukan test aplikasi pada komputer server itu sendiri apakah aplikasi sudah berjalan dengan baik atau tidak, tetapi jangan lupa untuk melakukan restart aplikasi samba tersebut agar konfigurasi yang baru dapat diproses. Perintah testnya sebagai berikut : # testparam kemudian akan muncul tampilan sebagi berikut : gambar diatas menunjukkan bahwa aplikasi berjalam dengan baik dan yang dilakukan sharing adalah direktori “homes”(untuk file sharing dan “printer” (untuk printer sharing). Admin Server Linux . . . . . . . 57 3.7. mysql-server (Database) Mysql-server adalah aplikasi server yang berfungsi untuk menangani/mengelola database pada komputer server. Sedangkan untuk mengelola database pada mysql tersebut bisa kita gunakan aplikasi “phpmyadmin” yang dapat membaca / menulis database. Aplikasi ini juga sudah terdapat dalam paket repository debian, hanya saja harus diinstall secara manual karena aplikasi ini tidak otomatis terinstall. Langkah pertama adalah instalasi “mysql-server” dengan menggunakan perintah sebagai berikut : # apt-get install mysql-server kemudian akan muncul tampilan seperti berikut “ tulis password untuk masuk “mysql” dengan “utama”, password ini digunakan untuk koneksi ke mysql-server. Kemudian akan muncul lagi tampilan konfirmasi password tersebut seperti berikut : tulis ulang password tersebut dengan “utama”, tunggu proses... Admin Server Linux . . . . . . . 58 Setelah selesai proses instalasi, langkah selanjutnya adalah melakukan test apakah aplikasi mysql-server sudah bekerja dengan benar. Untuk melakukan test mysql kita gunakan perintah berikut : # mysql -u root -p kemudian muncul isian password yang harus kita isi dengan password “root” yang sudah kita masukan pada saat instalasi mysql-server tadi. Isikan seperti yang tercetak tebal / bold seperti berikut : Enter password: root <karakter tidak ditampilkan> Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 35 Server version: 5.0.51a-24 (Debian) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> Setelah masuk ke aplikasi mysql server, kita bisa lihat database yang ada didalam mysql-server tersebut dengan perintah seperti berikut : mysql> show databases; maka akan muncul tampilan seperti berikut : +------------------------------+ | Database | +------------------------------+ | information_schema | | mysql | +------------------------------+ 2 rows in set (0.00 sec) mysql> tampilan diatas menandakan bahwa belum ada database yang dibuat. Kita bisa mengakhiri koneksi mysql tersebut dengan perintah “quit” sebagai berikut : mysql> quit Admin Server Linux . . . . . . . 59 Pembacaan/penulisan data dari dan ke mysql server bisa juga dilakukan dengan aplikasi bebrbasis web. Dalam hal ini adalah phpmyadmin. Untuk menginstall aplikasi sini kita gunakan perintah sebagai berikut : # apt-get install phpmyadmin kemudian akan muncul tampilan seperti berikut : kita pilih / ceklis “apache2”, selanjutnya tunggu proses... Setelah installasi selesai maka kita bisa melakukan test aplikasi phpmyadmin tersebut pada menggunakan web browser di komputer client dengan menuliskan address dari phpmyadmin tersebut sebagai berikut : address : http://www.tekaje.net/phpmyadmin setelah itu jika aplikasi phpmyadmin tersebut telah terinstall dengan benar maka akan muncul tampilan seperti gambar berikut : kita tinggal menuliskan username dan password database mysql-nya. Admin Server Linux . . . . . . . 60 3.8. squid (Proxy) Proxy merupakan salah satu fitur penting dalam sebuah server. Proxy mempunyai dua fungsi, pertama adalah sebagai cache web artinya akan menyimpan data-data web yang sudah dikunjungi oleh suatu client dan bila ada client lain yang mengunjungi web yang sama maka client tersebut tidak browsing ke internet melainkan menggunakan data web yang ada di proxy saja. Hal ini tentunya akan menghemat pemakaian bandwidth internet pada jaringan tersebut. Fungsi yang kedua dari proxy adalah untuk membatasi/mengendalikan akses dari client seperti autentikasi user, blok situs-situs tertentu, memblok banner, dan lain-lain. Salah satu aplikasi dari proxy ini adalah “squid” yang sudah terdapat dalam paket distro linux. Squid ini merupakan standar aplikasi proxy linux. Ada juga aplikasi proxy lainnya selain squid. Langkah pertama dalam membangun sebuah proxy server adalah melakukan installasi aplikasi squid dengan perintah sebagai berikut : # apt-get install squid Setelah terinstall kita dapat melakukan perubahan konfigurasi file “squid.conf” sesuai dengan kebutuhan kita. Konfigurasi yang biasa diedit adalah “access list” dan “http_access”. Untuk mengedit konfigurasi squid kita gunakan perintah berikut : # nano /etc/squid/squid.conf kemudian cari dan ubah / edit parameter dari file tersebut seperti parameter dibawah ini : 1. http_port 3128 (baris 1110) Option ini akan menentukan di port berapa squid akan berjalan (biasanya di port 3128 dan 8080) 2. icp_port 3130 (baris 3916) Adalah port yang digunakan squid untuk menerima dan mengirim permintaan/request ICP dari dan ke cache tetangga ( lain squid) atau dengan kata lain saling bertukar informasi cache antar squid. Jadi jika hanya satu squid, lebih baik di off-kan. Untuk menonaktifkan berikan nilai “0 “ (nol). Jika anda menggunakan ICP, tentukan parent dan sibling squid, contoh: cache_peer 192.168.1.1 parent 3128 3130 (baris 1318) cache_peer 10.4.1.1 3128 3130 (baris 1319) sibling Admin Server Linux . . . . . . . 61 3. cache_mem 32 MB (baris 1732) digunakan untuk menentukan besaranya cache memori yang digunakan squid untuk melakukan caching objects ( In-Transit objects, Hot Objects, Negative-Cached objects). Sebaikanya besarnya sekitar 1/3 RAM yang digunakan. 4. maximum_object_size 10240 KB minimum_object_size 8 KB Untuk menentukan besarnya object yang akan disimpan dalam hardisk, setting diatas berarti hanya object yang berukuran diantara 8 KB s/d 1024 KB saja yang akan disimpan, sedang object yang berukuran dibawah 8 KB ataupun object yang lebih besar dari 10240 KB tidak akan disimpan. 5. maximum_object_size_in_memory 42 KB (baris 1741) Untuk menentukan besar object maksimum yang akan diusahakan untuk di caching pada cache memori , semakin besar adalah semakin baik karena sangat membantu untuk mengoptimasi squid melakukan caching object (lihat cache_mem). 6. cache_dir ufs /home/squid 10240 32 512 (baris 1939) Jangan lupa buatlah direktori /home/squid dan ubah kepemilikannya ( dalam hal ini adalah dimiliki oleh yang menjalankan squid yaitu user : squid ), dengan perintah sebagai berikut : # mkdir /home/squid # chown squid.squid -fR /home/squid 7. Parameter untuk transparent proxy • httpd_accel_host virtual • httpd_accel_port 80 • httpd_accel_with_proxy on • httpd_accel_uses_host_header on 8. cache_access_log /var/log/squid/access.log Digunakan untuk menentukan namafile dan letak file log yang akan mencatat siapa saja dan apa saja request yang diterima squid melalui port HTTP dan ICP. Dalam hal ini namanya adalah access.log. 9. cache_store_log /var/log/squid/store.log Untuk menentukan namafile dan letak file log yang akan mencatat aktifitas storage manager. Dimana akan dicatat objects apa saja yang ditolak dan objects apa saja yang disimpan dan berapa lama. Untuk menonaktifkannya tulis saja none . 10. forwarded_for on Digunakan untuk mengijinkan request http terhadap IP Address system . Contohnya begini : misal ada suatu website yang diberi script agar bisa menampilkan/mendapatkan IP Address Proxy pengunjung sekaligus bisa menampilkan/mendapatkan IP system yang Admin Server Linux . . . . . . . 62 mengakses/merequest (melalui proxy) walaupun system memiliki IP invisible (IP local). Jika parameter ini di setting off, maka request http untuk IP system yang mengakses/merequest akan menghasilkan unknown , jadi bukan berupa IP Address. 11. cache_mgr [email protected] Jika cache mati, email tersebut akan dihubungi. 12. acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl to_localhost dst 127.0.0.0/8 acl to_localhost dst 127.0.0.0/8 ACL (Access List) adalah daftar siapa saja yang dibolehkan atau ditolak untuk menggunakan proxy (squid) atau dengan kata lain adalah pendefinisian user/clients squid. Daftar diatas adalah defaultnya. Artinya siapa saja (dari IP mana saja) selain yang didefinisikan akan diwakili/didefinisikan dengan nama all (ingat ini hanya pendefinisian nama saja, dan disesuaikan dengan defaultnya). Baik dilanjut, acl manager proto cache adalah untuk mendefinisikan cache_object dengan nama yang mewakilinya adalah manager. Selanjutnya, localhost mewakili source 127.0.0.1/255.255.255.255 (ip localhost) dan to_localhost mewakili tujuan network 127.0.0.0/8. contoh : Kita akan mengkonfigurasikan network kita misal ada 3 (tiga) network, yang akan kita definisikan dengan nama LANsatu, LANdua dan LANtiga ( 192.168.1.0/24; 172.16.5.0/24; dan 10.4.1.0/24) maka penulisaannya adalah: acl acl acl acl acl acl acl all src 0.0.0.0/0.0.0.0 LANsatu src 192.168.1.0/255.255.255.0 LANdua src 172.16.1.0/255.255.255.0 LANtiga src 10.4.1.0/255.255.255.0 manager proto cache_object localhost src 127.0.0.1/255.255.255.255 to_localhost dst 127.0.0.0/8 Selanjutnya kita juga dapat menentukan port mana saja yang diijinkan untuk di request : acl acl acl acl acl acl acl acl acl acl SSL_ports port 443 563 Safe_ports port 80 Safe_ports port 21 Safe_ports port 443 563 Safe_ports port 70 Safe_ports port 210 Safe_ports port 1025-65535 Safe_ports port 280 Safe_ports port 488 Safe_ports port 591 # # # # # # # # # http ftp https, snews gopher wais unregistered ports http-mgmt gss-http filemaker Admin Server Linux . . . . . . . 63 acl Safe_ports port 777 # multiling http acl CONNECT method CONNECT Acl dengan nama CONNNECT memiliki metode CONNECT Selanjutnya adalah mengkonfigurasi rulesnya. http_access allow LANsatu http_access allow LANdua http_access allow LANtiga http_access allow localhost http_access deny all Artinya, ketiga network dan localhost yang telah didefinisikan diatas diijinkan untuk mengakses data melalui port http, sedang selain itu (all) akan ditolak. http_access deny !Safe_ports http_access deny CONNECT !SSL_ports Digunakan untuk menolak request port http dan koneksi untuk port yang tidak diketahui (selain port yang didefinisikan diatas [Safe_ports] ). http_reply_access allow LANsatu http_reply_access allow LANdua http_reply_access allow LANtiga http_reply_access allow localhost http_reply_access deny all Untuk mengijinkan memberi jawaban request clients (LANsatu, LANdua, LANtiga, localhost), dan menolak selain itu all. Konfigurasi ini adalah kebalikan http_access ( untuk menjawab request http_access). icp_access allow LANsatu icp_access allow LANdua icp_access allow LANtiga icp_access allow localhost icp_access deny all Artinya, ketiga network dan localhost yang telah didefinisikan diatas diijinkan untuk mengakses data melalui port icp, sedang selain itu (all) akan ditolak. Ini berlaku jika setiap LAN memiliki squid dan ICP diaktifkan. Langkah selanjutnya adalah membuat direktori cache (cache_dir) dengan perintah sebagai berikut : # squid -z Jika sudah selesai melakukan konfigurasi, maka jalankan ulang squid dengan perintah sebagai berikut : # /etc/init.d/squid restart Admin Server Linux . . . . . . . 64 Terakhir kita bisa tes squid dari sisi server apakah sudah bekerja dengan perintah sebagai berikut : # ps ax |grep squid Jika hasilnya seperti tampilan dibawah ini, maka berarti squid sudah berjalan, ingat angka 10102 bisa jadi tidak sama dengan angka yang anda dapatkan. Tidak mengapa itu hanya menunjukkan PID saja, squid -D. Referensi : 1. http://opensource.telkomspeedy.com/wiki 2. http://www.google.co.id 3. http://www.bhinneka.com 4. http://www.intel.com 5. http://www.seagate.com 6. http://www.newegg.com 7. http://www.compusa.com 8. http://www.pcpower.com 9. http://www.delta.com 10. http://www.kojingkomputer.com 11. http://id.wikipedia.org/wiki/Port_TCP_dan_UDP 12. http://en.wikipedia.org/wiki/Port_number Akronim : QPI = QuickPath Interconnect FSB = Front Side Bus GT/s = Gigatransfers per Second DIMM = Dual In-line Memory Module URL = Uniform Resource Locator SMTP = Simple Mail Transfer Protocol POP3 = Post Office Protocol IMAP = Internet Message Access Protocol MTA = Message Transfer Agent MSA = Mail Submission Agent MUA = Mail User Agent yang penting ada terlihat