PHP APC 安裝

PHP APC 安裝

3.1.9 最新穩定版

wget http://pecl.php.net/get/APC
tar -zxf APC-3.0.16.tgz
cd APC-3.0.16
(phpize
(如果phpize出現錯誤表示沒有裝 php-devel, 直接 yum install php-devel)
whereis php-config
得出類似結果 php-config: /usr/bin/php-config /usr/share/man/man1/php-config.1.gz
)
自編安裝LAMP
/usr/local/php5/bin/phpize

(
./configure –enable-apc –enable-apc-mmap –with-apxs –with-php-config=/usr/bin/php-config
)
自編安裝LAMP
./configure –enable-apc –enable-apc-mmap -with-apxs=/usr/local/apache/bin/apxs –with-php-config=/usr/local/php5/bin/php-config

make
(如果出現 ‘apc_regex’ has no member named ‘preg’ 表示沒安裝 pcre-devel, 直接 yum install pcre-devel)
make install
Installing shared extensions: /usr/lib64/php/modules/
重新啟動Apache
修改 php.ini
extension=apc.so
apc.enabled=1 # default = 1
apc.shm_segments=1 # default = 1
apc.shm_size=128M # default = 30
apc.ttl=7200 # default = 0
apc.user_ttl=7200 # default = 0
apc.num_files_hint=1024 # default = 1000
apc.mmap_file_mask=/tmp/apc.XXXXXX # default = no value
apc.enable_cli=1 # default = 0

相關參數我們再研究~
存檔
再次Restart Apache
OK

[除錯]
錯誤:PHP Fatal error: Cannot redeclare class
解決:apc.cache_by_default = 0

fail2ban install to CentOS 防爆力破解工具

fail2ban install to CentOS 防爆力破解工具

fail2ban
主機常常會被騷擾,除了硬體防火牆的基本防護外,我們應該檢查LOG裡的錯誤資訊,
多一層防護,多一層保障!那這邊就不得不介紹超好用的軟體 fail2ban ,
除了基本的SSH FTP,還可以檢查Apache!以防駭客宵小!!

簡介:
fail2ban可以監視你的系統LOG,然後根據LOG的錯誤資訊執行相應的阻擋動作(一般情況下是使用防火墻阻擋),如:當有人在試探你的SSH、SMTP、FTP密碼,只要達到你預設的次數,fail2ban就會應用防火墻阻擋這個IP,而且可以發送e-mail通知系統管理員,是一款很實用、很大的軟件!
功能和特性:
1、支持大量服務。如sshd,apache,qmail,proftpd,sasl等等
2、支持多種動作。如iptables,tcp-wrapper,shorewall(iptables第三方工具),mail notifications(寄信通知)等等。
3、在logpath選項中支持通配符
4、需要Gamin支持(注:Gamin是用於監視文件和目錄是否更改的服務工具)
5、需要安裝python,iptables,tcp-wrapper,shorewall,Gamin。如果想要發寄信,那必需安裝postfix或sendmail

Read More Read More

造成Apache掛點,PHP假死的原因

造成Apache掛點,PHP假死的原因

最近發現Server常常會任務數過高,導致Apache整個掛掉,必須重新啟動才能恢復。
檢查了一下LOG檔,發現Eaccelerator是元兇!

錯誤紀錄:
EACCELERATOR: PHP crashed on opline 77 of file()
原來是EACCELERATOR出現錯誤造成Apache當掉。
解決方法:
1.忽略容易造成錯誤的程式
2.設定清除時間
修這幾行值
eaccelerator.filter = “!/var/www/html/test.php” 絕對路徑的php,開頭!為忽略的意思
eaccelerator.shm_ttl=”60″
eaccelerator.shm_prune_period=”30″

先這樣再測試看看幾天

Apache mod dosevasive 防止DDOS模組

Apache mod dosevasive 防止DDOS模組

林子大了,什麼鳥都有.
目前最常見的網站攻擊方式就是DDOS. 什麼是DDOS?
「分散式拒絕服務(DDoS:Distributed Denial of Service)攻擊指借助于客戶/伺服器技術,將多個電腦聯合起來作為攻擊平臺,對一個或多個目標發動DoS攻擊,從而成倍地提高拒絕服務攻擊的威力。通常,攻擊者使用一個偷竊帳號將DDoS主控程式安裝在一個電腦上,在一個設定的時間主控程式將與大量代理程式通訊,代理程式已經被安裝在Internet上的許多電腦上。代理程式收到指令時就發動攻擊。利用客戶/服務器技術,主控程式能在幾秒鐘內啟動成百上千次代理程式的運行。」

滿多網站架設好後出現速度和效率不理想,這時你就要分析是不是被DDOS了?
然而Apache有提供這個模組使用,方法是比較陽春,他會判斷一個IP在幾秒內訪問幾次,超過一定的限度就封鎖這個IP.
快來看看怎麼裝吧~~~

1. 先到官網下載最新模組
http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
2. 解壓
tar -xzvf mod_dosevasive.版本.tar.gz
3. 切換到該目錄
cd mod_dosevasive
4.
如果Apache版本是v1.3, 執行 apache路徑/bin/apxs -i -a -c mod_dosevasive.c
EX:
/usr/local/apache/bin/apxs -i -a -c mod_dosevasive.c
如果Apache版本v2.0, 直行 apache目錄/bin/apxs -i -a -c mod_dosevasive20.c
EX:
/usr/local/apache/bin/apxs -i -a -c mod_dosevasive20.c
5. 安裝完畢, Restart apache.
6. 將模組加至apache:
LoadModule dosevasive20_module modules/mod_dosevasive20.so

設定(非必需):
修改 /etc/httpd/conf/httpd.conf

Apache v1.3版
<IfModule mod_dosevasive.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>

Apache v2.0 版本:
<IfModule mod_dosevasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>

設定檔說名:

DOSHashTableSize 3097 記錄和存放黑名單的哈西表大小,如果伺服器訪問量很大,可以加大該值
DOSPageCount 2 同一個頁面在同一時間內可以被 同一個用戶訪問的次數,超過該數字就會被列為攻擊,同一時間的數值可以在DosPageInterval參數中設置。
DOSSiteCount 50 同一個用戶在同一個網站內可以同時打開的訪問數,同一個時間的數值在DOSSiteInterval中設置。
DOSPageInterval 1 設置DOSPageCount中時間長度標準,預設值為1。
DOSSiteInterval 1 設置DOSSiteCount中時間長度標準。
DOSBlockingPeriod 10 被封時間間隔秒,這中間會收到 403 (Forbidden) 的返回。