Debian'da MRTG ile Router ve Sunucu Trafiğinin İzlenmesi
From Lapis Wiki
Bu makale NASIL bölümü serisinin bir parçasıdır
|
| MasaÜstü • Donanım • Ağ • Dağıtımlar |
| Tarayıcılar• Programlama • Linux ve Oyunlar |
Debian'da MRTG ile router ve sunucu trafiğinin nasıl izleneceğine dair kısacık bir belge hazırladım. Belge ile ilgili her türlü öneri ve eleştirileriniz için şimdiden teşekkürler.
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
Router (ADSL Modem) Trafiğinin MRTG ile İzlenmesi
Gerekli 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 \
public@192.168.1.1
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
"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
http://localhost/cgi-bin/mrtg-rrd.cgi
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
SNMPD yeniden başlatılır
# /etc/init.d/snmpd restart
SNMPD'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 \
public@127.0.0.1
"/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:public@127.0.0.1:
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 <root@localhost> (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 localhost 127.0.0.1 192.168.1.
</Directory>
Logrotate Ayarları
MRTG logları "/var/log/mrtg.log" dosyasında tutulamaktadı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
Belge Hakkinda
Bu belge Lapis Foruma Ozgun kullanicisi tarafindan atilmistir. http://forum.linux-sevenler.org/index.php/topic,1847.0/topicseen.html#msg8491
