| Linux 網(wǎng)站配置說(shuō)明(一)2004-7-2 14:26:00 1.前言 本文以網(wǎng)站基本配置過(guò)程為實(shí)例,講解用 Linux 做為OS,構架一個(gè)完整 Web 服務(wù)器過(guò)程。照著(zhù)步驟,仔細實(shí)踐,相信可以在極短時(shí)間內建筑起一個(gè)比較安全、穩健的 Web 服務(wù)器。 整個(gè)環(huán)境是在 Internet 上做,dedaozhi的基本參數是,IP地址:202.98.10.100,域名是:dedaozhi.com.cn,dedaozhi.net.cn 等。服務(wù)器所使用的OS為:Redhat Linux 7.X. 缺省安裝時(shí)選擇定制安裝,選擇軟件包時(shí)除了 Sendmail 之外,不選擇任何的服務(wù)器軟件,同時(shí)應該安裝C、C++開(kāi)發(fā)包。我們將要手工編譯安裝的軟件包有: Apache 1.3.12 #WEB服務(wù)器,提供HTTP服務(wù); Resin 1.2.b1 #JSP解釋器,提供JSP/SERVLET解釋服務(wù); PHP 4.0p2 #PHP解釋器,提供PHP解釋服務(wù); Mysql 3.22.32 #數據庫服務(wù)器,提供數據庫存儲服務(wù); Proftpd 1.2.0rc2 #匿名FTP服務(wù)器,提供文件傳輸服務(wù); Bind 8.2.2p5 #域名服務(wù)器(DNS),提供域名解析服務(wù); Openssh-2.1.1.p4 #安全外殼,用于代替系統缺省的TELNET服務(wù); Postfix-19991231-pl09 #郵件傳遞服務(wù)器(MTA),提供郵件發(fā)送服務(wù); 我把所有的自行編譯的軟件都放置于 /usr/local/servers ,也就是說(shuō)配置是所使用的參數 --prefix 將指向 /usr/local/servers/packages(其中packages為軟件包的名稱(chēng),如 Web 服務(wù)器將使用 apache)。 本文將以安裝手冊的形式出現,力求簡(jiǎn)單明了,可以指導您迅速的將一臺只有基本操作系統(Linux)的計算機安裝成為一臺可以提供郵件(MAIL)、域名(DNS)、文件傳輸(FTP)、Web、JSP編程環(huán)境、PHP編程環(huán)境及數據庫支持的Web服務(wù)器。 在進(jìn)行實(shí)際操作前,強烈建議您看完全部?jì)热?。因為服?wù)器的安裝過(guò)程中要注意的問(wèn)題非常多,如果您只是看了一部分就開(kāi)始實(shí)際操作,有可能會(huì )導致問(wèn)題的出現。 2.基礎網(wǎng)絡(luò )配置 2.1.網(wǎng)卡的安裝與設置 使用 netconf 按照以下的步驟: 1.使用方向鍵↓選擇Basic host information并按回車(chē) 2.填寫(xiě) Host name,一般情況下是www,如果您是用來(lái)做Web服務(wù)器的話(huà) 3.使用方向鍵↓將光標移動(dòng)至 Adaptor 1 的范圍內 4.選擇 Enabled 選項,使網(wǎng)卡有效 5.使用方向鍵將光標移動(dòng)至Config Mode內,選擇IP地址方式,對于Web服務(wù)器應該選擇 Manual 6.我們的Web服務(wù)器的主域名是dedaozhi.com.cn 所以在 Primary name+domain 這一項里面應該輸入: dedaozhi.com.cn,而別名 (Aliases)可以不輸入. 7.IP地址(IP address)應該輸入Web服務(wù)器的IP地址,這里我們輸入: 202.98.10.100 8.我們假設Web服務(wù)器是安裝在一個(gè)C類(lèi)的子網(wǎng)內,所以子網(wǎng)掩碼(Netmask)應該選擇255.255.255.0(將光標放置于Netmask內輸入,按ctrl+x鍵將會(huì )彈出一個(gè)列表框在其中選擇即可。提示:在所有有v字樣的列表框內都可以按ctrl+x鍵選擇) 9.Linux里面每一個(gè)以太網(wǎng)設備都必須有一定設備名,將光標放置于Net device輸入框內按鍵盤(pán)ctrl+x鍵選擇設備名,在Linux里面第一個(gè)以太網(wǎng)設備的名稱(chēng)應該選擇eth0。 10.在設備名選擇完之后,應該為此設備選擇一個(gè)驅動(dòng)程序,使Linux的內核可以驅動(dòng)它正常的工作。這里假設我們的網(wǎng)卡的ne2000兼容的10M網(wǎng)卡。使用ctrl+x選擇ne即可。 11.在驅動(dòng)選擇完成之后,要看網(wǎng)卡的具體情況確定是否需要輸入中斷號和端口號。這里我們的網(wǎng)卡的NE2000 ISA的網(wǎng)卡,沒(méi)有PNP功能我們只有自己手工的將中斷號和端口號輸進(jìn)去。 12.至了這里,網(wǎng)卡的參數我們已經(jīng)設置完成,用TAB鍵將鍵盤(pán)移動(dòng)到Accept處按鍵盤(pán)的回車(chē)鍵保存設置。并退出netconf,重新啟動(dòng)Linux之后用以下的命令查看網(wǎng)卡工作是否正常: 2.2.IP地址的修改 使用netconf按照以下的步驟: 1.Basic host information 2.填寫(xiě) Host name,一般情況下是www,如果您是用來(lái)做Web服務(wù)器的話(huà), 3.使用方向鍵↓將光標移動(dòng)至 Adaptor 1范圍內的IP address輸入框內,輸入您想要更改的IP地址,輸入完成之后用TAB鍵移動(dòng)至Accept按鈕處按回車(chē)即可。 4.使用手工的方式修改可以用以下的命令:# ifconfig eth0 202.98.10.100,其中eth0是設備的名稱(chēng),202.98.10.100是IP地址。 2.3.缺省DNS服務(wù)器地址的設置 直接使用vi修改/etc/resolv.conf,查看其中是否存在nameserver的參數,如果沒(méi)有手工添加進(jìn)去,如果有的話(huà)直接修改其后的IP地址即可。其格式為:nameserver 127.0.0.1 其中127.0.0.1為DNS服務(wù)器的地址,由于本站配置了DNS服務(wù)器,所以可以用本地地址,也可寫(xiě)為202.98.10.100。 3.服務(wù)器安全 做為Web服務(wù)器,我們首先要考慮的一條就是安全。Linux在安裝完成之后,缺省的情況下會(huì )打開(kāi)一些端口以提供一些基礎如:Telnet、Finger等服務(wù)。 對于我們來(lái)說(shuō)是沒(méi)有任何用處的,說(shuō)不定還會(huì )導致一些安全問(wèn)題。為此,在服務(wù)器的建設初始,我就考慮將這些對我們日常工作沒(méi)有起到作用的服務(wù)關(guān)閉掉。在這一部分,我們將會(huì )介紹如何使用 openssh 和 proftpd 代替 inetd 最常用的兩個(gè)服務(wù)telnetd 和 ftpd,從而實(shí)現最終將 inetd 從系統同刪除掉。 在進(jìn)行具體的操作前,強烈建議您先為自己添加一個(gè)獨立用戶(hù),一般來(lái)說(shuō)我是這樣處理的。添加一個(gè)組名為 ftpusers,再添加一個(gè)用戶(hù) myuser 其組為 ftpusers。相應的命令為: #groupadd ftpusers 此用戶(hù)將用于進(jìn)行常規的維護,與測試,象Telnet、FTP這些工作的測試。 3.1.安裝 openssh 1、下載軟件包: 從 http://www.openssl.org 下載 openssl 0.9.5a 從 http://www.freessh.org 下載 openssh-2.1.1.p4 下載的軟件包放置于 /usr/local/src。 2、將軟件包解壓縮 # cd /usr/local/src 3、編譯并安裝 openssl和openssh # cd /usr/local/src 編譯(make)過(guò)程所需的時(shí)間比較長(cháng),在我的PIII600+128MB SCSI硬盤(pán)的機器上編譯的過(guò)程需要差不多五分鐘。所以請耐心等候其編譯完成。在完成 openssl 的編譯與安裝之后,我們就可以開(kāi)始編譯與安裝 openssh。步驟如下: # cd /usr/local/src 4、測試sshd 啟動(dòng) sshd: # /etc/rc.d/init.d/sshd start 如果出現: Starting sshd: [ OK ] 則證明 sshd 已經(jīng)正確的安裝并已經(jīng)在后臺運行,如果出現其它的提示,請檢查您的安裝步驟是否正確。sshd 正確啟動(dòng)之后,我們試試用其客戶(hù)端看是否可以正確的聯(lián)接至服務(wù)器: # cd /usr/local/servers/openssh/bin 使用此命令之后正常情況下會(huì )要求您輸入root的密碼,您輸入之后如果可以成功的進(jìn)入則證明 sshd 已經(jīng)成功的安裝完成了。 ssh的win32客戶(hù)端可以從http://www.sorted.org/~chris/ssh/putty.exe 下載。方便您在Windows里面遠程控制網(wǎng)站服務(wù)器。 3.2.安裝ProFTPD 1、下載軟件包 從 http://www.proftpd.net 下載proftpd-1.2.0rc2.tar.gz,下載的軟件包放置于: /usr/local/src。. 2、將下載的軟件包解壓縮 # cd /usr/local/src 3、編譯并安裝proftpd # ./configure --prefix=/usr/local/servers/proftpd 4、修改 /etc/inetd.conf 將其中的 ftp 服務(wù)關(guān)閉掉 使用 vi /etc/inetd.conf 打開(kāi) inetd 配置文件,搜索 ftp,在 ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l –a 這一行的最前面插入一個(gè) # 號,修改之后的結果如下: # ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l –a 在vi環(huán)境下使用 :wq 存盤(pán)退出以后,使用 killall -HUP inetd 重新啟動(dòng) inetd,使所做的修改生效。 5、生成ProFTPD啟動(dòng)文件 # cd /etc/rc.d/init.d 說(shuō)明:chkconfig,是一個(gè)在Linux里面用于修改服務(wù)器(daemon)運行環(huán)境的小程序,其命令格式為 chkconfig [–level 6、為ProFTPD創(chuàng )建PAM文件 使用 vi 在 /etc/pam.d 創(chuàng )建一個(gè)名為 ftp 的文件,其內容為: auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed 7、修改ftp用戶(hù)的shell,并創(chuàng )建其主目錄 # usermod –s /bin/bash ftp 檢查/home/ftp 是否存在,如果不存在使用以下的命令創(chuàng )建: # mkdir /home/ftp 如果您不希望匿名登錄有效,本節可以不做. 8、修改ProFTPD的啟動(dòng)參數 # vi /usr/local/servers/proftpd/etc/proftpd.conf 9、啟動(dòng)ProFTPD # /etc/rc.d/init.d/proftpd start 如果出現:Starting proftpd daemon: [ OK ] 則證明ProFTPD已經(jīng)正確的安裝并已經(jīng)在后臺運行,如果出現其它的提示,請檢查您的安裝步驟是否正確。 10、測試ftp的聯(lián)接是否正常 ftp localhost 使用我們先前創(chuàng )建的用戶(hù)登錄。 如果無(wú)法聯(lián)接,則檢查您的ProFTPD是否已經(jīng)在運行(可以用 ps –ax | grep “proftpd” 查看是否有ProFTPD進(jìn)程)。 3.3.關(guān)閉因特網(wǎng)超級服務(wù)器(inetd) 經(jīng)過(guò)以上的步驟,我們已經(jīng)實(shí)現了使用openssh代替telnetd實(shí)現遠程登錄,用proftpd代替in.ftpd提供匿名文件傳輸服務(wù)。Inetd 提供的基礎功能,我們都已經(jīng)實(shí)現,現在可以將inetd徹底的關(guān)閉掉。使用以下的命令: # /etc/rc.d/init.d/inet stop 經(jīng)過(guò)以上的命令之后就可以將inet關(guān)閉掉,并且在下次啟動(dòng)時(shí)系統也不會(huì )自動(dòng)啟動(dòng)inetd服務(wù) |
| Linux 網(wǎng)站配置說(shuō)明(一)2004-7-2 14:26:00 1.前言 本文以網(wǎng)站基本配置過(guò)程為實(shí)例,講解用 Linux 做為OS,構架一個(gè)完整 Web 服務(wù)器過(guò)程。照著(zhù)步驟,仔細實(shí)踐,相信可以在極短時(shí)間內建筑起一個(gè)比較安全、穩健的 Web 服務(wù)器。 整個(gè)環(huán)境是在 Internet 上做,dedaozhi的基本參數是,IP地址:202.98.10.100,域名是:dedaozhi.com.cn,dedaozhi.net.cn 等。服務(wù)器所使用的OS為:Redhat Linux 7.X. 缺省安裝時(shí)選擇定制安裝,選擇軟件包時(shí)除了 Sendmail 之外,不選擇任何的服務(wù)器軟件,同時(shí)應該安裝C、C++開(kāi)發(fā)包。我們將要手工編譯安裝的軟件包有: Apache 1.3.12 #WEB服務(wù)器,提供HTTP服務(wù); Resin 1.2.b1 #JSP解釋器,提供JSP/SERVLET解釋服務(wù); PHP 4.0p2 #PHP解釋器,提供PHP解釋服務(wù); Mysql 3.22.32 #數據庫服務(wù)器,提供數據庫存儲服務(wù); Proftpd 1.2.0rc2 #匿名FTP服務(wù)器,提供文件傳輸服務(wù); Bind 8.2.2p5 #域名服務(wù)器(DNS),提供域名解析服務(wù); Openssh-2.1.1.p4 #安全外殼,用于代替系統缺省的TELNET服務(wù); Postfix-19991231-pl09 #郵件傳遞服務(wù)器(MTA),提供郵件發(fā)送服務(wù); 我把所有的自行編譯的軟件都放置于 /usr/local/servers ,也就是說(shuō)配置是所使用的參數 --prefix 將指向 /usr/local/servers/packages(其中packages為軟件包的名稱(chēng),如 Web 服務(wù)器將使用 apache)。 本文將以安裝手冊的形式出現,力求簡(jiǎn)單明了,可以指導您迅速的將一臺只有基本操作系統(Linux)的計算機安裝成為一臺可以提供郵件(MAIL)、域名(DNS)、文件傳輸(FTP)、Web、JSP編程環(huán)境、PHP編程環(huán)境及數據庫支持的Web服務(wù)器。 在進(jìn)行實(shí)際操作前,強烈建議您看完全部?jì)热?。因為服?wù)器的安裝過(guò)程中要注意的問(wèn)題非常多,如果您只是看了一部分就開(kāi)始實(shí)際操作,有可能會(huì )導致問(wèn)題的出現。 2.基礎網(wǎng)絡(luò )配置 2.1.網(wǎng)卡的安裝與設置 使用 netconf 按照以下的步驟: 1.使用方向鍵↓選擇Basic host information并按回車(chē) 2.填寫(xiě) Host name,一般情況下是www,如果您是用來(lái)做Web服務(wù)器的話(huà) 3.使用方向鍵↓將光標移動(dòng)至 Adaptor 1 的范圍內 4.選擇 Enabled 選項,使網(wǎng)卡有效 5.使用方向鍵將光標移動(dòng)至Config Mode內,選擇IP地址方式,對于Web服務(wù)器應該選擇 Manual 6.我們的Web服務(wù)器的主域名是dedaozhi.com.cn 所以在 Primary name+domain 這一項里面應該輸入: dedaozhi.com.cn,而別名 (Aliases)可以不輸入. 7.IP地址(IP address)應該輸入Web服務(wù)器的IP地址,這里我們輸入: 202.98.10.100 8.我們假設Web服務(wù)器是安裝在一個(gè)C類(lèi)的子網(wǎng)內,所以子網(wǎng)掩碼(Netmask)應該選擇255.255.255.0(將光標放置于Netmask內輸入,按ctrl+x鍵將會(huì )彈出一個(gè)列表框在其中選擇即可。提示:在所有有v字樣的列表框內都可以按ctrl+x鍵選擇) 9.Linux里面每一個(gè)以太網(wǎng)設備都必須有一定設備名,將光標放置于Net device輸入框內按鍵盤(pán)ctrl+x鍵選擇設備名,在Linux里面第一個(gè)以太網(wǎng)設備的名稱(chēng)應該選擇eth0。 10.在設備名選擇完之后,應該為此設備選擇一個(gè)驅動(dòng)程序,使Linux的內核可以驅動(dòng)它正常的工作。這里假設我們的網(wǎng)卡的ne2000兼容的10M網(wǎng)卡。使用ctrl+x選擇ne即可。 11.在驅動(dòng)選擇完成之后,要看網(wǎng)卡的具體情況確定是否需要輸入中斷號和端口號。這里我們的網(wǎng)卡的NE2000 ISA的網(wǎng)卡,沒(méi)有PNP功能我們只有自己手工的將中斷號和端口號輸進(jìn)去。 12.至了這里,網(wǎng)卡的參數我們已經(jīng)設置完成,用TAB鍵將鍵盤(pán)移動(dòng)到Accept處按鍵盤(pán)的回車(chē)鍵保存設置。并退出netconf,重新啟動(dòng)Linux之后用以下的命令查看網(wǎng)卡工作是否正常: 2.2.IP地址的修改 使用netconf按照以下的步驟: 1.Basic host information 2.填寫(xiě) Host name,一般情況下是www,如果您是用來(lái)做Web服務(wù)器的話(huà), 3.使用方向鍵↓將光標移動(dòng)至 Adaptor 1范圍內的IP address輸入框內,輸入您想要更改的IP地址,輸入完成之后用TAB鍵移動(dòng)至Accept按鈕處按回車(chē)即可。 4.使用手工的方式修改可以用以下的命令:# ifconfig eth0 202.98.10.100,其中eth0是設備的名稱(chēng),202.98.10.100是IP地址。 2.3.缺省DNS服務(wù)器地址的設置 直接使用vi修改/etc/resolv.conf,查看其中是否存在nameserver的參數,如果沒(méi)有手工添加進(jìn)去,如果有的話(huà)直接修改其后的IP地址即可。其格式為:nameserver 127.0.0.1 其中127.0.0.1為DNS服務(wù)器的地址,由于本站配置了DNS服務(wù)器,所以可以用本地地址,也可寫(xiě)為202.98.10.100。 3.服務(wù)器安全 做為Web服務(wù)器,我們首先要考慮的一條就是安全。Linux在安裝完成之后,缺省的情況下會(huì )打開(kāi)一些端口以提供一些基礎如:Telnet、Finger等服務(wù)。 對于我們來(lái)說(shuō)是沒(méi)有任何用處的,說(shuō)不定還會(huì )導致一些安全問(wèn)題。為此,在服務(wù)器的建設初始,我就考慮將這些對我們日常工作沒(méi)有起到作用的服務(wù)關(guān)閉掉。在這一部分,我們將會(huì )介紹如何使用 openssh 和 proftpd 代替 inetd 最常用的兩個(gè)服務(wù)telnetd 和 ftpd,從而實(shí)現最終將 inetd 從系統同刪除掉。 在進(jìn)行具體的操作前,強烈建議您先為自己添加一個(gè)獨立用戶(hù),一般來(lái)說(shuō)我是這樣處理的。添加一個(gè)組名為 ftpusers,再添加一個(gè)用戶(hù) myuser 其組為 ftpusers。相應的命令為: #groupadd ftpusers 此用戶(hù)將用于進(jìn)行常規的維護,與測試,象Telnet、FTP這些工作的測試。 3.1.安裝 openssh 1、下載軟件包: 從 http://www.openssl.org 下載 openssl 0.9.5a 從 http://www.freessh.org 下載 openssh-2.1.1.p4 下載的軟件包放置于 /usr/local/src。 2、將軟件包解壓縮 # cd /usr/local/src 3、編譯并安裝 openssl和openssh # cd /usr/local/src 編譯(make)過(guò)程所需的時(shí)間比較長(cháng),在我的PIII600+128MB SCSI硬盤(pán)的機器上編譯的過(guò)程需要差不多五分鐘。所以請耐心等候其編譯完成。在完成 openssl 的編譯與安裝之后,我們就可以開(kāi)始編譯與安裝 openssh。步驟如下: # cd /usr/local/src 4、測試sshd 啟動(dòng) sshd: # /etc/rc.d/init.d/sshd start 如果出現: Starting sshd: [ OK ] 則證明 sshd 已經(jīng)正確的安裝并已經(jīng)在后臺運行,如果出現其它的提示,請檢查您的安裝步驟是否正確。sshd 正確啟動(dòng)之后,我們試試用其客戶(hù)端看是否可以正確的聯(lián)接至服務(wù)器: # cd /usr/local/servers/openssh/bin 使用此命令之后正常情況下會(huì )要求您輸入root的密碼,您輸入之后如果可以成功的進(jìn)入則證明 sshd 已經(jīng)成功的安裝完成了。 ssh的win32客戶(hù)端可以從http://www.sorted.org/~chris/ssh/putty.exe 下載。方便您在Windows里面遠程控制網(wǎng)站服務(wù)器。 3.2.安裝ProFTPD 1、下載軟件包 從 http://www.proftpd.net 下載proftpd-1.2.0rc2.tar.gz,下載的軟件包放置于: /usr/local/src。. 2、將下載的軟件包解壓縮 # cd /usr/local/src 3、編譯并安裝proftpd # ./configure --prefix=/usr/local/servers/proftpd 4、修改 /etc/inetd.conf 將其中的 ftp 服務(wù)關(guān)閉掉 使用 vi /etc/inetd.conf 打開(kāi) inetd 配置文件,搜索 ftp,在 ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l –a 這一行的最前面插入一個(gè) # 號,修改之后的結果如下: # ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l –a 在vi環(huán)境下使用 :wq 存盤(pán)退出以后,使用 killall -HUP inetd 重新啟動(dòng) inetd,使所做的修改生效。 5、生成ProFTPD啟動(dòng)文件 # cd /etc/rc.d/init.d 說(shuō)明:chkconfig,是一個(gè)在Linux里面用于修改服務(wù)器(daemon)運行環(huán)境的小程序,其命令格式為 chkconfig [–level 6、為ProFTPD創(chuàng )建PAM文件 使用 vi 在 /etc/pam.d 創(chuàng )建一個(gè)名為 ftp 的文件,其內容為: auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed 7、修改ftp用戶(hù)的shell,并創(chuàng )建其主目錄 # usermod –s /bin/bash ftp 檢查/home/ftp 是否存在,如果不存在使用以下的命令創(chuàng )建: # mkdir /home/ftp 如果您不希望匿名登錄有效,本節可以不做. 8、修改ProFTPD的啟動(dòng)參數 # vi /usr/local/servers/proftpd/etc/proftpd.conf 9、啟動(dòng)ProFTPD # /etc/rc.d/init.d/proftpd start 如果出現:Starting proftpd daemon: [ OK ] 則證明ProFTPD已經(jīng)正確的安裝并已經(jīng)在后臺運行,如果出現其它的提示,請檢查您的安裝步驟是否正確。 10、測試ftp的聯(lián)接是否正常 ftp localhost 使用我們先前創(chuàng )建的用戶(hù)登錄。 如果無(wú)法聯(lián)接,則檢查您的ProFTPD是否已經(jīng)在運行(可以用 ps –ax | grep “proftpd” 查看是否有ProFTPD進(jìn)程)。 3.3.關(guān)閉因特網(wǎng)超級服務(wù)器(inetd) 經(jīng)過(guò)以上的步驟,我們已經(jīng)實(shí)現了使用openssh代替telnetd實(shí)現遠程登錄,用proftpd代替in.ftpd提供匿名文件傳輸服務(wù)。Inetd 提供的基礎功能,我們都已經(jīng)實(shí)現,現在可以將inetd徹底的關(guān)閉掉。使用以下的命令: # /etc/rc.d/init.d/inet stop 經(jīng)過(guò)以上的命令之后就可以將inet關(guān)閉掉,并且在下次啟動(dòng)時(shí)系統也不會(huì )自動(dòng)啟動(dòng)inetd服務(wù) |
聯(lián)系客服