Membuat statistik qmail dengan MRTG - RRD tool

Attention: open in a new window. PDFPrintE-mail

Pernah berpikir untuk mengamati statistik data qmail ? Berapa trafik POP3, aktifitas local deliveri, maupun trafik SMTP.
Sebenarnya, Inter7 telah menyediakan program pendukungnya, yaitu qmailmrtg7. Dimana butuh sedikit setup untuk mengintegrasikannya kedalam mail server kita. Tulisan ini merupakan lanjutan tulisan sebelumnya (Instalasi Webmail Server Sederhana Dengan Qmail + Sqwebmail).


Tool Pendukung
  • Perl 5.005
  • GNU make
  • GNU gcc
  • GNU autoconf
  • GNU automake
  • GNU libtool
  • Apache Webserver


    PERSIAPAN
    1. Mail server dengan qmail (Baca artikel sebelumnya : Instalasi Webmail Server Sederhana Dengan Qmail + Sqwebmail )
    2. Daemontools
    3. MRTG dengan RRD


    Instalasi Daemontools
    Daemontools adalah koleksi tools untuk memanage serveice-service UNIX.
  • Buat directori /package :

      mkdir -p /package
      chmod 1755 /package
      cd /package


  • Download daemontools-0.76.tar.gz ke /package. Lalu Unpack paket daemontools :

      gunzip daemontools-0.76.tar
      tar -xpf daemontools-0.76.tar
      rm daemontools-0.76.tar
      cd admin/daemontools-0.76


  • Compile dan set up :

      package/install


    Instalasi MRTG dengan RRD
    Cek terlebih dahulu, apakah di linuxbox anda telah terpasang :
  • zlib
  • libpng
  • gd
  • mrtg
  • rrdtools

    Bila sudah, langkah-langkah dibawah ini dapat di skip :


    cd /usr/local/src


    wget http://www.gzip.org/zlib/zlib-1.1.4.tar.gz
    gunzip -c zlib.tar.gz | tar xf -
    mv zlib-?.?.?/ zlib
    cd zlib
    ./configure
    make
    cd ..


    wget http://www.libpng.org/pub/png/src/libpng-1.0.12.tar.gz
    gunzip -c libpng-*.tar.gz |tar xf -
    rm libpng-*.tar.gz
    mv libpng-* libpng
    cd libpng
    make -f scripts/makefile.std CC=gcc ZLIBLIB=../zlib ZLIBINC=../zlib
    rm *.so.* *.so
    cd ..


    wget http://www.boutell.com/gd/http/gd-1.8.3.tar.gz
    gunzip -c gd-1.8.3.tar.gz |tar xf -
    mv gd-1.8.3 gd
    cd gd

    Download MRTG dari http://people.ee.ethz.ch/~oetiker/webtools/mrtg/pub/



    cd /usr/local/src
    tar xzvf mrtg-2.9.26b.tar.gz
    cd mrtg-2.9.26b


    ./configure --prefix=/usr/local/mrtg-2


    ./configure --prefix=/usr/local/mrtg-2 \
    --with-gd=/usr/local/src/gd \
    --with-z=/usr/local/src/zlib \
    --with-png=/usr/local/src/libpng


    Download RRDTool di http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/rrdtool.tar.gz



    cd /usr/local/src
    tar xzvf rrdtool.tar.gz
    cd rrdtool-version-xxx
    sh configure --prefix=/usr/local/mrtg-2/RRDtool
    make
    make install


    Qmailmrtg

    Download qmailmrtg di http://www.inter7.com/qmailmrtg7/qmailmrtg7-3.4.tar.gz



    tar xzvf qmailmrtg7-3.4.tar.gz
    cd qmailmrtg7-3.4
    make all
    make install

    mkdir -p /etc/mrtg
    mkdir -p
    cp qmail.mrtg.cfg /etc/mrtg/qmail.mrtg.cfg
    echo "RunAsDaemon: yes" >> /etc/mrtg/qmail.mrtg.cfg
    echo "LogFormat: rrdtool" >> /etc/mrtg/qmail.mrtg.cfg
    echo "PathAdd: /usr/local/mrtg-2/rrdtool/bin/" >> /etc/mrtg/qmail.mrtg.cfg
    echo "LibAdd: /usr/local/mrtg-2/rrdtool/lib/perl/" >> /etc/mrtg/qmail.mrtg.cfg
    echo "WorkDir: /var/mrtg/qmail-mrtg" >> /etc/mrtg/qmail.mrtg.cfg
    cd /var/log
    mkdir qmail
    mkdir pop3
    mkdir smtp
    chown -R qmaill.qmail /var/log/qmail
    chown -R qmaill.qmail /var/log/pop3
    chown -R qmaill.qmail /var/log/smtp

    Kemudian edit script autobootnya menjadi :



    #############################################################
    # Starting Qmail

    exec env - PATH="/var/qmail/bin:$PATH" \
    qmail-start ./Maildir/ | /usr/local/bin/setuidgid qmaill \
    /usr/local/bin/multilog t n100 s1000000 /var/log/qmail &

    #############################################################
    # POP
    env - PATH="/var/qmail/bin:/usr/local/bin" \
    tcpserver -v -H -R -l0 -u1011 -g105 -c200 0 pop-3 \
    /var/qmail/bin/qmail-popup mail.yourcompany.com \
    /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1 | /usr/local/bin/setuidgid qmaill \
    /usr/local/bin/multilog t n100 s1000000 /var/log/pop3 &

    echo -n " qmail-pop done !"

    #############################################################
    # Start the qmail smtp daemon - Advanced Configuration
    env - PATH="/var/qmail/bin:/usr/local/bin" \
    tcpserver -H -R -v -x /etc/tcp.smtp.cdb -c200 -u1003 -g102 0 smtp fixcrio /var/qmail/bin/qmail-smtpd 2>&1 | /usr/local/bin/setuidgid qmaill \
    /usr/local/bin/multilog t n100 s1000000 /var/log/smtp &

    echo -n " qmail-smtp done !"

    #############################################################
    # Starting log qmail mrtg
    /usr/local/mrtg-2/bin/mrtg /etc/mrtg/qmail.mrtg.cfg



    Script Frontend RRD

    Download front-end script untuk rrd di http://my14all.sourceforge.net/14all-1.0.txt



    mv 14all-1.0.txt /path-ke-cgi-bin/cgi-bin/qmail.cgi


  • Cek bagian pertama dari /path-ke-cgi-bin/cgi-bin/qmail.cgi sesuaikan dengan lokasi perl anda.
    biasanya :

    #!/usr/bin/perl -w
    atau
    #!/usr/local/bin/perl -w

  • Edit /path-ke-cgi-bin/cgi-bin/qmail.cgi :

    use lib qw(/usr/local/mrtg-2/lib/mrtg2);
    use lib qw(/usr/local/rrdtool-version-xxx/lib/perl);
    $cfgfile = '/etc/mrtg/qmail.mrtg.cfg';


    Nah... selesai sudah.....
    Silahkan browser anda ke http://linuxbox-anda/cgi-bin/qmail.cgi



    Notes :
    Pernah di uji cobakan dengan slackware 8.0. Untuk distro lain mungkin akan lebih simple, apalagi bila memprovide paket-paket yang dibutuhkan dalam bentuk biner.

    Kredits :
    Thx to Paul Hoadley, the author of Generating MRTG graphs of qmail statistics under FreeBSD

    Pustaka :
    1. Generating MRTG graphs of qmail statistics under FreeBSD by Paul Hoadley, < This e-mail address is being protected from spambots. You need JavaScript enabled to view it >
    2. http://cr.yp.to/daemontools/install.html
    3. http://paucits.itb.ac.id/~eryan/eryandhsorg/Linux/InstallQmail.html
    4. http://people.ee.ethz.ch/~oetiker/webtools/mrtg/unix-guide.html
    5. http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/compiling.html
    6. http://my14all.sourceforge.net/install.html
  • Comments (0)
    Only registered users can write comments!