Anda di halaman 1dari 44

Router dan Server

Debian 6
Anonymous

1
Berawal dari eksperimen Linus Trovalds dengan Komputer Minix miliknya, terciptalah Sistem Operasi
Linux. Sejak saat itu, Dia terus mengembangkan dan memperbaiki Sistem Operasi temuanya tersebut.
Berkat kerja kerasnya, terciptalah Linux 1.0 yang keseluruhanya berbasis TEKS. Karena Linux bersifat
Open Source, dan dengan cepatnya Sistem Informasi & Komunikasi saat ini, Linux telah berkembang
begitu pesat.

Linux telah menyediakan berbagai paket aplikasi layanan yang digunakan untuk kebutuhan tertentu,
misalnya paket aplikasi BIND9 yang merupakan salah satu aplikasi DNS server yang cukup handal.
Agar mencapai hasil yang maksimal maka proses instalasi dan konfigurasi perlu diperhatikan
kebutuhan pengguna linux tersebut. Untuk memudahkan buatlah topologi berdasarkan kebutuhannya.

Permasalahan

Sebuah ISP “debian.edu” berencana memberikan sejumlah layanan kepada kliennya sebagai berikut:

CLIENT dapat terkoneksi melalui SWICTH / WIFI


CLIENT mendapatkan konfigurasi secara otomatis dari ROUTER
CLIENT dapat mengakses layanan internet dari PUBLIC/li>
CLIENT tidak dapat mengakses SSH milik ROUTER dan SERVER
CLIENT dapat sinkron waktu ke router
CLIENT dapat mengakses layanan informasi berbasis WEB pada alamat www.debian.edu
CLIENT dapat mengakses layanan berbagi file berbasis FTP pada alamat ftp.debian.edu
CLIENT dengan email client1@debian.edu dapat mengirimkan sebuah email kepada
client2@debian.edu

Diketahui:
Public Network: 192.168.50.0/24
Client Network: 192.168.40.0/28
Server Network: 192.168.140.0/30

Buatlah perencanaan, instalasi dan konfigurasi ISP tersebut!

2
Daftar Isi

1. Pendahuluan
1.1. Topologi Fisik
1.2. Topologi 3 Komputer Fisik dan WIFI
1.3. Topologi 2 Komputer Fisik, 2 Virtual Machine dan WIFI
1.4. Topologi 2 Komputer Fisik, 2 Virtual Machine
1.5. Topologi 1 Komputer Fisik dan 3 Virtual Machine
2. ROUTER
2.1. Instalasi Debian
2.2. Login
2.3. Interface
2.4. DHCP
2.5. SSH
2.6. NTP
2.7. VPN
2.8. PROXY
2.9. FIREWALL
2.9.1. Blok Paket yang Masuk (INPUT)
2.9.2. Blok Paket yang Keluar (OUTPUT)
2.9.3. Blok berdasarkan port (Jenis Layanan)
2.9.4. Mengijinkan berdasarkan port (Jenis Layanan)
2.9.5. Melihat Jenis Konfigurasi
2.9.6. Mereset Konfigurasi
2.9.7. Menjalankan Konfigurasi Saat Komputer dinyalakan kembali
2.10. STATIC ROUTING
3. SERVER
3.1. Instalasi Debian
3.2. Interface
3.3. DNS
3.3.1. Instalasi
3.3.2. Pengujian
3.4. HTTP Server
3.4.1. Instalasi Apache dan PHP
3.4.2. Konfigurasi
3.4.3. Instalasi Lynx
3.4.4. Membuka Halaman Web dengan Lynx

3
3.5. Mail Server
3.5.1. Instalasi Postfix
3.5.2. Buat User
3.5.3. Kirim Email
3.5.4. Terima Email
3.6. Web Mail
3.6.1. Download
3.6.2. Instalasi
3.7. FTP
3.7.1. Instalasi
3.7.2. Konfigurasi
3.7.3. Pengujian
3.8. SAMBA
3.8.1. Instalasi
3.8.2. Konfigurasi
4. CLIENT
4.1. Instalasi Debian
4.2. Interface
4.3. Uji SSH
4.4. Uji VPN
4.5. Uji HTTP
4.6. Uji FTP
4.7. Uji Samba
4.7.1. Instalasi Samba Client ::CODECOLORER_BLOCK_156:: Penggunaan Samba Client

4
Pendahuluan

Penyelesaian permasalahan ini dilakukan dengan membuat perencanaan topologi secara fisik maupun
virtual. Ada beberapa struktur topologi yang dapat dikembangkan sesuai dengan ketersediaan dan
kemampuan perangkat yang Ada. Semakin banyak perangkat fisik yang tersedia, maka semakin
kurang spesifikasi kemampuan perangkat yang dibutuhkan. Sebaliknya semakin sedikit perangkat fisik
yang tersedia maka semakin banyak pula perangkat yang dibutuhkan. Misalnya, Anda menggunakan 3
Komputer Fisik dalam penyelesaian masalah ini, maka komputer yang Anda gunakan tidak perlu
canggih. Akan tetapi bila Anda menggunakan Virtual Machine pada sebuah LAPTOP/KOMPUTER,
maka Anda membutuhkan KOMPUTER/LAPTOP dengan kemampuan yang tinggi karena akan
menanggung 3 Virtual Machine pada Komputer Fisik yang sama. Untuk pembelajaran, sangat
disarankan Anda menggunakan VIRTUAL MACHINE karena lebih mudah dalam pengaturan
topologinya.

Topologi Fisik

Topologi ini memungkinkan akses jaringan dengan kecepatan tinggi karena tiap perangkat di
hubungkan dengan kabel. Kemudian masing-masing perangkat terutapa CLIENT atau SERVER berdiri
sendiri sehingga bila salah satunya mengalami permasalahan maka tidak akan mengganggu
perangkat / layanan lainnya. Banyak layanan server besar menggunakan struktur topologi ini karena
memang harus menyediakan akses kecepata tinggi bagi pelanggannya.

Topologi 3 Komputer Fisik dan WIFI

5
Struktur topologi ini biasa digunakan untuk Layanan Server menengah kebawah tetapi menyediakan
layanan dengan daerah yang agak luas. Perangkat nirkabel menjadi media akses yang cukup
walaupun mempunyai akses sedikit lebih lambat daripada menggunakan kabel.

Topologi 2 Komputer Fisik, 2 Virtual Machine dan WIFI

Struktur topologi ini digunakan untuk pembelajaran sehingga siswa lain bisa mengakses layanan
server yang disediakan. Perangkat yang disediakan pun cukup sedikit tetapi perangkat tersebut harus
mempunyai spesifikasi yang cukup juga. Selain itu siswa juga bisa mengakses layanan Public seperti
google.com jika konfigurasi routingnya benar.

6
Topologi 2 Komputer Fisik, 2 Virtual Machine

Struktur ini tidak menyediakan akses layanan public. Akan tetapi siswa dapat mengkonfigurasinya
melalui jalur public sehingga penerapan FIREWALL untuk memblok layanan SSH dari CLIENT tetap
bisa digunakan.

Topologi 1 Komputer Fisik dan 3 Virtual Machine

7
Struktur ini membutuhkan spesifikasi yang sedikit tinggi karena siswa bisa mencoba pembelajarannya
sendiri di rumah tanpa perlu menginstall peralatan lainnya.

ROUTER

Router bertugas mengatur lalu lintas jaringan. Sehingga beberapa paket aplikasi layanan yang
mempunyai tugas yang sama harus di install dan dikonfigurasi pada PC/Virtual Machine ini. Aplikasi
tersebut antara lain: DHCP, NTP, SSH, VPN, PROXY dan FIREWALL.

Instalasi Debian

Rakit PC/Virtual Machine dengan menggunakan 3 interface (eth0, eth1, eth2). Kemudian instalasi
Debian 6 seperti biasa.

Login

Linux membagi user dalam dua kategori yaitu Super User dan User Biasa. Super User yang biasanya
dikenal sebagai root mempunyai hak akses (priveledge) yang tidak terbatas. Sebaliknya User Biasa
mempunyai hak akses yang sangat terbatas.

Bila muncul pesan berikut:

Debian GNU/Linux 6.0 tkj tty1

tkj login:
Artinya Anda diminta untuk melakukan login sebagai salah satu kategori user diataspada komputer
dengan nama tkj dan bersistem operasi Debian GNU/Linux 6.0. Cobalah untuk login sebagai user

8
biasa tkj sebagai berikut:

tkj login: tkj


Password: #masukan password user biasa#
Linux tkj 2.6.32-5-686 #1 SMP Mon Jun 13 04:13:06 UTC 2011 i686

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent


permitted by applicable law.
Last login: Wed Apr 24 16:48:27 2013 from 10.0.2.2
tkj@tkj:~#
Perhatikan pada baris paling akhir yang tertulis tkj@tkj:~#, tkj di depan “@” menunjukan user yang
aktif adalah tkj. Kemudian tkj di belakang “@” menunjukan komputer yang sedang aktif. Tanda “~”
setelah titik dua menunjukan direktori home milik user tkj.

Untuk berpindah dari user tkj ke super user root, Anda dapat menggunakan perintah logout kemudian
login sebagai super user root.

tkj@tkj:~# logout
atau dengan menggunakan perintah su (Super User) seperti berikut:

tkj@tkj:~# su
Password: #masukan password super user root#

Interface

Untuk mempermudah konfigurasi interface, tentukan terlebih dahulu IP untuk masing-masing interface
(eth0, eth1, eth2) pada router misalnya sebagai berikut:

eth0: 192.168.50.145
eth1: 192.168.100.1
eth2: 192.168.200.1
Untuk eth0, subnet mengikuti IP Public yaitu 192.168.50.x. Sedangkan nilai x mengikuti ketentuan
yang diberikan. Kemudian untuk eth1 dan eth2, sebnetnya dapat kita tentukan sendiri.

9
1. Buka berkas konfigurasi interfaces:
root@router:~# nano /etc/network/interfaces
Tambah dan edit:

1 auto lo

2 iface lo inet loopbackauto eth0

3 iface eth0 inet static

4 address 192.168.50.145

5 netmask 255.255.255.0

6 gateway 192.168.50.1

7 dns-nameservers 192.168.200.2

8 dns-search debian.edu

10 auto eth1

11 iface eth1 inet static

12 address 192.168.100.1

13 netmask 255.255.255.0

14

15 auto eth2

16 iface eth2 inet static

17 address 192.168.200.1

18 netmask 255.255.255.0

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

2. Restart jaringan:
root@router:~# /etc/init.d/networking stop
root@router:~# /etc/init.d/networking start
3. Uji interfaces:
root@router:~# ifconfig
eth0 Link encap:Ethernet HWaddr 08:00:27:e6:9c:ae
inet addr:10.0.2.15 Bcast:192.168.50.145 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fee6:9cae/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:167 errors:0 dropped:0 overruns:0 frame:0
TX packets:101 errors:0 dropped:0 overruns:0 carrier:0

10
collisions:0 txqueuelen:1000
RX bytes:15784 (15.4 KiB) TX bytes:13625 (13.3 KiB)eth1 Link encap:Ethernet HWaddr 08:00:27
inet addr:192.168.100.1 Bcast:192.168.100.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe72:7c6d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:37 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6538 (6.3 KiB) TX bytes:468 (468.0 B)eth2 Link encap:Ethernet HWaddr 08:00:27:c4:cb:b2
inet addr:192.168.200.1 Bcast:192.168.200.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fec4:cbb2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:37 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6538 (6.3 KiB) TX bytes:468 (468.0 B)

lo Link encap:Local Loopback


inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)
4. Uji koneksi dengan gateway 192.168.50.1:
root@router:~# ping 192.168.50.1
PING 192.168.50.1 (192.168.50.1) 56(84) bytes of data.
64 bytes from 192.168.50.1: icmp_req=1 ttl=64 time=0.017 ms
64 bytes from 192.168.50.1: icmp_req=2 ttl=64 time=0.039 ms
64 bytes from 192.168.50.1: icmp_req=3 ttl=64 time=0.023 ms
64 bytes from 192.168.50.1: icmp_req=4 ttl=64 time=0.029 ms
64 bytes from 192.168.50.1: icmp_req=5 ttl=64 time=0.025 ms
^C
--- 192.168.50.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4000ms
rtt min/avg/max/mdev = 0.017/0.026/0.039/0.009 ms

11
DHCP

Dynamic Host Configuration Protocol, digunakan untuk melayani request Ip Address dari client.
Gunanya adalah, kita tidak perlu lagi repot-repot mengkonfigurasi Ip pada computer, sebut saja Zero
Configuration. Client akan meminta Ip Address pada server, kemudian server akan memberikan
alokasi ip yang tersisa.

1. Install server DHCP:


root@server:~# apt-get install dhcp3-server
2. Buka konfigurasi server DHCP:
root@server:~# nano /etc/dhcp/dhcpd.conf
Cari teks “sli”:
Tekan tombol CTRL+W ketikan s l i kemudian ENTER.
Tambah dibawahnya:

1 # A slightly different configuration for an internal subnet.

2 #subnet 10.5.5.0 netmask 255.255.255.224 {

3 # range 10.5.5.26 10.5.5.30;

4 # option domain-name-servers ns1.internal.example.org;

5 # option domain-name "internal.example.org";

6 # option routers 10.5.5.1;

7 # option broadcast-address 10.5.5.31;

8 # default-lease-time 600;

9 # max-lease-time 7200;

10 #}
11 subnet 192.168.100.0 netmask 255.255.255.0 {

12 range 192.168.100.100 192.168.100.200;

13 option domain-name-servers 192.168.200.2;

14 option domain-name "debian.edu";

15 option routers 192.168.100.1;

16 default-lease-time 600;

17 max-lease-time 7200;

18 }

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

12
3. Buka konfigurasi default server DHCP:
root@server:~# nano /etc/default/isc-dhcp-server
Edit baris INTERFACES sisip eth1:

1 # On what interfaces should the DHCP server (dhcpd) serve DHCP requests?

2 # Separate multiple interfaces with spaces, e.g. "eth0 eth1".

3 INTERFACES="eth1" #disesuaikan dengan interface yang akan digunakan untuk client#

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

4. Restart server DHCP:


root@router:~# /etc/init.d/isc-dhcp-server restart
Stopping ISC DHCP server: dhcpd.
Starting ISC DHCP server: dhcpd.

SSH

Keuntungan dari jaringan komputer yaitu memudahkan kita dalam berbagi resource hardware ataupun
software yang ada. Remote Access adalah salah satu teknologi yang digunakan untuk mengakses
suatu system melalui media jaringan. Sehingga kita dapat mengkonfigurasi suatu system, dimanapun
kita berada asalkan terkoneksi ke Internet atau Jaringan tersebut.

Install server SSH:

root@server:~# apt-get install openssh-server

NTP

Network Time Protocol (NTP) berfungsi untuk mensingkronkan waktu client dengan server. Supaya
waktu atau jam dapat sama persis. NTP berjalan pada protocol UDP, yang bersifat ringan dan
unreliable. NTP Server, sangat berperan penting jika jumlah komputer sudah melampaui batas, agar
semua waktu berjalan serentak pada setiap komputer.

1. Install server NTP:


root@server:~# apt-get install ntp
2. Buka konfigurasi server NTP:

13
root@server:~# nano /etc/ntp.conf
Cari teks “ntp.org”:
Tekan tombol CTRL+W ketikan n t p . o r g kemudian ENTER.
Pagar ke empat beris server:

1 # pool.ntp.org maps to about 1000 low-stratum NTP servers. Your server will

2 # pick a different set every time it starts up. Please consider joining the

3 # pool: <http://www.pool.ntp.org/join.html>

4 #server 0.debian.pool.ntp.org iburst

5 #server 1.debian.pool.ntp.org iburst

6 #server 2.debian.pool.ntp.org iburst


7 #server 3.debian.pool.ntp.org iburst

Tambah dibawahnya:

1 server 127.127.1.0

2 fudge 127.127.1.0 stratum 1

Cari teks “cryp”:


Tekan tombol CTRL+W ketikan c r y p kemudian ENTER.
Pagar baris restrict:

1 # Clients from this (example!) subnet have unlimited access, but only if

2 # cryptographically authenticated.
3 #restrict 192.168.123.0 mask 255.255.255.0 notrust

Tambah dibawahnya:

1 restrict 192.168.50.0 mask 255.255.255.0 nomodify notrap

2 restrict 192.168.100.0 mask 255.255.255.0 nomodify notrap

3 restrict 192.168.200.0 mask 255.255.255.0 nomodify notrap

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

14
3. Restart server NTP:
root@router:~# /etc/init.d/ntp restart
Stopping NTP server: ntpd.
Starting NTP server: ntpd.
4. Uji konfigurasi server NTP:
root@router:~# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*LOCAL(0) .LOCL. 1 l 11 64 377 0.000 0.000 0.000
5. Uji sinkron dengan server 127.0.0.1:
root@router:~# ntpdate -u 127.0.0.1
28 Sep 17:23:50 ntpdate[1429]: adjust time server 127.0.0.1 offset 0.000006 sec

VPN

Virtual Private Networking adalah suatu metode yang digunakan untuk menghubungkan suatu LAN,
menggunakan media yang berskala luas (Internet). Prinsipnya adalah membuat tunnel / terowongan,
yang bersifat end to end structure. Sehingga bisa menghubungkan jaringan Lokal, walau berjarak
sangat jauh.

1. Install server NTP:


root@router:~# apt-get install openvpn
2. Kopi seluruh isi direktori contoh easy-rsa:
root@router:~# cp -rp /usr/share/doc/openvpn/examples/easy-rsa/ /etc/openvpn/
3. Ubah hak akses direktori openvpn:
root@router:~# chmod -R 0755 /etc/openvpn/
4. Buka berkas vars:
root@router:~# nano /etc/openvpn/easy-rsa/2.0/vars
Cari teks “KEY_SIZE”:
Tekan tombol CTRL+W ketikan k e y _ s i z e kemudian ENTER.
Ubah baris export KEY_SIZE:

1 # Increase this to 2048 if you

2 # are paranoid. This will slow

3 # down TLS negotiation performance

4 # as well as the one-time DH parms

5 # generation process.

15
6 export KEY_SIZE=1024

8 # In how many days should the root CA key expire?

9 export CA_EXPIRE=3650

10

11 # In how many days should certificates expire?

12 export KEY_EXPIRE=3650

13

14 # These are the default values for fields

15 # which will be placed in the certificate.

16 # Don't leave any of these fields blank.

17 export KEY_COUNTRY="ID"

18 export KEY_PROVINCE="PA"

19 export KEY_CITY="Serui"

20 export KEY_ORG="TKJ"

21 export KEY_EMAIL="me@debian.edu"

22 export KEY_CN=vpn.debian.edu

23 export KEY_NAME=debian.edu

24 export KEY_OU=debian.edu

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

5. Tujukan sumber kompilasi ke file vars:


root@router:~# source ./etc/openvpn/easy-rsa/2.0/vars
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/2.0/keys
6. Pindah direktori ke /etc/openvpn/easy-rsa/2.0/:
root@router:~# cd /etc/openvpn/easy-rsa/2.0/
7. Jalankan kompilasi vars:
root@router:~# . /etc/openvpn/easy-rsa/2.0/vars
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/2.0/keys
8. Jalankan kompilasi clean-all:
root@router:~# . /etc/openvpn/easy-rsa/2.0/clean-all
9. Buat sertifikat:
root@router:~# . /etc/openvpn/easy-rsa/2.0/build-ca
Generating a 1024 bit RSA private key
..++++++

16
.......................................................++++++
writing new private key to 'ca.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [ID]: #isikan "ID"#
State or Province Name (full name) [PA]: #isikan "PA"#
Locality Name (eg, city) [Serui]: #isikan "Serui"#
Organization Name (eg, company) [TKJ]: #isikan "TKJ"#
Organizational Unit Name (eg, section) []: #kosongkan#
Common Name (eg, your name or your servers hostname) [vpn.debian.edu]: #kosongkan#
Name [debian.edu]: #kosongkan#
Email Address [me@debian.edu]: #kosongkan#
10. Buat kunci server debian.edu:
root@router:~# . /etc/openvpn/easy-rsa/2.0/build-key-server vpn.debian.edu
Generating a 1024 bit RSA private key
............++++++++++++++++++
..++++++++++++++++++
writing new private key to 'vpn.debian.edu.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [ID]: #isikan "ID"#
State or Province Name (full name) [PA]: #isikan "PA"#
Locality Name (eg, city) [Serui]: #isikan "Serui"#
Organization Name (eg, company) [TKJ]: #isikan "TKJ"#
Organizational Unit Name (eg, section) []: #"kosongkan"#
Common Name (eg, your name or your servers hostname) [vpn.debian.edu]: #kosongkan#

17
Name [debian.edu]: #kosongkan#
Email Address [me@debian.edu]: #kosongkan#Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: #isikan password#
An optional company name []: #kosongkan#
Using configuration from /etc/openvpn/easy-rsa/2.0/openssl-1.0.0.cnf
Check that the request matches the signature
Signature ok
The Subjects Distinguished Name is as follows
countryName :PRINTABLE:'ID'
stateOrProvinceName :PRINTABLE:'PA'
localityName :PRINTABLE:'Serui'
organizationName :PRINTABLE:'TKJ'
organizationalUnitName:PRINTABLE:''
commonName :PRINTABLE:'vpn.debian.edu'
name :PRINTABLE:'debian.edu'
emailAddress :IA5STRING:'me.debian.edu'
Certificate is to be certified until Sep 4 06:27:10 2022 GMT (3650 days)
Sign the certificate? [y/n]:y

1 out of 1 certificate requests certified, commit? [y/n]y


Write out database with 1 new entries
Data Base Updated
11. Buat dh1024.pem:
root@router:~# . /etc/openvpn/easy-rsa/2.0/build-dh
Generating DH parameters, 1024 bit long safe prime, generator 2
This is going to take a long time
.......................................................................
.......................................................................
.+....+................................................................
..............+......................................++*++*++*
12. Buat konfigurasi openvpn.conf:
root@router:~# nano /etc/openvpn/openvpn.conf
Isi konfigurasi openvpn.conf:

1 dev tun

2 proto tcp

18
3 port 1194

4 ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt

5 cert /etc/openvpn/easy-rsa/2.0/keys/vpn.debian.edu.crt

6 key /etc/openvpn/easy-rsa/2.0/keys/vpn.debian.edu.key

7 dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem

8 user nobody

9 group nogroup

10 server 10.8.0.0 255.255.255.0

11 persist-key

12 persist-tun

13 client-to-client

14 push "redirect-gateway def1"

15 log-append /var/log/openvpn

16 comp-lzo

13. Restart server OPENVPN:


root@router:~# /etc/init/openvpn restart
14. Tulis konfigurasi ip_forward:
root@router:~# echo 1 > /proc/sys/net/ipv4/ip_forward
15. Tulis konfigurasi iptables:
root@router:~# iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth1 -j MASQUERADE
16. Lihat konfigurasi NAT pada iptables:
root@router:~# iptables -L -t nat
17. Uji konfigurasi interface pastikan Anda mendapat interface tunnel baru seperti berikut:
root@router:~# ifconfig
...
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:924 (924.0 B)
18. PING alamat 10.8.0.1:
root@router:~# ping 10.8.0.1
PING 10.8.0.1 (10.8.0.1) 56(84) bytes of data.
64 bytes from 10.8.0.1: icmp_req=1 ttl=64 time=0.037 ms

19
64 bytes from 10.8.0.1: icmp_req=2 ttl=64 time=0.040 ms
64 bytes from 10.8.0.1: icmp_req=3 ttl=64 time=0.041 ms
64 bytes from 10.8.0.1: icmp_req=4 ttl=64 time=0.035 ms
64 bytes from 10.8.0.1: icmp_req=5 ttl=64 time=0.055 ms
^C
--- 10.8.0.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3999ms
rtt min/avg/max/mdev = 0.035/0.041/0.055/0.010 ms

PROXY

PROXY Server berfungsi untuk menyimpan halaman-halaman website yang pernah kita kunjungi.
Fungsinya adalah sebagai CACHE, yang sewaktu-waktu jika kita ingin mengunjungi halaman yang
sama, akan diambilkan dari Proxytersebut terlebih dahulu, dan jika belum ada maka akan diteruskan
ke server sebenarnya. Selain itu proxy juga dapat digunakan untuk Security, misalnya memblokir
akses ke suatu website ataupun sebagainya.

1. Install squid:
root@router:~# apt-get install squid
2. Buka konfigurasi squid:
root@router:~# nano /etc/squid/squid.conf
Cari teks “port 3128″:
Tekan tombol CTRL+W ketikan p o r t SPASI 3 1 2 8 kemudian ENTER.
Ubah baris port 3128 dan tambahkan dibawahnya:

1 http_port 3128 transparent #tambahkan “transparent”


2 cache_mem 16 MB #kurang-lebih ¼ dari memory

3 cache_mgr admin@debian.edu

4 visible_hostname proxy.debian.edu

Cari teks “ACL CONNECT”:


Tekan tombol CTRL+W ketikan a c l SPASI c o n n e c t kemudian ENTER.
Ubah baris port 3128 dan tambahkan dibawahnya:

1 acl url dstdomain “/etc/squid/url” #domain yang di blok

2 acl key url_regex –i “/etc/squid/key” #kata yang di blok

20
3 http_access deny url

4 http_access deny key

5 acl lan src 192.168.50.0/24 #ip lokal

6 acl lan src 192.168.100.0/24 #ip lokal

7 acl lan src 192.168.200.0/24 #ip lokal

8 http_access allow lan

9 http_access allow all

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

3. Buat file url:


root@router:~# nano /etc/squid/url
Tulis:

1 facebook.com

2 twitter.com

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

4. Buat file key:


root@router:~# nano /etc/squid/key
Tulis:

1 porn
2 sex

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

5. Buat cache dan jalankan squid:


root@router:~# squid –z
2012/10/01 10:56:46| Squid is already running! Process ID 2314
6. Buat ip-tables:
root@router:~# iptables –t nat –A PREROUTING –s 192.168.50.0/24 –p tcp --dport 80 –j REDIRECT --to-port 3128
root@router:~# iptables-save

21
FIREWALL

Firewall atau Tembok Api, berfungsi untuk memfilter semua paket yang lewat pada dirinya, baik dari
jaringan Lokal ataupun Internet. Aplikasi server yang satu ini sangatlah penting, untuk melindungi
jaringan local kita dari serangan luar. Aplikasi firewall yang terkenal pada linux adalah IpTables, selain
itu ada juga Shorewall.

Blok Paket yang Masuk (INPUT)

1. Blok IP yang masuk:


root@router:~# iptables –A INPUT –s 192.168.50.1 –j DROP
root@router:~# iptables-save
2. Blok subnet yang masuk:
root@router:~# iptables –A INPUT –s 192.168.50.0/24 –j DROP
root@router:~# iptables-save
3. Blok interface yang masuk:
root@router:~# iptables –A INPUT –s eth0 –j DROP
root@router:~# iptables-save

Blok Paket yang Keluar (OUTPUT)

1. Blok IP yang keluar:


root@router:~# iptables –A OUTPUT –s 192.168.50.1 –j DROP
root@router:~# iptables-save
2. Blok subnet yang keluar:
root@router:~# iptables –A OUTPUT –s 192.168.50.0/24 –j DROP
root@router:~# iptables-save
3. Blok interface yang keluar:
root@router:~# iptables –A OUTPUT –s eth0 –j DROP
root@router:~# iptables-save

Blok berdasarkan port (Jenis Layanan)

Telah diketahui bahwa terdapat lebih dari 35.000 port yang terdaftar untuk layanan tertentu,
sedangkan sisanya sebanyak 30.000 dapat digunakan secara bebas untuk maksud tertentu, bahkan
sebagai layanan virus atau trojan misalnya. Beberapa port yang sudah menjadi standar antara lain:
FTP (21), SSH (22), TELNET (23), SMTP (25), DNS (53), TFTP (69), HTTP (80), POP3 (110), IMAP

22
(143) dan HTTPS (443). Sebagai contoh untuk memblok masuknya paket dari IP tertentu melalui FTP
perintahnya adalah sebagai berikut:

root@router:~# iptables –A INPUT –s 192.168.50.1 -dport 21 –j DROP


root@router:~# iptables-save
Contoh lain, untuk memblok penggunaan FTP pada subnet tertentu perintahnya adalah:

root@router:~# iptables –A INPUT –s 192.168.50.0/24 -dport 21 –j DROP


root@router:~# iptables-save

Mengijinkan berdasarkan port (Jenis Layanan)

Terkadang untuk maksud tertentu beberapa IP di ijinkan untuk mengakses layanan (misal FTP) maka
perintahnya adalah:

root@router:~# iptables –A INPUT –s 192.168.50.20 -dport 21 –j ACCEPT


root@router:~# iptables-save

Melihat Jenis Konfigurasi

root@router:~# iptables –nL


Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP all -- 192.168.50.1 0.0.0.0/0
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:354
LOG all -- 0.0.0.0/0 0.0.0.0/0 limit: avg 5/min burst 5 LOG flags 0 level 7 prefix `PORT 21 DROP:
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DROP all -- 0.0.0.0/0 192.168.50.200

Mereset Konfigurasi

Jika ingin menghapus seluruh konfigurasi, masukan perintah berikut:

root@router:~# iptables –X

23
root@router:~# iptables -F

Menjalankan Konfigurasi Saat Komputer dinyalakan kembali

Kelemahan IP Tables ini adalah jika komputer restart maka semua konfigurasi yang dibuat akan
hilang. Untuk mengatasinya, kita buat restore point agar dapat di jalankan kembali saat komputer
dinyalakan kembali.

Lakukan penyimpanan konfigurasi firewall ke sebuah file misalnya di /etc/iptables.conf.

root@router:~# iptables-save > /etc/iptables.conf


Kemudian masukan perintah dalam skrip yang pertama kali di load oleh komputer saat di nyalakan
(/etc/rc.local) untuk merestore konfigurasi firewall tersebut.

root@router:~# nano /etc/rc.local


#. . .
# By default this script does nothing.
iptables-restore < /etc/iptables.conf #tambahkan baris ini
exit 0
Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

STATIC ROUTING

Untuk membuat jaringan local menjadi private (NAT) sehingga koneksi dari public bisa di pakai
bersama oleh koneksi-koneksi lainnya:

Buat ip-tables:

root@router:~# iptables –t nat –A POSTROUTING –o eth0 -j MASQUERADE


root@router:~# iptables-save

SERVER

Berbeda dengan Router, PC/Virtual Machine ini bertugas sebagai menyediakan layanan (serve) sesuai
permintaan klien.

24
Instalasi Debian

PC/Virtual Machine ini hanya menggunakan 1 interface (eth0) yang pengaturan IPnya disesuaikan
dengan subnet (eth2) milik router yaitu 192.168.200.0/24. Sehingga di tentukan bahwa IP untuk eth0
pada server ini adalah: 192.168.200.2, maka tiap layanan seperti DNS akan diarahkan ke IP ini.

Interface

1. Buka berkas konfigurasi interfaces:


root@server:~# nano /etc/network/interfaces
Tambah dan edit:

1 auto lo

2 iface lo inet loopbackauto eth0

3 iface eth0 inet static

4 address 192.168.200.2

5 netmask 255.255.255.0

6 gateway 192.168.200.1

7 dns-nameservers 192.168.200.2

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

2. Restart jaringan:
root@server:~# /etc/init.d/networking stop
root@server:~# /etc/init.d/networking start
3. Uji interfaces:
root@server:~# ifconfig
eth0 Link encap:Ethernet HWaddr 08:00:27:26:2a:41
inet addr:192.168.200.2 Bcast:192.168.200.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe26:2a41/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:35 errors:0 dropped:0 overruns:0 frame:0
TX packets:35 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4704 (4.5 KiB) TX bytes:5254 (5.1 KiB)lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0

25
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:18 errors:0 dropped:0 overruns:0 frame:0
TX packets:18 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1311 (1.2 KiB) TX bytes:1311 (1.2 KiB)
4. Uji koneksi dengan gateway 192.168.200.1:
root@server:~# ping 192.168.200.1
PING 192.168.200.1 (192.168.200.1) 56(84) bytes of data.
64 bytes from 192.168.200.1: icmp_req=1 ttl=64 time=0.349 ms
64 bytes from 192.168.200.1: icmp_req=2 ttl=64 time=0.443 ms
64 bytes from 192.168.200.1: icmp_req=3 ttl=64 time=0.295 ms
64 bytes from 192.168.200.1: icmp_req=4 ttl=64 time=0.384 ms
64 bytes from 192.168.200.1: icmp_req=5 ttl=64 time=0.449 ms
^C
--- 192.168.200.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3999ms
rtt min/avg/max/mdev = 0.295/0.384/0.449/0.058 ms

DNS

Domain Name System adalah suatu metode untuk meng-konversikan Ip Address (numerik) suatu
komputer ke dalam suatu nama domain (alphabetic), ataupun sebaliknya. Yang memudahkan kita
dalam mengingat computer tersebut. Misalnya, server Debian memiliki alamat Ip Address sekian,
namun pada umumnya, orang tidak akan mudah mengingat alamat Ip dalam bentuk numerik tersebut.
Dengan adanya DNS Server, kita bisa mengakses halaman situs dari server Debian tersebut hanya
dengan mengakses nama Domain-nya (www.debian.edu), tanpa mengingat Ip Address dari computer
tersebut.

Instalasi

1. Install bind9:
root@server:~# apt-get install bind9
2. Buka berkas named.conf:
root@server:~# nano /etc/bind/named.conf
3. Tambah di akhir baris:

1 include "/etc/bind/named.conf.options";

26
2 #include "/etc/bind/named.conf.local"; #beri pagar di depannya

3 #include "/etc/bind/named.conf.default-zones"; #beri pagar di depannyazone "debian.edu" {

4 type master;

5 file "/etc/bind/db.debian";

6 };

7 zone "192.in-addr.arpa" {

8 type master;

9 file "/etc/bind/db.192";

10 };

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

4. Kopi berkas db.local ke db.debian:


root@server:~# cp /etc/bind/db.local /etc/bind/db.debian
5. Buka berkas db.debian:
root@server:~# nano /etc/bind/db.debian
6. Ubah domain localhost menjadi debian.edu. Tambah alamat IP dan baris sesuai ketentuan.
Perhatian: Jangan sampai kurang titik “.”!.

1 $TTL 604800

2 @ IN SOA debian.edu. root.debian.edu. (

3 2 ; Serial

4 604800 ; Refresh

5 86400 ; Retry

6 2419200 ; Expire

7 604800 ) ; Negative Cache TTL

8 ;

9 @ IN NS debian.edu.

10 @ IN A 192.168.200.2

11 www IN A 192.168.200.2

12 ftp IN A 192.168.200.2

13 mail IN A 192.168.200.2

14 vpn IN A 192.168.200.2

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

27
7. Kopi berkas db.127 ke db.192:
root@server:~# cp /etc/bind/db.127 /etc/bind/db.192
8. Buka berkas db.192:
root@server:~# nano /etc/bind/db.192
9. Ubah domain localhost menjadi debian.edu. Tambah alamat IP dan baris sesuai ketentuan.
Perhatian: Jangan sampai kurang titik “.”!.

1 $TTL 604800

2 @ IN SOA debian.edu. root.debian.edu. (

3 1 ; Serial

4 604800 ; Refresh

5 86400 ; Retry

6 2419200 ; Expire
7 604800 ) ; Negative Cache TTL
8 ;
9 @ IN NS debian.edu.

10 2.200.168 IN PTR debian.edu.

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

10. Buka berkas resolv.conf:


root@server:~# nano /etc/resolv.conf
11. Tambah beris:

1 domain debian.edu

2 search debian.edu

3 nameserver 192.168.200.2

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

12. Restart bind:


root@server:~# /etc/init.d/bind9 restart

Pengujian

Test apakah DNS Server tersebut berhasil atau tidak, dengan perintah nslookup dari ROUTER,
SERVER ataupun dari VM-CLIENT.

28
1. Lookup alamat IP 192.168.200.2:
root@server:~# nslookup 192.168.200.2
Server : 192.168.200.2
Address : 192.168.200.2#53
2.200.168.192.in-addr.arpa name = debian.edu.
2. Lookup alamat IP debian.edu:
root@server:~# nslookup debian.edu
Server : 192.168.200.2
Address : 192.168.200.2#53
Name : debian.edu.

Bila tampil pesan berikut saat pengujian dengan nslookup:

-bash: nslookup: command not found


maka lakukan penginstalan dnsutils dengan perintah berikut:

root@server:~# apt-get install dnsutils


Kemudian ulangi pengujian dengan perintah nslookup diatas.

HTTP Server

Web Server termasuk salah satu layanan SERVER yang paling popular. Karena lewat web server
tersebut, website kita dapat diakses oleh seluruh pengunjung dari Internet. Dalam keadaan default,
web server berjalan pada protocol HTTP melalui port 80. Pada buku ini kita akan membuat web server
menggunakan aplikasi Apache untuk menjalankan aplikasi webmail bernama rouncubemail.

Instalasi Apache dan PHP

root@server:~# apt-get install apache2 php5


Saat instalasi MySQL akan di minta untuk memasukan password untuk user root. Silahkan masukan
password 1.

Konfigurasi

Konfigurasi ini akan membuat sebuah sub domain www.debian edu dari domain debian.edu. Sehingga
ketika klien membuka situs www.debian.edu atau debian.edu pada browsernya akan langsung
diarahkan sesuai dengan berkas konfigurasi www.

29
root@server:~# cd ~
root@server:~# cp /etc/apache2/sites-available/default /etc/apache2/sites-available/www
root@server:~# nano /etc/apache2/sites-available/www
Dalam linux tiap user biasanya mempunyai direktori homenya masing-masing. Misalnya user biasa tkj
mempunyai direktori home sendiri di yang biasanya terletak di /home/tkj/. Direktori home ini biasanya
diwakili dengan tanda “~” yang artinya Anda saat ini sedang berada di direktori home milik user aktif.
Pada contoh diatas, ketika mengetikan perintah cd ~, kita akan di arahkan ke direktori home khusus
milik super user root yaitu /root/.

Tambahkan 2 skrip berikut:

1 ServerAdmin admin@debian.edu

2 ServerName www.debian.edu #tambahkan skrip ini#

3 ServerAlias debian.edu #tambahkan skrip ini#

4 DocumentRoot /var/www

6 Options FollowSymLinks

7 AllowOverride None

9 Options Indexes FollowSymLinks MultiViews

10 AllowOverride None

11 Order allow,deny

12 allow from all

13

14 #. . .

Biarkan skrip lainnya. Kemudian Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

Non aktifkan (disable) konfigurasi situs default

root@server:~# a2dissite default


Aktifkan (enable) konfigurasi situs www

root@server:~# a2ensite www


Anda dapat membuat Hosting Virtual (VirtualHost) untuk subdomain selain www.debian.edu, misalnya:
share.debian.edu dengan menambahkan 1 baris lagi pada berkas konfigurasi DNS Server (/etc/bind

30
/db.debian) diatas. Kemudian kopikan (cp) berkas default menjadi berkas share kemudian diaktifkan
(enable) seperti proses untuk subdomain www.debian.edu diatas.

Instalasi Lynx

Untuk melakukan pengujian, dibutuhkan web browser berbasis command line bernama lynx.

root@server:~# apt-get install lynx

Membuka Halaman Web dengan Lynx

root@server:~# lynx debian.edu


Bila tampil pesan “It’s Works!” berarti Anda sudah berhasil menginstall HTTP Server.

Mail Server

Mail Server atau yang sering disebut juga E-Mail server, digunakan untuk mengirim surat melalui
Internet. Dengan begitu, dapat mempermudah dalam penggunanya, karena lebih cepat dan efisien.
Untuk membuat Mail Server, harus terdapat SMTP dan POP3 server, yang digunakan untuk mengirim
dan menerima E-Mail.

Proses pengiriman eMail bisa terjadi karena adanya SMTP Server (Simple Mail Transfer Protocol).
Setelah dikirim, eMail tersebut akan ditampung sementara di POP3 Server (Post Office Protocol ver.
3). Dan ketika user yang mempunyai eMail account tersebut online, mail client akan secara otomatis
melakukan sinkronisasi dari POP3 Server

Instalasi Postfix

root@server:~# apt-get install postfix qpopper


Akan muncul jendela untuk konfigurasi. Pilih:

Mail configuration : Internet Site


System mail name : debian.edu

Buat User

31
Harus mempunyai minimal 2 user email. Misalnya: sule (sule@debian.edu) dan aziz
(aziz@debian.edu).

root@server:~# adduser sule


Enter new UNIX password: #Masukan password. Misal: 1
root@server:~# adduser aziz
Enter new UNIX password: #Masukan password. Misal: 1

Kirim Email

Kirim email dari sule ke aziz dengan pesan: “Apa kabar?”.

root@server:~# telnet mail.debian.edu 25


Trying 192.168.200.2...
Connected to mail.debian.edu.
Escape character is '^]'.
220 debian5 ESMTP Postfix (Debian/GNU)
mail from: sule # user pengirim: sule
250 2.1.0 Ok
rcpt to: aziz # user penerima: aziz
250 2.1.5 Ok
data
354 End data with .
Apa kabar? # isi
. # akhiri isi dengan tanda titik "."
250 2.0.0 Ok: queued as 10FA74CEF
quit # keluar dari layanan pengirim email
221 2.0.0 Bye
Connection closed by foreign host.

Terima Email

Periksa email user aziz:

root@server:~# telnet mail.debian.edu 110


Trying 192.168.200.2...
Connected to mail.debian.edu.

32
Escape character is '^]'.
+OK Qpopper (version 4.0.9) at debian starling. <1535.135371150@debian>
user aziz # user penerima: aziz
+OK Password required for aziz
pass 1 # masukan password
+OK aziz has 1 visible message (0 hidden) in 446 octets.
retr 1 # tampilkan email dengan id 1
+OK 446 octets
Return-Path: <sule@debian.edu>
X-Original-To: aziz@debian.edu
Received: from debian.edu (debian.edu [10.0.2.15])
by debian.edu (Postfix) with SMTP id EF5A11248C
for ; Sat, 24 Nov 2012 03.10.31 +0430 (AFT)
Message-Id: <20121123224042.EF5A11248C@debian.edu>
Date: Sat, 24 Nov 2012 03.10.31 +0430 (AFT)
From: sule@debian.edu
To: undiscloded-recipients:;
X-UIDL: =[<!!&=p''!fYL!!32""!
Status: RO

Apa kabar? # isi pesan yang terkirim

.
quit # keluar dari layanan penerima mail
+OK Pop server at debian signing off.
Connection closed by foreign host.

Web Mail

Walau tidak terkenal layaknya squirrelmail, aplikasi webmail yang satu ini tidak kalah menarik
dibanding aplikasi webmail bawaan Debian. Bahkan tampilan dari RoundCubeMail ini dibilang sangat
halus, dan menarik. Selain itu aplikasi webmail ini memiliki banyak fitur dibanding dengan webmail
bawaan.

Download

Karena aplikasi webmail roundcubemail ini tidak terdapat pada distro Debian, kita harus mendownload

33
terlebih dahulu dari share.smkypkserui.edu atau sember lainnya (silahkan browsing di google).

root@server:~# wget http://share.smkypkserui.edu/debian/roundcube/rouncubemail-0.5.1.tar.gz


root@server:~# ls
roundcubemail-0.5.1.tar.gz

Instalasi

1. Ekstrak aplikasi roundcube:


root@server:~# tar xfv roundcubemail-0.5.1.tar.gz
2. Kopi seluruh aplikasi roundcube ke /var/www/:
root@server:~# cp roundcubemail-0.5.1 /var/www/cube -R
3. Ganti nama folder roundcubemail-0.5.1/ menjadi cubby/:
root@server:~# mv /var/www/roundcubemail-0.5.1/ /var/www/cubby/
4. Ubah hak akses:
root@server:~# chmod 777 –R /var/www/
5. Hapus berkas index.html:
root@server:~# rm /var/www/index.html
6. Buka alamat www.debian.edu/cubby/installer:
root@server:~# lynx www.debian.edu/installer

FTP

File Transfer Protocol (FTP) adalah protocol yang digunakan untuk transfer file atau data melalui
media jaringan. FTP termasuk dalam protocol lama yang sampai saat ini masih digunakan. Dalam
keadaan default, ftp berjalan pada port 21 dan bekerja pada protocol TCP/IP.

Instalasi

root@server:~# apt-get install proftpd


Akan tampil permintaan untuk memilih apakah menggunakan inetd atau standalone? Pilih standalone.

Konfigurasi

Selanjutnya, buat folder untuk meletakan semua file dan data pada ftp server. Kemudian tambahkan
hak akses

34
untuk user ftp pada direktori tersebut. Pada perintah passwd akan diminta untuk mengisikan password
2 kali.

root@server:~# cd /home
root@server:/home# mkdir share
root@server:/home# userdel ftp
root@server:/home# useradd –d /home/share/ ftp
root@server:/home# passwd ftp
Buat beberapa folder dalam direktori ftp server, sebagai bahan pengujian.

root@server:/home# cd share/
root@server:/home/share# mkdir ini adalah direktori dari ftp server
root@server:/home/share# cd ~
Buka berkas konfigurasi proftpd:

root@server:~# nano /etc/proftpd/proftpd.conf


Tambahkan skrip berikut pada bagian akhir file:

User ftp
Restart layanan FTP dengan perintah:

root@server:~# /etc/init.d/proftpd restart

Pengujian

root@server:~# ftp ftp.debian.edu


220 ProFTPD 1.3.1 Server (Debian) [::ffff:127.0.0.1]
Name (ftp.debian.edu:root): ftp #masukan user ftp#
331 Anonymous login ok, send your complete email address as your password
Password: *** #masukan password untuk user ftp#
230 Anonymous access granted, restrictions apply
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls #ketikan ls untuk melihat daftar direktori#
200 PORT command successful
150 Opening ASCII mode data connection for file list
drwxr-xr-x 2 root root 4096 Mar 15 23:25 adalah

35
drwxr-xr-x 2 root root 4096 Mar 15 23:25 dari
drwxr-xr-x 2 root root 4096 Mar 15 23:25 direktori
drwxr-xr-x 2 root root 4096 Mar 15 23:25 server
226 Transfer complete
ftp> bye #katikan bye untuk keluar dari ftp client#
221 Goodbye.

SAMBA

Samba adalah program yang bersifat open source yang menyediakan layanan berbagi berkas (file
service) dan berbagi alat pencetak (print service), resolusi nama NetBIOS, dan pengumuman layanan
(NetBIOS service announcement/browsing). Sebagai sebuah aplikasi file server, Samba mengizinkan
berkas, alat pencetak, dan beberapa sumber daya lainnya agar dapat digunakan oleh banyak
pengguna dalam keluarga sistem operasi UNIX, dan mengizinkan interoperabilitas dengan sistem
operasi Windows. Samba dibuat berdasarkan protokol Server Message Block (SMB), oleh Andrew
Tridgell.

Instalasi

root@server:# apt-get install samba samba-common


1. Pada “Enter a workgroup name”, isikan: WORKGROUP

Konfigurasi

1. Buat direktori yang akan disharingkan:


root@server:~# mkdir -p /home/samba-share/allusers
2. Ubah kepemilikan user root:
root@server:~# chown -R root:users /home/samba-share/allusers/
3. Ubah hak akses (priveledge):
root@server:~# chmod -R ug+rwx,o+rx-w /home/samba-share/allusers/
4. Buka berkas konfigurasi samba server:
root@server:~# nano /etc/proftpd/proftpd.conf
5. Tekan CTRL+W, cari tulisan “security = user”. Jika tidak ada, lanjutkan ke langkah berikut.
Kemudian uncomment baris tersebut:

1 # “security = user” is always a good idea. This will require a Unix account

2 # in this server for every user accessing the server. See

36
3 # /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html

4 # in the samba-doc package for details.

6 security = user

6. ada bagian bawah berkas konfigurasi samba, tambahkan:

1 [homes]

2 comment = Home Directories

3 browseable = no

4 valid users = @users

5 writable = yes
6 create mask = 0700
7 directory mask = 0700
8

9 [allusers]

10 comment = All Users

11 path = /home/samba-share/allusers

12 valid users = @users

13 force group = users

14 create mask = 0660

15 directory mask = 0771

16 writable = yes

7.
8. Restart samba server dengan perintah
root@server:~# /etc/init.d/samba restart
9. Buatlah sebuah user biasa bernama tom:
root@server:~# useradd tom -m -G users
10. Buatlah password linux untuk user tom:
root@server:~# passwd tom
Enter new UNIX password: [contoh: 1]
Retype new UNIX password: [contoh: 1]
11. Buatlah password samba untuk user tom:
root@server:~# smbpasswd -a tom
New SMB password: [contoh: 1]
Retype new SMB password: [contoh: 1]

37
Added user tom.

CLIENT

CLIENT disini hanya bertugas menguji apakah router dan server bisa menjalankan tugasnya masing-
masing. Ketika pertama kali di hubungan dengan router pada eth1, seharusnya CLIENT mendapatkan
konfigurasi jaringan (IP, Netmask, gateway dan DNS-NameServers) secara otomatis dari layanan
DHCP pada router. Kemudian ketika mengakses host debian.edu seharusnya router langsung
mengarahkan ke IP DNS pada server yaitu 192.168.200.2.

Instalasi Debian

Semua CLIENT walaupun berbeda sistem operasi (windows atau linux) setidaknya mempunyai 1
interface (eth0) yang terhubung ke router dengan mode inet Automatic (windows) atau dhcp (linux).

Interface

1. Buka berkas konfigurasi interfaces:


root@client:~# nano /etc/network/interfaces
Tambah dan edit:

1 auto lo

2 iface lo inet loopbackauto eth0

3 iface eth0 inet dhcp

Simpan dengan menekan tombol CTRL + X, Y dan ENTER.

2. Restart jaringan:
root@client:~# /etc/init.d/networking stop
root@client:~# /etc/init.d/networking start
3. Uji interfaces:
root@client:~# ifconfig
th0 Link encap:Ethernet HWaddr 08:00:27:6f:8b:a4
inet addr:192.168.100.100 Bcast:192.168.100.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe6f:8ba4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

38
RX packets:121 errors:0 dropped:0 overruns:0 frame:0
TX packets:116 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:16927 (16.5 KiB) TX bytes:15567 (15.2 KiB)lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)
IP Address 192.168.100.100 diperoleh dari DHCP server pada ROUTER yang menetapkan
konfigurasi range IP yang diberikan kepada client mulai dari 192.168.100.100 s/d
192.168.100.200.

4. Uji koneksi dengan gateway 192.168.100.1:


root@client:~# ping 192.168.100.1
PING 192.168.100.1 (192.168.100.1) 56(84) bytes of data.
64 bytes from 192.168.100.1: icmp_req=1 ttl=64 time=0.349 ms
64 bytes from 192.168.100.1: icmp_req=2 ttl=64 time=0.471 ms
64 bytes from 192.168.100.1: icmp_req=3 ttl=64 time=0.509 ms
64 bytes from 192.168.100.1: icmp_req=4 ttl=64 time=0.577 ms
64 bytes from 192.168.100.1: icmp_req=5 ttl=64 time=0.468 ms
^C
--- 192.168.100.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3998ms
rtt min/avg/max/mdev = 0.349/0.474/0.577/0.079 ms

Uji SSH

1. Pastikan OpenSSH sudah di install pada ROUTER dan SERVER.


2. Remote dari VM-CLIENT ke ROUTER:
root@client:~# ssh -l root -p 22 192.168.100.1
root@192.168.100.1 s password:
3. Perhatikan Anda sudah berada di ROUTER. Saat ini Anda dapat mengkonfigurasi ROUTER
melalui remote dari VM-CLIENT:
root@router:~#

39
4. Bila ingin kembali ke VM-CLIENT:
root@router:~# exit
5. Atau Anda akan remote dari ROUTER ke SERVER:
root@router:~# ssh -l root -p 22 192.168.200.2
root@192.168.200.2 s password:
6. Perhatikan Anda sudah berada di SERVER. Saat ini Anda dapat mengkonfigurasi SERVER
melalui remote dari VM-CLIENT kemudian ROUTER:
root@server:~#
7. Bila ingin kembali ke ROUTER:
root@server:~# exit
8. Bila ingin kembali ke VM-CLIENT:
root@router:~# exit

Uji VPN

1. Install openvpn:
root@client:~# apt-get install openvpn
2. Pastikan OpenVPN sudah di install dan di konmfigurasi pada ROUTER.
3. Remote dari VM-CLIENT ke ROUTER:
root@client:~# ssh -l root -p 22 192.168.100.1
root@192.168.100.1 s password:
4. Perhatikan Anda sudah berada di ROUTER. Saat ini Anda dapat mengkonfigurasi ROUTER
melalui remote dari VM-CLIENT:
root@router:~#
5. Kopi Remote file ca.crt dari ROUTER ke VM-CLIENT:
root@router:~# scp /etc/openvpn/ca.crt root@192.168.100.100:/etc/openvpn/
root@192.168.100.100 s password:
ca.crt 100% 1192 1.2KB/s 00:00
6. Kopi Remote file tkj.crt dari ROUTER ke VM-CLIENT:
root@router:~# scp /etc/openvpn/tkj.crt root@192.168.100.100:/etc/openvpn/
root@192.168.100.100 s password:
tkj.crt 100% 1192 1.2KB/s 00:00
7. Kopi Remote file tkj.key dari ROUTER ke VM-CLIENT:
root@router:~# scp /etc/openvpn/tkj-key root@192.168.100.100:/etc/openvpn/
root@192.168.100.100 s password:
tkj.key 100% 1192 1.2KB/s 00:00
8. Kembali ke VM-CLIENT:

40
root@router:~# exit
9. Buat konfigurasi openvpn.conf:
root@client:~# nano /etc/openvpn/openvpn.conf
Tulis konfigurasi:

dev tun
client
proto tcp
remote 192.168.100.1 1194
resolv-retry infinite
nobind
user nobody
group nogroup
persist-key
persist-tun
ca ca.crt
cert tkj.crt
key tkj.key
comp-lzo
verb 3
10. Restart server OPENVPN:
root@client:~# /etc/init/openvpn restart
11. Uji konfigurasi interface pastikan Anda mendapat interface tunnel baru seperti berikut:
root@client:~# ifconfig
...
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.6 P-t-P:10.8.0.5 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:12 errors:0 dropped:0 overruns:0 frame:0
TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:1335 (1.3 KiB) TX bytes:1008 (1008.0 B)
12. PING alamat 10.8.0.1:
root@client:~# ping 10.8.0.1
PING 10.8.0.1 (10.8.0.1) 56(84) bytes of data.
64 bytes from 10.8.0.1: icmp_req=1 ttl=64 time=0.037 ms
64 bytes from 10.8.0.1: icmp_req=2 ttl=64 time=0.040 ms
64 bytes from 10.8.0.1: icmp_req=3 ttl=64 time=0.041 ms

41
64 bytes from 10.8.0.1: icmp_req=4 ttl=64 time=0.035 ms
64 bytes from 10.8.0.1: icmp_req=5 ttl=64 time=0.055 ms
^C
--- 10.8.0.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3999ms
rtt min/avg/max/mdev = 0.035/0.041/0.055/0.010 ms

Uji HTTP

Untuk melakukan pengujian, dibutuhkan web browser berbasis command line bernama lynx.

root@client:~# apt-get install lynx


Buka halaman debian.edu dengan perintah:

root@client:~# lynx debian.edu


Bila tampil pesan “It’s Works!” berarti Anda sudah berhasil menginstall HTTP Server.

Uji FTP

1. Akses ftp server pada VM-SERVER dengan menggunakan aplikasi ftp client:
root@client:~# ftp ftp.debian.edu
220 ProFTPD 1.3.1 Server (Debian) [::ffff:127.0.0.1]
Name (ftp.debian.edu:root): ftp #masukan user ftp#
331 Anonymous login ok, send your complete email address as your password
Password: *** #masukan password untuk user ftp#
230 Anonymous access granted, restrictions apply
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls #ketikan ls untuk melihat daftar direktori#
200 PORT command successful
150 Opening ASCII mode data connection for file list
drwxr-xr-x 2 root root 4096 Mar 15 23:25 adalah
drwxr-xr-x 2 root root 4096 Mar 15 23:25 dari
drwxr-xr-x 2 root root 4096 Mar 15 23:25 direktori
drwxr-xr-x 2 root root 4096 Mar 15 23:25 server
226 Transfer complete
ftp> bye #katikan bye untuk keluar dari ftp client#

42
221 Goodbye.
2. Bila muncul tampilan seperti diatas berarti Anda sudah berhasil melakukan akses ftp dari
VM-CLIENT ke VM-SERVER.

Uji Samba

Instalasi Samba Client

root@client:~# apt-get install sambaclient

Penggunaan Samba Client

Jalankan Samba Client yang ada pada VM-CLIENT ke Samba Server yang ada pada VM-SERVER
dengan perintah berikut:

root@client:~# sambaclient -L 192.168.200.2


Jika dimintai password, masukan password user root pada VM-CLIENT:

Enter root's password:


Maka akan tampil, daftar direktori pada Samba Server di VM-SERVER:

Domain=[WORKGROUP] OS=[Unix] Server=[Samba 4.1.11-Debian]

Sharename Type Comment


--------- ---- -------
print$ Disk Printer Drivers
allusers Disk All Users
IPC$ IPC IPC Service (debian.edu server (Samba, Debian))

Domain=[WORKGROUP] OS=[Unix] Server=[Samba 4.1.11-Debian]

Server Comment
--------- -------
debian.edu debian.edu server (Samba, Debian)

Workgroup Master
--------- -------

43
WORKGROUP DEBIAN
Untuk akses ke direktori allusers masukan perintah berikut:

root@client:~# sambaclient //192.168.200.2/ -U tom

44

Anda mungkin juga menyukai