Tag: Apache
LAMP 是 Linux + Apache + MySQL + PHP 的縮寫, 但從 RHEL / CentOS 7 開始已經不會內置 MySQL, 改為使用 MariaDB, MariaDB 使用上與 MySQL 相同, 舊有的 MySQL 資料庫也可以直接升級使用, 這裡也會示範在 RHEL 8 …
ModSecurity 可以阻擋多種針對網站的攻擊, 但有些網頁應用程式會跟 ModSecurity 互相沖突, 如果為了個別幾個規則便把 ModSecurity 停用, 給 VirtualHost 設定 “SecRuleEngine Off”, 這樣十分不必要。較好的做法是找出與網頁程式互相沖突的規則, 然後在個別目錄或 VirtualHost 停用。 以下會假設已經安裝及設定好 ModSecurity, 然後找出有問題的規則, 並用 SecRuleRemoveById 把有問題的規則停用。 例如 HTTPD 的錯誤檔在 /var/log/httpd/error.log, 執行以下指令可以找出 ModSecurity …
DDOS 是十分常見的攻擊,即使是一般使用者,下載一套 DDOS 軟體,或者直接安裝 kali linux, 便可以很簡單發動 DDOS 攻擊,除了遇到 DDOS 攻擊才採取攔截外,也可以透過一些 Linux 設定來預防 DDOS 攻擊,以下會列出一些預防 DDOS 的設定及 Firewalld 規則。 Firewalld 限制每個 IP 連線數量 以下會設定 Firewalld 限制每個 IP 在 60 …
Slow HTTP DoS Attack 是一種針對 Web Server 的 DoS 攻擊手法, 而且對於使用 thread based 的伺服器 (Apache 預設是使用 thread) 尤其有效。做法是向 Web Server 發出連線請求, 但一直不回應 HTTP Header, 或者該回應的時間盡量拉長, 讓 Web Server 一直等待 …
HTTP 伺服器在高負載時反應會變慢, 但檢視系統的使用資源, 例如 CPU, 記憶體及 Load Average 則很正常, 當重新啟動 HTTP 伺服器後, 問題又暫時得以解決。用以下 netstat 檢查連線的統計資料: # netstat -nat | awk ‘{print $6}’ | sort | uniq -c | sort …
在一台安裝了 Apache (httpd) 的 CentOS 主機上, 如果重新啟動 Apache 會很慢, 正常情況應該幾秒內便重啟完成. 但啟動 Apache 便很快, 只是停止及重啟很慢。 根據 Redhat Bugzilla 的內容, 在 systemd 的 httpd 服務, 將 KillMode 設定成 none 便可以, 以下是解決步驟: …
PHP-FPM 預設的 PM (process manager) 會設定為 “dynamic”, 除了 dynamic, 還有 static 及 ondemand, 以下是 PHP 官方對這些設定的解釋: pm = dynamic – the number of child processes is set dynamically based …
UserDir 模組可以讓伺服器的帳號, 擁有自己的網頁, 即在伺服器的主機名稱後面加上 “~username” 作為個人網頁。以下是在 RHEL 及 CentOS 開啟 UserDir 個人網頁模組, 以及設定 SELinux 的方法.. 在 CentOS 只要用 yum 安裝了 Apache (httpd), 預設已經安裝了 UserDir 模組, 只要在 httpd.conf 或 /etc/httpd/conf.d/ …
在 Ubuntu 開啟及關閉虛擬主機, 會用 a2ensite 及 a2dissite 指令, 這個方法在管理多個 Virtual Host 時方便很多, 以下是在 RHEL 7 及 Centos 7 下, 設定類似 Ubuntu 管理 Virtual Host 的方法。 Ubuntu 在 /etc/httpd 目錄下建立兩個目錄, …
在預設的情況下, HTTP 的 Header 會包含了 Web Server 及 PHP 的版本, 基於安全理由, 可以用以下方法隱藏 Apache, Nginx 及 PHP 的版本資訊。 Apache 開啟 Apache 的 httpd.conf, CentOS 預設位置是 /etc/httpd/conf/httpd.conf: # vi /etc/httpd/conf/httpd.conf 找到 …