目前,很多服務(wù)器都安裝了FreeBSD操作系統(tǒng)。FreeBSD操作系統(tǒng)繼承了BSD系統(tǒng)的純凈性和高性能,加上其軟件包裝和發(fā)布比Linux系統(tǒng)更加嚴謹,同時也具有更佳的安全性,正是這些特性使得FreeBSD操作系統(tǒng)在服務(wù)器環(huán)境中備受推崇。本文將介紹如何在FreeBSD平臺下架設(shè)Web服務(wù)器。
一、接入Internet
配置的第一步就是讓FreeBSD接入Internet并設(shè)置好代理服務(wù)。本機使用ADSL接入Internet有兩種情況,即通過撥號獲取的動態(tài)ip或ISP提供的靜態(tài)ip。以下主要介紹動態(tài)IP的配置過程。
方法很簡單,通過直接編輯“/etc/ppp/ppp.conf”文件和“/etc/rc.conf”文件即可實現(xiàn)接入Internet并支持NAT方式的透明代理。
打開PPP.conf文件對其實施配置時,使用以下命令:
# vi /etc/ppp/ppp.conf
一個簡單的配置實例(注意set前要有空格):
default:
set log Phase tun command
set ifaddr 10.0.0.1/0 10.0.0.2/0
adsl: # 配置代號
set device PPPoE:vr0 # vr0 改成你連接ADSL modem的網(wǎng)卡名
set mru 1492
set mtu 1492
set authname username # username是撥號用戶名
set authkey password # password是撥號密碼
set dial
set login
add default HISADDR
然后打開rc.conf文件對其實施配置時,使用以下命令:
# vi /etc/rc.conf
一個簡單的配置實例:
# -- sysinstall generated deltas -- # Tue Jul 15 21:20:28 2006
# Created: Tue Jul 15 21:20:28 2006
# Enable network daemons for user convenience.
# Please make all changes to this file, not to /etc/defaults/rc.conf.
# This file now contains just the overrides from /etc/defaults/rc.conf.
hostname="www.usweb.com" # 你的主機域名
ifconfig_fxp0="inet 192.168.0.1 netmask 255.255.255.0" #內(nèi)網(wǎng)網(wǎng)卡ip地址,fxp0是網(wǎng)卡名
inetd_enable="YES" # 開機加載inetd
kern_securelevel_enable="NO"
linux_enable="YES"
nfs_reserved_port_only="NO"
sendmail_enable="NO"
sshd_enable="YES"
usbd_enable="NO"
gateway_enable="YES"
firewall_enable="YES"#啟用防火墻
firewall_script="/etc/rc.firewall"
firewall_type="open"
firewall_quiet="YES"
firewall_logging_enable="YES"
ppp_enable="YES" # 開機自動撥號
ppp_mode="ddial"
ppp_nat="YES" # 啟用透明代理
ppp_profile="adsl" # 配置代號
# -- sysinstall generated deltas -- # Wed Jul 16 06:52:13 2006
通過對以上兩個文件的個性修改并重新啟動后,就可以撥號上網(wǎng)并實現(xiàn)透明代理了。客戶端需要將DNS設(shè)置為服務(wù)商提供的DNS地址,網(wǎng)關(guān)設(shè)成代理服務(wù)器的內(nèi)網(wǎng)卡IP地址,本例為“192.168.0.1”。并把IE的Internet選項里關(guān)于連接設(shè)置的所有復(fù)選框清除。如果解析不了域名就檢查 /etc/resolv.conf文件是否正確的配置了DNS服務(wù)器地址。
二、安裝并設(shè)置web服務(wù)器
Web服務(wù)器的安裝與設(shè)置請按參照以下步驟進行:
第一步:關(guān)掉Squid服務(wù),刪除Ipfw的透明代理端口轉(zhuǎn)發(fā)語句,命令組成為:
# cd /usr/local/etc/rc.d
# ./squid.sh stop
# mv squid.sh squid.sh.bak
# ipfw del 500 fwd 127.0.0.1,3128 tcp from 192.168.0.0/24 to any 80
第二步:安裝ports。使用它,可讓FreeBSD安裝各種軟件變得很輕松。(如果已經(jīng)有/usr/ports目錄則證明已經(jīng)安裝過了),命令格式為:
# /stand/sysinstall
然后依次選擇“Configure—Distributions—ports”,ports即被安裝在“/usr/ports”目錄中。
第三步:接著安裝apache1.3.27 + modssl(關(guān)于軟件的安裝版本大家可以根據(jù)實際情況選擇,下同)。安裝后系統(tǒng)會自動產(chǎn)生啟動腳本apache.sh,在/usr/local/etc/rc.d目錄中。可以通過運行apache.sh start stop來啟動或停止apache。命令格式為:
# cd /usr/ports/www/apache13-modssl
# make install #FreeBSD會自動從網(wǎng)絡(luò)下載并安裝
第四步:安裝mysql3.23。完成后將建立啟動腳本“/usr/local/etc/rc.d/mysql-server.sh”。命令格式為:
# cd /usr/ports/databases/mysql323-server
# make install
第五步:安裝apache模塊mod_php4,命令格式為:
# cd /usr/ports/www/mod_php4 #FreeBSD會自動從網(wǎng)絡(luò)下載并安裝
接著編輯scripts目錄下的“configure.php”文件,加入對OpenSSL的支持,命令格式為:
# vi scripts/configure.php
打開此文件后,找到OpenSSL "OpenSSL support" ON 然后將其改為OpenSSL "OpenSSL support" YES修改完成configure.php后,再編輯apache的配制文件/usr/local/etc/apache/httpd.conf ,添加如下內(nèi)容:
DirectoryIndex index.php index.html # 設(shè)置默認可以使用的主頁名稱
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps # 這2句需要手工添加
第六步:開始測試
重新啟動并以root身份登錄,然后執(zhí)行命令“top”(線程查看命令),如果看到如下內(nèi)容,表示一切裝備就緒:
PID USERNAME PRI NICE SIZE RES STATE COMMAND
69 root 2 0 440K 296K select natd # 網(wǎng)絡(luò)地址轉(zhuǎn)換進程
132 root 2 0 3692K 3052K select httpd # apache進程
166 mysql 2 0 27480K 4824K poll mysqld# mysql進程
在瀏覽器地址欄輸入http://192.168.0.1 ;,如果顯示apache的歡迎頁面,證明web服務(wù)器安裝成功;web頁面文件存放在/usr/local/www/data目錄中,只要把自己的網(wǎng)頁拷貝到這個目錄,就可以訪問自己的主頁了。