Archive for the ‘ Linux ’ Category

Linux Dictionary

In computing, booting (booting up) is a bootstrapping process that starts operating systems when the user turns on a computer system. A boot sequence is the set of operations the computer performs when it is switched on that loads an operating system.

GNU GRUB (“GRUB” for short) is a boot loader package from the GNU Project. GRUB is the reference implementation of the Multiboot Specification, which allows a user to have several different operating systems on their computer at once, and to choose which one to run when the computer starts. GRUB can be used to select from different kernel images available on a particular operating system’s partitions, as well as to pass boot-time parameters to such kernels.

GNU GRUB developed from a previous package called the GRand Unified Bootloader (a play on grand unified theory). GRUB can run on any operating system with a Multiboot kernel. It is predominantly used on Unix-like systems; the GNU operating system uses GNU GRUB as its boot loader, as do most general-purpose Linux distributions. Solaris has been able to boot using GRUB since version 10 (1/06 release).

Susunan Kabel RJ-45

1. putih orange
2. orange
3.putih hijau
4.biru
5.putih biru
6.hijau
7.putih coklat
8.coklat

Untuk Arus Data yang dipake 1 2 3 6

Untuk Arus Listrik yang di pake 4 5 7 8

45 Positif

78 Negatif

Mounting Flash Disk

######## Bikin dulu directori buat mounting usb misal nya flashdisk kita di usb0

Command :

mkdir /dev/sda1 /mnt/usb0

biar otomatis mounting  ketika kita memasukan flashdisk maka kita melakukan editing di /etc/fstab dan gunakan editor vi untuk melakukan pengeditan.

vi /etc/fstab

/dev/sda1          /mnt/usb0           default                0 0

LINUX Server: Membuat DHCP Server

LINUX Server: Membuat DHCP Server

   
 

Tujuan utama dari penggunaan Dynamic Host Configuration Protocol adalah untuk memberikan pengaturan IP address secara tersentralisasi melalui suatu server daripada harus melakukan konfigurasi satu persatu pada setiap mesin klien. Sebuah mesin klien yang dikonfigurasi menggunakan DHCP tidak dapat mengatur IP address secara static dengan sendirinya, semuanya diatur dan ditentukan oleh server DHCP yang telah ditentukan.

Salah satu cara dalam penggunaan DHCP adalah dengan mengenali alamat hardware terlebih dahulu dari setiap network card (MAC Address, biasanya alamat ini fixed) kemudian memberikan klien tersebut setting IP address yang identik setiap kali ia terhubung ke server. DHCP juga dapat di konfigurasi sedemikian rupa sehingga server DHCP dapat memberikan alamat-alamat IP secara dinamis pada host yang terhubung dengannya, dengan menggunakan range IP address yang telah ditentukan. Pada kasus ini server DHCP akan mencoba memberikan alamat yang sama pada mesin klien setiap kali host itu meminta alamat ke server (walaupun untuk waktu yang cukup lama). Hal ini tentu saja tidak berfungsi dengan baik, bila pada jaringan tersebut terdapat lebih banyak host komputer dibandingkan alamat yang di siapkan oleh server.

Dengan kelebihan ini, DHCP membuat kerja para administrator jaringan menjadi lebih mudah. Setiap kali ada perubahan yang terkait dengan pengalamatan dan konfigurasi pada jaringan secara global, dapat di implementasikan secara tersentral dengan hanya melakukan perubahan file konfigurasi pada server. Hal ini tentu saja lebih efisien daripada Anda harus melakukan setting atau men-setup pada tiap-tiap host (mesin klien). Disamping itu sangat mudah bagi kita untuk mengintegrasikan mesin-mesin (host), terutama mesin yang baru ke dalam jaringan karena mesin-mesin tersebut akan mendapatkan alamat melalui pooling alamat yang dibuat pada server.

Sebuah server DHCP tidak hanya memberikan alamat IP dan netmask-nya saja, tetapi juga memberikan host name (nama host), domain name, gateway, dan name server (DNS) yang digunakan oleh mesin klien tersebut. DHCP juga dapat memiliki beberapa parameter lain seperti penggunaan time server yang dapat di akses oleh setiap klien.

Menginstall dan Mengkonfigurasi DHCP Server Software DHCP baik server maupun untuk klien umumnya sudah di paketkan dalam distro-distro Linux. Server DHCP yang disediakan pada Linux adalah dhcpd (dikeluarkan oleh Internet Software Consortium). Pada sisi klien ada yang menggunakan aplikasi dhclient (juga dari ISC) atau DHCP client daemon yang terdapat pada paket dhcpd.

Bagian utama dari setiap sistem DHCP adalah daemon dynamic host configuration protocol. Daemon dhcpd ini leases alamat-alamat dan dan memperhatikan bagaimana mereka menggunakannya, sesuai dengan setting yang terdapat pada file konfigurasi di /etc/dhcpd.conf. Dengan mengubah parameter-parameter yang ada, kita dapat akan terbiasa dengan program ini.

Untuk menginstall dan mengkonfigurasi DHCP server ini, silakan ikuti langkah-langkah dibawah ini:

Langkah 1: Baca man page
Seperti biasanya, untuk mendapatkan pengertian yang lebih dalam mengenai daemon yang berjalan di Linux, silakan baca man page yang terkait dengan paket DHCP ini.

Pada bahasan kali ini silakan baca man page dhcpd dan dhcpd.conf, gunakan perintah berikut ini:

$ man dhcpd

dan

$ man dhcpd.conf

Langkah 2: Memastikan paket dhcpd telah terinstall
Dengan asumsi bahwa Anda telah melakukan instalasi paket dhcpd melalui installer Linux, maka kita hanya akan memastikan bahwa paket tersebut telah terinstall, gunakan perintah berikut ini:

$ rpm -qa |grep dhcpd-server

Bila belum ada lakukan instalasi melalui installer Linux.

atau gunakan perintah ini, untuk semua paket DHCP yang terinstall (server dan client):

$ rpm -qa |grep dhcp

Langkah 3: Mengedit file konfigurasi /etc/dhcpd.conf
Gunakan editor vi untuk mengedit file /etc/dhcpd.conf

$ vi /etc/dhcpd.conf

File /etc/dhcpd.conf adalah file konfigurasi utama dari daemon dhcpd (dhcp), berikut adalah contoh sederhana dari file konfigurasi /etc/dhcpd.conf:

default-lease-time 600; # 10 minutes
max-lease-time 7200; # 2 hours

option domain-name mutiaracyber.com;
option domain-name-servers 192.168.0.1, 192.168.0.10;
option broadcast-address 192.168.0.255;
option routers 192.168.0.254;
option subnet-mask 255.255.255.0;

subnet 192.168.0.0 netmask 255.255.255.0
{
range 192.168.0.10 192.168.0.20;
range 192.168.0.100 192.168.0.200;
}
Dengan konfigurasi diatas tersebut server DHCP sudah dapat berfungsi untuk memberikan alamat IP kepada host yang terhubung pada jaringannya. Pastikan Anda mengetik tanda colon (;) pada setiap akhir baris agar file konfigurasi ini dapat berfungsi dengan benar. Bila diperhatikan terlihat bahwa file konfigurasi ini terdiri dari tiga bagian:

Bagian pertama mendefinisikan berapa lama sebuah IP address di leased kepada host yang meminta dengan nilai default yang telah ditentukan, sebelum host itu harus melakukan pendaftaran kembali. Pada bagian ini juga diperlihatkan pernyataan yang menunjukkan berapa lama periode maksimum sebuah host untuk menahan IP address yang diterimanya dari server DHCP sebelum ia harus memperbaharuinya lagi (max-lease-time).

Pada bagian kedua, beberapa parameter network didefinisikan secara global:

  • option domain-name mendefinisikan domain default dari jaringan.
  • option domain-name-servers dapat berisi sampai dengan 3 alamat DNS server yang digunakan untuk me-resolve jaringan.
  • option broadcast-address digunakan mendefinisikan alamat broadcast dari jaringan.
  • option routers adalah alamat gateway yang memberitahukan kepada jaringan ke mana paket data harus diteruskan bila tidak terletak pada jaringan lokal.
  • option subnet-mask menentukan netmask yang akan diberikan kepada klien.

Bagian terakhir adalah mendefinisikan network dan netmask. Pada bagian ini ditentukan range IP address yang akan diterima oleh klient yang meminta alamat ke server DHCP. Pada contoh ini IP yang disiapkan adalah range 192.168.0.10  192.168.0.20 dan range 192.168.0.100  192.168.0.200.

Setelah selesai mengatur konfigurasi /etc/dhcpd.conf diatas, Anda dapat segera menjalankan daemon dhcpd, lihat langkah 4 dibawah.

Mengatur host dengan IP Address Fixed. Selain untuk penggunaan IP addres seperti diatas, DHCP juga dapat mengatur IP address untuk host yang memerlukan pengalamatan yang tetap (fixed IP Address). Secara sederhana sebenarnya server DHCP hanya memerlukan alamat hardware dari network card untuk memberikan IP address secara fixed. Alamat hardware ini yang biasa disebut dengan MAC Address, adalah alamat unik dari setiap network card yang tidak mungkin sama. Alamat ini terdiri dari 48 bit bilangan hexadecimal (contoh : 00:0C:6E:EA:F8:D1). Untuk melakukan konfigurasi ini tambahkan pada file konfigurasi /etc/dhcpd.conf diatas baris berikut :

host education {
hardware ethernet 00:0C:6E:EA:F8:D1
fixed-address 192.168.0.111
}

Pada baris diatas terlihat host diberi nama education, kemudian hardware address adalah MAC address dari ethernet card pada host tersebut. Setelah menemukan alamat hardware yang sesuai dengan catatan pada konfigurasi ini, kemudian server DHCP akan memberikan IP address 192.168.0.111

Untuk mengetahui MAC address, pada Linux Anda dapat menggunakan perintah ifstatus di ikuti dengan nama device tersebut, mis: eth0, kemudian lihat pada bagian link/ether.

Langkah 4: Menjalankan Server DHCP Sebelum Anda menjalankan daemon dhcpd, Anda harus melakukan sedikit perubahan pada file /etc/sysconfig/dhcpd pada parameter :

DHCPD_INTERFACE =eth0 —> sesuaikan interface ini dengan sistem Anda.

Setelah melakukan hal tersebut diatas, kini tiba saatnya kita mengaktifkan Server DHCP tersebut. Seperti pada service Linux lainnya, kita dapat menjalankan server DHCP ini menggunakan cara :

$ /etc/init.d/dhcpd start

Pengaturan DHCP Server via Browser Sama halnya dengan pengaturan service lainnya, Server DHCP juga dapat diatur melalui browser menggunakan aplikasi webmin. Untuk menggunakan aplikasi ini Anda terlebih dahulu harus mengginstall paket webmin, kemudian pengaturan Server DHCP dapat dilakukan menggunakan browser melalui URL https://localhost:10000 pada tempat host yang menjalankan Server DHCP tersebut.

Anda akan diminta untuk memasukkan username dan password, gunakan username root dengan passwordnya. Kemudian pada browser yang muncul, pilih tab Server dan temukan menu DHCP Server. Untuk selanjutnya silakan gunakan kemudahan pada browser ini dan bandingkan dengan konfigurasi file yang telah dibuat sebelumnya.

Pada tulisan ini tidak akan dibahas cara-cara pengaturan via browser, Anda dapat bereksperimen sendiri dengan membandingkan file konfigurasi /etc/dhcpd.conf.

Catatan: Tutorial Menginstall DHCP Server pada Linux ini telah diuji coba pada SuSE 9.0 dan Mandrake 10.0. kepada device tersebut.

 

diambil dari : http://kepet.atwiki.com/page/LINUX%20Server:%20Membuat%20DHCP%20Server

Setting Jam di Linux

### Berikut cara untuk menyetting jam kita di linux

[root@Warnet ~]# date MMDDHHMmYY

[root@Warnet ~]# date 062514002006

### Good Luck !!

Membuat VPN Server sederhana dengan PPTP

VPN Server dengan menggunakan PPTP ( Point to Point Tunneling Protocol) sudah di test di mesin Redhat 9.0 dengan kernel kernel-2.4.20-8 dan berjalan dengan baik,

 

I. Pra-Instalasi

=========================================

 

1. Pastikan anda mempunyai konfigurasi sebagai berikut

—————————————————————–

  • Linux RedHat 9.0 atay yang lain.

  • Mempunyai akses internet pada kedua interface baik yang internal maupun yang external. Cari ttg IP-MASQUERADING.

  • Pengetahuan dasar jaringan.

  • Paket IPTables

  • Paket RPM, Perangkat RPM

  • Pastikan bahwa firewall berjalan dengan baik.

  • Sebagai tambahan pastikan bahwa Samba terinstall dan berjalan dengan baik jika kita ingin sharing dengan mesin windows.

 

2. File-file yang dibutuhkan.

——————-

Daftar file bisa didownload di link berikut ini :

http://www.spenneberg.org/VPN/RedHat-9/

 

Download file-file dibawah ini

pptpd-1.1.3-rh9_20030409_1.i386.rpm

ppp-2.4.1-rh9_mppe10.i386.rpm

 

II. Instalasi

==============================================

 

1. Instal Paket RPM

—————-

a. Ketik perintah dibawah ini pada konsol :

rpm -ivh pptpd-1.1.3-rh9_20030409_1.i386.rpm

rpm -ivh ppp-2.4.1-rh9_mppe10.i386.rpm

 

Cek hasil instalasi :

[root@localhost root]# rpm -qa | grep pptpd

pptpd-1.1.3-rh9_20030409_1 ( terinstall )

[root@localhost root]# rpm -qa | grep ppp-2.4.1

ppp-2.4.1-rh9_mppe10 ( terinstall )

 

III. Edit File Konfigurasi

==================================================

 

1. Edit file /etc/pptpd.conf

edit sehingga menjadi seperti yang terlihat dibawah ini:

—————————-

speed 115200

option /etc/ppp/options.pptpd

stimeout 10

debug

localip 192.168.0.1

remoteip 192.168.0.10-100

——————————-

 

2. Edit file /etc/ppp/options.pptpd

edit sehingga menjadi seperti yang terlihat dibawah ini:

—————————

lock

debug

proxyarp

bsdcomp 0

mtu 1490

mru 1490

+chapms-v2

ipcp-accept-local

ipcp-accept-remote

lcp-echo-failure 3

lcp-echo-interval 5

mppe-128

mppe-stateless

—————————–

3. Edit file /etc/ppp/chap-secrets

edit sehingga menjadi seperti yang terlihat dibawah ini:

—————————

# Secrets for authentication using CHAP

# client server secret IP addresses

* * &/etc/samba/smbpasswd *

 

Catatan : * * &/etc/samba/smbpasswd * memberitahukan pptpd untuk melihat kedalam file

konfigurasi /etc/samba/smbpasswd untuk cek adanya username dan password

 

Jika anda tidak ingin menggunakan samba untuk autentifikasi maka langsung saja letakkan

user dan password pada file sehingga terlihat seperti ini :

—————————

# Secrets for authentication using CHAP

# client server secret IP addresses

username * passwordanda *

 

untuk percobaan, jika kamu ingin log on ke VPN server dengan menggunakan user “test” dan

password “test”, edit seperti dibawah ini :

 

# Secrets for authentication using CHAP

# client server secret IP addresses

test * test *

 

4. Untuk menambah user dan password Samba pertama anda membuat account unix untuk user.

Sebagai contoh, saya ingin membuat user “test” maka saya akan lakukan pada “root” :

 

[prompt]# useradd tpham

Lalu untuk menambah user dan password samba lakukan :

 

[prompt]# smbpasswd -a test

5. Untuk VPN server yang merangkap sebagai NAT Gateway koneksi internet, tambahkan Port Forwarding dengan memodifikasi Iptables untuk meneruskan request pada port VPN, yaitu 1723 dan 47 ( port yang dipakai utk VPN). Contoh :

 

Pada File Configuration Iptables pada /etc/sysconfig/iptables terlihat sebagai berikut :

 

[root@localhost root]# more /etc/sysconfig/iptables

# Generated by iptables-save v1.2.7a on Fri Nov 25 14:12:05 2005

*nat

:PREROUTING ACCEPT [2960:215850]

:POSTROUTING ACCEPT [5927:258549]

:OUTPUT ACCEPT [4951:200893]

[27:1296] -A PREROUTING -d 202.127.x.222 -i eth0 -p tcp -m tcp –sport 1024:65535 –dport 1723 -j DNAT –to-destination 192.168.0.1:1723

[0:0] -A PREROUTING -d 202.127.x.222 -i eth0 -p tcp -m tcp –sport 1024:65535 –dport 47 -j DNAT –to-destination 192.168.0.1:47

[203:10836] -A POSTROUTING -o eth0 -j SNAT –to-source 202.127.x.222

COMMIT

# Completed on Fri Nov 25 14:12:05 2005

# Generated by iptables-save v1.2.7a on Fri Nov 25 14:12:05 2005

*filter

:INPUT ACCEPT [30116:15087796]

:FORWARD ACCEPT [2411:187294]

:OUTPUT ACCEPT [26832:1984936]

[398:35744] -A INPUT -i eth0 -j ACCEPT

[2032:183608] -A FORWARD -o eth0 -m state –state NEW,RELATED,ESTABLISHED -j ACCEPT

[1678:584189] -A FORWARD -i eth0 -m state –state NEW,RELATED,ESTABLISHED -j ACCEPT

[0:0] -A FORWARD -d 192.168.0.1 -i eth0 -o eth1 -p tcp -m tcp –sport 1024:65535 –dport 1723 -m state –state NEW,RELATED,ESTABLISHED –j ACCEPT

[0:0] -A FORWARD -d 192.168.0.1 -i eth0 -o eth1 -p tcp -m tcp –sport 1024:65535 –dport 47 -m state –state NEW,RELATED,ESTABLISHED -j ACCEPT

[0:0] -A FORWARD -i eth0 -o eth1 -j ACCEPT

COMMIT

# Completed on Fri Nov 25 14:12:05 2005

 

Pada saat cek Iptables list terlihat seperti dibawah ini :

 

[root@localhost root]# iptables -L

Chain INPUT (policy ACCEPT)

target prot opt source destination

ACCEPT all — anywhere anywhere

Chain FORWARD (policy ACCEPT)

target prot opt source destination

ACCEPT all — anywhere anywhere state NEW,RELATED,ESTABLISHED

ACCEPT all — anywhere anywhere state NEW,RELATED,ESTABLISHED

ACCEPT tcp — anywhere 192.168.0.1 tcp spts:1024:65535 dpt:1723 state NEW,RELATED,ESTABLISHED

ACCEPT tcp — anywhere 192.168.0.1 tcp spts:1024:65535 dpt:47 state NEW,RELATED,ESTABLISHED

ACCEPT all — anywhere anywhere

Chain OUTPUT (policy ACCEPT)

target prot opt source destination

 

[root@localhost root]# iptables -L -t nat

Chain PREROUTING (policy ACCEPT)

target prot opt source destination

DNAT tcp — anywhere 202.127.x.222 tcp spts:1024:65535 dpt:1723 to:192.168.0.1:1723

DNAT tcp — anywhere 202.127.x.222 tcp spts:1024:65535 dpt:47 to:192.168.0.1:47

Chain POSTROUTING (policy ACCEPT)

target prot opt source destination

SNAT all — anywhere anywhere to: 202.127.x.222

Chain OUTPUT (policy ACCEPT)

target prot opt source destination

 

 

IV. POS-Instalasi

==========================

 

Jika tidak ada error yang terjadi maka bersiap untuk proses selanjutnya. Akan tetapi anda harus cek dengan melakukan perintah “ntsys” sebelum melanjutkan ke proses berikutnya.

 

Pastikan bahwa service pptpd sudah berjalan dengan melihat pada menu box apakah sudah di cek atau belum.

 

V. Bersiap untuk menjalankan.

===========================

Anda telah siap untuk me-reboot system anda.

 

 

VI. Konfigurasi pada client

===========================

 

Konfigurasi ini untuk client XP

 

  1. klik menu Start

  2. tunjuk My Network Places, dan klik kanan.

  3. pilih properties pada menu

  4. Window baru akan terbuka dan lihat pada panel bagian kiri, anda akan melihat pilihan yang tertulis “create new connection”

  5. Pilih dan ikuti wizard.

  6. Pada window “Connection Type”, pilih pada pilihan yang kedua yaitu “Connect to the network at my Work Place”

  7. Klik next.

  8. Pada “Network Connection” pilih “Virtual Private Network Connection”. Lalu klik next.

  9. Pada “Connection Name” isi apa saja yang anda inginkan.

  10. Pada layar “VPN Server Selection”, ketik IP Global dari Server VPN, klik next.

  11. Pilih “anyone” atau diri anda. Klik Next.

  12. Klik “Finish”.

  13. Window dial-in akan keluar, klik “Properties”.

  14. Pilih tab “Security”.

  15. Klik pada “Advanced (Custom Setting)”.

  16. Klik “Settings”.

  17. Jika “Microsoft CHAP (MS-CHAP)” di “cek” maka silahkan di “un-cek”.

  18. Jika “Microsoft CHAP Version 2 (MS-CHAP V2)” tidak di “cek” maka silahkan untuk di “cek”

  19. (Opsional) pada “Data Encryption” pilih “Maximum encryption”.

  20. Klik OK dan OK lagi.

  21. Kemudian lakukan test dial dengan memasukkan user dan password yang sudah dibikin pada file /etc/ppp/chap-secrets.

  22. Klik “connect”.

 

Jika semua berjalan dengan baik maka anda akan tersambung ke VPN Server dan mendapatkan IP yang sesuai dengan jaringan local dari LAN kantor anda.

Iptables Basic

 

 

Tulisan ini ditujukan untuk memberikan pengetahuan dasar mengenai pemfilteran paket menggunakan IPTables pada Linux. Tulisan ini bersifat general yang menjelaskan secara umum bagaimana sintaks IPTables dibuat. Beberapa (banyak?) bagian dari tulisan diambil dari official site IPTables . Tidak ada copyright apapun dalam dokumen ini, anda bebas menyalin, mencetak, maupun memodifikasi (dengan menyertakan nama penulis asli). Kritik, koreksi, saran dan lain-lain silahkan dialamatkan ke email tersebut di atas. Semoga bermanfaat.

 

1. Persiapan

Sebelum mulai, diharapkan pembaca sudah memiliki pengetahuan dasar mengenai TCP/IP karena hal ini merupakan dasar dari penggunaan IPTables. Ada (sangat) banyak resource yang mendokumentasikan konsep dasar tentang TCP/IP, baik itu secara online maupun cetak. Silahkan googling untuk mendapatkannya.

 

Hal berikutnya yang harus anda persiapkan adalah sebuah komputer yang terinstall Linux. Akan lebih baik jika komputer anda memiliki 2 buah network interface card, sebab bisa menjalankan fungsi packet forwarding. Disarankan anda menggunakan linux dengan kernel 2.4 ke atas, karena (setahu saya) linux dengan kernel 2.4 ke atas sudah memiliki dukungan IPTables secara default, sehingga anda tidak perlu mengkompilasi ulang kernel anda. Bagi anda yang menggunakan kernel 2.2 atau sebelumnya, anda harus melakukan kompilasi kernel untuk memasukkan dukungan IPTables. Silahkan lihat tutorial Kompilasi kernel 2.4.x di Linux oleh mas Asfik.

 

2. Pendahuluan

IPTables memiliki tiga macam daftar aturan bawaan dalam tabel penyaringan, daftar tersebut dinamakan rantai firewall (firewall chain) atau sering disebut chain saja. Ketiga chain tersebut adalah INPUT, OUTPUT dan FORWARD.

 

Pada diagram tersebut, lingkaran menggambarkan ketiga rantai atau chain. Pada saat sebuah paket sampai pada sebuah lingkaran, maka disitulah terjadi proses penyaringan. Rantai akan memutuskan nasib paket tersebut. Apabila keputusannnya adalah DROP, maka paket tersebut akan di-drop. Tetapi jika rantai memutuskan untuk ACCEPT, maka paket akan dilewatkan melalui diagram tersebut.

 

Sebuah rantai adalah aturan-aturan yang telah ditentukan. Setiap aturan menyatakan “jika paket memiliki informasi awal (header) seperti ini, maka inilah yang harus dilakukan terhadap paket”. Jika aturan tersebut tidak sesuai dengan paket, maka aturan berikutnya akan memproses paket tersebut. Apabila sampai aturan terakhir yang ada, paket tersebut belum memenuhi salah satu aturan, maka kernel akan melihat kebijakan bawaan (default) untuk memutuskan apa yang harus dilakukan kepada paket tersebut. Ada dua kebijakan bawaan yaitu default DROP dan default ACCEPT.

 

Jalannya sebuah paket melalui diagram tersebut bisa dicontohkan sebagai berikut:

 

Perjalanan paket yang diforward ke host yang lain

 

1. Paket berada pada jaringan fisik, contoh internet.

2. Paket masuk ke interface jaringan, contoh eth0.

3. Paket masuk ke chain PREROUTING pada table Mangle. Chain ini berfungsi untuk me-mangle (menghaluskan) paket, seperti merubah TOS, TTL dan lain-lain.

4. Paket masuk ke chain PREROUTING pada tabel nat. Chain ini berfungsi utamanya untuk melakukan DNAT (Destination Network Address Translation).

5. Paket mengalami keputusan routing, apakah akan diproses oleh host lokal atau diteruskan ke host lain.

6. Paket masuk ke chain FORWARD pada tabel filter. Disinlah proses pemfilteran yang utama terjadi.

7. Paket masuk ke chain POSTROUTING pada tabel nat. Chain ini berfungsi utamanya untuk melakukan SNAT (Source Network Address Translation).

8. Paket keluar menuju interface jaringan, contoh eth1.

9. Paket kembali berada pada jaringan fisik, contoh LAN.

 

Perjalanan paket yang ditujukan bagi host lokal

 

1. Paket berada dalam jaringan fisik, contoh internet.

2. Paket masuk ke interface jaringan, contoh eth0.

3. Paket masuk ke chain PREROUTING pada tabel mangle.

4. Paket masuk ke chain PREROUTING pada tabel nat.

5. Paket mengalami keputusan routing.

6. Paket masuk ke chain INPUT pada tabel filter untuk mengalami proses penyaringan.

7. Paket akan diterima oleh aplikasi lokal.

 

Perjalanan paket yang berasal dari host lokal

 

1. Aplikasi lokal menghasilkan paket data yang akan dikirimkan melalui jaringan.

2. Paket memasuki chain OUTPUT pada tabel mangle.

3. Paket memasuki chain OUTPUT pada tabel nat.

4. Paket memasuki chain OUTPUT pada tabel filter.

5. Paket mengalami keputusan routing, seperti ke mana paket harus pergi dan melalui interface mana.

6. Paket masuk ke chain POSTROUTING pada tabel NAT.

7. Paket masuk ke interface jaringan, contoh eth0.

8. Paket berada pada jaringan fisik, contoh internet.

 

3. Sintaks IPTables

iptables [-t table] command [match] [target/jump]

 

1. Table

 

IPTables memiliki 3 buah tabel, yaitu NAT, MANGLE dan FILTER. Penggunannya disesuaikan dengan sifat dan karakteristik masing-masing. Fungsi dari masing-masing tabel tersebut sebagai berikut :

 

NAT : Secara umum digunakan untuk melakukan Network Address Translation. NAT adalah penggantian field alamat asal atau alamat tujuan dari sebuah paket.

MANGLE : Digunakan untuk melakukan penghalusan (mangle) paket, seperti TTL, TOS dan MARK.

FILTER : Secara umum, inilah pemfilteran paket yang sesungguhnya.. Di sini bisa dintukan apakah paket akan di-DROP, LOG, ACCEPT atau REJECT

2. Command

 

Command pada baris perintah IPTables akan memberitahu apa yang harus dilakukan terhadap lanjutan sintaks perintah. Umumnya dilakukan penambahan atau penghapusan sesuatu dari tabel atau yang lain.

 

Command

Keterangan

 

-A

–append

Perintah ini menambahkan aturan pada akhir chain. Aturan akan ditambahkan di akhir baris pada chain yang bersangkutan, sehingga akan dieksekusi terakhir

 

-D

–delete

Perintah ini menghapus suatu aturan pada chain. Dilakukan dengan cara menyebutkan secara lengkap perintah yang ingin dihapus atau dengan menyebutkan nomor baris dimana perintah akan dihapus.

 

-R

–replace

Penggunaannya sama seperti –delete, tetapi command ini menggantinya dengan entry yang baru.

 

-I

–insert

Memasukkan aturan pada suatu baris di chain. Aturan akan dimasukkan pada baris yang disebutkan, dan aturan awal yang menempati baris tersebut akan digeser ke bawah. Demikian pula baris-baris selanjutnya.

 

-L

–list

Perintah ini menampilkan semua aturan pada sebuah tabel. Apabila tabel tidak disebutkan, maka seluruh aturan pada semua tabel akan ditampilkan, walaupun tidak ada aturan sama sekali pada sebuah tabel. Command ini bisa dikombinasikan dengan option –v (verbose), -n (numeric) dan –x (exact).

 

-F

–flush

Perintah ini mengosongkan aturan pada sebuah chain. Apabila chain tidak disebutkan, maka semua chain akan di-flush.

 

-N

–new-chain

Perintah tersebut akan membuat chain baru.

 

-X

–delete-chain

Perintah ini akan menghapus chain yang disebutkan. Agar perintah di atas berhasil, tidak boleh ada aturan lain yang mengacu kepada chain tersebut.

 

-P

–policy

Perintah ini membuat kebijakan default pada sebuah chain. Sehingga jika ada sebuah paket yang tidak memenuhi aturan pada baris-baris yang telah didefinisikan, maka paket akan diperlakukan sesuai dengan kebijakan default ini.

 

-E

–rename-chain

Perintah ini akan merubah nama suatu chain.

 

3. Option

 

Option digunakan dikombinasikan dengan command tertentu yang akan menghasilkan suatu variasi perintah.

 

Option

Command Pemakai

Keterangan

 

-v

–verbose

–list

–append

–insert

–delete

–replace

Memberikan output yang lebih detail, utamanya digunakan dengan –list. Jika digunakan dengan

–list, akan menampilkam K (x1.000),

M (1.000.000) dan G (1.000.000.000).

 

-x

–exact

–list

Memberikan output yang lebih tepat.

 

-n

–numeric

–list

Memberikan output yang berbentuk angka. Alamat IP dan nomor port akan ditampilkan dalam bentuk angka dan bukan hostname ataupun nama aplikasi/servis.

 

–line-number

–list

Akan menampilkan nomor dari daftar aturan. Hal ni akan mempermudah bagi kita untuk melakukan modifikasi aturan, jika kita mau meyisipkan atau menghapus aturan dengan nomor tertentu.

 

–modprobe

All

Memerintahkan IPTables untuk memanggil modul tertentu. Bisa digunakan bersamaan dengan semua command.

 

4. Generic Matches

 

Generic Matches artinya pendefinisian kriteria yang berlaku secara umum. Dengan kata lain, sintaks generic matches akan sama untuk semua protokol. Setelah protokol didefinisikan, maka baru didefinisikan aturan yang lebih spesifik yang dimiliki oleh protokol tersebut. Hal ini dilakukan karena tiap-tiap protokol memiliki karakteristik yang berbeda, sehingga memerlukan perlakuan khusus.

 

Match

Keterangan

 

-p

–protocol

Digunakan untuk mengecek tipe protokol tertentu. Contoh protokol yang umum adalah TCP, UDP, ICMP dan ALL. Daftar protokol bisa dilihat pada /etc/protocols.

Tanda inversi juga bisa diberlakukan di sini, misal kita menghendaki semua protokol kecuali icmp, maka kita bisa menuliskan –protokol ! icmp yang berarti semua kecuali icmp.

 

-s

–src

–source

Kriteria ini digunakan untuk mencocokkan paket berdasarkan alamat IP asal. Alamat di sini bisa berberntuk alamat tunggal seperti 192.168.1.1, atau suatu alamat network menggunakan netmask misal 192.168.1.0/255.255.255.0, atau bisa juga ditulis 192.168.1.0/24 yang artinya semua alamat 192.168.1.x. Kita juga bisa menggunakan inversi.

-d

–dst

–destination

Digunakan untuk mecocokkan paket berdasarkan alamat tujuan. Penggunaannya sama dengan match –src

-i

–in-interface

Match ini berguna untuk mencocokkan paket berdasarkan interface di mana paket datang. Match ini hanya berlaku pada chain INPUT, FORWARD dan PREROUTING

-o

–out-interface

Berfungsi untuk mencocokkan paket berdasarkan interface di mana paket keluar. Penggunannya sama dengan

–in-interface. Berlaku untuk chain OUTPUT, FORWARD dan POSTROUTING

 

5. Implicit Matches

 

Implicit Matches adalah match yang spesifik untuk tipe protokol tertentu. Implicit Match merupakan sekumpulan rule yang akan diload setelah tipe protokol disebutkan. Ada 3 Implicit Match berlaku untuk tiga jenis protokol, yaitu TCP matches, UDP matches dan ICMP matches.

 

a. TCP matches

 

Match

Keterangan

 

–sport

–source-port

Match ini berguna untuk mecocokkan paket berdasarkan port asal. Dalam hal ini kia bisa mendefinisikan nomor port atau nama service-nya. Daftar nama service dan nomor port yang bersesuaian dapat dilihat di /etc/services.

 

–sport juga bisa dituliskan untuk range port tertentu. Misalkan kita ingin mendefinisikan range antara port 22 sampai dengan 80, maka kita bisa menuliskan –sport 22:80.

 

Jika bagian salah satu bagian pada range tersebut kita hilangkan maka hal itu bisa kita artikan dari port 0, jika bagian kiri yang kita hilangkan, atau 65535 jika bagian kanan yang kita hilangkan. Contohnya –sport :80 artinya paket dengan port asal nol sampai dengan 80, atau –sport 1024: artinya paket dengan port asal 1024 sampai dengan 65535.Match ini juga mengenal inversi.

 

–dport

–destination-port

Penggunaan match ini sama dengan match –source-port.

 

–tcp-flags

Digunakan untuk mencocokkan paket berdasarkan TCP flags yang ada pada paket tersebut. Pertama, pengecekan akan mengambil daftar flag yang akan diperbandingkan, dan kedua, akan memeriksa paket yang di-set 1, atau on.

 

Pada kedua list, masing-masing entry-nya harus dipisahkan oleh koma dan tidak boleh ada spasi antar entry, kecuali spasi antar kedua list. Match ini mengenali SYN,ACK,FIN,RST,URG, PSH. Selain itu kita juga menuliskan ALL dan NONE. Match ini juga bisa menggunakan inversi.

 

–syn

Match ini akan memeriksa apakah flag SYN di-set dan ACK dan FIN tidak di-set. Perintah ini sama artinya jika kita menggunakan match –tcp-flags SYN,ACK,FIN SYN

 

Paket dengan match di atas digunakan untuk melakukan request koneksi TCP yang baru terhadap server

 

b. UDP Matches

 

Karena bahwa protokol UDP bersifat connectionless, maka tidak ada flags yang mendeskripsikan status paket untuk untuk membuka atau menutup koneksi. Paket UDP juga tidak memerlukan acknowledgement. Sehingga Implicit Match untuk protokol UDP lebih sedikit daripada TCP.

Ada dua macam match untuk UDP:

 

–sport atau –source-port

–dport atau –destination-port

c. ICMP Matches

 

Paket ICMP digunakan untuk mengirimkan pesan-pesan kesalahan dan kondisi-kondisi jaringan yang lain. Hanya ada satu implicit match untuk tipe protokol ICMP, yaitu :

 

–icmp-type

6. Explicit Matches

 

a. MAC Address

 

Match jenis ini berguna untuk melakukan pencocokan paket berdasarkan MAC source address. Perlu diingat bahwa MAC hanya berfungsi untuk jaringan yang menggunakan teknologi ethernet.

 

iptables –A INPUT –m mac –mac-source 00:00:00:00:00:01

 

b. Multiport Matches

 

Ekstensi Multiport Matches digunakan untuk mendefinisikan port atau port range lebih dari satu, yang berfungsi jika ingin didefinisikan aturan yang sama untuk beberapa port. Tapi hal yang perlu diingat bahwa kita tidak bisa menggunakan port matching standard dan multiport matching dalam waktu yang bersamaan.

 

iptables –A INPUT –p tcp –m multiport –source-port 22,53,80,110

 

c. Owner Matches

 

Penggunaan match ini untuk mencocokkan paket berdasarkan pembuat atau pemilik/owner paket tersebut. Match ini bekerja dalam chain OUTPUT, akan tetapi penggunaan match ini tidak terlalu luas, sebab ada beberapa proses tidak memiliki owner (??).

 

iptables –A OUTPUT –m owner –uid-owner 500

Kita juga bisa memfilter berdasarkan group ID dengan sintaks –gid-owner. Salah satu penggunannya adalah bisa mencegah user selain yang dikehendaki untuk mengakses internet misalnya.

 

d. State Matches

 

Match ini mendefinisikan state apa saja yang cocok. Ada 4 state yang berlaku, yaitu NEW, ESTABLISHED, RELATED dan INVALID. NEW digunakan untuk paket yang akan memulai koneksi baru. ESTABLISHED digunakan jika koneksi telah tersambung dan paket-paketnya merupakan bagian dari koneki tersebut. RELATED digunakan untuk paket-paket yang bukan bagian dari koneksi tetapi masih berhubungan dengan koneksi tersebut, contohnya adalah FTP data transfer yang menyertai sebuah koneksi TCP atau UDP. INVALID adalah paket yang tidak bisa diidentifikasi, bukan merupakan bagian dari koneksi yang ada.

 

iptables –A INPUT –m state –state RELATED,ESTABLISHED

7. Target/Jump

 

Target atau jump adalah perlakuan yang diberikan terhadap paket-paket yang memenuhi kriteria atau match. Jump memerlukan sebuah chain yang lain dalam tabel yang sama. Chain tersebut nantinya akan dimasuki oleh paket yang memenuhi kriteria. Analoginya ialah chain baru nanti berlaku sebagai prosedur/fungsi dari program utama. Sebagai contoh dibuat sebuah chain yang bernama tcp_packets. Setelah ditambahkan aturan-aturan ke dalam chain tersebut, kemudian chain tersebut akan direferensi dari chain input.

 

iptables –A INPUT –p tcp –j tcp_packets

Target

Keterangan

 

-j ACCEPT

–jump ACCEPT

Ketika paket cocok dengan daftar match dan target ini diberlakukan, maka paket tidak akan melalui baris-baris aturan yang lain dalam chain tersebut atau chain yang lain yang mereferensi chain tersebut. Akan tetapi paket masih akan memasuki chain-chain pada tabel yang lain seperti biasa.

 

-j DROP

–jump DROP

Target ini men-drop paket dan menolak untuk memproses lebih jauh. Dalam beberapa kasus mungkin hal ini kurang baik, karena akan meninggalkan dead socket antara client dan server.

 

Paket yang menerima target DROP benar-benar mati dan target tidak akan mengirim informasi tambahan dalam bentuk apapun kepada client atau server.

 

-j RETURN

–jump RETURN

Target ini akan membuat paket berhenti melintasi aturan-aturan pada chain dimana paket tersebut menemui target RETURN. Jika chain merupakan subchain dari chain yang lain, maka paket akan kembali ke superset chain di atasnya dan masuk ke baris aturan berikutnya. Apabila chain adalah chain utama misalnya INPUT, maka paket akan dikembalikan kepada kebijakan default dari chain tersebut.

 

-j MIRROR

Apabila kompuuter A menjalankan target seperti contoh di atas, kemudian komputer B melakukan koneksi http ke komputer A, maka yang akan muncul pada browser adalah website komputer B itu sendiri. Karena fungsi utama target ini adalah membalik source address dan destination address.

 

Target ini bekerja pada chain INPUT, FORWARD dan PREROUTING atau chain buatan yang dipanggil melalui chain tersebut.

 

Beberapa target yang lain biasanya memerlukan parameter tambahan:

 

a. LOG Target

 

Ada beberapa option yang bisa digunakan bersamaan dengan target ini. Yang pertama adalah yang digunakan untuk menentukan tingkat log. Tingkatan log yang bisa digunakan adalah debug, info, notice, warning, err, crit, alert dan emerg.Yang kedua adalah -j LOG –log-prefix yang digunakan untuk memberikan string yang tertulis pada awalan log, sehingga memudahkan pembacaan log tersebut.

 

iptables –A FORWARD –p tcp –j LOG –log-level debug

iptables –A INPUT –p tcp –j LOG –log-prefix “INPUT Packets”

 

b. REJECT Target

 

Secara umum, REJECT bekerja seperti DROP, yaitu memblok paket dan menolak untuk memproses lebih lanjut paket tersebut. Tetapi, REJECT akan mengirimkan error message ke host pengirim paket tersebut. REJECT bekerja pada chain INPUT, OUTPUT dan FORWARD atau pada chain tambahan yang dipanggil dari ketiga chain tersebut.

 

iptables –A FORWARD –p tcp –dport 22 –j REJECT –reject-with icmp-host-unreachable

Ada beberapa tipe pesan yang bisa dikirimkan yaitu icmp-net-unreachable, icmp-host-unreachable, icmp-port-unreachable, icmp-proto-unrachable, icmp-net-prohibited dan icmp-host-prohibited.

 

c. SNAT Target

 

Target ini berguna untuk melakukan perubahan alamat asal dari paket (Source Network Address Translation). Target ini berlaku untuk tabel nat pada chain POSTROUTING, dan hanya di sinilah SNAT bisa dilakukan. Jika paket pertama dari sebuah koneksi mengalami SNAT, maka paket-paket berikutnya dalam koneksi tersebut juga akan mengalami hal yang sama.

 

iptables –t nat –A POSTROUTING –o eth0 –j SNAT –to-source 194.236.50.155-194.236.50.160:1024-32000

 

d. DNAT Target

 

Berkebalikan dengan SNAT, DNAT digunakan untuk melakukan translasi field alamat tujuan (Destination Network Address Translation) pada header dari paket-paket yang memenuhi kriteria match. DNAT hanya bekerja untuk tabel nat pada chain PREROUTING dan OUTPUT atau chain buatan yang dipanggil oleh kedua chain tersebut.

 

iptables –t nat –A PREROUTING –p tcp –d 15.45.23.67 –dport 80 –j DNAT –to-destination 192.168.0.2

 

e. MASQUERADE Target

 

Secara umum, target MASQUERADE bekerja dengan cara yang hampir sama seperti target SNAT, tetapi target ini tidak memerlukan option –to-source. MASQUERADE memang didesain untuk bekerja pada komputer dengan koneksi yang tidak tetap seperti dial-up atau DHCP yang akan memberi pada kita nomor IP yang berubah-ubah.

 

Seperti halnya pada SNAT, target ini hanya bekerja untuk tabel nat pada chain POSTROUTING.

 

iptables –t nat –A POSTROUTING –o ppp0 –j MASQUERADE

f. REDIRECT Target

 

Target REDIRECT digunakan untuk mengalihkan jurusan (redirect) paket ke mesin itu sendiri. Target ini umumnya digunakan untuk mengarahkan paket yang menuju suatu port tertentu untuk memasuki suatu aplikasi proxy, lebih jauh lagi hal ini sangat berguna untuk membangun sebuah sistem jaringan yang menggunakan transparent proxy. Contohnya kita ingin mengalihkan semua koneksi yang menuju port http untuk memasuki aplikasi http proxy misalnya squid. Target ini hanya bekerja untuk tabel nat pada chain PREROUTING dan OUTPUT atau pada chain buatan yang dipanggil dari kedua chain tersebut.

 

iptables –t nat –A PREROUTING –i eth1 –p tcp –dport 80 –j REDIRECT –to-port 3128

Tutuorial Squid bisa dilihat di Instalasi Squid, Banner Filter, Porn Filter, Limit Bandwith, Transparan Proxy bikinan mas Hanny.

 

4. Penutup

Demikian dasar-dasar dari IPTables beserta komponen-komponennya. Mungkin anda masih agak bingung tentang implementasi dari apa yang telah dijelaskan di atas. Insya Allah dalam tulisan yang akan datang, saya akan memberikan beberapa contoh kasus jaringan yang menggunakan IPTables. Yea.. may I have enough power to do it 🙂

 

5. Change Log

 

sumber:h**p://wew.id.or.id/comments.asp?id=39

http://adminpreman.web.id/content/view/10/1/lang,en/

Instalasi GCC di Fedora Core 2

#### Berikut Instalasi GCC di Fedora Core 2

#### Terlebih dulu Download Paket GCC dan Paket yang lain nya di situs berikut :

ftp://ftp.uni-bayreuth.de/pub/redhat.com/fedora/linux/core/2/i386/os/Fedora/RPMS/gcc-3.3.3-7.i386.rpm
ftp://ftp.uni-bayreuth.de/pub/redhat.com/fedora/linux/core/2/i386/os/Fedora/RPMS/cpp-3.3.3-7.i386.rpm
ftp://ftp.uni-bayreuth.de/pub/redhat.com/fedora/linux/core/2/i386/os/Fedora/RPMS/glibc-devel-2.3.3-27.i386.rpm
ftp://ftp.uni-bayreuth.de/pub/redhat.com/fedora/linux/core/2/i386/os/Fedora/RPMS/glibc-devel-2.3.3-27.i386.rpm
ftp://ftp.uni-bayreuth.de/pub/redhat.com/fedora/linux/core/2/i386/os/Fedora/RPMS/glibc-headers-2.3.3-27.i386.rpm
ftp://rpmfind.net/linux/PLD/current/dists/ra/PLD/i386/PLD/RPMS/kernel-headers-2.2.22-6.i386.rpm
ftp://ftp.uni-bayreuth.de/pub/redhat.com/fedora/linux/core/2/i386/os/Fedora/RPMS/binutils-2.15.90.0.3-5.i386.rpm

#### Setelah itu Install masing-masing paket tersebut dengan printah “rpm -ivh / Uvh”

[root@Ak-47 ~]# rpm -ivh <nama paket>

#### Good Luck !!!

Masalah Ketika Menjalankan SQUID !

   

[root@Ak-47 ~]# /etc/init.d/squid start
Starting squid: /etc/init.d/squid: line 53: 2556 Aborted $SQUID $SQUID_OPTS >>/var/log/squid/squid.out 2>&1
[FAILED]
kalau anda menemui permasalah seperti ini, jangan bingung dan jangan gundah apa lagi sampai gulana
silahkan edit di scripts squid nya

vi /etc/init.d/squid

edit bagian

CACHE_SWAP=/var/spool/squid <== ganti dengan directory swap yang anda buat di squid.conf

cache_dir aufs /cache <== bisa diganti dengan /var/spool/squid/cache
tapi terlebih dahulu buat direktory cache di directory /var/spool/squid
dan beri permision chmod 777 /var/spool/squid/cache

setelah semuanya selesai dilakukan, coba lagi jalankan squid nya

[root@Ak-47 ~]# /etc/init.d/squid start
Starting squid: . [ OK ]
[root@Ak-47 ~]#

### kalau status nya OK berarti squid anda sudah jalan, coba check apakah proses nya memang benar benar jalan atau tidak :

[root@Ak-47 ~]# ps -aux |grep squid
Warning: bad syntax, perhaps a bogus ‘-‘? See /usr/share/doc/procps-3.2.7/FAQ
root 2565 0.0 0.2 7376 1156 ? Ss 23:41 0:00 squid -D
squid 2567 0.0 1.1 13664 5744 ? Sl 23:41 0:00 (squid) -D
squid 2569 0.0 0.0 1480 220 ? Ss 23:41 0:00 (unlinkd)
root 2590 0.0 0.1 3884 684 pts/0 S+ 23:42 0:00 grep squid

##### Selamat Squid anda sudah memang betul-betul jalan.

Konfigruasi Ethernet di Linux Redhat.9

Langkah-langkah mengkonfigurasi Ethernet di Linux Redhat.9

1. Masuk ke direktori network-scripts ;
cd /etc/sysconfig/network-scripts/
2. Edit ethernet / card lan yang ada di komputer nya dengan editor yang anda suka
(cth : vi,pico,dll);
vi ifcfg-eth0 <==== Eth0 atau card lan yang pertama di detect oleh system

# Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
DEVICE=eth1
ONBOOT=yes
HWADDR=00:02:44:bf:b9:51
TYPE=Ethernet
NETMASK=255.255.255.0
IPADDR=192.168.10.1
NETWORK=192.168.10.0
3. Setelah itu baru di simpan dan restart ethernet / card lan nya;

Dengan menekan kombinasi tombol “shift”  dan “:” terus ketik wq

w (write/simpan)

q (quit/keluar)

note : * pelajari manual perintah editor text “vi”

setelah itu baru di restart network yang sudah kita configurasi tadi….

/etc/init.d/network restart