How to remove or edit “Apache” information at “Server” header

บทนำ (Overview)

เราสามารถปิด “ServerToken” ที่แสดง “Version” และ “OS” ได้ตามบทความ How to turn off “ServerSignature” and “ServerToken” on Apache อย่างไรก็ตามพบว่าการปิดโดยใช้ “ServerTokens Prod” ก็ยังคงเหลือชื่อของ “Apache” อยู่ดี 

นอกจากนี้ลองลบ “Header” ของ “Server” โดยใช้คำสั่ง “unset” ในส่วนของ <IfModule mod_headers.c> ของไฟล์ “etc/apache/apache2.conf”  แล้ว “restart Apache” อีกครั้งก็พบว่าไม่สามารถลบ “Header” ของ “Server” ได้ แต่อย่างไรก็ตามเราสามารถแก้ไขข้อมูลในส่วนของ “Header” ที่ชื่อ “Server” ได้ดังต่อไปนี้

ขั้นตอน (Steps)

  1. ทดสอบลองเปิด “Apache2” บน “Kali2.0”
    root@KALI:~# service apache2 start
    
  2. จากนั้นเปิด “Web Browser” และเข้าไปที่ “URL” (http://127.0.0.1/html)
  3. เราจะพบ “Server signature” ของ “Apache” ที่ยังคงค้างดังรูปข้างต้น
  4. ตรวจสอบว่า “modsecurity.conf” ถูกติดตั้งหรือยังโดยใช้คำสั่ง
    //ไม่พบการติดตั้ง modsecurity
    sudo a2enmod security2
    ERROR: Module security2 does not exist!
    
  5. เมื่อไม่พบการติดตั้งจะต้องทำการติดตั้งเสียก่อนโดยใช้คำสั่ง
    root@KALI:~# sudo apt-get install libapache2-mod-security2
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following extra packages will be installed:
      modsecurity-crs
    Suggested packages:
      lua geoip-database-contrib
    The following NEW packages will be installed:
      libapache2-mod-security2 modsecurity-crs
    0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
    Need to get 461 kB of archives.
    After this operation, 3,719 kB of additional disk space will be used.
    Do you want to continue? [Y/n] Y
    Get:1 http://http.kali.org/kali/ sana/main libapache2-mod-security2 amd64 2.8.0-3 [238 kB]
    Get:2 http://http.kali.org/kali/ sana/main modsecurity-crs all 2.2.9-1 [223 kB]
    Fetched 461 kB in 17s (26.5 kB/s)    
    Selecting previously unselected package libapache2-mod-security2.
    (Reading database ... 334246 files and directories currently installed.)
    Preparing to unpack .../libapache2-mod-security2_2.8.0-3_amd64.deb ...
    Unpacking libapache2-mod-security2 (2.8.0-3) ...
    Selecting previously unselected package modsecurity-crs.
    Preparing to unpack .../modsecurity-crs_2.2.9-1_all.deb ...
    Unpacking modsecurity-crs (2.2.9-1) ...
    Setting up libapache2-mod-security2 (2.8.0-3) ...
    apache2_invoke: Enable module security2
    Setting up modsecurity-crs (2.2.9-1) ...
    
    
  6. จากนั้นลองตรวจสอบการติดตั้งอีกครั้ง
    //ระบบบอกว่าเปิดใช้งาน Security2 เป็นที่เรียบร้อย
    root@KALI:~# sudo a2enmod security2
    Considering dependency unique_id for security2:
    Module unique_id already enabled
    Module security2 already enabled
    
  7. ให้ลองเข้าไปที่โฟลเดอร์ /etc/modsecurity/ เราจะพบไฟล์ “modsecurity.conf-recommended” ให้เรา “Rename” เป็น “modsecurity.conf” อาจจะใช้คำสั่งดังนี้
    root@KALI:~# sudo mv /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
    

วิธีที่ 1

  1. จากนั้นเข้าไปที่ไฟล์ modsecurity.conf และเพิ่มคำสั่งและบันทึกดังนี้
    //เราสามารถปรับเปลี่ยนข้อมูลตามต้องการระหว่าง ""
    SecServerSignature " "
    
  2. ลอง “Restart” ตัว “Apache2” อีกครั้งโดยใช้คำสั่ง
    //สำหรับ Kali, Debian, Ubuntu หรือ Linux Mint
    sudo service apache2 restart
     
    //CentOS และ RHEL 6
    service httpd restart ()
     
    //Fedora, CentOS/RHEL 7 และ Arch Linux
    systemctl restart httpd.service
    
  3. ลองเข้าเว็บไซต์อีกครั้งจะพบว่าคำว่า “Apache” หายไป เหลือเพียงแต่ค่าว่าง

วิธีที่ 2

  1. เปิดไฟล์ “Apache2.config” โดยใช้ “Text Editor” หรือคำสั่งดังนี้
    //สำหรับ Kali, Debian, Ubuntu หรือ Linux Mint
    sudo vi /etc/apache2/apache2.conf 
     
    //สำหรับ CentOS, Fedora, RHEL หรือ Arch Linux
    sudo vi /etc/httpd/conf/httpd.conf 
    
  2. จากนั้นตั้งค่าดังนี้
    <IfModule security2_module>
        SecServerSignature "Test"
    </IfModule>
    
  3. ลอง “Restart” ตัว “Apache2” อีกครั้งโดยใช้คำสั่ง
    //สำหรับ Kali, Debian, Ubuntu หรือ Linux Mint
    sudo service apache2 restart
      
    //CentOS และ RHEL 6
    service httpd restart ()
      
    //Fedora, CentOS/RHEL 7 และ Arch Linux
    systemctl restart httpd.service
    
  4. ลองเข้าเว็บไซต์อีกครั้งจะพบว่าคำว่า “Apache” เปลี่ยนไปเป็นคำว่า “Test”

ใส่ความเห็น