Pencarian

Jumat, 19 Maret 2010

Monitor Bandwidth di Ubuntu Server

Setelah saya dan teman-teman di http://logic-jbi.com berhasil menginstall ubuntu server 9.10 yang digunakan untuk router+proxy (squid) pada waarnet-warnet, saya bingung gimana cara melihat traffik di interface nya baik out maupun in , dan setelah jalan-jalan dengan google (niatnya cuma cari2 artikel sniffing) eh malah ketemu aplikasi yang cukup sederhana namun sesuai dengan kebutuhan saya.

bwm-ng, Aplikasi untuk melihat traffik data di interface yang berbasis commandline.
a3m-nix@f0r-e4ch:~$ sudo apt-get install bwm-ng


Untuk menjalankan aplikasi tersebut tinggal mengetikkan perintah ini di terminal:
a3m-nix@f0r-e4ch:~$ bwm-ng

maka akan muncul jumlah data dalam satuan KB/s pada masing-masing interface (iface).
rx adalah jumlah paket yang masuk
sedangkan tx adalah jumlah paket yang keluar melalui interface.

Tentu tidak semua orang familiar dengan terminal (commandline) dan setelah melihat manualnya ternyata bwm-ng bisa menghasilkan output berupa html dan cvs, akhirnya saya coba untuk memasukkannya kedalam web agar mudah di lihat dari browser.

Berhubung apache2, php5 sudah terinstall pada saat instalasi squid-cgi saya tinggal membuat script php nya saja.

saya buat form login terlebih dahulu karena IP server ini adalah Public.
a3m-nix@f0r-e4ch:~$ sudo nano /var/www/index.php

<?php

session_start();
$ip = $_SERVER['REMOTE_ADDR'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Login Administrator</title>
<SCRIPT LANGUAGE="JavaScript">
function setFocus() {
document.login.txtuser.select();
document.login.txtuser.focus();
}
</script>
</head>
<body onload="javascript:setFocus()">
<form id="form1" name="login" method="post" action="plogin.php">
<br><br><br><br><br>
<div align=center><font size=5 color=blue></div>
</font>
<center><font size="5">Administrator</font><br /><br />
Alamat IP Anda <b><?php echo $ip;?></b><br />

<br />
<table width="302" height="175" border="0" align="center">
<tr>
<td width="62" rowspan="7">&nbsp;</td>
<td width="230" height="21">Username </td>
</tr>
<tr>
<td height="22"><input type="text" name="txtuser" id="txtuser" /></td>
</tr>
<tr>
<td height="21">Password</td>
</tr>
<tr>
<td height="22"><input type="password" name="txtpass" id="txtpass" /></td>
</tr>
<tr>
<td height="35"><input type="submit" name="Submit" value="Login"/></td>
</tr>
</table>
</form>
</body>
</html>

setelah itu file plogin
a3m-nix@f0r-e4ch:~$ sudo nano /var/www/plogin.php


<?php

session_start();
$user = htmlentities($_POST['txtuser']);
$pass = htmlentities($_POST['txtpass']);
if($user == "admin" && $pass == "rahasia"){ //ganti user dan pass
$_SESSION['adminlc'] = md5($user.$pass);
header("location:./index1.php");
exit;
}else{
header("location:./index.php");
exit;
}
?>


a3m-nix@f0r-e4ch:~$ sudo nano /var/www/index1.php

<?php
if (!isset($_SESSION['admin']))
{

header("location:./index.php");
exit;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>BW-Viewer</title>
<meta http-equiv="refresh" content="1">
</head>
<body>
<div align="center">
<?php
include "index1.html";
?>
</div>
</body>
</html>

Pada file diatas yang perlu diperhatikan adalah meta http-equiv="refresh" content="1" yang maksudnya adalah browser akan merefresh secara otomatis setiap 1 detik. Jika ingin menggunakan refresh milik bwm-ng bisa menggunakan opsi -R interval ( bwm-ng -o html -F /var/www/index1.html -R 2 -D).
setelah itu include "index1.html" yaitu kita menyertakan file index1.html yang nantinya akan di generate oleh bwm-ng.
buat file
a3m-nix@f0r-e4ch:~$ sudo nano /var/www/index1.html

tidak perlu di isi karena nantinya bwm-ng yang akan mengisi file ini.
Jangan lupa untuk memberi permission pada file index1.html
a3m-nix@f0r-e4ch:~$ sudo chmod 777 /var/www/index1.html


setelah itu jalankan bwm-ng melalui terminal:
a3m-nix@f0r-e4ch:~$ bwm-ng -o html -F /var/www/index1.html -D

buka browser dan masukkan alamat:
http://ip/index.php

Login dengan nama admin dan password rahasia
Jika login telah benar maka akan terlihat traffik banwitdh nya.

Untuk menjalankan bwm-ng pada startup, tinggal masukkan bwm-ng -o html -F /var/www/index1.html -D pada file /etc/init.d/rc.local
a3m-nix@f0r-e4ch:~$ sudo echo bwm-ng -o html -F /var/www/index1.html -D >> /etc/init.d/rc.local

Semoga bermanfaat :D

Tidak ada komentar:

Posting Komentar