PortSentry adalah aplikasi yang dirancang untuk mendeteksi adanya scanning port
suatu box dalam model real time.
Perbedaan spesifik dengan IDS seperti Snort adalah portsentry melakukan aksi,
sedangkan snort hanya mendeteksi saja.
Instalasi :
Ambil paket dari
http://downloads.kavalinux.com/security/ids/portsentry-1.2.tar.gz
lalu ekstrak file tersebut
# tar zxvf portsentry-1.2.tar.gz # cd portsentry_beta
Edit file portsentry_config.h, lalu ganti baris berikut :
#define CONFIG_FILE "/usr/local/psionic/portsentry/portsentry.conf"
Menjadi
#define CONFIG_FILE "/etc/portsentry/portsentry.conf"
Edit file portsentry.conf, lalu ganti baris berikut :
###################### # Configuration Files# ###################### # # Hosts to ignore IGNORE_FILE="/usr/local/psionic/portsentry/portsentry.ignore" # Hosts that have been denied (running history) HISTORY_FILE="/usr/local/psionic/portsentry/portsentry.history" # Hosts that have been denied this session only (temporary until next restart) BLOCKED_FILE="/usr/local/psionic/portsentry/portsentry.blocked"
Menjadi
###################### # Configuration Files# ###################### # # Hosts to ignore IGNORE_FILE="/etc/portsentry/portsentry.ignore" # Hosts that have been denied (running history) HISTORY_FILE="/etc/portsentry/portsentry.history" # Hosts that have been denied this session only (temporary until next restart) BLOCKED_FILE="/etc/portsentry/portsentry.blocked"
Juga pada baris :
# iptables support for Linux #KILL_ROUTE="/usr/local/bin/iptables -I INPUT -s $TARGET$ -j DROP"
Menjadi
# iptables support for Linux KILL_ROUTE="/usr/sbin/iptables -I INPUT -s $TARGET$ -j DROP"
PENTING:
Untuk menentukan letak binary iptables Anda, lakukan perintah ini di shell.
Berikut contoh pada box linux saya :
# which iptables /usr/sbin/iptables
Edit file Makefile, lalu ganti baris berikut :
INSTALLDIR = /usr/local/psionic
ke
INSTALLDIR = /etc
Kemudian compile
make linux
Bila ada error seperti dibawah ini :
SYSTYPE=linux
Making
cc -O -Wall -DLINUX -DSUPPORT_STEALTH -o ./portsentry ./portsentry.c
./portsentry_io.c ./portsentry_util.c
portsentry.c:1584:11: missing terminating " character
portsentry.c: In function `Usage':
portsentry.c:1585: error: syntax error before "sourceforget"
portsentry.c:1585: error: stray '' in program
portsentry.c:1585:24: missing terminating " character
make: *** [linux] Error 1
maka edit portsentry.c, hilangkan baris 1585, lalu pada baris 1584, edit menjadi demikian:
printf ("Copyright 1997-2003 Craig H. Rowland n");
Lalu, coba jalankan kembali perintah
# make linux
Kemudian install
# make install
Jika lancar, coba cek ke direktori /etc/portsentry
# ls /etc/portsentry portsentry* portsentry.conf portsentry.ignore
Akan tercipta file2 seperti diatas.
Berikut penjelasan file2 diatas :
- portsentry
File ini adalah binary portsentry. Anda perlu mengeksekusi file ini bila ingin menjalankan aplikasi
portsentry
- portsentry.conf
File ini adalah file konfigurasi portsentry
Sekarang Anda siap menjalankan aplikasi portsentry :
- portsentry.ignore
File ini berisikan list ip yang diabaikan atau ip yang tidak di blok oleh portsentry
Edit file portsentry.ignore dan pastikan ip local dan ip static Anda terdaftar didalamnya, misalnya :
127.0.0.1/32
172.167.0.174
Hilangkan baris ini :
0.0.0.0
Eksekusi binary portsentry
# /etc/portsentry/portsentry -stcp
Cek di syslog
# tail -f /var/log/messages portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 27665 portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 31337 portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 32771 portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 32772 portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 32773 portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 32774 portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 40421 portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 49724 portsentry[3772]: adminalert: Going into stealth listen mode on TCP port: 54320 portsentry[3772]: adminalert: PortSentry is now active and listening.
Untuk ujicoba, coba lakukan port scanning melalui komputer yang memiliki ip yang
tidak terdaftar di dalam portsentry.ignore
Misalnya : Saya scan dari ip 172.168.0.1
# nmap -sS -vv -O -P0 172.168.0.174
Saya lihat kembali ke shell saya dan cek pada syslog
# tail -f /var/log/messages
portsentry[4009]: attackalert: TCP SYN/Normal scan from host: server.kapukvalley.net/172.168.0.1
to TCP port: 1080
portsentry[4009]: attackalert: Host 172.168.0.1 has been blocked via wrappers with string: “ALL: 172.168.0.1″
portsentry[4009]: attackalert: Host 172.168.0.1 has been blocked via dropped route using command:
“/usr/sbin/iptables -I INPUT -s 172.168.0.1 -j DROP”
portsentry[4009]: attackalert: TCP SYN/Normal scan from host: 172.168.0.1/172.168.0.1 to TCP port: 54320
portsentry[4009]: attackalert: Host: 172.168.0.1/172.168.0.1 is already blocked Ignoring
Ehm.. seperti diatas, ada peringatan serangan dari ip 172.168.0.1
Apa gunanya baris KILL_ROUTE tadi, yaitu merupakan aksi dari serangan, aksi yang kita
ambil seperti diatas adalah di handle oleh iptables. Bila ada serangan seperti diatas,
maka iptables akan segera mendrop ip tersebut, kita lihat list tabel iptables :
# iptables -L -vnx
Chain INPUT (policy ACCEPT 545689 packets, 79757453 bytes)
pkts bytes target prot opt in out source destination
1351 65609 DROP all — * * 172.168.0.1 0.0.0.0/0
Untuk membuka koneksi nya kembali anda perlu seperti ini :
# iptables -D INPUT 1
Pada waktu ada serangan, maka akan tercipta 2 file di direktori /etc/portsentry, yaitu :
- portsentry.blocked.stcp
File ini berisikan host yang di blokir
Contoh isinya :
# cat portsentry.blocked.stcp 1139373183 - 02/08/2006 11:33:03 Host: server.kapukvalley.net/172.168.0.1 Port: 1080 TCP Blocked
- portsentry.history
File ini isinya hampir sama dengan file diatas, perbedaan yang spesifik yaitu,
file yang diatas menyimpan informasi mengenai host yang melalukan serangan dan berhubungan
dengan aturan pemblokiran atau aksi pemblokiran. Sedangkan file history hanya menyimpan
informasi yang melalukan serangan saja, tidak termasuk aksi.
Contoh isinya :
# cat portsentry.history 1139373183 - 02/08/2006 11:33:03 Host: server.kapukvalley.net/172.168.0.1 Port: 1080 TCP Blocked
Bila Anda sudah mendelete aturan yang ada di chain iptables, maka sebaiknya isi file
portsentry.blocked.stcp pada host yang bersangkutan di delete, bisa dengan perintah :
# echo "" > /etc/portsentry/portsentry.blocked.stcp
Apabila Anda ingin praktis membuka koneksi host yang di blokir,
Anda bisa membuat script bash seperti yang penulis buat dibawah ini :
—————————–Awal-Script—————————–
#!/bin/sh IPTABLES="$(which iptables)" ROOT_UID=0 E_NOTROOT=67
# Harus root if [ "$UID" -ne "$ROOT_UID" ] then echo "Harus root euy.." exit $E_NOTROOT fi
# clear blocked portsentry -stcp if [ -f /etc/portsentry/portsentry.blocked.stcp ] then echo "Hapus log file portsentry.blocked.stcp... done..." echo "" > /etc/portsentry/portsentry.blocked.stcp else echo "ga ada file portsenty.blocked.stcp-na" fi
# Print ip si nakalz :
$IPTABLES -L INPUT -vnx | awk '{print "IP si nakalz -> " $8}' | sed '1,2d'
echo "IP berapa yang mau dibuka?"
read ip
echo "IP yang Anda masukkan adalah : $ip"
echo "Apakah benar? [y/t]"
read jawab
case "$jawab" in
'y')
$IPTABLES -D INPUT -s $ip -j DROP
;;
'n')
esac
exit 0
——————————————Akhir-Script——————
hasil pencarian :
- portsentry
- konfigurasi portsentry
- file-file yang diblokir iptables
- 4 Blocking dengan portsentry Instalasi dengan Portsentry
- pasang portsentry server error
- model bintang kecil 1 august 2006
- instalasi snort pada slackware
- instal portsentry di slackware 13
- contoh uji coba serangan pada snort
- contoh history file
















[...] terus,aku akan jaga service-mu jangan sampai crash dan aku akan menjadi firewallmu aku akan pasang portsentry, dan menyeting error pagemu â€The page cannot be found coz it Has Been Owned by Someone, get [...]