From Wiki

Linux: DebiandaMrtgIleRouterVeSunucuTrafigininIzlenmesi

0. Giriş

Bu kısacık belgede;

1. Router (ADSL Modem) Trafiğinin MRTG ile İzlenmesi
2. MRTG+SNMP Kurulu Sunucunun Trafiğinin MRTG ile İzlenmesi

anlatılmaktadır. Bu işlem i�in bir adet Debian Sarge kurulu linux sunucu ve bir adet router yeterli olmaktadır.

Router IP: 192.168.1.1
Debian IP: 192.168.1.2

1. Router (ADSL Modem) Trafiğinin MRTG ile İzlenmesi

İlgili Paketler Kurulur:

# apt-get install mrtg mrtgutils mrtg-contrib libsnmp-session-perl rrdtool librrds-perl

"/etc/mrtg.conf" yedeklenir.

# cd /etc
# cp mrtg.cfg mrtg.cfg.orig

Router'dan "SNMP Configuration" b�l�m�nde ilgili ayarlar yapılır. �rneğin Zyxel ADSL modem i�in ilgili ayarlar şu şekildedir:

Menu 22 - SNMP Configuration	
	SNMP:
		Get Community= public
		Set Community= public
		Trusted Host= 192.168.1.2
	Trap:
		Community= public
		Destination= 0.0.0.0

Router trafiğinin izlenebilmesi i�in ilgili "mrtg.conf" dosyasının oluşturulması Aşağıdaki komuttan sonra hatasız bir şekilde mrtg.conf dosyasının oluşması gerekir.

# cfgmaker --global 'WorkDir: /var/www/mrtg' \
		--global 'Options[_]: bits,growright' \
		--output /root/mrtg.cfg \
		[email protected]

mrtg.conf dosyasında "Max Speed" ve "MaxBytes?" ayarının yapılması. Burdaki değerler 512 Kbit/s ADSL bağlantı g�z �n�ne alınarak yapılmıştır.

MaxBytes[192.168.1.1_1]: 64000
<TR><TD>Max Speed:</TD>  <TD>512.0 kbits/s</TD></TR>

MaxBytes[192.168.1.1_2]: 64000
<TR><TD>Max Speed:</TD>  <TD>512.0 kbits/s</TD></TR>

RRDTOOL desteği i�in ilgili ayarların mrtg.conf dosyasına yapılması.

LogFormat: rrdtool

mrtg.conf dosyasında Icon'ların g�z�kmesi i�in aşağıdaki satır eklenir.

IconDir: /mrtg

Oluşturulan "mrtg.conf" dosyası "/etc" dizinine kopyalanır.

# cp /root/mrtg.cfg /etc/

mrtg-rrd'nin son s�r�m� aşağıdaki adresten indirilir ve "mrtg-rrd.cgi" dosyasına gerekli değişiklik yapılır. mrtg-rrd sayesinde grafikler sayfa �ağırıldığı zaman oluşturulur.

# cd /root
# wget ftp://ftp.linux.cz/pub/linux/people/jan_kasprzak/mrtg-rrd/mrtg-rrd-0.7.tar.gz
# tar xzvf mrtg-rrd-0.7.tar.gz 
# cd mrtg-rrd-0.7
# vim mrtg-rrd.cgi
 BEGIN { @config_files = qw(/etc/mrtg.cfg); }
# cp mrtg-rrd.cgi /var/lib/cgi-bin/

Aşağıdaki komut birka� kez �alıştırılarak(hata �retMEyene kadar) MRTG test edilir.

# /usr/bin/mrtg /etc/mrtg.cfg

Debian MRTG kurulumu sırasında /etc/cron.d/mrtg dosyasını oluşturuyor bu dosyanın i�eriği aşağıdaki gibidir:

0-55/5 *  * * * root  if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; \
then env LANG=C /usr/bin/mrtg /etc/mrtg.cfg >> /var/log/mrtg/mrtg.log 2>&1; fi

Eğer yukarıdaki �alışmıyorsa aşağıdaki gibi bir satır da crontab'a eklenebilir.

# crontab -e 
*/5 * * * *  /usr/bin/mrtg /etc/mrtg.cfg --logging /var/log/mrtg/mrtg.log

"mrtg-rrd.cgi" betiğinin /etc/mrtg.cfg dosyasına erişebilmesi ve istatistikleri oluşturabilemesi i�in aşağıdaki d�zenleme yapılır.

# chown www-data /etc/mrtg.cfg
# chown www-data /var/www/mrtg
# chown www-data /var/www/mrtg/*

MRTG loglarının takip edilmesi:

$links http://localhost/cgi-bin/mrtg-rrd.cgi

2. MRTG+SNMP Kurulu Sunucunun Trafiğinin MRTG ile İzlenmesi

İlgili paketler kurulur.

# apt-get install snmp snmpd

SNMP sunucunu sadece kendinden gelen istekliere cevap vermesi sağlanır.

# vim /etc/snmp/snmpd.conf
Bu satırlar
com2sec paranoid   default         public
#com2sec readonly  default         public
#com2sec readwrite default         private
Şu şekilde değiştirilir.
#com2sec paranoid  default         public
com2sec  readonly  127.0.0.1       public
#com2sec readwrite default         private

SNMP sunucu yeniden başlatılır.

# /etc/init.d/snmpd restart

SNMP'nin her a�ılışta �alışması i�in gerekli ayarlar yapılır.

# sysv-rc-conf

Aşağıdaki komut ile localhost SNMP sunucusundaki network arabirimleri kontor edilir.

$ snmpwalk -v 1 -OS -c public localhost interfaces.ifTable.ifEntry.ifDescr
�ıktısı:
IF-MIB::ifDescr.1 = STRING: lo
IF-MIB::ifDescr.2 = STRING: eth0

/etc/mrtg.conf i�in gerekli konfigurasyon oluşturulur.

# cfgmaker --global 'WorkDir: /var/www/mrtg' \
	--global 'Options[_]: bits,growright' \
	--output /root/mrtg_local.cfg \
	[email protected]

"/root/mrtg_local.cfg" dosyasındaki aşağıdaki satırlar "/etc/mrtg.cfg" dosyasının sonuna eklenir.

### Interface 2 >> Descr: 'eth0' | Name: '' | Ip: '192.168.1.2' | Eth: '00-e0-40-00-03-f5' ###

	Target[127.0.0.1_2]: 2:[email protected]:
	SetEnv[127.0.0.1_2]: MRTG_INT_IP="192.168.1.2" MRTG_INT_DESCR="eth0"
	MaxBytes[127.0.0.1_2]: 12500000
	Title[127.0.0.1_2]: Traffic Analysis for 2 -- mor
	PageTop[127.0.0.1_2]: <H1>Traffic Analysis for 2 -- mor</H1>
	 <TABLE>
	   <TR><TD>System:</TD>     <TD>mor in Unknown (configure /etc/snmp/snmpd.local.conf)</TD></TR>
	   <TR><TD>Maintainer:</TD> <TD>Root &lt;root@localhost&gt; (configure /etc/snmp/snmpd.local.conf)</TD></TR>
	   <TR><TD>Description:</TD><TD>eth0  </TD></TR>
	   <TR><TD>ifType:</TD>     <TD>ethernetCsmacd (6)</TD></TR>
	   <TR><TD>ifName:</TD>     <TD></TD></TR>
	   <TR><TD>Max Speed:</TD>  <TD>100.0 Mbits/s</TD></TR>
	   <TR><TD>Ip:</TD>         <TD>192.168.1.2 (mor.arena.lan)</TD></TR>
	 </TABLE>

Yukarıdaki konfigurasyonaki "MaxBytes?" ve "Max Speed" aşağıdaki gibi değiştirilir.

MaxBytes[127.0.0.1_2]: 64000
<TR><TD>Max Speed:</TD>  <TD>512.0 kbits/s</TD></TR>

İşler yolunda gitmiş mi diye bir kontrol yapılır.

# /usr/bin/mrtg /etc/mrtg_local.cfg

MRTG loglarının takip edilmesi:

$ firefox http://localhost/cgi-bin/mrtg-rrd.cgi

Apache Web Sunucu Ayarları:

Kurulum işlemi bittikten sonra, network trafiğimizi kem g�zlerden sakınmak(sadece belirli IP'lerden bağlanılabilmesi) i�in apache web sunucunda bazı ayarlar yapmamız gerekmektedir.

# vim /etc/apache/httpd.conf
<Directory /var/www/mrtg>
 order deny,allow
 deny from all
 allow from 
</Directory>

Logrotate Ayarları:

MRTG logları "/var/log/mrtg.log" dosyasında tutulamktadır. Bu dosyanın d�zenli olarak d�nd�r�lmesi i�in gerekli "logrotate" dosyası aşağıdaki gibidir. Bu dosya apt-get ile mrtg kurulumu sırasında oluşur.

# vim /etc/logrotate.d/mrtg

/var/log/mrtg/mrtg.log {
 weekly
 rotate 12
 compress
 missingok
}


Kaynaklar: http://people.ee.ethz.ch/~oetiker/webtools/mrtg/mrtg-unix-guide.html
http://apt-get.dk/mrts/
http://www.geocities.com/paulcwilliamson/mrtg/rateup2rrd.html

Retrieved from http://kozgun.net/wiki/pmwiki.php?n=Linux.DebiandaMrtgIleRouterVeSunucuTrafigininIzlenmesi
Page last modified on October 27, 2005, at 12:53 AM