Rabu, 16 Desember 2009

Setting NAT dengan IP Masquerade

NAT merupakan suatu tool yang mana kita dapat menyembunyikan suatu network dibelakang suatu IP Address. NAT merupakan feature yang diimplementasikan pada Router.

Biasanya suatu router tidak melakukan modifikasi pada paket yang dia kirim dari suatu network ke network yang lain,kecuali untuk pembatasan (misalnya,Router mengubah nilai TTL yang dapat mengakibatkan suatu paket didrop.).

Namun dengan adanya NAT terjadi beberapa perubahan.Khususnya pada TCP/IP paket yang berisi 2 alamat yaitu source address dan destination address.
Misalnya:
kamu memiliki 5 komputer dengan 1 IP Address legal (IP Public).Kamu dapat mengoperasikan suatu internal network dengan kelima komputer itu tetapi komputer-komputer ini membutuhkan IP Addressnya sesuai dengan range dari private address.Apabila kamu melakukan konfigurasi satu komputer dari sistemmu sebagai router biasa,dan suatu ketika sistem mengirim suatu paket ke tujuan diluar area network maka source address pada paket tersebut akan mengindikasikan private address (IP Private).Karena private address bukan merupakan bagian dari internet,sistem yang menerima tidak akan dapat melakukan reply.

Perlu diketahui bahwa ada tiga block IP Address yang dikhususkan untuk private networks: 192.168.0.0–192.168.255.255,
172.16.0.0–172.31.255.255,
10.0.0.0–10.255.255.255.

Biasanya penggunaan address ini buat internal network. Dengan NAT,router melakukan modifikasi terhadap paket tersebut dengan address yang valid (IP Public).
contoh:
paket dari 10.126.12.35 dikirim kemudian dilakukan modifikasi oleh router dengan mengubah source address menjadi IP Address dari router dan setelah itu baru dikirim.

tool-tool NAT pada linux
Kernel linux memiliki feature-feature untuk mendukung NAT.feature-feature ini alat untuk mensupport NAT namun perintah-perintah yang disediakan masih sedikit,untuk itu perlu didukung dengan paket-paket komersial.

Dibawah ini beberapa utiliti NAT untuk linux :
1. ipfwadm tool ini digunakan untuk mengkonfigurasi NAT dengan linux kernel 2.0.x
2. ipchains tool ini digunakan untuk mengkonfigurasi NAT dengan linux kernel 2.2.x
3. iptables tool ini digunakan untuk mengkonfigurasi NAT dengan linux kernel 2.4.x

Setting NAT pada Linux
Untuk mengaktifkan server linux sebagai NAT maka anda cukup mengetikkan beberapa perintah berikut ini :
# route add –net 255.255.255.255 netmask 255.255.255.255 dev eth0
# modprobe iptablenat# echo 1>/proc/sys/net/ipv4/ip_forward
# iptables –t nat –A POSTROUTING -s 10.126.12.0/24 –j MASQUERADE
# iptables –A FORWARD –s 10.126.12.0/24 –j ACCEPT

Agar semua perintah diatas dapat dieksekusi pada saat boot maka script diatas harus ditambahkan pada file /etc/rc.d/rc.local.

Contoh Kasus:
Anda mempunyai jaringan dengan alamat IP gateway linux 192.168.1.1 dan klien klien 192.168.1.2 s/d 192.168.1.4 dengan netmask 255.255.255.0 , dan anda ingin mengaktifkan IP Masquerading atas alamat alamat ini, maka anda harus mengetikkan perintah :

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 0.0.0.0/0 -j MASQUERADE

Anda mempunyai alamat alamat IP spt diatas tapi anda ingin hanya klien dengan IP bernomer 192.168.1.5 dan 192.168.1.10 saja yang bisa mengakses internet, maka anda harus mengetikkan perintah :

iptables -t nat -A POSTROUTING -s 192.168.1.5/32 -d 0.0.0.0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.1.10/32 -d 0.0.0.0/0 -j MASQUERADE

Anda mempunyai alamat alamat IP spt diatas dan anda ingin semua klien bisa mengakses internet, kecuali IP 192.168.1.5 dan 192.168.1.10 saja yang tidak bisa mengakses internet, maka anda harus mengetikkan perintah :

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 0/0 -j MASQUERADE (u/ mengaktifkan masquerade).

Baru kemudian kita cegat kedua komputer tersebut dengan perintah :

iptables -I INPUT -s 192.168.1.5/32 -d 0/0 -j DROPiptables -I INPUT -s 192.168.1.10/32 -d 0/0 -j DROP

Anda ingin klien dengan alamat 192.168.1.5 tidak diperbolehkan untuk melakukan chatting, maka kita bisa men-deny, paket paket dari klien 192.168.1.5 yang akan menuju ke port IRC (contoh port nomer 6667). maka anda harus mengetikkan perintah :

iptables -I INPUT -p tcp -s 192.168.1.5/32 -d 0/0 –destination-port 6667 -j DROP

Untuk membuka atau menghapus aturan aturan yang telah kita buat kita bisa mengganti option -I , -A dsb, misalnya dengan option -D
sebagai contoh:

iptables -I INPUT -p tcp -s 192.168.1.5/32 -d 0/0 –destination-port 6667 -j DROP
dapat dihapus dengan perintah :
iptables -D INPUT -p tcp -s 192.168.1.5/32 -d 0/0 –destination-port 6667 -j DROP

Catatan option option iptables yg digunakan diatas :
-A digunakan untuk menambahkan rule
-I digunakan untukmenyisipkan (insert) rule firewall ke baris paling atas
-D digunakan untukmenghapus rule yg telah dibuat
-s digunakan untuk source address
-d digunakan untuk destination address
DROP digunakan untuk mendisable paket yang masuk atau lewat

Demikian semoga bermanfaat bagi semua orang yang ingin belajar linux.

Rabu, 09 Desember 2009

Konfigurasi RIP di router quagga

Suatu saat aku merasa jaringan komputer di tempatku mulai merumit…aku rada kewalahan kalo hanya ditangani dengan static route…sering terjadi perubahan route…Kemudian aku mulai berfikir untuk menghidupkan routing dinamis..aku pilih RIP v2 dulu lah, karena kupikir jaringanku belum terlalu besar…mulailah aku kutak-katik RIP di quagga…hasil langkah langkahnya aku catet di sini :

1. Membuat config file rip…untuk mudahnya copy saja contoh file konfigurasi rip yang ada di /usr/share/doc/quagga/examples ke /etc/quagga/…

# cp /usr/share/doc/quagga/examples/ripd.conf.sample /etc/quagga/ripd.conf

2. Aktifkan daemon rip..dengan cara edit file /etc/quagga/daemons

# vim /etc/quagga/daemons

rubah ripd=no menjadi ripd=yes

3. Restart service quagga

# /etc/init.d/quagga restart

4. Verifikasi daemon quagga yang sudah running

# ps -ef | grep quagga…akan terlihat daemon quagga yang sudah running

5. Masuk ke ripd

# telnet localhost 2602

5. Aktifkan RIP …pada mode configure terminal…

ripd # router rip

6. masuk ke konfigurasi rip

ripd # config terminal

ripd (config) # router rip

7. tentukan rip network

ripd (config-router) # network A.B.C.D/x

8. tentukan rip neighbor

ripd (config-router) # neighbor A.B.C.D

9. karena aku ingin me-redistribusi route yang aku peroleh dari protokol ospf..hidupkan ospf-redistribute

ripd (config-router) # redistribute ospf

setting RIP

RIP merupakan singkatan dari (Routing Information Protocol) adalah dinamik routing protokol yang sudah cukup tua. Di ciptakan sekitar tahun 1970.
Cara kerjanya berdasarkan Distance Vector Routing Protocol, yang berarti akan mempergunakan pendekatan berapa banyak hop (lompatan) router yang akan ditempuh untuk mencapai suatu network. Dan yang akan dipilih adalah hop terpendek.
Cara Kerja

RIP bekerja dengan menginformasikan status network yang dipegang secara langsung kepada router tetangganya.

Karakteristik dari RIP:

* Distance vector routing protocol
* Hop count sebagi metric untuk memilih rute
* Maximum hop count 15, hop ke 16 dianggap unreachable
* Secara default routing update 30 detik sekali
* RIPv1 (classfull routing protocol) tidak mengirimkan subnet mask pada update
* RIPv2 (classless routing protocol) mengirimkan subnet mask pada update

Satu hal yang perlu diperhatikan adalah RIP zebra secara default mempergunakan versi 2, sedangkan Cisco versi 1.
Konfigurasi

Sama halnya dengan zebra, daemon rip dapat dikonfigur lewat 2 cara.

Konfigurasi dengan 2 cara :

1. edit langsung pada file ripd.conf

root@opera zebra# vi ripd.conf
root@opera zebra# service ripd restart

2. melalui remote vty
telnet ke port 2602

root@opera zebra# telnet 127.0.0.1 2602
Hello, this is zebra (version 0.94).
Copyright 1996-2002 Kunihiro Ishiguro.

Konfigurasi RIP sangat sederhana, secara umum hanya membutuhkan 3 entri dalam running configurasi.
Masukkan network mempunyai router tetangga RIP dan network yang akan disebarkan ke router tetangga.

ripd(config)# router rip
ripd(config-router)# network 192.168.1.0/24
ripd(config-router)# network 10.1.1.0/24
ripd(config-router)# ^z
ripd#

Untuk memeriksa status RIP

ripd# show ip protocols
Routing Protocol is "rip"
Sending updates every 30 seconds with +/-50%, next due in 7 seconds
Timeout after 180 seconds, garbage collect after 120 seconds
Outgoing update filter list for all interface is not set
Incoming update filter list for all interface is not set
Default redistribution metric is 1
Redistributing:
Default version control: send version 2, receive version 2
Interface Send Recv Key-chain
Routing for Networks:
10.1.1.0/24
192.168.1.0/24
Routing Information Sources:
Gateway BadPackets BadRoutes Distance Last Update
Distance: (default is 120)

Untuk melihat routing yang didapat dari RIP tetangga.

ripd# show ip rip
Codes: R - RIP, C - connected, O - OSPF, B - BGP
(n) - normal, (s) - static, (d) - default, (r) - redistribute,
(i) - interface

Network Next Hop Metric From Time

Jangan lupa untuk menyimpan konfigurasi kedalam file.
demikian informasi yang dapat saya sampaikan semoga bermanfaat bagi yang membacanya..

konfigurasi ZEBRA

Sebelumnya, file konfigurasi zebra terletak pada direktori /etc/zebra/, dengan nama file zebra.conf. kemudian jalankan daemon zebra, /usr/local/sbin/zebra start &. Jalankan perintah telnet localhost zebra atau telnet localhost 2601



$ telnet localhost zebra
Trying ::1...
telnet: connect to address ::1:Connection refused
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.

Hello, this is zebra (version 0.95a).
Copyright 1996-2004 Kunihiro Ishiguro.



User Access Verification
Password:
bsd1-router> en
bsd1-router> enable
Password:
bsd1-router#
inputan password yang pertama menanyakan password untuk login ke terminal zebra, sedangkan inputan password yang kedua atau “enable password” menanyakan password untuk akses yang lebih tinggi ke zebra atau “privileged mode”. Menjelajahi terminal tidaklah sulit. Untuk mendapatkan apa saja perintah yang ada pada setiap mode, tinggal ketikkan “?”, maka segala macam perintah yang ada pada mode tersebut akan tampil dilayar.
- * Konfigurasi zebra-
Konfigurasi minimal dalam artian, saya hanya mengkonfigurasi zebra seminimal mungkin, karena ilmu yang saya miliki masih sangat sedikit (hiks..hiks.. T_T). biasanya pada terminal zebra ini kita hanya mendefinisikan alamat-alamat IP pada interface-interface yang ada pada komputer(router) kita. Dan pada percobaan saya saya mempunyai 2 interface yaitu rl0 dan ed0.
Pada saat berada pada privileged mode, ketikan configure terminal, kemudian interface rl0, ip address 10.10.33.2/27,exit. ketikan kemudian interface ed0, ip address 10.10.34.1/27,ctrl+z.
bsd1-router# configure terminal
bsd1-router(config)# interface rl0
bsd1-router(config-if)# ip address 10.10.33.2/27
bsd1-router(config-if)# exit
bsd1-router(config)# interface ed0
bsd1-router(config-if)# ip address 10.10.34.1/27
bsd1-router(config-if)# tekan ctrl+z
bsd1-router#
Untuk melihat konfigurasi yang telah dibuat ketikkan show running-config
bsd1-router# show running-config
Current configuration:
!
hostname bsd1-router
password zebra
enable password zebra
!
interface ed0
ip address 10.10.34.1/27
!
interface rl0
ip address 10.10.33.2/27
!
line vty
!
Simpan konfigurasi zebra yang telah dibuat dengan perintah write memory atau copy running-config startup-config
bsd1-router# copy running-config startup-config

Jumat, 04 Desember 2009

love that i hate

That's how much I love you
That's how much I need you
And I can't stand you
Most everything you do make me wanna smile
Can I not like you for awhile? (No....)


But you won't let me
You upset me girl
And then you kiss my lips
All of a sudden I forget (that I was upset)
Can't remember what you did


But I hate it...
You know exactly what to do
So that I can't stay mad at you
For too long that's wrong

But I hate it...
You know exactly how to touch
So that I don't want to fuss.. and fight no more
Said I despise that I adore you


And I hate how much I love you boy
I can't stand how much I need you
And I hate how much I love you boy
But I just can't let you go
And I hate that I love you so


You completely know the power that you have
The only one makes me laugh


Said it's not fair
How you take advantage of the fact
That I... love you beyond the reason why
And it just ain't right


And I hate how much I love you girl
I can't stand how much I need you
And I hate how much I love you girl
But I just can't let you go
But I hate that I love you so


One of these days maybe your magic won't affect me
And your kiss won't make me weak
But no one in this world knows me the way you know me
So you'll probably always have a spell on me...


That's how much I love you (as much as I need you)
That's how much I need you
That's how much I love you
As much as I need you


And I hate that I love you so
And I hate how much I love you boy
I can't stand how much I need you (can't stand how much I need you)
And I hate how much I love you boy
But I just can't let you go (but I just can't let you go no..)
And I hate that I love you so

And I hate that I love you so.. so...

12 Kesalahan Website Hingga Dijauhi Robot Search Engine

Jika Anda memiliki situs atau blog, tentunya Anda ingin blog atau situs Anda menjadi to searches di search engine, atau setidaknya sudah dikenal oleh search engine. Tahukah Anda kesalahan apa saja yang membuat website atau blog Anda dijauhi robot search engine?

1. Tidak Memakai file “robot.txt”, rusak, atau berisi parameter yang salah

File robot.txt berfungsi untuk memberitahukan “Search Engine Spider” dimana harus bekerja. Jika search engine crawler datang di web Anda, maka dia akan mencari file “robots.txt” dan memberitahukan search engine spider bahwa halaman web tersebut harus di-index atau diabaikan. Dengan tidak adanya file ini kemungkinan besar situs Anda tidak diindex oleh search engine secara keseluruhan. Selain itu, jika robot Google salah membaca isi “robots.txt” Anda, maka Google akan mengabaikan halaman web Anda. Anda bisa mempelajari tata cara penulisan robots di http://www.robotstxt.org/. Atau dengan melihat contoh berikut ini :
User-agent: *
Disallow: /preview/
Disallow: /_private/
Disallow: /cartconfig/
Disallow: /PDGTemplates/
Disallow: /flash/
Disallow: /kibo/
User-agent: atSpider
Disallow: /
User-agent: cherrypicker
Disallow: /
User-agent: DSurf
Disallow: /
User-agent: EliteSys Entry
Disallow: /
User-agent: EmailCollector
Disallow: /
User-agent: EmailSiphon
Disallow: /
User-agent: EmailWolf
Disallow: /
User-agent: Mail Sweeper
Disallow: /
User-agent: munky
Disallow: /
User-agent: Roverbot
Disallow: /
User-agent: WebEmailExtrac
Disallow: /


2. Halaman web mempunyai code terlalu panjang

Jika halaman web Anda berisikan code Javascript, CSS, HTML dan lainnya yang terlalu banyak dan panjang, maka akan membuat web Anda susah atau lambat diakses. Jika itu terjadi maka robot search engine akan kesulitan untuk mengurai isi web Anda.


3. Memiliki title tag yg buruk

Kebanyakan situs mempergunakan title tag yang panjang, namun lebih baik lebih baik menempatkannya setelah keyword phrase. Keyword phrase harus ditempatkan dengan benar di text body web Anda, jika ingin diranking oleh Google untuk keyword-keyword yang diharapkan pada halaman web. Jangan menggunakan keyword yang kurang atau salah.

4. Navigasi situs yang buruk
Jika anda membuat menu yang menggunakan Javascript, DHTML atau AJAX, maka menu tersebut tidak bisa diindex oleh robot search engine, karena karena robot search engine hanya bisa meng-index link yang menggunakan HTML. Pengunjung situs akan cepat pergi jika mereka tidak menemukan hal yg menarik di situs Anda. Jadi gunakan sitemap untuk mempermudah pengunjung menemukan apa yg mereka cari atau menemukan hal yang menarik di situs Anda.


5. Tidak memanfatkan Meta Data

Meta data membantu situs Anda dalam menentukan relevansi halaman web. Meskipun meta data tidak memberikan efek yg begitu besar bagi situs Anda, tapi tidak ada ruginya jika Anda menggunakannya.


6. Flash

Sebagian besar orang menggunakan flash dalam design web mereka agar tampak menarik, namun mereka tidak mengetahui bahwa content flash sulit dibaca oleh search engine.


7. Directory List

Submit situs kalian ke directory list, khususnya Dmoz. Meskipun Dmoz adalah open directory project yg dikelola oleh sukarelawan, tapi perlu diketahui bahwa Google directory mengacu pada Dmoz directory. Selain itu, Alexa, Yahoo, AOL, Lycos, Teoma, AskJeevess Netscape, Hotbot dan search engine lainnya juga mengacu ke Dmoz directory. Jadi Dmoz adalah salah satu incoming link yang penting bagi Anda.


8. Tidak ada Backlink

Search engine menggunakan situs yang melink ke suatu situs (backlink) sebagai “vote of importance and relevancy”. Usahakan mendapat link yg bagus dan sesuai dengan topik situs kalian. Salah satu cara untuk mendapatkan incoming link secara alami adalah dengan menyajikan content yg menarik,unik, dan dengan penulisan yang tepat.


9. Menggunakan Paid Link

Bukannya dilarang jika Anda ingin membeli link, hanya saja kebanyakan Paidlink tersebut justru akan menurunkan page rank situs Anda. Anda bisa mencari link yang relevan. Hati-hati dalam menempatkan link di situs Anda, dan pastikan link tersebut relevan dan berkualitas.


10. Melanggar ToS (Terms of Service) Search Engine

Search Engine mempunyai peraturan dan ketentuan jadi Anda harus mematuhinya.


11. URL website yang terlalu banyak variable

Jika url anda terlalu banyak variable, maka Google akan mengabaikan halaman web Anda. Contoh URL yang terlalu banyak variable :
http://domain.com/page.php?page=1&id=2&mi rror=3&direct=index.html
Pernyataan resmi dari search engine Google, bahwa Google secara dinamis akan men-generate webpage, termasuk .asp page, .php page dan tanda tanya di URL website. Dengan adanya variable URL yang banyak, maka dapat menyebabkan masalah untuk crawler dan mungkin akan diabaikan.


12. Menggunakan session ID di Web

Search engine Gogle tidak mau meng-index suatu URL yang berisikan session ID karena menyebabkan duplicate content. Penggunaan cookies lebih baik dari pada menggunakan session ID.

slide kulo