安裝APACHE服務器
安裝apache13-modssl
進入/usr/ports/www/apache13-modssl
執行:
make clean
make deinstall
make WITH_APACHE_SUEXEC=yes APACHE_HARD_SERVER_LIMIT=1024
APACHE_PERF_TUNING=yes install
編譯時帶上suexec和優化.
Make clean
取消所有Options裡面的Indexes,禁止浏覽目錄及文件.
設置KeepAlive Off
安裝PHP語言
安裝php
進入/usr/ports/www/mod_php4
執行:
make clean
make deinstall
make install
編譯常用的選項即可,一定記得選擇上mysql和gd.
Make clean
AddType application/x-httpd-php .php .php3 .php4 .phtml
AddType application/x-httpd-php-source .phps
替換DirectoryIndex細節為:
DirectoryIndex index.html index.htm index.wml index.cgi index.shtml
index.jsp index.js index.jp index.php4 index.php3
index.php index.phtml default.htm default.html home.htm
再cp php.ini-recommended /etc/php.ini
以及修改php.ini裡面的參數
vi /etc/php.ini
修改下面兩處為:
register_globals = On
magic_quotes_gpc = On
安裝ZendOptimizer
先下載ZendOptimizer-2.1.0b-FreeBSD4.0-i386.tar.gz
再執行
tar zxvf ZendOptimizer-2.1.0b-FreeBSD4.0-i386.tar.gz
cd ZendOptimizer-2.1.0b-FreeBSD4.0-i386
sh setup
即可完成傻瓜式的安裝.
注意:此時您的php.ini配置文件,一般會移到
/usr/loca/Zend/etc/php.ini
並且底部會增加以下幾行:
[Zend]
zend_optimizer.optimization_level=15
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-2.1.0
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-2.1.0
您可以根據需要,改變15為1023,來提升加速的等級.
安裝APACHE其它整合軟件
安裝mod_bandwidth
進入/usr/ports/www/mod_bandwidth
執行:
make clean
make deinstall
make install
編譯完成後,一定記得
AddModule mod_bandwidth.c
make clean
語法及作用:
* BandWidthModule
該模塊的開關,可以對每個Server進行配置
* BandWidthPulse
設定計時單位,MS(微秒),建議為:1000000 (1秒)
* BandWidth
可以針對特定來源的對象控制流,rate以字節為單位,但當rate為0時,為不限制流速.
例子:
BandWidth ecp.fr 0
BandWidth 138.195 0
BandWidth all 1024
* LargeFileLimit
當傳送一個大於等於filesize KB大小的檔時,設定一個最大流速(字節/秒),當rate
為0的時候,不限速.
例子:
LargeFileLimit 200 3072
LargeFileLimit 1024 2048
以上例子設定小於200KB的檔將不會被限制流速,大小在200K到1024K之間的檔將會被
限速3072 B/s,大於1024KB的文件將會被限速2048 B/s.
* MinBandWidth
設定每個連接傳送數據的基本帶寬占用,以Byte為單位.默認值:256 B/s.
當rate設定為0時,使用默認帶寬限制.
安裝mod_fastcgi
進入/usr/ports/www/mod_ fastcgi
執行:
make clean
make deinstall
make install
編譯完成後,一定記得
AddModule mod_fastcgi.c
AddHandler fastcgi-script fcgi fcgi fpl
make clean
安裝mod_gzip
進入/usr/ports/www/mod_gzip
執行:
make clean
make deinstall
make install
編譯完成後,一定記得
AddModule mod_gzip.c
make clean
安裝mod_limitipconn
進入/usr/ports/www/mod_limitipconn
執行:
make clean
make deinstall
make install
編譯完成後,一定記得
AddModule mod_limitipconn.c
make clean
安裝mod_perl
進入/usr/ports/www/mod_perl
執行:
make clean
make deinstall
make install
編譯完成後,一定記得
AddModule mod_perl.c
make clean
安裝mod_throttle
進入/usr/ports/www/mod_throttle
執行:
make clean
make deinstall
make install
編譯完成後,一定記得
AddModule mod_throttle.c
make clean
安裝mod_watch
進入/usr/ports/www/mod_watch
執行:
make clean
make deinstall
make install
編譯完成後,一定記得
AddModule mod_watch.c
make clean
安裝APACHE第三方軟件
安裝限制每個虛擬主機的並發數軟件
mod_vhost_limit
安裝:
AddModule mod_vhost_limit.c
配置:
MaxClients 150
ExtendedStatus On
NameVirtualHost *
VirtualHost *
ServerName server1
DocumentRoot /some/where/1
MaxVhostClients 100
/VirtualHost
ServerName server2
DocumentRoot /some/where/2
MaxVhostClients 30
/VirtualHost
VirtualHost *
ServerName server3
DocumentRoot /some/where/3
/VirtualHost其中: server1 被限制為 100 個並發線程數. server2 被限制為 30 個並發線程數. server3 沒有被限制. 注:需 mod_status 的 ExtendedStatus On 支持!! 如超出限制的並發數在客戶端就會出現503錯誤: Service Temporarily Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later. Apache/1.3.27 Server at server1 Port 80 在 error_log 中將會有類似以下的錯誤提示: [Mon Jun 23 15:22:24 2003] [error] client access to server1 deferred, MaxVhostClients 100 exceeded
安裝防止ddos攻擊的軟件
dosevasive1.8.tar.gz
安裝方法:
tar zxvf mod_dosevasive.tar.gz
cd dosevasive/
/usr/local/apache/bin/apxs -i -c mod_dosevasive.c
加入
AddModule mod_dosevasive.c
IfModule mod_dosevasive.c
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
/IfModule
其它需要安裝的軟件﹔
可選擇安裝的有:
CPU溫度監控軟件
CPU負載監控軟件
封包流量監控軟件
……
安裝MRTG
安裝net-snmp
進入/usr/ports/net/net-snmp
執行:
make clean
make deinstall
make install
make clean
安裝mrtg
進入/usr/ports/net/mrtg
執行:
make clean
make deinstall
make install
make clean
設置虛空間的mrtg和流量分析
生成流量控制檔:
/usr/local/etc/apache/mod_watch.cfg
修改此文件,並且加如下頭部信息:
WorkDir:/usr/local/www/data/mrtg
Options[_]: growright,bits
#Language: gb2312
保證WorkDir目錄可以被浏覽器訪問,並且目錄存在!如果不是,您可以自己修改!
執行一下,看是否正確:
/usr/local/sbin/mrtg /usr/local/etc/apache/mod_watch.cfg
如果有錯誤,多執行幾次即可!
再將此加入到排程裡面,15分鐘自動執行一次:
vi /etc/crontab
*/15 * * * * root /usr/local/bin/mrtg /usr/local/e
tc/apache/mod_watch.cfg
安裝BIND 9
安裝bind9
這是一套域名解析系統,可以讓您的SERVER做DNS SERVER,非常不錯的!
進入/usr/ports/dns/bind9
make clean
make deinstall
make install
make clean
安裝郵件服務器
安裝qmail郵件系統
使用iceblood的安裝包,傻瓜式的安裝就可以了!
注意第一次安裝時,多看幾遍它的說明,不要弄錯了!
安裝完成後,自己再加上qmailadmin,
它可以讓您在一台主機上面,開多個域名的企業郵局!
安裝WEBMIN和USERMIN
安裝webmin
先下載webmin最新版
再解壓:
tar zxvf webmin-1.100.tar.gz
進入目錄開始安裝:
cd webmin-1.100
sh setup.sh
安裝時使用它的默認設置即可,自己要設置好管理員密碼,
這一定要注意保密!
並且請設置為自動啟動,以便以後可以通過此來管理.
安裝完成後,可以通過如下方式訪問:
注意,默認埠是10000
安裝usermin
先下載usermin最新版
再解壓:
tar zxvf usermin-1.030.tar.gz
進入目錄開始安裝:
cd usermin-1.030
sh setup.sh
安裝時使用它的默認設置即可.
安裝完成後,可以通過如下方式訪問:
注意,默認埠是20000.
Usermin會自動和webmin整合的,使用webmin的管理員密碼,
並且可以在webmin裡面啟動它.結束語
至此為止,一般可以實際運作的FREEBSD系統就建立起來了,您可以reboot一下,讓最新的設置及軟件生效. 如果在安裝過程中出現錯誤,您可以先檢查完錯誤,再接著安裝下去.或者你可以選擇你感興趣的某些部份安裝! 當然因為時間倉促,涉及到的知識太廣,加上本人能力有限,其中錯誤在所難免,懇請各位讀者提出來,大家共同提高,共同進步!