Senin, 01 Juni 2015

Proxy Radius

A.    TUJUAN PEMBELAJARAN
1.      Memahami dan mampu melakukan instalasi, konfigurasi keamanan proxy server.
2.   Memahami dan mampu melakukan instalasi dan konfigurasi autentikasi user pada squid server dengan menggunakan RADIUS.
            

      B.  DASAR TEORI

Proxy umumnya digunakan untuk memberikan layanan caching ke jaringan local dengan mengunakan squid cache. Client-client proxy tidak perlu mengakses langsung halaman web yang ditujunya, melainkan cukup dengan mengambilnya di cache server (proxy)
Cara kerjanya adalah ketika ada client yang mengkses suatu alamat web, maka squid akan menyimpan file-file halaman web tersebut ke dalam cache lokal proxy tersebut untuk kemudian diberikan lagi kepada client yang mengakses halaman web yang sama, ketika ada client yang mengakses halaman web yang sama, proxy server hanya melakukan pengecekan ke server yang dituju, apakah obyek yang disimpan di cache local proxy masih sama dengan yang ada di server web tujuan, apabila ternyata telah ada perubahan barulah proxy server memintakanya untuk client yang mengakses server web tujuan, sementara itu file yang diberikan kepada client tersebut juga akan disimpan di direktori cache pada proxy sever, dan begitu seterusnya sehingga secara tidak langsung metode ini akan menghemat bandwidth dan secara tidak langsung akan mempercepat koneksi internet, selain fungsi diatas proxy server juga dapat digunakan untuk membuat kebijakan keamanan untuk jaringan lokal. Proxy server juga memiliki fungsi untuk memblokir situs-situs tertentu serta memblok beberapa kata-kata yang tidak diperbolehkan untuk diakses
Aplikasi proxy server yang paling populer digunakan adalah squid, dikarenakan squid memiliki tingkat performa yang baik dan keamanan yang relatif lebih baik daripada aplikasi-aplikasi proxy server lainya.
Autentikasi pada squid dapat digunakan untuk memberi batasan user-user mana saja yang boleh mengakses proxy server dan user mana yang diperbolehkan, untuk mengaktifkan autentikasi kita memerlukan autentikator yang akan menangangi urusan autentikasi, salah satunya dengan menggunakan RADIUS sebagai autentikasi user proxy.

Cara Kerja
RADIUS menggunakan konsep AAA (Authentication, Authorization, Accounting). Konsep tersebut dapat digambarkan sebagai berikut :
Aliran Data Pada RADIUS
~ Access Reject ~
User ditolak aksesnya ke semua sumberdaya dalam jaringan. Penyebabnya bisa termasuk kegagalah untuk menyediakan indentifikasi yang tepat atau nama akun yang salah/tidak aktif
~ Access Challenge ~
Permintaan informasi tambahan dari user, seperti password alteernatif, PIN, token atau kartu.
~ Access Accept ~
User diberikan akses masuk. Begitu User ter-autentifikasi, server RADIUS akan sering mengecek agar User hanya menggunakan sumberdaya sesuai dengan yang diminta. Misalnya User hanya boleh mengakses fasilitas hotspot, dan tidak untuk menggunakan printer. Informasi tentang User dalam database bisa disimpan secara lokal dalam server RADIUS atau disimpan dalam tempat penyimpanan eksternal seperti LDAP atau Active Directory


Proses Authentication
Proses autentikasi diperlukan ketika Anda mempunyai kebutuhan untuk membatasi siapa saja yang diperbolehkan masuk ke dalam jaringan remote access milik Anda. Untuk memenuhi kebutuhan tersebut, pengguna yang ingin mengakses sebuah jaringan secara remote harus diidentifikasi terlebih dahulu. Pengguna yang ingin masuk ke dalam jaringan pribadi tersebut perlu diketahui terlebih dahulu sebelum bebas mengakses jaringan tersebut. Pengenalan ini bertujuan untuk mengetahui apakah pengguna tersebut berhak atau tidak untuk mengakses jaringan.
Proses Authorization
Proses authorization merupakan langkah selanjutnya setelah proses autentikasi berhasil. Ketika pengguna yang ingin mengakses jaringan Anda telah dikenali dan termasuk dalam daftar yang diperbolehkan membuka akses, langkah berikutnya Anda harus memberikan batasan hak-hak apa saja yang akan diterima oleh pengguna tersebut.
Proses Accounting
Proses accounting dalam layanan koneksi remote access amat sangat penting, apalagi jika Anda membuat jaringan ini untuk kepentingan komersial. Dalam proses accounting ini, perangkat remote access atau server sekuriti akan mengumpulkan informasi seputar berapa lama si pengguna sudah terkoneksi, billing time (waktu start dan waktu stop) yang telah dilaluinya selama pemakaian, sampai berapa besar data yang sudah dilewatkan dalam transaksi komunikasi tersebut. Data dan informasi ini akan berguna sekali untuk pengguna maupun administratornya. Biasanya informasi ini akan digunakan dalam melakukan proses auditing, membuat laporan pemakaian, penganalisisan karakteristik jaringan, pembuatan billing tagihan, dan banyak lagi. Fasilitas accounting pada jaringan remote access umumnya juga memungkinkan Anda untuk melakukan monitoring terhadap layanan apa saja yang digunakan oleh pengguna

TUGAS PENDAHULUAN
1.     Jelaskan pengertian dan fungsi dari proxy, squid, dan RADIUS sebagai autentikasi user proxy.
Proxy umumnya digunakan untuk memberikan layanan caching ke jaringan local dengan mengunakan squid cache. Autentikasi pada squid dapat digunakan untuk memberi batasan user-user mana saja yang boleh mengakses proxy server dan user mana yang diperbolehkan, untuk mengaktifkan autentikasi kita memerlukan autentikator yang akan menangangi urusan autentikasi, salah satunya dengan menggunakan RADIUS sebagai autentikasi user proxy
2.   Gambarkan dan jelaskan sebuah topology jaringan yang menggambarkan sebuah proses aktifitas user yang konek ke internet melalui server proxy.
 
 
Server Radius menyediakan mekanisme keamanan dengan menangani otentikasi dan otorisasi koneksi yang dilakukan user. Pada saat komputer client akan menghubungkan diri dengan jaringan maka server Radius akan meminta identitas user (username dan password) untuk kemudian dicocokkan dengan data yang ada dalam database server Radius untuk kemudian ditentukan apakah user diijinkan untuk menggunakan layanan dalam jaringan komputer. Jika proses otentikasi dan otorisasi berhasil maka proses pelaporan dilakukan, yakni dengan mencatat semua aktifitas koneksi user, menghitung durasi waktu dan jumlah transfer data dilakukan oleh user. Proses pelaporan yang dilakukan server Radius bisa dalam bentuk waktu (detik, menit, jam, dll) maupun dalam bentuk besar transfer data (Byte, KByte, Mbyte) (Anonim-B, 2006). Software server Radius yang digunakan dalam penelitian ini adalah Freeradius yang bersifat modular dan memiliki banyak fitur. Freeradius merupakan software server yang berbasis pada open source dan berlisensi GPL.
LANGKAH PERCOBAAN
 
1.      Install freeradius:
#apt-get install freeradius freeradius-mysql freeradius-utils
2.      Install database mysql:
#apt-get install mysql-server mysql-client
3.      Membuat database dan memberikan privilege ke user radius:
#mysql -uroot –p
kemudian masukkan password root mysql.
#CREATE DATABASE radius;
#GRANT ALL ON radius.* TO radius@localhost IDENTIFIED BY "radpass";
impor tabel dari radius:
#mysql> use radius;
#SOURCE /etc/freeradius/sql/mysql/schema.sql
#exit
4.      Buka file /etc/freeradius/sql.conf dan masukkan database mysql:
# Connection info:
server = "localhost"
#port = 3306
login = "radius"
password = "radpass"
# Database table configuration for everything except Oracle
radius_db = "radius"
5.      Buka file /etc/freeradius/radiusd.conf, hilngakan tanda comment pada baris berikut.
$INCLUDE sql.conf
6.      Edit /etc/freeradius/sites-available/default dan hilangkan tanda comment pada baris yang mengandung ‘sql’ di bagian authorize{} dan‘sql’ di bagian accounting{}, dan ‘sql’ di bagian session{}.
7.      Edit /etc/freeradius/sites-available/inner-tunnel, dan hilangkan tanda comment yang mengandung ‘sql’ di dalam bagian “authorize {}” dan di bagian session {}.
8.      Mengecek apakah radius berjalan dengan baik:
#service freeradius restart
#service freeradius stop
#service freeradius start
9.      Install squid:
# apt-get install squid
10.  Buka file /etc/squid/squid.conf dan tambahkan konfigurasi dibawah ini:
# TAG: auth_param
#Authentication Radius:
auth_param basic program /usr/local/squid/libexec/squid_radius_auth –f
/etc/squid/squid_rad_auth.conf
auth_param basic children 5
auth_param basic realm LAB COMPUTER NETWORKS
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl radius-auth proxy_auth REQUIRED
# TAG: http_access
# Allow authorized users:
http_access allow radius-auth
11.  Download plugin radius:
org/contrib/squid_radius_auth/squid_radius_auth-1.10.tar.gz
12.  Ekstrak file:
# tar xvzf squid_radius_auth-1.10.tar.gz
13.  Pindah direktori:
# cd squid_radius_auth-1.10
14.  Install plugin:
# cp Makefile.default Makefile
# make clean
# make install
15.  Copy file binari radius auth ke:
# cp squid_radius_auth /usr/local/squid/libexec/squid_radius_auth
16.  Buat file konfigurasi plugin radius:
# touch /etc/squid/squid_rad_auth.conf
17.  Masukkan konfigurasi berikut ke file squid_rad_auth.conf (sebagai contoh di
server 10.252.108.51):
server 10.252.108.51 # Radius Server IP or Hostname
secret testing123
18.  Restart service squid:
# service squid restart
19.  Setup browser client dengan proxy alamat IP proxy server dan port 3128. Ketika anda mulai browsing dengan browser akan muncul form login.
20.  Melihat log squid di squid server:
# tail -l /var/log/squid/access.log
Sumber :
https://mrizqiariadi.wordpress.com/2014/05/22/radius-server-pengertian-penjelasan-dan-cara-install-software-radius-server/

HASIL PERCOBAAN
  1. Menginstal freeradius beserta mysql dan utilitasnya sebagai protokol keamanan komputer yang digunakan untuk melakukan autentikasi, otorisasi, dan pendaftaran akun pengguna secara terpusat untuk mengakses jaringan.
  2. Menginstal database mysql server dan client. 
    Saat menginstal, pengguna diminta memasukkan password untuk root sebagai kata kunci untuk mangatur database sebagai root.
  3. Membuat database dengan nama ‘radius’, memberikannya ‘grant all’ untuk hak penuh, mengaktifkannya, dan mengimport skema dari freeradius.
  4. Mengubah konfigurasi freeradius untuk menyertakan konfigurasi sql.
  5. Mengaktifkan sql untuk sites-available default dan inner-tunnel dengan cara menghilangkan tanda pagar pada sql yang ada di blok authorize, accounting, dan session.
  6. Merestart freeradius untuk menerapkan hasil konfigurasi.
  7. Menginstal squid sebagai proxy server.
  8. Mengubah konfigurasi squid untuk menambahkan aturan authentikasi pada penggunaan akses http dengan proxy. 
    NOTE: TIDAK LUPA UNTUK MENONAKTIFKAN “http_access deny all” AGAR PROXY TIDAK LANGSUNG MENCEGAH SEMUA AKSES HTTP. SEHINGGA ATURAN AUTHENTIKASI DAPAT BERJALAN SAAT AKAN MELAKUKAN HTTP AKSES.
  9. Mendownload dan menginstal plugin radius untuk squid agar squid dapat bekerjasama dengan freeradius yang telah ada.
  10. Membuat file konfigurasi plugin radius kemudian mengisi radius servernya.
  11. Merestart squid untuk mengaktifkan konfigurasi yang telah dilakukan.
  12.  Membuka browser, kemudian diatur untuk menggunakan proxy dengan memasukkan IP proxy server 10.252.108.111 dan port 3128. Kemudian mencoba mengakses alamat web, maka akan muncul box authentikasi.
  13. Untuk melihat log squid server sebagai berikut:

ANALISA HASIL PRAKTIKUM

Dari hasil percobaan yang telah dilakukan, di dalam server, squid bekerja sebagai aplikasi proxy server bertugas sebagai perantara akses data dari client ke alamat data yang dituju. Data yang pernah diakses langsung disimpan dalam proxy server, sehingga saat dibutuhkan lagi, tidak perlu pergi ke alamat data aslinya, hanya tinggal mengakses data yang sudah ada di proxy server, kecuali jika memang terdapat perubahan data maka proxy server perlu mengupdatenya dari alamat datanya.

Squid dapat mengamankan data dengan mengatur siapa saja yang boleh mengakses proxy server, untuk itu squid memiliki tiga buah opsi, mencegahnya, memperbolehkannya, atau boleh tapi dengan authentikasi yang benar. Untuk pengamanan data dengan authentikasi, proxy dapat bekerjasama dengan radius yang digunakan untuk melakukan autentikasi, otorisasi, dan pendaftaran akun pengguna secara terpusat untuk mengakses jaringan.

Intrusion Detection System (SNORT)

Tugas Pendahuluan - Intrusion Detection System (SNORT)


A.    TUJUAN PEMBELAJARAN
1.      Mengenalkan pada mahasiswa tentang konsep Intrusion Detection System
2.      Mahasiswa mampu melakukan installasi dan konfigurasi SNORT sebagai tools IDS
3.      Mahasiswa mampu membangun rule baru untuk mendeteksi eksploit terbaru

      B.  DASAR TEORI
 
Deteksi Penyusupan (Intrusion Detection)
Deteksi penyusupan adalah aktivitas untuk mendeteksi penyusupan secara cepat dengan
menggunakan program khusus yang otomatis. Program yang dipergunakan biasanya
disebut sebagai Intrusion Detection System (IDS).
Tipe dasar dari IDS adalah:
·         Rule-based systems - berdasarkan atas database dari tanda penyusupan atau serangan yang telah dikenal. Jika IDS mencatat lalulintas yang sesuai dengan database yang ada, maka langsung dikategorikan sebagai penyusupan.
·         Adaptive systems - mempergunakan metode yang lebih canggih. Tidak hanya berdasarkan database yang ada, tapi juga membuka kemungkinan untuk mendeteksi terhadap bentuk bentuk penyusupan yang baru.
Snort
Mengoperasikan Snort
Tiga (3) buah mode, yaitu
1.      Sniffer mode, untuk melihat paket yang lewat di jaringan.
2.      Packet logger mode, untuk mencatat semua paket yang lewat di jaringan untuk di analisa di kemudian hari.
3.      Intrusion Detection mode, pada mode ini snort akan berfungsi untuk mendeteksi serangan yang dilakukan melalui jaringan komputer. Untuk menggunakan mode IDS ini di perlukan setup dari berbagai rules / aturan yang akan membedakan sebuah paket normal dengan paket yang membawa serangan.
Sniffer Mode
Untuk menjalankan snort pada sniffer mode tidaklah sukar, beberapa contoh perintahnya
terdapat di bawah ini,
#snort –v
#snort –vd
#snort –vde
#snort –v –d –e
dengan menambahkan beberapa switch –v, -d, -e akan menghasilkan beberapa keluaran yang berbeda, yaitu
-v, untuk melihat header TCP/IP paket yang lewat.
-d, untuk melihat isi paket.
-e, untuk melihat header link layer paket seperti ethernet header.
Packet Logger Mode
Tentunya cukup melelahkan untuk melihat paket yang lewat sedemikian cepat di layar terutama jika kita menggunakan ethernet berkecepatan 100Mbps, layar anda akan scrolling dengan cepat sekali susah untuk melihat paket yang di inginkan. Cara paling sederhana untuk mengatasi hal ini adalah menyimpan dulu semua paket yang lewat ke sebuah file untuk di lihat kemudian, sambil santai … Beberapa perintah yang mungkin dapat digunakan untuk mencatat paket yang ada adalah
./snort –dev –l ./log
./snort –dev –l ./log –h 192.168.0.0/24
./snort –dev –l ./log –b
perintah yang paling penting untuk me-log paket yang lewat adalah
-l ./log
yang menentukan bahwa paket yang lewat akan di log / di catat ke file ./log. Beberapa perintah tambahan dapat digunakan seperti –h 192.168.0.0/24 yang menunjukan bahwa yang di catat hanya packet dari host mana saja, dan –b yang memberitahukan agar file yang di log dalam format binary, bukan ASCII.
Untuk membaca file log dapat dilakukan dengan menjalankan snort dengan di tambahkan perintah –r nama file log-nya, seperti,
./snort –dv –r packet.log
./snort –dvr packet.log icmp
Intrusion Detection Mode
Mode operasi snort yang paling rumit adalah sebagai pendeteksi penyusup (intrusion detection) di jaringan yang kita gunakan. Ciri khas mode operasi untuk pendeteksi penyusup adaah dengan menambahkan perintah ke snort untuk membaca file konfigurasi –c nama-file-konfigurasi.conf. Isi file konfigurasi ini lumayan banyak, tapi sebagian besar telah di set secara baik dalam contoh snort.conf yang dibawa oleh source snort.
Beberapa contoh perintah untuk mengaktifkan snort untuk melakukan pendeteksian penyusup, seperti
./snort –dev –l ./log –h 192.168.0.0/24 –c snort.conf
./snort –d –h 192.168.0.0/24 –l ./log –c snort.conf
Untuk melakukan deteksi penyusup secara prinsip snort harus melakukan logging paket yang lewat dapat menggunakan perintah –l nama-file-logging, atau membiarkan snort menggunakan default file logging-nya di directory /var/log/snort. Kemudian menganalisa catatan / logging paket yang ada sesuai dengan isi perintah snort.conf.
Ada beberapa tambahan perintah yang akan membuat proses deteksi menjadi lebih effisien, mekanisme pemberitahuan alert di Linux dapat di set dengan perintah –A sebagai berikut,
-A fast, mode alert yang cepat berisi waktu, berita, IP & port tujuan.
-A full, mode alert dengan informasi lengkap.
-A unsock, mode alert ke unix socket
-A none, mematikan mode alert.
Untuk mengirimkan alert ke syslog UNIX kita bisa menambahkan switch –s, seperti tampak pada beberapa contoh di bawah ini.
./snort –c snort.conf –l ./log –s –h 192.168.0.0/24
./snort –c snort.conf –s –h 192.168.0.0/24
Untuk mengirimkan alert binary ke workstation windows, dapat digunakan perintah di bawah ini,
./snort –c snort.conf –b –M WORKSTATIONS
Agar snort beroperasi secara langsung setiap kali workstation / server di boot, kita dapat menambahkan ke file /etc/rc.d/rc.local perintah di bawah ini
/usr/local/bin/snort –d –h 192.168.0.0/24 –c /root/snort/snort.conf –A full –s –D
atau
/usr/local/bin/snort –d –c /root/snort/snort.conf –A full –s –D
dimana –D adalah switch yang menset agar snort bekerja sebagai Daemon (bekerja dibelakang layar).


Cara Kerja Snort :
Komponen – komponen Snort IDS (Intrusion Detection System) meliputi :
-        Rule Snort
Rule Snort merupakan database yang berisi pola – pola serangan berupa signature jenis – jenis serangan. Rule snort IDS (Intrusion Detection System) harus selalu terupdate secara rutin agar ketika ada suatu teknik serangan yang baru, serangan tersebut dapat terdeteksi. Rule Snort dapat di download pada website www.snort.org.
-        Snort Engine
Snort Engine merupakan program yang berjalan sebagai daemon proses yang selalu bekerja untuk membaca paket data dan kemudian membadingkan dengan Rule Snort.
-        Alert
Alert merupakan catatan serangan pada deteksi penyusupan. Jika Snort engine mendeteksi paket data yang lewat sebagai sebuah serangan, maka snort engine akam mengirimkan alert berupa log file. Kemudian alert tersebut akan tersimpan di dalam database.
Hubungan ketiga komponen snort IDS (Intrusion Detection System) tersebut dapat digambarkan dalam gambar berikut.

TUGAS PENDAHULUAN
1.      Sebutkan dan jelaskan dengan singkat apa yang disebut dengan konsep IDS ?
IDS (Intrusion Detection System) adalah sebuah sistem yang melakukan pengawasan terhadap traffic jaringan dan pengawasan terhadap kegiatan-kegiatan yang mencurigakan didalam sebuah sistem jaringan. Jika ditemukan kegiatankegiatan yang mencurigakan berhubungan dengan traffic jaringan maka IDS akan memberikan peringatan kepada sistem atau administrator jaringan. Dalam banyak kasus IDS juga merespon terhadap traffic yang tidak normal/ anomali melalui aksi pemblokiran seorang user atau alamat IP (Internet Protocol) sumber dari usaha pengaksesan jaringan.
Konsep IDS.
Dalam konsep keamanan jaringan kita mengenal istilah false positif dan false negatif.
1.      False positif – adalah peringatan yang dihasilkan oleh IDS karena telah mendeteksi adanya serangan yang valid terhadap sistem yang kita monitor, tetapi serangan itu sendiri tidak valid. Atau dengan kata lain, kita mendapat laporan serangan, padahal itu bukan serangan. Ini adalah masalah bagi kita karena banyaknya peringatan yang dibuat oleh IDS padahal serangan yang sebenarnya tidak terjadi. False positif bisa saja terjadi karena adanya serangan pada sistem yang tidak di monitor.
2.      False negatif – adalah serangan yang benar-benar terjadi tetapi tidak terdeteksi oleh IDS. IDS bisa melewatkan serangan karena menganggap serangan yang dilakukan tidak sesuai dengan aturan yang ada (rule), atau karena terlalu banyak serangan, atau bisa juga karena penyerang berhasil melumpuhkan IDS. Dampak dari false negatif ini artinya penyerang berhasil melewati IDS, sama artinya dengan ada yang menyerang kita, tapi kita tidak menyadarinya!
Ada dua cara IDS bisa mendeteksi serangan:
1.      Signature detection – IDS yang bekerja menggunakan signature (rule/peraturan) akan mendeteksi serangan jika ada traffic network yang masuk ke dalam daftar serangan. Signature – lah yang menentukan paket yang masuk ke network tersebut merupakan serangan atau biasa disebut “bad traffic”. Kekurangan dari metode ini adalah bahwa IDS hanya bisa mendeteksi suatu serangan yang telah terdaftar sebelumnya di dalam signature. Oleh karena itu, metode ini akan kesulitan menghadapi daftar serangan jenis baru. Bila kita menggunakan signature detection mungkin akan berdampak sedikitnya peringatan false positif tetapi banyak false negatif.
2.      Anomaly detection – IDS yang menggunakan anomaly detection bekerja menggunakan cara yang berbeda. IDS akan mengenal traffic “normal” jaringan kita dan akan mulai mengingatkan kita bila ternyata ada traffic yang “abnormal”. Masalahnya adalah, sesuatu yang baru atau berbeda juga bisa dianggap abnormal. Jadi jika kita menggunakan metode ini IDS akan memberikan sedikit false negatif tetapi banyak false positif.
Beberapa IDS ada yang menggunakan signature detection, tapi ada juga yang menggunakan anomaly detection, dan ada juga yang menggunakan keduanya.
2.      Sebutkan fasilitas kemampuan yang dimiliki snort !
Snort ini mempunyai kemampuan untuk mengexport log ke bentuk database, ada beberapa database yang dapat digunakan, kayak MySQL, PostgreSQL, oracle, MSSQL dan odbc.
Snort yang berbasis jaringan intrusion detection system (NIDS) memiliki kemampuan untuk melakukan real-time analisis lalu lintas dan paket logging pada Internet Protocol (IP) jaringan. Snort melakukan analisis protokol, pencarian isi, dan pencocokan konten. Program ini juga dapat digunakan untuk mendeteksi probe atau serangan, termasuk, namun tidak terbatas pada, upaya sistem operasi sidik jari, antarmuka gateway umum, buffer overflows, probe server pesan blok, dan port scan siluman.
Snort log adalah kemampuan untuk memotong dan menyisipkan berbagai mendeteksi ke dalam pesan e-mail yang akan dikirim ke analis lain, CIRT Anda, atau pihak yang bersalah.
Snort memiliki karakteristik, sebagai berikut:
1.      Berukuran kecil – Source code dan rules untuk rilis 2.1.1 hanya 2256k.
2.      Portable untuk banyak OS – Telah diporting ke Linux, Windows, OSX, Solaris, BSD,dll.
3.      Cepat – Snort mampu mendeteksi serangan pada network 100Mbps.
4.      Mudah dikonfigurasi – Snort sangat mudah dikonfigurasi sesuai dengan kebutuhan network kita. Bahkan kita juga dapat membuat rule sendiri untuk mendeteksi adanya serangan baru.
5.      Free – Kita tidak perlu membayar sepeser pun untuk menggunakan snort. Snort bersifat open source dan menggunakan lisensi GPL.
3.      Jelaskan cara installasi dan konfigurasi snort !
·         Untuk menginstall snort gunakan perintah
#apt-get install snort
·         Setelah instalasi selesai, lakukan konfigurasi pada file snort.conf. Ketikkan perintah berikut :
#nano /etc/snort/snort.conf
Tekan CTRL-W cari kata kunci HOME_NET any. Setelah ketemu baris HOME_any, edit menjadi seperti ini :
var HOME_NET 172.16.100.0/24
Kemudian edit juga baris :
#Set up the external network address as well. A good start may be “any”
var EXTERNAL_NET any
#var EXTERNAL_NET !$HOME_NET
Menjadi seperti ini :
#Set up the external network address as well. A good start may be “any”
#var EXTERNAL_NET any
var EXTERNAL_NET !$HOME_NET
·         Restart Service
#service snort restart
4.      Jelaskan cara membuat rule baru di snort !
Membuat rule baru yaitu alltcp.rules dan simpan di /etc/snort/rules dengan menggunakan perintah # gedit /etc/snort/rules/alltcp.rules
LANGKAH PERCOBAAN
1.       Konfigurasi sesuai dengan topologi yang diminta :
·              Gunakan dhclient di masing-masing PC untuk i dmendapatkan IP dari router.
·              192.168.50.x & y : IP dari router
·              Pilih 192.168.50.x sebagai PC Server yang akan dipasangi snort
·              Pilih 192.168.50.y sebagai PC Client
2.       Lakukan instalasi snort pada PC Server
# apt-get install snort
Masukkan range network yang akan dianalisa :
Address range for the local network
192.168.0.0/16
3.       Manjalankan snort
·         Jalankan perintah ping dan nmap dari PC Client ke PC Server.
·         Jalankan snort dengan menggunakan mode sniffer
#snort –v
#snort –vd
#snort –vde
#snort –v –d –e
·         Untuk mempermudah pembacaan masukkan hasil snort ke dalam file, jalankan perintah berikut :
#snort –dev –i eth0 –L /var/log/snort/snort.log
Ket : Running in packet logging mode
Akan menghasilkan sebuah file di folder /var/log/snort, lihat dengan perintah :
# ls /var/log/snort
·         Untuk membaca file snort (misal : snort.log.1234) berikan option –r pada snort
# snort -dev -r /var/log/snort/snort.log.1234
4.            Menjalankan snort dengan mode NIDS (Network Intrusion Detection System)
·         Opsi e, dihilangkan karena kita tidak perlu mengetahui link layer MAC. Opsi v dihilangkan juga, jalakan menggunakan option sbb :
#snort -d -h 192.168.1.0/24 -l /var/log/snort -c /etc/snort/snort.conf
Ket : Running in IDS mode
·         Bekerjasamalah dengan rekan anda. Sekarang coba jalankan scanning dari komputer lain (PC Client) dengan nmap menuju komputer yang anda pasangi snort (PC Server). Terlebih dulu jalankan snort dengan mode NIDS, kemudian lakukan scanning dengan perintah :
# snort -d -h 192.168.1.0/24 host <no_ip_snort> -l
/var/log/snort –c /etc/snort/snort.conf
#nmap -sS -v <no_ip_snort>
·         Lihatlah apakah scan anda terekam oleh snort. Jika iya, copy paste hasil snort pada bagian scanning SYN. Untuk melihat, gunakan perintah :
# snort –dev –r <nama-log-file> | more
Apakah scanning ini ditandai sebagai alert ? Coba lihat di /var/log/snort, gunakan perintah :
# vim /var/log/snort/alert
·         Jalankan snort. Buka halaman web. Apakah ini terdeteksi sebagai alert?
·         Sekarang coba ubah rule snort. Buat rule baru yaitu alltcp.rules dan simpan di
/etc/snort/rules
# vim /etc/snort/rules/alltcp.rules
alert tcp any any -> any any (content:”www.facebook.com”;
msg:”Someone is visiting Facebook”;sid:1000001;rev:1;)
alert tcp any any -> any any (msg:"TCP
Traffic";sid:1000002;rev:0;)
     Ket : any any (host port), sid harus lebih dari 1 juta, rev mulai dari 0.
·         Coba lihat snort.conf. Beri tanda # pada semua rule lain dan tambahkan rule anda yaitu : alltcp.rules.
# vim /etc/snort/snort.conf
include $RULE_PATH/alltcp.rules
·         Lakukan restart aplikasi snort anda :
# /etc/init.d/snort restart
·         Bukalah halaman web untuk mengakses “www.facebook.com”, lihatlah apakah ada tanda sebagai alert atau tidak
·         Coba lakukan scanning seperti perintah b. Lihatlah apakah ada tanda sebagai alert atau tidak
Untuk mengetahui beberapa baris terakhir dari informasi alert :
# tail –f /var/log/snort/alert

HASIL PERCOBAAN
Sebelum memulai praktikum, dibuat terlebih dahulu topologi jaringan yang terdiri dari komputer untuk server dengan alamat 10.252.108.44 dan client dengan alamat 10.252.108.177. Kemudian dilakukan langkah-langkah sebagai berikut :
1.  Menginstall snort pada Server
            2.   Memasukkan range network yang diperiksa
            3.  Menjalankan ping dan nmap dari client ke server
           4.  Menjalankan snort dengan mode yang berbeda-beda
Keterangan:
a.      Opsi –v
Opsi ini membuat snort menangkap dan menampilkan header dari paket-paket data yang berlalu-lalang dalam range yang telah ditentukan.
b.      Opsi –vd
Opsi ini membuat snort menangkap dan menampilkan header dari paket-paket data yang berlalu-lalang dalam range yang telah ditentukan. Selain header, juga ditampilkan isi paketnya.
c.       Opsi –vde
Opsi ini membuat snort menangkap dan menampilkan header dari paket-paket data yang berlalu-lalang dalam range yang telah ditentukan. Selain header, juga ditampilkan isi paket serta header link layer seperti ethernet header.
d.      Opsi –v –d –e
Sama seperti opsi pada bagian c, hanya saja cara memberi opsinya yang dipisah-pisah.

    5.  Dapat juga hasilnya dimasukkan dalam file log sebagai berikut :
        
6.  Kemudian terbentuk file log baru, kemudian membacanya dengan cara sebagai berikut :
    
7.  Menjalankan snort dengan mode NIDS (Network Intrusion Detection System)

a.       Menjalankan dengan opsi melihat paket saja dengan host <host>, log <log>, dan dan update file konfigurasi <conf> sebagai berikut

b.   Membiarkan snort berjalan sambil client melakukan nmap ke server
 c.  Terbentuk sebuah file alert pada folder log
     
d. Isi alert membaca bad-traffic
e.  Kemudian membuka dengan web browser dari client
    
f.  Alert tidak terupdate, waktunya masih lama saat terbentukpertama kali
   
g.  Mengubah rule snort dengan membuat file rule baru dengan mengisinya dengan kode agar alert mencatat saat terjadi segala tcp traffic dan saat membuka facebook.com
   
h.  Mengubah konfigurasi snort dengan menambahkan rule yang tadi dibuat dan menonaktifkan seluruh rule lainnya.
    
i.   Merestart snort
   
j.  Mencoba melakukan segala tcp traffic dan tercatat di alert snort. Alert akan terupdate.
   
   

ANALISA HASIL PRAKTIKUM
Dari hasil percobaan yang telah dilakukan, saat diaktifkan, snort melihat dan mengawasi seluruh paket data yang berlalu-lalang di dalam jaringan. Pengguna dapat memerintahkan snort untuk mencatatnya dalam file, salah satunya file log untuk didiagnosa manual oleh pengguna. Selain pencatatan dengan log untuk dianalisa di kemudian hari, snort juga dapat menjadi Intrusion Detection System dengan menjadikan log sebagai acuan pembentukan rule configurasi secara otomatis. Untuk melakukan hal tersebut, snort harus dapat mendeteksi aksi mencurigakan (bad-traffic) seperti aksi nmap oleh client untuk kemudian dijadikan sebagai alert dan menjadi acuan mengubah konfigurasi rule sesuai dengan alert tersebut secara otomatis.