Pages

Rabu, 05 Maret 2014

Membangun Gateway Internet (Membangun PC Router dan Proxy Server)

Server Gateway

Debian Linux Lenny 5.0.3

eth1

IP = 192.168.50.1/24

ethernet

IP – DHCP = 192.168.50.xxx/24 (DHCP)

Gateway = 192.168.50.1 (DHCP)

DNS = 192.168.50.1 (DHCP)

PC Client

Windows

Konfigurasi Server

1. IP Internet / eth0 = 200.200.200.noabsen/25

2. IP LAN / eth1 = 192.168.50.1/24

3. Gateway = Sesuai dengan IP yang diberikan oleh ISP = 200.200.200.100

4. DNS Server = Gunakan DNS Server milik google : 8.8.8.8 dan 8.8.4.4
Konfigurasi Client

1. IP LAN (DHCP) = 192.168.50.xxx/24

2. Gateway (DHCP) = 192.168.50.1

3. DNS (DHCP) = 192.168.50.1

Keterangan : xxx merupakan address antara 2 sampai 254

Konfigurasi Proxy Server

1. Sistem Operasi = OS (Linux)

2. Port proxy = 3128

3. Cache Manager = namapeserta@sekolah.sch.id

4. Visible host = www.sekolah.sch.id

5. Transparant proxy

6. Blocking Site = www.youtube.com, www.facebook.com

Konfigurasi Router

1. NAT = yes

Instalasi & Konfigurasi Server

Debian Lenny (ver 5.0.3 i386 DVD)

I. INSTALL

1. Gunakan hanya DVD 1 saja à sudah sangat mencukupi kebutuhan server

2. Network configuration method : do not configure the Networks at this time

3. Hostname : server.sekolah.sch.id

4. Partition : Guided – use entire disk

5. Partition scheme : all files in one partition

6. User : root, password : 123456

7. Tidak perlu scan DVD lain

8. Choose software to install :

[*] Web Server

[*] Standart System

à total hanya 102 paket

9. GRUB on MBR

II. INSTALL PAKET TAMBAHAN

1. Install Paket tambahan untuk Server :

# apt-get install mc dnsmasq squid links

mc : midnight commander, clone nc (norton commander) à explorer , editor

dnsmasq : DNS dan DHCP server.

squid : proxy server

links : browser basis teks

III. SET IP

1. Perhitungan Subnet

IP 200.200.200.100/25

è /25 (Kelas C)

Angka Ajaib = 2(32-25)

= 2(7)

= 128

Berarti jika didesimalkan = 256-128 = 128

Netmask = 255.255.255.128

NetworkID : 0 , 128 à yang dibold adalah Network ID soal

Broadcast : 127 , 255 à yang dibold adalah Broadcast ID soal



1. Setting IP Permanen :

# mcedit /etc/network/interfaces

Baris yang sudah ada / lo (loopback 0) :

auto lo

iface lo inet loopback

Tambahkan baris berikut :

auto eth0

iface eth0 inet static

address 200.200.200.noabsen

netmask 255.255.255.128

gateway 200.200.200.100

auto eth1

iface eth1 inet static

address 192.168.50.1

netmask 255.255.255.0



2. Restart service networking :

# /etc/init.d/networking restart

3. Cek : # ifconfig atau # ifconfig eth0 atau # ifconfig eth1

4. Cek koneksi ke ISP dan internet dengan melakukan ping ke IP public, sebagai contoh ke DNS Google 8.8.8.8

# ping 8.8.8.8

IV. SET NAMA HOSTNAME

Jika diperlukan, perubahan nama / hostname dapat dilakukan dengan cara :

1. mengedit file /etc/hostname, isi dengan server.sekolah.sch.id

# mcedit /etc/hostname

2. Jika ada perubahan Jalankan script hostname.sh, lalu logout dan login lagi

# /etc/init.d/hostname.sh

# logout

V. DNS Server dnsmasq

1. Install paket jika belum :

# apt-get install dnsmasq

2. Edit /etc/hosts :

# mcedit /etc/hosts

Tambahkan / masukkan ip dan hostname sesuai keinginan :

127.0.0.1 localhost

192.168.50.1 server.sekolah.sch.id

3. Buat sekaligus edit /etc/resolv.conf :

# mcedit /etc/resolv.conf

Isikan untuk DNS Resolve (Hirarki DNS di atas / parent dari Server, ditambahkan di sini) :

search localdomain

search sekolah.sch.id

nameserver 127.0.0.1

nameserver 8.8.8.8

nameserver 8.8.4.4

4. Restart service dnsmasq jika diinginkan :

# /etc/init.d/dnsmasq restart

5. Cek DNS server:

# dig www.google.com

; <<>> DiG 9.5.1-P3 <<>> www.google.com

;; global options: printcmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4579

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:

;www.google.com. IN A

;; ANSWER SECTION:

www.google.com. 0 IN A 74.125.235.18

;; Query time: 4 msec

;; SERVER: 127.0.0.1#53(127.0.0.1)

;; WHEN: Fri Sep 17 15:50:12 2010

VI. DHCP Server à dnsmasq lagi

1. Edit /etc/dnsmasq.conf :

# mcedit /etc/dnsmasq.conf

Tambahkan di baris paling bawah :

domain=sekolah.sch.id

dhcp-range=192.168.50.2,192.168.50.254,12h à range dan lease time 12h

dhcp-option=1,255.255.255.0 à 1 artinya netmask

dhcp-option=3,192.168.50.1 à 3 artinya gateway / router default

dhcp-option=6,192.168.50.1 à 6 artinya DNS server

2. Restart service

# /etc/init.d/dnsmasq restart

VII. Ijinkan Forward Paket dengan iptables

1. Secara default, file /proc/sys/net/ipv4/ip_forward berisi 0. Ganti jadi 1

# echo 1 > /proc/sys/net/ipv4/ip_forward

2. Restart Service procps dan networking

# /etc/init.d/procps restart

Setting kernel variables (/etc/sysctl.conf)...done.

# /etc/init.d/networking restart

Reconfiguring network interfaces...done.


VIII. Masukkan rule iptables untuk Masquerade untuk paket yang keluar melalui eth0

1. Iptables untuk Masquerade :

a. Forwarding

# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

b. Simpan kefile mana saja, misal : /etc/iptables.rules

#iptables-save > /etc/iptables.rules

c. Edit / Tambahkan di baris paling bawah /etc/network/interfaces :

pre-up iptables-restore < /etc/iptables.rules

post-down iptables-save > /etc/iptables.rules

2. Sampai di sini seharusnya PC client sudah dapat untuk mengakses internet.

IX. PROXY SERVER TRANSPARENT

1. Install squid jika belum :

# apt-get install squid

2. Buat squid jadi Proxy transparent (artinya di client nggak perlu memasukkan setting Proxy di Browser / otomatis)

# mcedit /etc/squid/squid.conf

· di mcedit tekan F7 untuk search. Cari “http_port 3128” (sekitar baris 1111)

http_port 3128

ditambah/diganti dengan :

http_port 3128 transparent



· Buat ACL (Access Control List) networks 200.200.200.0/24 dengan nama lokal

di mcedit tekan F7 untuk search. Cari “acl localhost”, setelah ketemu barisnya yang berisi acl localhost src 127.0.0.1/32 (sekitar baris 601), tambahkan baris berikut ini di bawahnya / di atasnya :

acl localhost src 127.0.0.1/32

acl lokal src 192.168.50.0/24

· di mcedit tekan F7 untuk search. Cari “http_access deny all”, setelah ketemu barisnya yang berisi http_access deny all (sekitar baris 679), tambahkan baris berikut ini di ATAS- nya. Penempatan urutan baris di sini sangat penting. Perhatikan bahwa baris yang berisi rule http_access deny all harus rule yang paling bawah :

http_access allow lokal

# And finally deny all other access to this proxy

http_access deny all

· di mcedit tekan F7 untuk search. Cari “cache_mgr”, setelah ketemu barisnya yang berisi #cache_mgr webmaster (sekitar baris 3321), Unquote/buka baris tersebut :

cache_mgr namapeserta@sekolah.sch.id

3. Restart service squid

# /etc/init.d/squid restart

4. Redirect paksa semua request Web (port 80) agar selalu melalui port squid (port 3128) :

# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128

X. PROXY SERVER UNTUK ACL (Access Control List) untuk Blokir Situs

1. ACL blocksitus

a. Buat file yang berisi daftar situs yang di block.

# mcedit /etc/squid/blocksitus.txt

Isikan sesuai soal :

www.youtube.com

www.facebook.com



2. Edit file konfigurasi squid

# mcedit /etc/squid/squid.conf

Isikan baris berikut, namun ingat urutan ACL-nya harus betul. Jika ada 2 perintah atau lebih yang mengetus mengenai hal yang sama atau beririsan, maka perintah yang berada pada baris yang lebih atas akan lebih kuat. Tempatkan DI ATAS baris yang mengatur acl lokal :

· di mcedit tekan F7 untuk mencari “acl lokal”, lalu tambahkan baris berikut di-atasnya.

acl blocksitus url_regex “/etc/squid/blocksitus.txt”

acl lokal src 192.168.50.0/24

· di mcedit tekan F7 untuk mencari “allow lokal” , lalu tambahkan baris berikut di-atasnya.

http_access deny blocksitus

http_access allow lokal

# And finally deny all other access to this proxy

http_access deny all

3. Pengujian dilakukan dari browser client. Lakukan akses ke url yang diblok (contohnya www.facebook.com) akan menghasilkan halaman Custom Error Message (gagal didapatkannya url yang diminta) karena aturan yang ada di ACL (Access Control List).

Gateway Internet


Dalam Hal ini , Server Harus Memiliki2 NIC (Network Interface Card ).
·         NIC yang Pertama Untuk Menghubungkan server dengan Koneksi Internet.
·         NIC yang Ke Dua Untuk Menghubungkan Server dengan Client.
Langkah Pertama ,Kita Check NIC pada Terminal UBUNTU
# miii-tool
Apabila Muncul 2 NIC , Yaitu eth0 & eth1 Berarti Server kita telah Memiliki 2 NIC
KemudiaN Setting NETWORK INTERFACE nya
#nano /etc/network/interface
Kemudian isikan Konfigurasi Dibawah ini Sesuai IP adressnya:
Auto eth0
Iface eth0 inet static
Address  192.168.1.80
Netmask  255.255.255.0
Gateway   192.168.1.1
Network  192.168.1.0
Broadcast 192.168.1.255
Auto eth1
Iface eth0 inet static
Address  192.168.50.1
Netmask  255.255.255.0
Network  192.168.50.0
Broadcast 192.168.50.255
 Ket  :
eth0 : Merupakan NIC yg terhubung ke koneksi internet.
eth1 : Merupakan NIC yg terhubung ke client.
Kemudian Konfigurasi file Resolv.conf (DNS SERVER) pada terminal UBUNTU
#nano  /etc/resolv.conf
Lalu masukan Konfigurasi Berikut Sesuai dengan domain name server internet kita (Penulis Menggunakan name server Google)
Nameserver 8.8.8.8
Nameserver 8.8.4.4
Masukan ke PC client (Windows) masukan konfigurasi network sebagai berikut :
IP Address 192.168.50.2
Subnet Mask 255.255.255.0
Default Gateway 192.168.50.1 (IP Server eth1 )
Preffered DNS Server 8.8.8.8
Alternate DNS Server 8.8.4.4
Kembali lagi ke PC Server , Konfigurasi file sysctl.conf
#nano  /etc/sysctl.conf
Cari kalimat di bawah ini dan hilangkan tanda #
# net.ipv4.ip_forward=1 sehingga menjadi
net.ipv4.ip_forward=1
Lalu simpan
Kemudian aktifkan ip forwardnya
Sysctl  –w net.ipv4.ip_forward=1
Lalu check ip forwardnya
#cat  /proc/sys/net/ipv4/ip_forward
Jika sudah Aktif akan Muncul angka 1
Routing Server
#iptables  -t  nat  -A  POSTROUTING  -o eth0  -j  MASQUERADE
#iptables  -t  nat  -A  POSTROUTING  -s  192.168.50.0/24 -j  MASQUERADE
simpan
Keterangan ;
Eth0 merupakan NIC yang connect ke Internet , Check apakah routing berjalan atau belum.
#iptables  -t  nat  -n  -L
PERHATIAN !!!
Besar kecil berpengaruh
Kemudian file rc.local
#nano  /etc/rc.localr
Tambahkan konfigurasi routing tadi diatas exit = 0 : 
iptables  -t  nat  -A  POSTROUTING  -o eth0  -j  MASQUERADE
iptables  -t  nat  -A  POSTROUTING  -s  192.168.50.0/24 -j  MASQUERADE
Kemudian Simpan
Lalu simpan konfigurasi IP Tables / perintah Routing
#iptables-save  >  /etc/iptables.conf
Update service jaringan yang baru di konfigurasi .dan Selesai...
#  /etc/init.d/networking restart
 

0 komentar :

Posting Komentar