Konfigurasi Linux Sebagai Gateway
Published by Hafid under Networking on 05.10Gateway merupakan sebuah komputer yang bertugas melayani konversi protokol antara beberapa tipe yang berbeda dari suatu network atau aplikasi. Misalnya, sebuah gateway dapat melakukan konversi terhadap sebuah paket TCP/IP menjadi paket NetWare IPX atau dari Apple Talk menjadi DECnet, dan lain sebagainya.
Gateway ini nantinya akan menghubungkan jaringan local dalam hal ini LAN dengan jaringan publik yaitu internet.
Biasanya
paket tersebut sudah terinstall dalam distro Linux ini, namun untuk mengetahui apakah paket tersebut sudah terinstall didalam distro Linux ini, jalankan Linuxnya, kemudian login sebagai root lewat terminal:
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #rpm -qa | grep pppoe
rp-pppoe-3.5-27
Komputer yang akan dijadikan gateway dalam percobaan ini membutuhkan dua ethernet card. Yang harus dilakukan adalah memeriksa apakah kedua ethernet card tersebut sudah terdetek dengan baik :
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:EE:71:11
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feee:7111/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:61 errors:0 dropped:0 overruns:0 frame:0
TX packets:85 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6938 (6.7 KiB) TX bytes:10092 (9.8 KiB)
Interrupt:10 Base address:0x1080
eth1 Link encap:Ethernet HWaddr 00:0C:29:EE:71:1B
inet addr:192.168.100.1 Bcast:192.168.100.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feee:711b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:21 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:1796 (1.7 KiB)
Interrupt:9 Base address:0x1400
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:35 errors:0 dropped:0 overruns:0 frame:0
TX packets:35 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2190 (2.1 KiB) TX bytes:2190 (2.1 KiB)
Jika komentar di atas telah muncul, silahkan menuju ke tahap selanjutnya. Langkah berikutnya adalah mengkonfigurasi ethernet card tersebut supaya konfigurasinya dapat dijalankan secara otomatis ketika boot. File konfigurasi ethernet dalam Linux memiliki penamaan ethx, yang mana x ini menandakan pengurutan. Jika terdapat dua ethernet card di dalam komputer, maka file konfigurasinya adalah eth0 dan eth1. Letak file konfigurasi secara default terdapat di dalam direktori :
/etc/sysconfig/network-scripts/ifcfg-ethx
Karena percobaan ini menggunakan dua ehternet card, maka file yang akan dikonfigurasi adalah :
/etc/sysconfig/network-scripts/ifcfg-eth0 dan /etc/sysconfig/network-scripts/ifcfg-eth1
Sebagai contoh, konfigurasi eth0 yang digunakan adalah sebagai berikut :
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.1.255
HWADDR=00:0C:29:EE:71:11
IPADDR=192.168.1.1
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
TYPE=Ethernet
Penjelasannya adalah sebagai berikut ini :
- DEVICE : merupakan ethernet apa yang akan dikonfigurasi.
- BOOTPROTO : status dari penggunaan ip address, apakah bersifat dynamic ( DHCP ) atau static.
- BROADCAST : alamat broadcast jaringan yang digunakan.
- HWADDR : alamat fisik dari ethernet card tersebut, biasa disebut Mac Address.
- IPADDR : alamat ip yang nanti akan digunakan oleh gateway linux. Alamat ini yang nantinya akan berhubungan langsung dengan protol tcp/ip.
- NETMASK : subnet mask yang digunakan oleh device eth0. subnet mask ini digunakan untuk membagi jaringan menjadi lebih kecil.
- ONBOOT : apakah nanti akan diproses ketika BOOT ??
Dan konfigurasi eth1 yang digunakan adalah :
DEVICE=eth1
BOOTPROTO=static
BROADCAST=192.168.100.255
HWADDR=00:0C:29:EE:71:1B
IPADDR=192.168.100.1
NETMASK=255.255.255.0
NETWORK=192.168.100.0
ONBOOT=yes
TYPE=Ethernet
Setelah konfigurasi selesai, restart service network.
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #/etc/init.d/network restart
Sebelum memasuki langkah berikutnya, aktifkan mode bridge pada modem ADSL. Jika mode bridgenya telah diaktifkan, lakukan konfigurasi ADSL lewat terminal/konsol :
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #adsl-setup
1. Pertama kali akan ditanyakan username yang telah diberikan oleh ISP.LOGIN NAMEEnter your Login Name: 121303xxxxxx@telkom.netThis e-mail address is being protected from spambots. You need JavaScript enabled to view it
2. Device yang berhubungan langsung dengan modem ADSL, dalam hal ini adalah port eth1.INTERFACEEnter the Ethernet interface connected to the ADSL modem
For Solaris, this is likely to be something like /dev/hme0.
For Linux, it will be ethX, where 'X' is a number.
(default eth0):eth1
3. Di bagian ini merupakan pilihan nomor, karena ketika demand diaktifkan, IP yang dynamic tidak bisa digunakan.
Enter the demand value (default no): no
4. Bagian ini menjelaskan DNS yang digunakan, bisa diisi belakangan. Password yang diberikan oleh ISP, berbarengan dengan diberikannya username tadi.
PASSWORD
Please enter your Password:xxxxxxxx
5. Di bagian ini merupakan pemberian akses kepada user untuk menjalankan/mematikan ADSL.
USERCTRL
Please enter 'yes' (three letters, lower-case.) if you want to allow
normal user to start or stop DSL connection (default yes):yes
6. Langkah berikutnya adalah berkenaan dengan firewall. Di sini, pilihan yang diambil adalah nomor 2.
The firewall choices are:
0 - NONE: This script will not set any firewall rules. You are responsible
for ensuring the security of your machine. You are STRONGLY
recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway
for a LAN
Choose a type of firewall (0-2):2
7. Di bagian ini dijelaskan, apakah koneksi akan dijalankan secara otomatis ketika boot.
Start this connection at boot time
Do you want to start this connection at boot time?
Please enter no or yes (default no):yes
Selanjutnya pilih y untuk menyimpan konfigurasi di atas.
Ada beberapa konfigurasi yang perlu dilakukan. Di bawah ini adalah sedikit konfigurasi yang ditambahan dan diletakkan pada file :
/etc/rc.local
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A POSTROUTING -j MASQUERADE -t nat -s 192.168.1.0/24 -o ppp0
Konfigurasi tersebut digunakan untuk meneruskan paket IP dan melakukan masquerade terhadap IP. Masquerade sendiri merupakan proses membagi bandwith, karena pada dasarnya ISP hanya memberikan satu koneksi dengan satu IP. Agar IP dapat digunakan secara beramai-ramai maka perlu dilakukan masquerade. Selanjutnya tinggal menambahkan DNS server yang diberikan oleh Telkom pada file konfigurasi /etc/resolv.conf, yang dalam artikel ini DNS server yang digunakan adalah 202.134.0.155.
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #echo nameserver 202.134.0.155 > /etc/resolv.conf
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #cat /etc/resolv.conf
nameserver 202.134.0.155
Langkah terakhir, jalankan ADSL-start.
Diambil dari tekinfo.byethost5.com dan untukku.com.
DEVICE=eth1
BOOTPROTO=static
BROADCAST=192.168.100.255
HWADDR=00:0C:29:EE:71:1B
IPADDR=192.168.100.1
NETMASK=255.255.255.0
NETWORK=192.168.100.0
ONBOOT=yes
TYPE=Ethernet
Setelah konfigurasi selesai, restart service network.
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #/etc/init.d/network restart
Sebelum memasuki langkah berikutnya, aktifkan mode bridge pada modem ADSL. Jika mode bridgenya telah diaktifkan, lakukan konfigurasi ADSL lewat terminal/konsol :
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #adsl-setup
1. Pertama kali akan ditanyakan username yang telah diberikan oleh ISP.LOGIN NAMEEnter your Login Name: 121303xxxxxx@telkom.netThis e-mail address is being protected from spambots. You need JavaScript enabled to view it
2. Device yang berhubungan langsung dengan modem ADSL, dalam hal ini adalah port eth1.INTERFACEEnter the Ethernet interface connected to the ADSL modem
For Solaris, this is likely to be something like /dev/hme0.
For Linux, it will be ethX, where 'X' is a number.
(default eth0):eth1
3. Di bagian ini merupakan pilihan nomor, karena ketika demand diaktifkan, IP yang dynamic tidak bisa digunakan.
Enter the demand value (default no): no
4. Bagian ini menjelaskan DNS yang digunakan, bisa diisi belakangan. Password yang diberikan oleh ISP, berbarengan dengan diberikannya username tadi.
PASSWORD
Please enter your Password:xxxxxxxx
5. Di bagian ini merupakan pemberian akses kepada user untuk menjalankan/mematikan ADSL.
USERCTRL
Please enter 'yes' (three letters, lower-case.) if you want to allow
normal user to start or stop DSL connection (default yes):yes
6. Langkah berikutnya adalah berkenaan dengan firewall. Di sini, pilihan yang diambil adalah nomor 2.
The firewall choices are:
0 - NONE: This script will not set any firewall rules. You are responsible
for ensuring the security of your machine. You are STRONGLY
recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway
for a LAN
Choose a type of firewall (0-2):2
7. Di bagian ini dijelaskan, apakah koneksi akan dijalankan secara otomatis ketika boot.
Start this connection at boot time
Do you want to start this connection at boot time?
Please enter no or yes (default no):yes
Selanjutnya pilih y untuk menyimpan konfigurasi di atas.
Ada beberapa konfigurasi yang perlu dilakukan. Di bawah ini adalah sedikit konfigurasi yang ditambahan dan diletakkan pada file :
/etc/rc.local
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A POSTROUTING -j MASQUERADE -t nat -s 192.168.1.0/24 -o ppp0
Konfigurasi tersebut digunakan untuk meneruskan paket IP dan melakukan masquerade terhadap IP. Masquerade sendiri merupakan proses membagi bandwith, karena pada dasarnya ISP hanya memberikan satu koneksi dengan satu IP. Agar IP dapat digunakan secara beramai-ramai maka perlu dilakukan masquerade. Selanjutnya tinggal menambahkan DNS server yang diberikan oleh Telkom pada file konfigurasi /etc/resolv.conf, yang dalam artikel ini DNS server yang digunakan adalah 202.134.0.155.
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #echo nameserver 202.134.0.155 > /etc/resolv.conf
root@alk.rootThis e-mail address is being protected from spambots. You need JavaScript enabled to view it #cat /etc/resolv.conf
nameserver 202.134.0.155
Langkah terakhir, jalankan ADSL-start.
Diambil dari tekinfo.byethost5.com dan untukku.com.