ຕິດຕາມກວດກາຊັບພະຍາກອນ Server ກັບ Collected-web ແລະ Apache CGI ໃນ Linux


ບົດແນະ ນຳ ນີ້ຈະປຶກສາຫາລືກ່ຽວກັບວິທີທີ່ທ່ານສາມາດຕິດຕັ້ງແລະເອີ້ນໃຊ້ອິນເຕີເຟດ Collectd-web, ເຊິ່ງເປັນເຄື່ອງມືກວດສອບເວບໄຊທ໌ດ້ານ ໜ້າ ສຳ ລັບລວບລວມ daemon, ໂດຍສົມທົບກັບອິນເຕີເຟດ Apache CGI ເພື່ອຜະລິດຜົນໄດ້ຮັບ graphical html ເພື່ອກວດສອບກ່ອງ Linux.

ໃນຕອນທ້າຍຂອງບົດຄວາມທີ່ພວກເຮົາຈະ ນຳ ສະ ເໜີ ວິທີທີ່ທ່ານສາມາດປົກປ້ອງການໂຕ້ຕອບແບບລວບລວມໂດຍໃຊ້ກົນໄກ .hpasswd Apache Authentication.

ຄວາມຕ້ອງການຂອງບົດຄວາມນີ້ແມ່ນ, ທ່ານຕ້ອງໄດ້ຕິດຕັ້ງ Collected-Collected-Web ໃນລະບົບ Linux ຂອງທ່ານ. ການຕິດຕັ້ງແພກເກດເຫລົ່ານີ້, ທ່ານຕ້ອງເຮັດຕາມຂັ້ນຕອນທີ 1 ແລະຂໍ້ທີ 2 ຈາກບົດຂຽນກ່ອນ ໜ້າ ນີ້ຂອງຊຸດນີ້ທີ່:

<

  • ຕິດຕັ້ງເກັບ ກຳ ແລະເກັບ ກຳ ເວບໄຊທ໌ໃນ Linux
  • ພຽງແຕ່ປະຕິບັດຕາມສອງຂັ້ນຕອນຈາກລິ້ງຂ້າງເທິງ:

    Step 1: Install Collectd Service 
    Step 2: Install Collectd-Web and Dependencies 
    

    ເມື່ອສິ່ງທີ່ຕ້ອງການທັງສອງຢ່າງນີ້ປະສົບຜົນ ສຳ ເລັດ, ທ່ານສາມາດສືບຕໍ່ ຄຳ ແນະ ນຳ ເພີ່ມເຕີມໃນບົດຄວາມນີ້ເພື່ອ ກຳ ນົດການລວບລວມເວັບກັບ Apache CGI.

    ຂັ້ນຕອນທີ 1: ການຕິດຕັ້ງ Apache Web Server

    1. ສົມມຸດວ່າທ່ານໄດ້ຕິດຕັ້ງ server web Apache ຢູ່ໃນລະບົບຂອງທ່ານແລ້ວ, ຖ້າທ່ານບໍ່ສາມາດຕິດຕັ້ງໂດຍໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້ຕາມການແຈກຈ່າຍ Linux ຂອງທ່ານ.

    # apt-get install apache2	[On Debian based Systems]
    # yum install httpd		[On RedHat based Systems]
    

    2. ຫລັງຈາກ Apache ຕິດຕັ້ງແລ້ວ, ປ່ຽນໄດເລກະທໍລີໄປເປັນຮາກເອກະສານເຊີເວີ້ເວັບເຊີຟເວີຂອງທ່ານ (ເຊິ່ງຕັ້ງຢູ່ພາຍໃຕ້/var/www/html/ຫຼື/var/www ລະບົບເສັ້ນທາງແລະກົດປຸ່ມໂຄງການ Collectd-web Github ໂດຍການອອກ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້:

    # cd /var/www/html
    # git clone https://github.com/httpdss/collectd-web.git
    

    ນອກຈາກນີ້, ເຮັດໃຫ້ສະຄິບທີ່ເກັບ ກຳ ຂໍ້ມູນຕໍ່ໄປນີ້ໃຫ້ປະຕິບັດໄດ້ໂດຍການອອກ ຄຳ ສັ່ງຕໍ່ໄປນີ້:

    # chmod +x /var/www/html/collectd-web/cgi-bin/graphdefs.cgi
    

    ຂັ້ນຕອນທີ 2: ເປີດໃຊ້ Apache CGI (ສະຄິບ .cgi) ສຳ ລັບ Default Host

    3. ເພື່ອໃຫ້ Apache ດຳ ເນີນການສະຄິບ CGI ທີ່ຕັ້ງຢູ່ພາຍໃຕ້ໄດເລກະທໍລີ HTML Collectd-web cgi-bin ຢ່າງຊັດເຈນ, ທ່ານ ຈຳ ເປັນຕ້ອງເປີດໃຊ້ອິນເຕີເຟດ Apache CGI ສຳ ລັບ Bash scripts (ດ້ວຍການຂະຫຍາຍ .cgi) ໂດຍການປ່ຽນແປງເວັບໄຊທ໌ທີ່ມີໃນເວັບໄຊທ໌ທີ່ມີໃນຕອນຕົ້ນ. ແລະເພີ່ມ ຄຳ ເວົ້າຂ້າງລຸ່ມນີ້.

    ທຳ ອິດເປີດເອກະສານການຕັ້ງຄ່າໂຮດ Apache ເລີ່ມຕົ້ນ ສຳ ລັບການດັດແກ້ກັບບັນນາທິການ nano:

    # nano /etc/apache2/sites-available/000-default.conf
    

    ໃນຂະນະທີ່ເອກະສານທີ່ຖືກເປີດຂື້ນມາເພື່ອແກ້ໄຂເພີ່ມຕື່ມ ຄຳ ສັ່ງແນະ ນຳ ຕໍ່ໄປນີ້ຢູ່ລຸ່ມ ຄຳ ສັ່ງເອກະສານ Root Root ດັ່ງທີ່ສະແດງຢູ່ໃນຮູບຂ້າງລຸ່ມນີ້:

    <Directory /var/www/html/collectd-web/cgi-bin>
                    Options Indexes ExecCGI
                    AllowOverride All
                    AddHandler cgi-script .cgi
                    Require all granted
    </Directory>
    

    ຫຼັງຈາກທີ່ທ່ານໄດ້ເຮັດການດັດແກ້ເອກະສານແລ້ວ, ປິດມັນດ້ວຍ CTRL + o ແລະອອກຈາກບັນນາທິການ nano (CTRL + x), ຫຼັງຈາກນັ້ນເປີດໃຊ້ໂມດູນ Apache CGI ແລະເລີ່ມຕົ້ນເຊີບເວີເພື່ອ ນຳ ໃຊ້ທຸກໆການປ່ຽນແປງທີ່ເຮັດແລ້ວໂດຍການອອກ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້:

    # a2enmod cgi cgid
    # service apache2 restart
    OR
    # systemctl restart apache2.service     [For systemd init scripts]
    

    4. ເພື່ອເປີດໃຊ້ອິນເຕີເຟດ Apache CGI ສຳ ລັບ CentOS/RHEL, ເປີດເອກະສານການຕັ້ງຄ່າ httpd.conf Apache ແລະເພີ່ມສາຍຕໍ່ໄປນີ້ຢູ່ທາງລຸ່ມຂອງເອກະສານ:

    # nano /etc/httpd/conf/httpd.conf
    

    ເພີ່ມເອກະສານອ້າງອີງຕໍ່ໄປນີ້ໃສ່ແຟ້ມ httpd.conf.

    ScriptAlias /cgi-bin/ “/var/www/html/collectd-web/cgi-bin"
    Options FollowSymLinks ExecCGI
    AddHandler cgi-script .cgi .pl
    

    ເພື່ອ ນຳ ໃຊ້ການປ່ຽນແປງ, ໃຫ້ເລີ່ມໃຊ້ httpd daemon ໂດຍອອກ ຄຳ ສັ່ງຕໍ່ໄປນີ້:

    # service httpd restart
    OR
    # systemctl restart httpd        [For systemd init scripts]
    

    ຂັ້ນຕອນທີ 3: ຄົ້ນຫາການລວບລວມອິນເຕີເນັດທີ່ລວບລວມ

    5. ເພື່ອເຂົ້າເບິ່ງອິນເຕີເຟດທີ່ລວບລວມແລະເບິ່ງສະຖິຕິກ່ຽວກັບເຄື່ອງຂອງທ່ານທີ່ເກັບ ກຳ ມາຮອດປະຈຸບັນ, ເປີດໂປແກຼມທ່ອງເວັບແລະ ນຳ ທາງໄປຫາທີ່ຢູ່ IP ຂອງເຄື່ອງ/ສະຖານທີ່ເກັບ ກຳ ຂໍ້ມູນເວັບໄຊທ໌/URI ໂດຍໃຊ້ໂປໂຕຄອນ HTTP.

    http://192.168.1.211/collect-web/
    

    ຂັ້ນຕອນທີ 4: ລະຫັດຜ່ານປົກປ້ອງເຄືອຂ່າຍ URL ທີ່ລວບລວມໂດຍໃຊ້ Apache Authentication

    6. ໃນກໍລະນີທີ່ທ່ານຕ້ອງການ ຈຳ ກັດການເຂົ້າເຖິງອິນເຕີເຟດທີ່ລວບລວມໂດຍການປົກປ້ອງມັນໂດຍໃຊ້ກົນໄກການກວດສອບ Apache (.htpasswd), ເຊິ່ງຮຽກຮ້ອງໃຫ້ນັກທ່ອງທ່ຽວໃສ່ຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານເພື່ອເຂົ້າເຖິງຊັບພະຍາກອນເວັບ.

    ເພື່ອເຮັດສິ່ງນັ້ນ, ທ່ານຈໍາເປັນຕ້ອງຕິດຕັ້ງຊຸດ apache2-utils ແລະສ້າງຊຸດຂໍ້ມູນທີ່ຕ້ອງການເພື່ອການກວດສອບໃນທ້ອງຖິ່ນ. ເພື່ອບັນລຸເປົ້າ ໝາຍ ນີ້, ໃຫ້ອອກ ຄຳ ສັ່ງຕໍ່ໄປນີ້ໃນການຕິດຕັ້ງຊຸດ apache2-utils:

    # apt-get install apache2-utils	        [On Debian based Systems]
    # yum install httpd-tools		[On RedHat based Systems]
    

    7. ຕໍ່ໄປ, ສ້າງຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານເຊິ່ງຈະຖືກເກັບຢູ່ໃນເອກະສານ .htpass ທີ່ເຊື່ອງໄວ້ໃນທ້ອງຖິ່ນທີ່ຕັ້ງຢູ່ພາຍໃຕ້ເວັບໂຮດຕິ້ງໃນຕອນຕົ້ນຂອງ Apache ທີ່ເກັບ ກຳ ຂໍ້ມູນໂດຍອອກ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້:

    # htpasswd -c /var/www/html/collectd-web/.htpass  your_username
    

    ພະຍາຍາມປົກປ້ອງເອກະສານນີ້ໂດຍການມອບ ໝາຍ ສິດຕໍ່ໄປນີ້:

    # chmod 700 /var/www/html/collectd-web/.htpass
    # chown www-data /var/www/html/collectd-web/.htpass
    

    8. ໃນບາດກ້າວຕໍ່ໄປ, ຫຼັງຈາກທີ່ທ່ານໄດ້ສ້າງເອກະສານ .htpass, ເປີດ Apache default host ສຳ ລັບການດັດແກ້ແລະແນະ ນຳ ໃຫ້ server ນຳ ໃຊ້ການກວດສອບດ້ານຂ້າງຂອງ htpasswd ໂດຍການເພີ່ມການ ກຳ ນົດທິດທາງຕໍ່ໄປນີ້ດັ່ງທີ່ສະແດງໃນ ໜ້າ ຈໍຂ້າງລຸ່ມນີ້:

    <Directory /var/www/html/collectd-web >
                    AuthType Basic
                    AuthName "Collectd Restricted Page"
                    AuthBasicProvider file
                    AuthUserFile /var/www/html/collectd-web/.htpass 
                    Require valid-user
    </Directory>
    

    9. ຂັ້ນຕອນສຸດທ້າຍເພື່ອສະທ້ອນໃຫ້ເຫັນການປ່ຽນແປງແມ່ນການເຮັດໃຫ້ເຊີບເວີຂອງ Apache ເລີ່ມຕົ້ນ ໃໝ່ ໂດຍການອອກ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້ແລະເຂົ້າເບິ່ງ ໜ້າ Coollectd-web URL ທີ່ໄດ້ອະທິບາຍຂ້າງເທິງ.

    ປpopອບອັບຄວນຈະປາກົດຢູ່ ໜ້າ ເວບໄຊທ໌ເພື່ອຂໍຂໍ້ມູນປະ ຈຳ ຕົວຂອງທ່ານ. ໃຊ້ຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານທີ່ສ້າງຂື້ນກ່ອນ ໜ້າ ນີ້ເພື່ອເຂົ້າເຖິງອິນເຕີເຟດເວັບທີ່ລວບລວມ.

    # service apache2 restart		[On Debian based Systems]
    # service httpd restart			[On RedHat based Systems]
    
    OR
    ---------------- For systemd init scripts ----------------
    # systemctl restart apache2.service		
    # systemctl restart http.service