Archive for the ‘unix+freebsd’ Category

Detect DDoS Source & Destination IP Address with OURMON

Thursday, June 26th, 2008

We have OURMON running on one of network segment for quite some time, it is very helpful and resourceful when DDoS attack happened, especially to help our customer to find out which destination is targeted on the attack and from which sources. Below is the graph that we previously captured while running OURMON version 2.70.

OURMON Version 2.81

On the recent released of OURMON, the topn graphs didn’t show the traffic by Mbit/s instead of bit/s. The long no. is confusing when the NOC engineer is doing the monitoring(minimal 7 digits will show up). I have made some changes on omupdate.pl, one of OURMON script that generate html static page, to show extra value – Mbit/s. Our current OURMON graph looks something like below;

Below will show you how to add extra Mbit/s value on your OURMON Topn section;

edit omupdate.pl file

vi /usr/local/mrourmon/bin/omupdate.pl

On line 3137, add the code looks like below;


my $uappf = $items[$i+2];       # old hw app flags
my $uappl = $items[$i+3];       # app lower case
my $uapph = $items[$i+4];       # app upper case
my $bps = int(($items[$i+1] * 8)/30);
my $mbps = sprintf("%.2f", ($bps/1024)/1024); # convert bits to mbits
my $uaf = get_appflag($uappf, $uappl, $uapph);

this line of code my $mbps = sprintf(“%.2f”, ($bps/1024)/1024); is to declare the new variable $mbps and convert the bit/s value to Mbit/s by dividing 1024*1024.

Next is to display the value on the page, do something on line of code 3146;


"bits/sec: $bps, Mbits/sec: $mbps, "

Done, wait for a few second for the web page to refresh with extra Mbit/s value. Btw, you can remove bit/s if you want to, to save some extra space ;)

split – but no destination parameter to specify

Tuesday, April 22nd, 2008

first :

cd /destination/directory

second :

split /source/directory/big-huge-file prefix-to-apply-onto-splited-files

Voila !!!

(use the parameter -b to specify the size of splited files in BYTES, NOT kb, mb or gb)

cron & time zone

Friday, April 18th, 2008

after changing time zone (tzsetup), restart cron (/etc/rc.d/cron restart) to let it know the changes or else the cron jobs will use the previous time zone.

convert epoch using date command

Sunday, April 13th, 2008

date -d ‘<Unix epoch> <epoch date> sec’

e.g. date -d ‘1970-01-01 988822888 sec’ would dated “Wed May 2 17:31:28 MYT 2001″

20080430 :

get a particular date in epoch, e.g. date -d ‘Apr 30 2008 00:00:00′ ‘+%s’

Forget / forgot / cannot remember root password

Tuesday, April 8th, 2008

On a FreeBSD server

1. reboot server
2. choose to boot into single user mode
3. mount -o rw <root partition> e.g. mount -o rw /
4. passwd <root account> e.g. passwd root
5. mount -o ro <root partition> e.g. mount -o ro /
6. reboot server again

Voila !!!