اطلاعیه

Collapse
No announcement yet.

برنامه ای برای مانیتور کردن شبکه Cacti

Collapse
X
 
  • Filter
  • زمان
  • Show
Clear All
new posts

  • برنامه ای برای مانیتور کردن شبکه Cacti

    لینک اصلی : http://blog.oopssec.ir/?p=186

    Cacti چیست؟!

    Cacti یک ابزار متن باز و کاملا ظاهر محور برای ابزار round-robin database می باشد. این ابزار یک برنامه مبتنی بر وب برای مانیتور کردن ایونت های شبکه است که برای مدیران لینوکسی بسیار حیاطی و مورد نیاز می باشد. به هر حال در این آموزش ما فقط می خواهیم نحوه نصب کردن و پیکربندی این ابزار را مورد بررسی قرار بدهیم و بهتر است برای بدست آوردن اطلاعات بیشتر در مورد این برنامه به وب سایت زیر مراجعه بفرمائید.
    نصب بسته های مورد نیاز

    برای نصب و راه اندازی Cacti نیاز به نصب کردن چندین بسته دارید که آن بسته ها در زیر آورده شده است، پس آن ها را طبق آموزش نصب و راه اندازی کنید تا بتوانید برنامه اصلی یعنی Cacti را مورد بهره برداری قرار بدهید. قابل ذکر است که در این آموزش بنده این برنامه را بر روی centos نصب می کتم.

    نصب آپاچی سرور

    از آپاچی برای نمایش گراف های شبکه که توسط ابزار RRDtool ایجاد می گردد استفاده می شود. زیرا که تمامی اسکریپت های این برنامه با PHP نوشته شده است و نیاز به یک وب سرور است که آن را برای ما نمایش دهد. به شکل زیر باید آن را نصب کنید. (البته آپاچی به صورت پیش فرض بر روی سرور ها نصب است، اگر نصب نبود آن را باید نصب کنید.)
    [root@server ~]# yum install httpd httpd-devel -y
    نصب کردن MySql

    از بانک اطلاعاتی MySql برای ذخیره سازی داده های Cacti استفاده می شود باید به شکل زیر نصب گردد.
    کد:
    [LEFT][root@server ~]# yum install mysql mysql-server -y[/LEFT]
    همانطور که در قسمت های گذشته متذکر شدم ابزار RRDtool از اسکریپت های نوشته شده با زبان PHP برای ایجاد گراف استفاده می کند پس یکی دیگر از بسته ها مورد نیاز RRDtool و Cacti بسته های PHP است که باید به شکل زیر نصب شوند.
    کد:
    [LEFT][root@server ~]# yum install php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli php-mysql -y
    [/LEFT]
    نصب کردن PHP-SNMP

    این یک extension برای SNMP است که برای دسترسی گرفتن به داده ها ازش می شود و به شکل زیر باید نصب شود.
    1
    [root@server ~]# yum install php-snmp -y
    نصب کردن Net-SNMP

    از این بسته برای مدیریت شبکه استفاده می شود و به شکل زیر باید نصب شود.
    [root@server ~]# yum install net-snmp-utils net-snmp-libs php-pear-Net-SMTP -y
    نصب کردن RRDtool

    RRDtool بک برنامه برای مدیریت و دریافت داده و اطلاعات شبکه از قبیل پهنای باند، میزان بارگزار CPU و.. است که شکل زیر نصب می شود.

    [root@server ~]# yum install rrdtool -y
    بعد از نصب بسته های بالا باید آنها را Start کنید به شکل زیر این کار را انجام دهید:
    [root@server ~]# /etc/init.d/httpd start
    [root@server ~]# /etc/init.d/mysqld start
    [root@server ~]# /etc/init.d/snmpd start
    و به شکل زیر سرویس های زیر را به صورت استارت آپ در آورید که در هر بار دوباره بارگزاری سیستم این سرویس ها هم اجرا شوند:

    [root@server ~]# chkconfig httpd on
    [root@server ~]# chkconfig mysqld on
    [root@server ~]# chkconfig snmpd on
    نصب کردن ابزار Cacti

    برای نصب کردن بسته نرم افزاری Cacti که ابزار مورد بحث ما در این قسمت است باید به شکل زیر عمل کنیم. این ابزار را می توان مجتمع کننده ابزار RRDtool نماید (به زعم از خودم البته)…! به شکل زیر آنرا نصب کنید:
    [root@server ~]# yum install cacti -y
    پیکربندی بانک اطلاعاتی MySql

    خب حال وقت پیکربندی MySql رسیده است. برای اعمال کردن تغییرات در بانک اطلاعاتی MySql نیاز است که به آن با نام کاربری root وارد شوید و یک دیتابیس برای Cacti ایجاد کنید. در اینجا بنده از نام MiladCacti به عنوان نام دیتابیس، c3phalex به عنوان نام کاربری و milad@@milad به عنوان کلمه عبور استفاده خواهم کرد. شما از پارامتر های مد نظر خود برای این گزینه ها استفاده کنید. به تعبیری هر چی عشقتون می کشه تعریف کنید.
    [root@server ~]# mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 7
    Server version: 5.1.69 Source distribution

    Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.

    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

    mysql> create database MiladCacti;
    Query OK, 1 row affected (0.01 sec)

    mysql> GRANT ALL ON MiladCacti.* TO c3phalex@localhost IDENTIFIED BY 'milad@@milad';
    Query OK, 0 rows affected (0.00 sec)

    mysql> flush privileges;
    Query OK, 0 rows affected (0.01 sec)

    mysql> exit
    Bye
    حالا جداول Cacti را به بانک اطلاعاتی MiladCacti وارد کنید. محل cacti.sql را پیدا کرده و سپس آن را به بانک اطلاعاتی Cacti وارد کنید. برای پیدا کردن این فایل به شکل زیر عمل کنید.
    [root@server ~]# rpm -ql cacti | grep cacti.sql
    /usr/share/doc/cacti-0.8.8a/cacti.sql
    حالا فایل cacti.sql را به بانک اطلاعاتی باید وارد کنیم به شکل زیر عمل کنید.
    [root@server ~]# mysql -u c3phalex -p MiladCacti < /usr/share/doc/cacti-0.8.8a/cacti.sql
    Enter password:
    حالا که جداول به بانک اطلاعاتی MiladCacti وارد شد. فایل db.php را باز کرده و تغییرات زیر را در آن اعمال کنید.
    [root@server ~]# vi /etc/cacti/db.php
    /* make sure these values refect your actual database/host/user/password */
    $database_type = "mysql";
    $database_default = "MiladCacti"; ## Name of the Cacti Database ##
    $database_hostname = "localhost";
    $database_username = "c3phalex"; ## Username for Cacti database ##
    $database_password = "milad@@milad"; ## Database password ##
    $database_port = "3306";
    $database_ssl = false;

    /*
    پیکربندی سرور آپاچی

    فایل /etc/httpd/conf.d/cacti.conf را باز کتید و محدوده شبکه خود را اضافه کنید یا می توانید یک آی پی آدرس وارد کنید. در اینجا، من آدرس شبکه خودم(192.168.1.0/249) را وارد می کنم.
    [root@server ~]# vi /etc/httpd/conf.d/cacti.conf
    Alias /cacti /usr/share/cacti

    <Directory /usr/share/cacti/>
    <IfModule mod_authz_core.c>
    # httpd 2.4
    Require host localhost
    </IfModule>
    <IfModule !mod_authz_core.c>
    # httpd 2.2
    Order deny,allow
    Deny from all
    Allow from 192.168.1.0/24
    </IfModule>
    </Directory>
    در پایان سرور آپاچی خود را ریستارت کنید.
    [root@server ~]# /etc/init.d/httpd restart
    اگر شما می خواهید محیط نصب Cacti را یک ماشین راه دور راه اندازی کند باید به درگاه 80 اجازه اتصال بدهید! به شکل زیر این کار را انجام دهید.
    root@server ~]# vi /etc/sysconfig/iptables
    # Firewall configuration written by system-config-firewall
    # Manual customization of this file is not recommended.
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    -A INPUT -p udp -m state --state NEW --dport 80 -j ACCEPT
    -A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT
    -A INPUT -p udp -m state --state NEW --dport 53 -j ACCEPT
    -A INPUT -p tcp -m state --state NEW --dport 53 -j ACCEPT
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A INPUT -p icmp -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited
    COMMIT
    حالا iptables و ریستارت کنید.
    [root@server ~]# /etc/init.d/iptables restart
    پیکربندی Cron برای Cacti

    فایل /etc/vron.d/cacti را باز کنید و خط زیر را uncomment کنید.
    کد:
    [LEFT][root@server ~]# vi /etc/cron.d/cacti
    */5 * * * *     cacti   /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
    [/LEFT]
    فایل بالا باعث می شود که هر پنج دقیقه اسکریپت poller.php اجرا شود و داده ها در سیستم میزبان را جمع آوری کند.

    Cacti را اجرا کنید

    مرورگر را باز کنید و به آدرس http://localhost/cacti بروید. بعد از رفتن به این آدرس تصویر زیر نمایش داده می شود.
    بر روی next کلیک کنید تا به مرحله بعدی نصب بروید و در مرحله بعد از پنجره DropBox گزینه Install را انتخاب کنید و بعد بر روی next کلیک کنید.
    در پنجره بعد که نمایش داده می شود از صحت درستی مقادیر وارد شده اطمینان حاصل کنید.
    هنگامی که نصب به پایان می رسد و صفحه ورود به Cacti نمایش داده می شود نام کاربری و کلمه عبور پیش فرض آن admin است. برای ورود به مدیریت آن از admin استفاده کنید.

    در صفحه بعدی از شما می خواهد که کلمه عبور را تغییر دهید. به شکل زیر عمل کنید.
    بعد از اعمال این تنظیمات با محیط اصلی Cacti رو به رو خواهید شد.
    انقدر نشد چشمه از پاسخ سنگ سرد، به رفتن در اسِتاد و اِبرام کرد
    بسی کَند و کاوید و کوشش نمود، کز آن سنگ خارا رهی برگشود
    ملک الشعرای بهار
    My Blog : c3phalex1n.blogspot.com

    سایت جنبش مصاف، علی اکبر رائفی پور : http://masaf.ir
    خدا خیرش بده واقعا، تا حالا ندیده بودم کسی اینقدر برای جوُنا زحمت بکشه.
Working...
X