الجمعة، 11 يناير 2013

TUGAS BESAR HERMANSYAH



Bahan buat Blog “ Tugas Akhir Keamanan Jaringan Komputer Lanjut “
Soal :
1. analisa cara kerja dan fungsi port ?
2. peralatan apa saja yang bisa di gunakan untuk scan port ?
3. bagaimana kita mengetahui port local kita dan menggunakan  tool apa ?
4. jelaskan iptables dan masing-masing fungsi code ?
5. berikan contoh ssh dan telnet menggunakan iptables ?
Jawaban :
Berawal dari sebuah Tugas Akhir Keamanan Komputer Lanjut, penulis mencoba untuk berbagi ilmu. Table dibawah ini menunjukan daftar Port dan Aplikasi yang kerap menerina “perlakuan” Port Scanning dari Hacker maupun Cracker, untuk daftar selengkapnya bisa dilihat di hhtp://www.iana.org/assignments/port-numbers.
Layanan atau Aplikasi
Port / Protokol
Keterangan
echo
7 / tcp
berbagai protokol, Sebagian banyak port ini tidak begitu di perlukan namun tidak dapat diganggu. Contohnya layanan echo (port 7) yang tidak boleh dikacaukan dengan program ping umum.

systat
11 / tcp
chargen
19 / tcp
ftp-data
20 / tcp
FTP-DATA. “Active” koneksi FTP menggunakan dua port: 21 adalah port kontrol, dan 20 adalah tempat data yang masuk. FTP pasif tidak menggunakan port 20 sama sekali.
ftp-data
21 / tcp
Port server FTP yang digunakan oleh File Transfer Protocol. Ketika seseorang mengakses FTP server, maka ftp client secara default akan melakukan koneksi melalui port 21.

ssh
22 / tcp
SSH (Secure Shell), Port ini ini adalah port standar untuk SSH, biasanya diubah oleh pengelola server untuk alasan keamanan.

telnet
23 / tcp
Telnet server. Jika anda menjalankan server telnet maka port ini digunakan client telnet untuk hubungan dengan server telnet.
SMTP
25 / tcp
SMTP, Simple Mail Transfer Protocol, atau port server mail, merupakan port standar yang digunakan dalam komunikasi pengiriman email antara sesama SMTP Server.
nameserver
42 / tcp

whois
43 / tcp

tacacs
49 / udp

xns-time
52 / tcp

xns-time
52 / udp

dns-lookup
53 / udp
DNS, atau Domain Name Server port. Name Server menggunakan port ini, dan menjawab pertanyaan yang terkait dengan penerjamahan nama domain ke IP Address.
dns-zone
53 / tcp

whois++
63 / tcp / udp

oracle-sqlnet
66 / tcp

bootps
67 / tcp / udp
(UDP) – BOOTP, atau DHCP port (server). Kebutuhan akan Dynamic Addressing dilakukan melalui port ini.
bootpc
68 / tcp / udp
(UDP) – BOOTP, atau DHCP port yang digunakan oleh client.
tftp
69 / udp
tftp, atau Trivial File Transfer Protocol.
gopher
70 / tcp / udp

finger
79 / tcp
Port Finger, digunakan untuk memberikan informasi tentang sistem, dan login pengguna.
http
80 / tcp
WWW atau HTTP port server web. Port ini biasanya digunakan untuk web server, jadi ketika user mengetikan alamat IP atau hostname di web broeser maka web browser akan melihat IP tsb pada port 80,
alternate web port (http)
81 / tcp
Port Web Server Alternatif, ketika port 80 diblok maka port 81 dapat digunakan sebagai port altenatif untuk melayani HTTP.
kerberos or alternate web port (http)
88 / tcp

pop2
109 / tcp

pop3
110 / tcp
POP3 Port, alias Post Office Protocol, port server pop mail. Apabila anda mengambil email yang tersimpan di server dapat menggunakan teknologi POP3 yang berjalan di port ini.
sunrpc
111 / tcp
sunrpc (Sun Remote Procedure Call) atau portmapper port. Digunakan oleh NFS (Network File System), NIS (Network Information Service), dan berbagai layanan terkait.
sqlserv
118 / tcp

nntp
119 / tcp
NNTP atau Port yang digunakan oleh News Server, sudah sangat jarang digunakan.
ntp
123 / tcp / udp
Network Time Protocol (NTP), port yang digunakan untuk sinkronisasi dengan server waktu di mana tingkat akurasi yang tinggi diperlukan.
ntrpc-or-dce (epmap)
135 / tcp / udp

netbios-ns
137 / tcp / udp
NetBIOS (SMB).
netbios-dgm
138 / tcp / udp
netbios
139 / tcp
imap
143 / tcp
IMAP, Interim Mail Access Protocol. Merupakan aplikasi yang memungkinkan kita membaca e-mail yang berada di server dari komputer di rumah / kantor kita, protokol ini sedikit berbeda dengan POP.
snmp
161 / udp
SNMP, Simple Network Management Protocol. Lebih umum digunakan di router dan switch untuk memantau statistik dan tanda-tanda vital (keperluan monitoring).
snmp-trap
162 / udp

xdmcp
177 / tcp / udp
XDMCP, X Display Management Control Protocol untuk sambungan remote ke sebuah X server.
bgp
179 / tcp

snmp-checkpoint
256 / tcp

snmp-checkpoint
257 / tcp

snmp-checkpoint
258 / tcp

snmp-checkpoint
259 / tcp

ldap
389 / tcp

netware-ip
396 / tcp

timbuktu
407 / tcp

https/ssl
443 / tcp
HTTPS, HTTP yang aman (WWW) protokol di gunakan cukup lebar.
ms-smb-alternate
445 / tcp / udp

ipsec-internet-key-exchange (ike)
500 / udp

exec
512 / tcp / udp
(tcp) exec adalah bagaimana menunjukkan di netstat. Sebenarnya nama yang tepat adalah rexec, untuk Remote Execution. (udp) biff, protokol untuk mail pemberitahuan.
rlogin
513 / tcp
Login, sebenarnya rlogin, alias Remote Login. Tidak ada hubungannya dengan standar / bin / login yang kita gunakan setiap kali kita log in.
rwho
513 / udp

rshell
514 / tcp
Shell adalah nama panggilan, dan bagaimana netstat menunjukkan hal itu. Sebenarnya, rsh adalah aplikasi untuk “Remote Shell”. Seperti semua “r” perintah ini melemparkan kembali ke kindler, sangat halus.
syslog
514 / tcp / udp
(tcp) Shell adalah nama panggilan, dan bagaimana netstat menunjukkan hal itu. Sebenarnya, rsh adalah aplikasi untuk “Remote Shell”. Seperti semua “r” perintah ini melemparkan kembali ke kindler, sangat halus. (udp) Daemon syslog port, hanya digunakan untuk tujuan logging remote.
printer
515 / tcp

printer
515 / udp

talk
517 / tcp / udp

ntalk
518 / tcp / udp

route
520 / udp

netware-ncp
524 / tcp

irc-serv
529 / tcp / udp

uucp
540 / tcp / udp

klogin
543 / tcp / udp

mount
645 / udp

remotelypossible
799 / tcp

rsync
873 / tcp

samba-swat
901 / tcp
SWAT, Samba Web Administration Tool port. Port yang digunakan oleh aplikasi pengelolaan SAMBA berbasis web.
w2k rpc services
1024 – 1030 / tcp
adalah port pertama yang merupakan Unprivileged port, yang ditugaskan secara dinamis oleh kernel untuk aplikasi apa pun yang memintanya. Aplikasi lain umumnya menggunakan port unprivileged di atas port 1024.

1024 – 1030 / udp
socks
1080 / tcp
Socks Proxy Server.
kpop
1109 / tcp

bmc-patrol-db
1313 / tcp

notes
1352 / tcp

timbuktu-srv1
1417 – 1420 / tcp / udp

ms-sql
1433 / tcp
MS SQL Port server.
citrix
1494 / tcp

sybase-sql-anywhere
1498 / tcp

funkproxy
1505 / tcp / udp

ingres-lock
1524 / tcp

oracle-srv
1525 / tcp

pracle-tli
1527 / tcp

pptp
1723 / tcp

winsock-proxy
1745 / tcp

radius
1812 / udp

remotely-anywhere
2000 / tcp

cisco-mgmt
2001 / tcp

nfs
2049 / tcp

compaq-web
2301 / tcp

sybase
2368

openview
2447 / tcp

realsecure
2998 / tcp

nessusd
3001 / tcp

ccmail
3264 / tcp / udp

ms-active-dir-global-catalog
3268 / tcp / udp

bmc-patrol-agent
3300 / tcp

mysql
3306 / tcp
Port server MySQL
sql
3351 / tcp

ms-termserv
3389 / tcp

cisco-mgmt
4001 / tcp

nfs-lockd
4045 / tcp

rwhois
4321 / tcp / udp

postgress
5432 / tcp
Port server PostgreSQL
secured
5500 / udp

pcanywhere
5631 / tcp

vnc
5800 / tcp

vnc-java
5900 / tcp

xwindows
6000 / tcp
X11 TCP port untuk remote. Mencakup port 6000-6009 karena X dapat mendukung berbagai menampilkan dan setiap tampilan akan memiliki port sendiri. SSH X11Forwarding akan mulai menggunakan port pada 6.010.
cisco-mgmt
6001 / tcp

arcserve
6050 / tcp

apc
6549 / tcp

irc
6667 / tcp
ircd, Internet Relay Chat Daemon
font-service
7100 / tcp / udp
Beberapa Font server menggunakan port tersebut.
web
8000 / tcp
Common Web Cache dan port server Proxy Web.
web
8001 / tcp
web
8002 / tcp
web
8080 / tcp
blackie-icecap
8081 / tcp

cisco-xremote
9001 / tcp

jetdirect
9100 / tcp

dragon-ids
9111 / tcp

iss system scanner agent
9991 / tcp

iss system scanner console
9992 / tcp

Webmin
10000 / tcp
port yang digunakan oleh webmin dalam layanan pengelolaan berbasis web.
stel
10005 / tcp

Netbus
12345 / tcp

stel
10005 / tcp

Netbus
12345 / tcp

snmp-checkpoint
18210 / tcp

snmp-checkpoint
18211 / tcp

snmp-checkpoint
18186 / tcp

snmp-checkpoint
18190 / tcp

snmp-checkpoint
18191 / tcp

snmp-checkpoint
18192 / tcp

Trinoo_bcast
27444 / tcp

Trinoo_master
27665 / tcp

Quake
27960 / udp

backorifice
31337 / udp

rpc-solaris
32771 / tcp

snmp-solaris
32780 / udp

reachout
43188 / tcp

bo2k
54320 / tcp

bo2k
54321 / udp

netprowler-manager
61440 / tcp

pcanywhere-def
65301 / tcp


Mohon maaf sebelumnya kalau dalam penulisan ini terdapat kesalahan, salah eja, salah penomeran Port dan kesalahan-kesalahan lainnya karena ini mengetikanya juga sambil terkantuk-kantuk ( terkesan berlebihan banget yaaa….hehehehehe ). Maklum kota Metro lagi dingin banget.
Nb : Dilihat dari banyaknya keterangan Port yang masih kosong, penulis mohon bantuannya bagi teman-teman yang membaca dan mengetahui fungsi  dari Port tersebut melalui E-mail: hermansyah6200@gmail.com
peralatan apa saja yang bisa di gunakan untuk scan port ?
Software atau tool yang digunakan untuk men-scan Port :
Salam hangat selalu buat teman ku yang ada dicivitas akademika, kali ini saya coba akan menjawab sebuah pertanyaan yang menjadi tugas akhir dari mata kuliah Keamanan Komputer Lanjut…tulisan ini dibuat berdasarkan beberapa referensi yang bertebaran yang ada diinternet…hehehehehe. Silahkan dinilai dan kalau ada yang salah mohon untuk dikonfirmasi hermansyah6200@gmail.com
TCP connect scan
Jenis scan ini konek ke port sasaran dan menyelesaikan three-way handshake (SYN, SYN/ACK, dan ACK). Scan jenis ini mudah terdeteksi oleh sistem sasaran.
TCP SYN scan
Teknik ini dikenal sebagai half-opening scanning karena suatu koneksi penuh TCP tidak sampai terbentuk. Sebaliknya, suatu paket SYN dikirimkan ke port sasaran. Bila SYN/ACK diterima dari port sasaran, kita dapat mengambil kesimpulan bahwa port itu berada dalam status LISTENING. Suatu RST/ACT akan dikirim oleh mesin yang melakukan scanning sehingga koneksi penuh tidak akan terbentuk. Teknik ini bersifat siluman dibandingkan TCP connect penuh, dan tidak aka tercatat pada log sistem sasaran.
TCP FIN scan
Teknik ini mengirim suatu paket FIN ke port sasaran. Berdasarkan RFC 793, sistem sasaran akan mengirim balik suatu RST untuk setiap port yang tertutup. Teknik ini hanya dapat dipakai pada stack TCP/IP berbasis UNIX.
TCP Xmas Tree scan
Teknik ini mengirimkan suatu paket FIN, URG, dan PUSH ke port sasaran. Berdasarkan RFC 793, sistem sasaran akan mengembalikan suatu RST untuk semua port yang tertutup.
TCP Null scan
Teknik ini membuat off semua flag. Berdasarkan RFC 793, sistem sasaran akan mengirim balik suatu RST untuk semua port yang terturup.
TCP ACK scan
Teknik ini digunakan untuk memetakan set aturan firewall. Dapat membantu menentukan apakah firewall itu merupakan suatu simple packet filter yang membolehkan hanya koneksi-koneksi tertentu (koneksi dengan bit set ACK) atau suatu firewall yang menjalankan advance packet filtering.
TCP Windows scan
Teknik ini dapat mendeteksi port-port terbuka maupun terfilter/tidak terfilter pada sistem-sistem tertentu (sebagai contoh, AIX dan FreeBSD) sehubungan dengan anomali dari ukuran windows TCP yang dilaporkan.
TCP RPC scan
Teknik ini spesifik hanya pada system UNIX dan digunakan untuk mendeteksi dan mengidentifikasi port RPC (Remote Procedure Call) dan program serta normor versi yang berhubungan dengannya.
UDP scan
Teknik ini mengirimkan suatu paket UDP ke port sasaran. Bila port sasaran memberikan respon berupa pesan “ICMP port unreachable” artinya port ini tertutup. Sebaliknya bila tidak menerima pesan di atas, kita dapat menyimpulkan bahwa port itu terbuka. Karena UDP dikenal sebagai connectionless protocol, akurasi teknik ini sangat bergantung pada banyak hal sehubungan dengan penggunaan jaringan dan system resource. Sebagai tambahan, UDP scanning merupakan proses yang amat lambat apabila anda mencoba men-scan suatu perangkat yang menjalankan packet filtering berbeban tinggi.

Tool Scanner Port (Scanner Berbasis Windows)
Beberapa port scanner berbasis Windows yang cukup baik kecepatan, akurasi, dan fitur-fitur yang tersedia antara lain seperti dibawah ini:

NetScan Tools Pro 2000
NetScan Tools Pro 2000 (NSTP2K) menyediakan segala macam utilitas dalam satu paket: DNS query mencakup nslookup dan dig dengan axfr, whois, ping sweeps, Net-BIOS name table scan, SNMP walks, dan banyak lagi.
Lebih jauh lagi NSTP2K mempunyai kemampuan multitasking. Serta dapat menjalankan port scan terhadap suatu sistem dan menjalankan ping sweep pada sistem yang lain. NetScan Tools Pro 2000 menyertakan port scanner versi Windows terbaik yang ada sekarang, yaitu pada tab Port Probe. Kehebatan Port Pro mencakup flexible target dan spesifikasi port (IP sasaran maupun daftar port dapat diimpor dari file teks), mendukung scan TCP maupun UDP (tapi tidak selektif per port), dan multithreaded speed. Di sisi negatifnya, output yang dihasilkan Port Pro bersifat grafis sehingga sulit dibaca oleh script ataupun tool pemilah-milah data. Sayangnya juga, output dari suatu fungsi (misalnya NetScanner) tidak dapat secara otomatis dijadikan input oleh fungsi lain (misalnya Port Probe).
SuperSCAN
SuperScan dapat diperoleh di www.foundstone.com/rdlabs/ termofuse.php?filename=superscan.exe. SuperScan adalah port scanner TCP yang juga cepat dan dapat diandalkan pada harga yang jauh lebih baik (gratis!). Seperti juga NSTP2K, SupeScan memungkinkan spesifikasi fleksibel dari IP-IP sasaran dan daftar port. Opsi Extract From File nyaman mudah digunakan dan cepat pula.
WinScan
WinScan, karya Sean Mathias dari Prosolve (http://prosolve.com) adalah suatu TCP port scanner yang tersedia baik dalam format grafis (winscan.exe) maupun command line (scan.exe). Versi command line-nya mampu men-scan network Class-C dan output-nya mudah dibaca.
IpEye
Packet scan eksotis hanya nmap di Linux? Tidak juga. IpEye karya Arne Voidstrom (http://ntsecurity.nu) dapat menjalankan source port scanning, selain SYN, FIN, dan Xmas scan dari command line Windows. Satu-satunya keterbatasan ipEye adalah hanya berjalan pada Windows 2000 dan setiap kali hanya dapat men-scan satu host.
Banyak router dan firewall dikonfigurasikan agar memungkinkan protokol seperti DNS (UDP 53), FTP data channel (TCP 20), SMTP (TCP 25), dan HTTP (TCP 80) masuk melalui filter, source port scanning dapat menyerang kontrolkontrol ini dengan jalan menyamar sebagai lalu-lintas komunikasi inbound ini. Untuk itu, anda harus mengetahui ruang alamat yang ada di balik firewall atau router, yang sulit bila melibatkan NAT (NetBIOS Auditing Tool).
WUPS
Windows UDP Port Scanner (WUPS) berasal dari pengarang yang sama dengan ipEye (Arne Vidstorm). Suatu UDP scanner grafis yang mudah digunakan dan cepat (tergantung pada delay setting-nya), walaupun hanya dapat men-scan satu host setiap kali. Suatu tool yang baik untuk UDP scan cara cepat.

Windows Ping Tool
Pinger (www.nmrc.org/files/snt/)
Pinger dari Rhino9 ini adalah pinger tercepat yang ada untuk Windows dan merupakan freeware! Seperti juga fping, Pinger mengirimkan benyak paket ICMP ECHO secara bersamaan dan menunggu responnya. Selain itu, Pinger dapat melacak host name dan menyimpannya pada suatu file.
Ping Sweep (www.solarwinds.net)
Ping Sweep dapat sangat cepat sebab kita dapat menentukan delay time antara paket-paket yang dikirimkan. Dengan menetapkan delay time sebagai 0 atau 1, suatu hostname dari network kelas C dapat diperoleh dalam waktu kurang dari 7 detik. Hati-hati dengan tool ini sebab bisa-bisa membuat macet link yang lambat seperti ISDN 128K atau Frame Relay link.
WS_Ping ProPack (www.ipswitch.com) dan NetScanTools (www.nwpsw.com)
Kedua utilitas ping sweep ini memadai untuk melakukan ping sweep terhadap network kecil, namun keduanya lebih lambat dibandingkan dengan Pinger atau Ping Sweep.
Lebih lengkapnya, tool-tool yang ada dicantumkan pada lampiran Scanning Tools.


Jenis-Jenis Probe (Hasil Scan)
Setelah mengenal macam-macam teknik dan tool untuk port scanning, apa yang dapat diperoleh dari hasil scan? Dari tool apapun yang digunakan, yang coba didapatkan adalah mengidentifikasi port yang terbuka dan memberi tanda mengenai sistem operasinya. Sebagai contoh, apabila port 139 dan 135 terbuka, besar kemungkinannya bahwa system operasi sasaran adalah Windows NT. Windows NT umumnya listen pada port 135 dan 139. Berbeda dengan Windows 95/98 yang listen pada port 139.
Jenis-jenis pemeriksaan (probe) yang dapat dikirim untuk membantu membedakan suatu system operasi dari yang lain:
FIN probe
Suatu paket FIN dikirim ke suatu port terbuka. Perilaku yang benar adalah tidak memberikan respon. Akan tetapi, banyak implementasi stack seperti Windows NT akan merespon dengan suatu FIN/ACK.
Bogus Flag probe
Suatu flag TCP yang tidak didefinisikan di-set pada header TCP dari suatu SYN packet. Beberapa system operasi, seperti Linux, akan merespon dengan flag yang di-set pada response packet-nya
Initial Sequence Number (ISN) sampling
Pemahaman dasarnya adalah mendapatkan suatu pola pada initial sequence yang dipilih oleh implementasi TCP sewaktu merespon suatu permintaan koneksi.
'Don't fragment bit' monitoring
Beberapa sistem operasi akan menset 'Don't fragment bit' untuk meningkatkan kinerja. Bit ini dapat dimonitor untuk menentukan jenis sistem operasi apa yang menampilkan perilaku ini.
TCP initial windows size
Melacak initial window size pada paket yang kembali. Pada beberapa implementasi stack, ukuran ini unik dan sangat meningkatkan akurasi mekanisme fingerprinting.
ACK value
IP stack berbeda-beda dalam menggunakan nsequence value yang digunakan untuk ACK field; beberapa implementasi akan mengembalikan sequence number yang anda kirim dan yang lain akan mengembalikan sequence number + 1
ICMP error message quenching
Suatu sistem operasi mungkin mengikuti RFC 1812 dan membatasi kecepatan pengiriman error message. Dengan cara mengirim paket UDP ke beberapa port acak bernomor besar, anda dapat menghitung banyaknya unreachable message received dalam suatu jangka waktu tertentu
ICMP message quoting
Sistem operasi berbeda-beda dalam memberikan informasi yang dikutip sewaktu mendapatkan ICMP error. Dengan memeriksa quoted message, anda dapat menduga sistem operasi sasaran.
ICMP error message – echoing integrity
Beberapa implementasi stack mungkin mengubah IP header sewaktu mengirim balik ICMP error messages. Dengan memeriksa jenisjenis pengubahan yang dilakukan pada header, anda dapat emperkirakan sistem operasi sasaran.
Type of service (TOS)
Untuk pesan 'ICMP port unreachable,' TOS-nya diperiksa. Kebanyakan implementasi stack menggunakan 0, tapi bisa berbeda di system operasi lain.
Fragmentation handling
Stack yang berbeda menangani overlapping fragmen dengan cara yang berbeda. Ada yang menimpa data lama dengan yang baru atau dapat pula sebaliknya pada waktu fragmen-fragmen ini dirakit kembali.
TCP options
TCP options didefiniskan oleh RFC 793 dan yang lebih baru oleh RFC 1323. Implementasi stack yang lebih baru cenderung mengimlementasikan opsi RFC 1323 yang lebih maju. Dengan mengirimkan paket dengan multiple option set, seperti no operation, maximum segment size, window scale factor, dan timestamp, dimungkinkan untuk membuat dugaan-dugaan tentang system operasi sasaran.
Armitage
bagaimana kita mengetahui port local kita dan menggunakan  tool apa ?
option netstat digunakan untuk menampilkan semua koneksi yang sedang terbuka pada mesin local, buka Command Profm atau tekan tombol Windows + R maka akan keluar jendela Command Profm lalu ketikan CMD, maka akan muncul layar hitam dan ketikan perintah-perintah dibawah ini untuk mengetahui Port Local yang terbuka pada Notebook, Netbook atau PC teman-teman….hehehehehehe
C:\windows>netstat -a
Active Connections
Proto Local Address Foreign Address State
TCP ankit:1031 dwarfie.box.com:ftp ESTABLISHED
TCP ankit:1036 dwarfie.box.com:ftp-data TIME_WAIT
TCP ankit:1043 banners.egroups.com:80 FIN_WAIT_2
TCP ankit:1045 mail2.mtnl.net.in:pop3 TIME_WAIT
TCP ankit:1052 zztop.box.com:80 ESTABLISHED
TCP ankit:1053 mail2.mtnl.net.in:pop3 TIME_WAIT
UDP ankit:1025 *:*
UDP ankit:nbdatagram *:*

Perintah Netstat -n pada dasarnya merupakan tampilan bentuk numeric
C:\>netstat -n
Active Connections
Proto Local Address Foreign Address State
TCP 203.xx.251.161:1031 195.1.150.227:21 ESTABLISHED
TCP 203.xx.251.161:1043 207.138.41.181:80 FIN_WAIT_2
TCP 203.xx.251.161:1053 203.94.243.71:110 TIME_WAIT
TCP 203.xx.251.161:1058 195.1.150.227:20 TIME_WAIT
TCP 203.xx.251.161:1069 203.94.243.71:110 TIME_WAIT
TCP 203.xx.251.161:1071 194.98.93.244:80 ESTABLISHED
TCP 203.xx.251.161:1078 203.94.243.71:110 TIME_WAIT
Dimana xxx dapat berupa UDP atau TCP. Pemakaian argumen ini akan lebih jelas
C:\>netstat -p tcp
Active Connections
Proto Local Address Foreign Address State
TCP ankit:1031 dwarfie.box.com:ftp ESTABLISHED
TCP ankit:1043 banners.egroups.com:80 FIN_WAIT_2
TCP ankit:1069 mail2.mtnl.net.in:pop3 TIME_WAIT
TCP ankit:1078 mail2.mtnl.net.in:pop3 TIME_WAIT
TCP ankit:1080 mail2.mtnl.net.in:pop3 TIME_WAIT
TCP ankit:1081 www.burstnet.com:80 FIN_WAIT_2
TCP ankit:1083 zztop.box.com:80 TIME_WAIT

Sekarang kita telah sampai pada argumen yang terakhir dalam kaitannya dengan perintah Netstat, argumen
C:\windows>netstat -r
Route Table
Active Routes:
Network Address Netmask Gateway Address Interface Metric
0.0.0.0 0.0.0.0 203.94.251.161 203.94.251.161 1
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
203.94.251.0 255.255.255.0 203.94.251.161 203.94.251.161 1
203.94.251.161 255.255.255.255 127.0.0.1 127.0.0.1 1
203.94.251.255 255.255.255.255 203.94.251.161 203.94.251.161 1
224.0.0.0 224.0.0.0 203.94.251.161 203.94.251.161 1
255.255.255.255 255.255.255.255 203.94.251.161 203.94.251.161 1
Network Address Netmask Gateway Address Interface Metric
0.0.0.0 0.0.0.0 203.94.251.161 203.94.251.161 1
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
203.94.251.0 255.255.255.0 203.94.251.161 203.94.251.161 1
203.94.251.161 255.255.255.255 127.0.0.1 127.0.0.1 1
203.94.251.255 255.255.255.255 203.94.251.161 203.94.251.161 1
224.0.0.0 224.0.0.0 203.94.251.161 203.94.251.161 1
255.255.255.255 255.255.255.255 203.94.251.161 203.94.251.161 1
Active Connections
Proto Local Address Foreign Address State
TCP ankit:1031 dwarfie.box.com:ftp ESTABLISHED
TCP ankit:1043 banners.egroups.com:80 FIN_WAIT_2
TCP ankit:1081 www.burstnet.com:80 FIN_WAIT_2
TCP ankit:1093 zztop.box.com:80 TIME_WAIT
TCP ankit:1094 zztop.box.com:80 TIME_WAIT
TCP ankit:1095 mail2.mtnl.net.in:pop3 TIME_WAIT
TCP ankit:1096 zztop.box.com:80 TIME_WAIT
TCP ankit:1097 zztop.box.com:80 TIME_WAIT
TCP ankit:1098 colo88.acedsl.com:80 ESTABLISHED
TCP ankit:1099 mail2.mtnl.net.in:pop3 TIME_WAIT


jelaskan iptables dan masing-masing fungsi code ?
IPTABLES
- Apa itu iptables?
iptables adalah suatu tools dalam sistem operasi linux yang berfungsi sebagai alat untuk melakukan filter (penyaringan) terhadap (trafic) lalulintas data. Secara sederhana digambarkan sebagai pengatur lalulintas data. Dengan iptables inilah kita akan mengatur semua lalulintas dalam komputer kita, baik yang masuk ke komputer, keluar dari komputer, ataupun traffic yang sekedar melewati komputer kita.
- Gimana perintahnya?
iptables [–t tables] [option] [rule] [target]
Contohnya:
iptables –P FORWARD ACCEPT
- Apa saja yang bisa dilakukan dengan iptables?
Dengan kemampuan tools iptables ini, kita bisa melakukan banyak hal dengan iptables. Yang paling penting adalah bahwa dengan iptables ini kita bisa membuat aturan (rule), untuk arus lalulintas data. Aturan aturan itu dapat mencakup banyak hal, seperti besar data yang boleh lewat, jenis paket/datagram yang dapat diterima, mengatur trafic berdasar asal dan tujuan data, forwarding, nat, redirecting, pengelolaan port, dan firewall.
Perlakuan apa saja yang dialami data oleh iptables?
Perlakuan yang dialami oleh data/paket data oleh iptables digambarkan melalui tabel. Macam tabelnya adalah:

A. Table
Fungsi masing-masing tabel pada IPTables:

1. NAT : NAT mentranslasikan (menggantikan) alamat asal atau tujuan dari sebuah paket. Contoh apabila satu buah PC Client yang beralamat IP private memberikan request agar terkoneksi ke internet dari gateway dan di terima oleh PC Router, sedangkan hanya PC Router yang memiliki alamat IP public, maka agar client dapat terkoneksi ke internet, IP private tadi ditranslasikan (digantkan) requestnya oleh PC Router dengan IP public miliknya, kemudian hasil request disambungkan kembali ke PC Client, sehingga PC Client dapat mengakses internet.
2. MANGLE : Melakukan penghalusan (mangle) paket, seperti TTL, TOS dan MARK.
3. FILTER : Menentukan paket yang akan di-DROP, LOG, ACCEPT atau REJECT
Bagaimana kita bisa peroleh informasi tentang iptables tersebut di dalam sistem operasi linux?
Kita bisa peroleh info tentang iptables, dengan cara mengetikkan:
man iptables
atau
iptables –help
Perintah man adalah untuk mendapatkan manual penggunaaan dari iptables ini. Sedangkan help adalah untuk mendapatkan informasi help dari iptables tersebut.

B.COMMAND
Command dan rule yang dipasang pada iptables (firewall) memiliki ketentuan. Pada dasarnya iptables pada komputer dianggap sebagai TABEL IP sesuai dengan namanya. System hanya akan menjalan rule yang ada pada tabel. Sedangkan rule yang sudah ada pada iptables juga dapat di hapus atau di replace dengan rule lain. Berikut beberapa command untuk penambahan, penghapusan dan operasi sejenisnya yang akan diperlakukan terhadap rule.
Command
Keterangan
-A
–append
Perintah ini menambahkan aturan di akhir chain. Aturan ditambahkan di akhir baris chain yang bersangkutan, sehingga dieksekusi terakhir kali
-D         
–delete
Menghapus satu aturan chain. Caranya dengan menyebutkan perintah mana yang ingin dihapus secara lengkap atau menyebutkan nomor baris perintah yang akan dihapus.
-R         
–replace
Menggantikan aturan chain dengan aturan (entry) baru.
-I         
–insert
Memasukkan aturan pada suatu baris di chain. Aturan akan dimasukkan ke baris yang ditulis, dan aturan yang tadinya ada di baris tersebut akan bergeser ke bawah bersama dengan baris-baris selanjutnya
-L         
–list
Menampilkan semua aturan pada tabel. Jika tabel tidak disebutkan, seluruh aturan di semua tabel akan ditampilkan, walaupun tidak ada aturan sama sekali pada 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 hilang.
-N         
–new-chain
Membuat chain baru.
-X         
–delete-chain
Menghapus chain yang dituliskan. Notabene, tidak boleh ada aturan lain yang bersangkutan dengan chain tersebut.
-P         
–policy
Membuat kebijakan default pada chain. Jika ada paket yang tidak memenuhi aturan pada baris yang diinginkan, paket akan diperlakukan sesuai dengan kebijakan default ini.
-E         
–rename-chain
Mengubah nama chain.
C.OPTION
Option terdiri dari command, dan parameter serta opsi tambahan

Option
Command
Keterangan
-v         
–verbose
–list         
–append
–insert
–delete
–replace
Memberi output secara detail. Jika digunakan dengan –list, akan menampilkan K (x1.000),
M (1.000.000) dan G (1.000.000.000).
-x         
–exact
–list
Memberikan output secara tepat.
-n          
–numeric
–list
Memberikan output berbentuk angka. IP Address dan port ditampilkan dalam bentuk angka, bukan hostname ataupun nama servis/repositori.
–line
-number
–list
Menampilkan nomor dari daftar aturan.
–modprobe
All
Memerintahkan IPTables memanggil modul tertentu. Dapat digunakan bersama semua command.

D. Generic Matches
Generic Matches adalah pendefinisian kriteria secara umum. Jadi sintaks generic matches akan sama untuk semua protokol. Setelah protokol didefinisikan, maka aturan yang lebih spesifik protokol baru didefinisikan. Tiap-tiap protokol berbeda karakter, sehingga perlu perlakuan yang berbeda.
Match
Keterangan
-p         
–protocol
Mengecek tipe protokol tertentu, seperti TCP, UDP, ICMP dan ALL. Tanda inverse juga berlaku di sini, misal kita menghendaki semua protokol kecuali icmp, maka kita cukup tuliskan –protokol ! icmp yang berarti semua kecuali icmp.
-s         
–src
–source
Menyocokkan paket berdasar alamat IP asal tunggal seperti 192.168.2.69, atau alamat network seperti 192.168.2.0/255.255.255.128  dan 192.168.2.0/25. Inversi juga berlaku.
-d         
–dst
–destination
Menyocokkan paket berdasar alamat tujuan. Sama seperti match –src

-i         
–in-interface
Menyocokkan paket berdasar interface source paket dan hanya berlaku pada chain INPUT, FORWARD dan PREROUTING
-o         
–out-interface
Menyocokkan paket berdasar interface destination paket seperti –in-interface dan hanya berlaku untuk chain OUTPUT, FORWARD dan POSTROUTING.

E. Implicit Matches
Implicit Match merupakan sekumpulan rule yang diload setelah tipe protokol disebutkan, yaitu TCP matches, UDP matches dan ICMP matches.
a.    TCP matches
Match
Keterangan
–sport         
–source-port

Menyocokkan paket berdasar port asal. Kita memutuskan port atau service yang di definisikan, atau bahkan range port tertentu. Untuk mendefinisikan range antara port 22 sampai dengan 80, tuliskan –sport 22:80.
Jika bagian kiri kita hilangkan, paket diartikan dari port 0. Jika bagian kanan kita hilangkan, paket diartikan dari port 65535. Inverse juga berlaku.

–dport         
–destination-po rt
Sama dengan match –source-port.
–tcp-flags
Menyocokkan paket berdasar TCP flags yang ada pada paket. Match ini bisa menggunakan inversi.
–syn

Memeriksa apakah flag SYN di-set dan ACK dan FIN tidak di-set. Seperti –tcp-flags, SYN, ACK, FIN SYN, dapat digunakan untuk request koneksi TCP baru ke server

b.    UDP matches
Karena protokol UDP bersifat connectionless, tidak ada flags yang mendeskripsikan status paket 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 mengirimkan pesan kesalahan dan kondisi jaringan lain. Hanya ada satu implicit match untuk tipe protokol ICMP, yaitu :
–icmp-type

F. Explicit Matches
a. MAC Address
Melakukan penyocokan paket berdasar MAC source address dan hanya berfungsi untuk jaringan yang menggunakan teknologi ethernet.
iptables –A INPUT –m mac –mac-source 00:00:00:00:00:05

b. Multiport Matches
Mendefinisikan port atau port range lebih dari satu, tspi definisi aturan sama untuk beberapa port. Kita tidak bisa menggunakan port matching standard dan multiport matching dalam waktu yang sama.
iptables –A INPUT –p tcp –m multiport –source-port 22,80, 110,1028

c. Owner Matches
Mencocokkan paket berdasar pemilik paket. Match ini bekerja di chain OUTPUT, tetapi terdapat kekurangan yaitu beberapa proses tidak memiliki owner (??).
iptables –A OUTPUT –m owner –uid-owner 500
Selain itu bisa juga dengan group ID dengan sintaks –gid-owner.

d. State Matches
Mendefinisikan state apa yang cocok. Ke empat state yang ada yaitu NEW, ESTABLISHED, RELATED dan INVALID.
NEW untuk paket yang memulai koneksi baru.
ESTABLISHED untuk koneksi yang sudah tersambung dan paket sudah bagian dari koneki.
RELATED untuk paket yang berhubungan dengan koneksi, tapi bukan bagian dari koneksi. Seperti FTP data transfer yang menyertai koneksi TCP atau UDP.
INVALID adalah paket yang tidak teridentifikasi, bukan bagian dari koneksi.
iptables –A INPUT –m state –state RELATED,ESTABLISHED

Selanjutnya apa itu yang disebut dengan chain?
Chain/rantai digambarkan sebagai jalur aliran data. Chains yang diperlukan untuk iptables ini antara lain:
Chain berikut Keterangan
FORWARD Route packet akan di FORWARD tanpa di proses lanjut di local
INPUT Route packet masuk ke dalam proses lokal sistem
OUTPUT Route packet keluar dari local sistem
PREROUTING Chain yang digunakan untuk keperluan perlakuan sebelum packet masuk route. Biasanya dipakai untuk proses NAT
POSTROUTING Chain yang digunakan untuk keperluan perlakuan sesudah packet masuk route. Biasanya dipakai untuk proses NAT
Chain PREROUTING dan POSTROUTING dimaksudkan sebagai jalur data sebelum dan sesudah data tersebut masuk ke dalam route.
PREROUTING: data sebelum masuk jalur route, akan di kenakan rule
POSTROUTING: data sebelum masuk akan dikenakan route

TARGET/JUMP
Perlakuan terhadap paket yang memenuhi aturan atau match. Chain yang ada akan dimasuki paket dengan kriteria. Contohnya ada chain bernama paket_tcp. Tambahkan aturan, dan direferensi dari chain input.
iptables –A INPUT –p tcp –j paket_tcp
Target
Keterangan
-j ACCEPT
–jump ACCEPT
Memberlakukan paket yang cocok dengan daftar match dan target.
-j DROP
–jump DROP
Membuang paket dan menolak memproses lebih jauh.
-j RETUR
–jump RETURN
Mengembalikan paket ke superset chain di atasnya dan masuk ke baris aturan berikutnya, jika pada subchain. Tapi jika pada chain utama seperti INPUT, maka paket dikembalikan kepada kebijakan default.
-j MIRROR
Membalik source address dan destination address.
Target ini bekerja pada chain INPUT, FORWARD dan PREROUTING atau chain buatan yang melalui chain tersebut.

Beberapa target yang lain biasanya memerlukan parameter tambahan:
a. LOG Target
Tingkatan log yang bisa digunakan dalam option pertama adalah debug, info, notice, warning, err, crit, alert dan emerg. Option kedua adalah -j LOG –log-prefix untuk memberikan string yang tertulis pada awal log, sehingga memudahkan pembacaan log.
iptables –A FORWARD –p tcp –j LOG –log-level debug
iptables –A INPUT –p tcp –j LOG –log-prefix “INPUT Packets”

b. REJECT Target
Memblok paket dan menolak untuk memproses lebih lanjut paket tersebut. REJECT akan mengirimkan pesan error ke pengirim paket, tidak seperti DROP. REJECT bekerja pada chain INPUT, OUTPUT dan FORWARD atau pada chain tambahan dari chain tersebut.
iptables –A FORWARD –p tcp –dport 80 –j REJECT –reject-with icmp-host-unreachable
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
Berguna untuk melakukan perubahan alamat asal paket (Source Network Address Translation). Target ini hanya berlaku untuk tabel nat pada chain POSTROUTING. Jika paket pertama dari satu koneksi mengalami SNAT, paket-paket berikutnya dalam koneksi juga akan mengalaminya.
iptables –t nat –A POSTROUTING –o eth0 –j SNAT –to-source 192.168.2.69-192.168.2.96:1024-32000

d. DNAT Target
Digunakan untuk melakukan translasi alamat tujuan (Destination Network Address Translation) pada header dari paket yang memenuhi aturan match. DNAT hanya bekerja untuk tabel nat pada chain PREROUTING dan OUTPUT atau chain buatan yang dipanggil oleh chain tersebut.
iptables –t nat –A PREROUTING –p tcp –d 35.35.33.37 –dport 80 –j DNAT –to-destination 192.168.22.22
e. MASQUERADE Target
Hampir sama dengan SNAT, tetapi tidak perlu option –to-source. Target ini hanya bekerja untuk tabel nat pada chain POSTROUTING.
iptables –t nat –A POSTROUTING –o ppp0 –j MASQUERADE

f. REDIRECT Target
Mengalihkan paket ke komputer itu sendiri. Mengarahkan paket yang menuju suatu port tertentu untuk memasuki proxy, berguna untuk membangun transparent proxy. Misal untuk mengalihkan semua koneksi yang menuju port http untuk memasuki aplikasi http proxy seperti squid. Hanya bekerja untuk tabel nat pada chain PREROUTING dan OUTPUT atau pada chain buatan dari chain tersebut.
iptables –t nat –A PREROUTING –i eth1 –p tcp –dport 80 –j REDIRECT –to-port 8080



Contoh beberapa kasus untuk iptables
Misalkan terdapat sebuah jaringan komputer menggunakan koneksi internet dengan IP ADDRESS publik
222.124.132.91 (eth0)
Server gateway memiliki 3 anak jaringan (jaringan lokal) dengan dibedakan subnet
192.168.0.0/24 (eth1)
192.168.1.0/24 (eth2)
192.168.10.0/24 (eth3)
Kondisi dalam jaringan, eth3 tidak diperbolehkan melakukan akses ke internet tetapi diperbolehkan masuk ke jaringan lokal lainnya melalui protokol http. Sedangkan eth1 dan eth2 diperbolehkan melakukan akses ke internet. Pada IP ADDRESS 192.168.1.10 terdapat webserver, dan pada IP Address 192.168.1.12 terdapat koleksi intranet yang akan dipublish ke internet. Disamping itu, koneksi internet 1 mega tersebut akan di share, untuk semua komputer di eth2 akan dibatasi pemakaiannya maksimal 10kbps. Berikut contoh sederhana routin firewallnya
#/bin/bash
#blok semua address (default), pada dasarnya semua akses di blok
iptables –P INPUT –j DROP
#bersihkan table
iptables –F
iptables –t nat –F
iptables –t mangle -F
#perkecualian dengan syarat tertentu
iptables -A INPUT -d 192.168.1.0/24 -m limit –limit 10/s –limit-burst 20 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -m limit –limit 10/s –limit-burst 20 -j ACCEPT
iptables –t nat –A POSTROUTING –s 192.168.0.0/24 –j MASQUERADE
iptables –t nat –A POSTROUTING –s 192.168.1.0/24 –j MASQUERADE
#forward webserver dan intranet
iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j DNAT –to 192.168.0.10:80
iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 88 -j DNAT –to 192.168.0.12:80
#redirect ke squid
iptables –t nat –A PREROUTING –s 192.168.10.0/24 -p tcp –dport 80 -j REDIRECT –to-port 3128
iptables –t nat –A PREROUTING –s 192.168.10.1/24 -p tcp –dport 80 -j REDIRECT –to-port 3128

berikan contoh ssh dan telnet menggunakan iptables ?
Password yang baik tidak selamanya harus rumit atau panjang sekali. Password yang terlalu rumit justru bisa-bisa membuat kita susah mengingatnya. Gunakanlah kombinasi angka, huruf dan sisipkan beberapa simbol pada password Anda.
Di Ubuntu, edit /etc/ssh/sshd_config, lalu cari baris PermitRootLogin yes (ini adalah konfigurasi default instalasi di Ubuntu), ubah menjadi seperti berikut:
PermitRootLogin no
Setelah itu, pastikan Anda restart service ssh.
sudo /etc/init.d/ssh restart
membatasi pengakses menggunakan tcpwrapper (hosts.allow, hosts.deny) atau menggunakan iptables.
Contoh penggunakan hosts.allow, hosts.deny untuk membatasi akses ssh hanya boleh dari ip 192.168.22.2 dan hanya untuk network 192.168.23.0/24.
Sunting berkas /etc/hosts.deny
sshd: all
Sunting berkas /etc/hosts.allow
sshd: 127.0.0.0/255.255.255.0
sshd: 192.168.22.2
sshd: 192.168.23.0/255.255.255.0
Untuk membuat rules serupa, menggunakan UFW di Ubuntu.
sudo ufw allow proto tcp from 127.0.0.0/24 to any port 22
sudo ufw allow proto tcp from 192.168.22.2 to any port 22
sudo ufw allow proto tcp from 192.168.23.0/24 to any port
 

Ganti default port.

Ini mungkin bukan konsep security yang benar-benar baik, tapi trik ini cukup efektif menghindari serangan dari script-script yang menscan ke port 22. Jadi jangan mengasumsikan instalasi openssh Anda sudah aman jika default port Anda ganti. Ini hanya trik untuk menghindari scan ataupun serangan dari cracker pemula.
Caranya, tinggal sunting berkas /etc/ssh/sshd_config, lalu cari baris Port 22, silahkan ganti ke port yang Anda inginkan. Misal,
Port 2222
Jangan lupa untuk merestart service ssh agar konfigurasi baru diterapkan ke sistem.
sudo /etc/init.d/ssh restart
Untuk selanjutnya, Anda bisa mengakses server via ssh ke port 2222. Jika menggunakan perintah ssh, kira-kira seperti berikut:
ssh 192.168.56.101 -l cecep -p 2222
 
 
 
 

Pasang sistem Port Knocking.

Mungkin dari sekian tips yang diberikan diartikel ini, memasang Port Knocking adalah tips yang paling rumit. Tapi tips ini cocok jika Anda memang benar-benar paranoid, tidak ingin membuka port 22 atau port lainnya untuk koneksi ssh, tapi Anda tetap ingin bisa mengakses server jika sewaktu-waktu Anda membutuhkan koneksi dari remote komputer.

Selalu update sistem Anda.

Sebetulnya ini adalah aspek pengamanan dasar. Setiap administrator baik di Linux, Windows atau OS lainnya harus rajin mengupdate sistemnya. Karena pada umumnya update terbaru bisa menutup dan memperbaiki celah keamanan yang sudah diketahui sebelumnya. Di ubuntu bisa melakukannya dengan satu langkah mudah dengan mengetikan perintah dibawah ini pada terminal : sudo apt-get update && sudo apt-get upgrade



ليست هناك تعليقات:

إرسال تعليق