Linux系統(tǒng)應(yīng)用基礎(chǔ)教程 第3版 課件 第10、11章 常用服務(wù)器的構(gòu)建與配置、系統(tǒng)內(nèi)核的裁剪與編譯_第1頁
Linux系統(tǒng)應(yīng)用基礎(chǔ)教程 第3版 課件 第10、11章 常用服務(wù)器的構(gòu)建與配置、系統(tǒng)內(nèi)核的裁剪與編譯_第2頁
Linux系統(tǒng)應(yīng)用基礎(chǔ)教程 第3版 課件 第10、11章 常用服務(wù)器的構(gòu)建與配置、系統(tǒng)內(nèi)核的裁剪與編譯_第3頁
Linux系統(tǒng)應(yīng)用基礎(chǔ)教程 第3版 課件 第10、11章 常用服務(wù)器的構(gòu)建與配置、系統(tǒng)內(nèi)核的裁剪與編譯_第4頁
Linux系統(tǒng)應(yīng)用基礎(chǔ)教程 第3版 課件 第10、11章 常用服務(wù)器的構(gòu)建與配置、系統(tǒng)內(nèi)核的裁剪與編譯_第5頁
已閱讀5頁,還剩129頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第十章常用服務(wù)器的構(gòu)建與配置服務(wù)器(英文名稱server),也稱伺服器。指一個(gè)管理資源并為用戶提供服務(wù)的計(jì)算機(jī)軟件,通常分為文件服務(wù)器、數(shù)據(jù)庫服務(wù)器、DNS服務(wù)器和Web服務(wù)器等。運(yùn)行以上軟件的計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)也被稱為服務(wù)器。10.1FTP服務(wù)器

文件傳輸是指用戶通過網(wǎng)絡(luò)從遠(yuǎn)程計(jì)算機(jī)上下載或上傳文件。例如,用戶在網(wǎng)絡(luò)上找到自己需要的資料、免費(fèi)的軟件等,這時(shí)可以下載它們到本地計(jì)算機(jī)的磁盤上;或者用戶有一些文件需要發(fā)給其他主機(jī)的用戶,這時(shí)可以將這些文件上傳到指定的計(jì)算機(jī)。FTP便是從事文件傳輸?shù)挠行Чぞ摺?0.1.1FTP基本原理

FTP是由它所使用的網(wǎng)絡(luò)協(xié)議來命名的,即文件傳輸協(xié)議(FileTransferProtocol);它是Internet上的一個(gè)主要功能,其主要作用就是將文件從一臺(tái)計(jì)算機(jī)傳遞到另一臺(tái)計(jì)算機(jī)。FTP是一種客戶機(jī)/服務(wù)器(client/server)模式的應(yīng)用,在客戶機(jī)和服務(wù)器之間使用TCP協(xié)議建立連接。FTP的組成及結(jié)構(gòu)如圖10-1所示。圖10-1FTP組成及結(jié)構(gòu)FTP客戶機(jī)FTP服務(wù)器TCP/IP操作系統(tǒng)操作系統(tǒng)客戶機(jī)本地文件服務(wù)器遠(yuǎn)程文件

在FTP系統(tǒng)中,客戶機(jī)與服務(wù)器之間建立的是雙重連接,即一個(gè)是控制連接,另一個(gè)是數(shù)據(jù)連接。服務(wù)器的守護(hù)進(jìn)程在21號(hào)端口監(jiān)聽是否有客戶機(jī)的連接請(qǐng)求,如果有連接請(qǐng)求,則服務(wù)器的守護(hù)進(jìn)程將創(chuàng)建一個(gè)子進(jìn)程(即服務(wù)器的控制進(jìn)程),與客戶機(jī)的控制進(jìn)程建立起控制連接,該進(jìn)程等待來自客戶機(jī)的命令,而服務(wù)器的守護(hù)進(jìn)程則繼續(xù)監(jiān)聽21號(hào)端口看是否有新的連接請(qǐng)求到來。如果客戶機(jī)在控制連接上向服務(wù)器的控制進(jìn)程發(fā)出傳送數(shù)據(jù)的命令,則在服務(wù)器上將建立一個(gè)服務(wù)器的數(shù)據(jù)傳輸進(jìn)程,并向客戶機(jī)請(qǐng)求建立數(shù)據(jù)連接,當(dāng)該連接成功建立后通過它來傳輸數(shù)據(jù);當(dāng)數(shù)據(jù)傳輸完成后,數(shù)據(jù)傳輸進(jìn)程自動(dòng)消亡,服務(wù)器控制進(jìn)程等待用戶新的數(shù)據(jù)傳輸命令或終止連接的命令。

從圖10-1可以看到,F(xiàn)TP不管兩臺(tái)計(jì)算機(jī)的所處的位置如何,也不管兩臺(tái)計(jì)算機(jī)硬件的體系結(jié)構(gòu)和軟件的操作系統(tǒng)有何不同;只要它們都遵循FTP協(xié)議,且都能連接到Internet,那么就可以使用FTP來傳輸文件。10.1.2FTP服務(wù)器的安裝與配置文件

在CentOS7Linux操作系統(tǒng)安裝時(shí),若未選擇相應(yīng)的FTP軟件包,則可以在系統(tǒng)啟動(dòng)后執(zhí)行yum命令進(jìn)行安裝,執(zhí)行的命令為: #yum–yinstallvsftpd

若安裝過,則執(zhí)行該命令時(shí)顯示如圖10-2所示。圖10-2安裝vsftpd接著用yum命令安裝ftp軟件包,執(zhí)行的命令為: #yum–yinstallftp若未安裝過,則執(zhí)行該命令時(shí)顯示如圖10-3所示。圖10-3安裝ftp系統(tǒng)的FTP服務(wù)是vsftpd,其安裝時(shí)的日志文件保存在/var/log目錄的yum.log文件中。用戶如果需要對(duì)FTP的服務(wù)進(jìn)行配置,可以修改/etc/vsftpd目錄下的vsftpd.conf、ftpusers和user_list文件來實(shí)現(xiàn)。如果用戶安裝了其它的FTP服務(wù)器軟件,如wu-ftpd等也有相應(yīng)類似的配置文件。 1.vsftpd.conf文件

這個(gè)文件中有許多配置項(xiàng)被注釋(用#字符),用戶如果需要可以打開;但有些選項(xiàng)

關(guān)系到系統(tǒng)的安全,在確定打開前一定要仔細(xì)閱讀其說明。該文件主要內(nèi)容如下:anonymous_enable=YES #允許使用匿名登錄local_enable=YES #允許本地用戶登錄write_enable=YES #允許執(zhí)行FTP的寫命令local_umask=022 #本地掩碼設(shè)置為022#anon_upload_enable=YES #本注釋取消則允許匿名登錄用戶上傳文件#anon_mkdir_write_enable=YES#本注釋取消則允許匿名登錄用戶創(chuàng)建目錄dirmessage_enable=YES #當(dāng)遠(yuǎn)程登錄用戶進(jìn)入某些目錄時(shí)發(fā)送消息xferlog_enable=YES #允許上傳與下載connect_from_port_20=YES #允許ftp-data使用20端口#chown_uploads=YES #本注釋取消則允許由不同的用戶有權(quán)匿名上傳文件#chown_username=whoever#xferlog_file=/var/log/vsftpd.log #本注釋取消則允許覆蓋默認(rèn)目錄下的日志文件xferlog_std_format=YES #允許以xferlog格式保存日志文件#idle_session_timeout=600 #本注釋取消則缺省空閑會(huì)話超時(shí)值為600#data_connection_timeout=120 #本注釋取消則缺省數(shù)據(jù)連接超時(shí)值為120#nopriv_user=ftpsecure #本注釋取消則FTP服務(wù)器可以作為一個(gè)完全隔離和沒有

特權(quán)的用戶#async_abor_enable=YES #本注釋取消則允許異步ABOR請(qǐng)求#ascii_upload_enable=YES #本注釋取消則允許ascii上傳#ascii_download_enable=YES #本注釋取消則允許ascii下載#ftpd_banner=WelcometoblahFTPservice. #本注釋取消則顯示指定的登錄歡迎信息#deny_email_enable=YES #本注釋取消則允許指定一個(gè)匿名e-mail地址文件#(缺省的禁止e-mail地址文件)#banned_email_file=/etc/vsftpd.banned_emails#chroot_list_enable=YES #本注釋取消則允許列表文件中的用戶使用chroot命令#(缺省的列表文件)#chroot_list_file=/etc/vsftpd.chroot_list#ls_recurse_enable=YES #本注釋取消則允許在ls命令中使用-R選項(xiàng)pam_service_name=vsftpd #FTP服務(wù)器名userlist_enable=YES #允許使用userlist文件listen=YES #允許監(jiān)聽tcp_wrappers=YES #允許由inetd生成的服務(wù)提供增強(qiáng)的安全性,當(dāng)該項(xiàng)啟用

為即等于 yes時(shí)vsftp服務(wù)器會(huì)檢查/etc/hosts.allow和 /etc/hosts.deny文件中的設(shè)置以確定是否讓發(fā)起請(qǐng)求的

主機(jī)連接到FTP服務(wù)器;相當(dāng)于起到簡單的訪問控制列表的作用

文件中l(wèi)ocal_umask項(xiàng)決定了在FTP狀態(tài)下目錄和文件被創(chuàng)建時(shí)得到的初始權(quán)限;也就是說當(dāng)umask=022時(shí)新建的目錄權(quán)限是755(777-022),文件的權(quán)限是644(666-022)。 2.ftpusers文件

這個(gè)文件列出了不能用作FTP方式登錄服務(wù)器的用戶名列表,其內(nèi)容可能如下:#Usersthatarenotallowedtologinviaftprootbindaemonadmlpsyncshutdownhaltmailnewsuucpoperatorgamesnobody

為了系統(tǒng)安全的原因,不允許root用戶與系統(tǒng)內(nèi)置的賬號(hào)作為FTP的登錄用戶。尤其是用root用戶賬號(hào)直接登錄可能使得遠(yuǎn)程用戶通過口令嘗試的方式也登錄到服務(wù)器,則服務(wù)器的安全性堪憂;另外,F(xiàn)TP傳送的是沒有經(jīng)過加密的口令,這可能導(dǎo)致不法用戶通過網(wǎng)絡(luò)監(jiān)聽工具軟件竊取口令。 3.user_list文件

該文件的內(nèi)容如下:#vsftpduserlist#Ifuserlist_deny=NO,onlyallowusersinthisfile#Ifuserlist_deny=YES(default),neverallowusersinthisfile,and#donotevenpromptforapassword.#Notethatthedefaultvsftpdpamconfigalsochecks/etc/vsftpd.ftpusers#forusersthataredenied.rootbindaemonadmlpsyncshutdownhaltmailnewsuucpoperatorgamesnobodymailnewsuucpoperatorgamesnobody同時(shí)userlist_deny選項(xiàng)為“YES”(默認(rèn)缺省),則該用戶在試圖登錄FTP服務(wù)器時(shí),將不能夠登錄,甚至連輸入密碼的提示信息都沒有,直接被FTP服務(wù)器拒絕。而如果一個(gè)用戶名在ftpusers文件中,同時(shí)userlist_deny選項(xiàng)為“YES”,則該用戶在試圖登錄FTP服務(wù)器時(shí),將能看到輸入密碼的提示,但即使正確輸入密碼仍然不能登錄FTP服務(wù)器。參考示例:

假定ftp服務(wù)已開啟,在本機(jī)以root身份登錄FTP服務(wù)器。執(zhí)行命令:[root@myhost1root]#ftplocalhost系統(tǒng)顯示:Trying::1...Connectedtolocalhost(::1).220(vsFTPd3.0.2)Name(localhost:root):331Pleasespecifythepassword.Password:530Loginincorrect.Loginfailed.ftp>從顯示結(jié)果可以看到,以root身份登錄時(shí)由于其用戶名的userlist_enable選項(xiàng)為YES,同時(shí)root也在ftpusers文件中,且userlist_deny選項(xiàng)為“YES”,則權(quán)限禁止連輸入密碼的提示信息都沒有,直接導(dǎo)致登錄失敗。userlist_deny選項(xiàng)和user_list文件一起使用能夠有效地阻止root等系統(tǒng)用戶登錄FTP服務(wù)器,從而保證了FTP服務(wù)器的分級(jí)安全性。10.1.3FTP服務(wù)的啟動(dòng)

當(dāng)Linux系統(tǒng)安裝完成并啟動(dòng)時(shí),一般系統(tǒng)為了節(jié)省內(nèi)存和提高啟動(dòng)速度,默認(rèn)情況下FTP服務(wù)是沒有啟動(dòng)的。如果需要使用FTP,則必須首先啟動(dòng)FTP服務(wù)。在Linux系統(tǒng)的發(fā)行套件中,F(xiàn)TP服務(wù)的名稱是vsftpd,如果用戶不是全部安裝所有的Linux軟件包,則可能需要使用安裝光盤或ISO軟件重新安裝該服務(wù)。用戶也可以從網(wǎng)絡(luò)上下載其他的FTP軟件,如wu-ftpd、bftpd等。如果用戶已經(jīng)安裝了vsftpd服務(wù),則可以有兩種不同的方法來啟動(dòng)或停止它。 1.設(shè)置自啟動(dòng)方式在終端窗口的字符界面下,鍵入setup命令,利用上下光標(biāo)鍵選擇Systemservices菜單項(xiàng)并回車;找到vsftpd服務(wù)項(xiàng),按空格鍵或單擊鼠標(biāo)左鍵選中該服務(wù)項(xiàng)前的復(fù)選框。當(dāng)下次系統(tǒng)啟動(dòng)時(shí),vsftpd服務(wù)將自動(dòng)被運(yùn)行。 2.命令行啟動(dòng)或停止如果需要馬上啟動(dòng)該服務(wù),不需要重新啟動(dòng)系統(tǒng),只要執(zhí)行服務(wù)啟動(dòng)命令,例如:[root@localhostroot]#systemctlrestartvsftpd.service

正常情況下系統(tǒng)沒有信息顯示;如果需要停止該服務(wù),只要執(zhí)行停止命令,例如:[root@localhostroot]#systemctlstopvsftpd.service

同樣,正常情況下系統(tǒng)沒有信息顯示。10.1.4文件傳輸命令及用法

在FTP服務(wù)啟動(dòng)后就可以進(jìn)行文件傳輸了,雖然文件傳輸命令和用法隨著操作系統(tǒng)的不同而不同,但基本的命令結(jié)構(gòu)對(duì)各種機(jī)器都是大同小異的。以下結(jié)合參考示例說明文件傳輸命令的格式和具體用法。10.1.4.1ftp命令

該命令是Internet上的文件傳輸程序。在字符終端窗口的命令行提示符下輸入ftp命令和選項(xiàng)或參數(shù)后即可進(jìn)入FTP模式,并出現(xiàn)“>”提示符。

命令格式: ftp[-pingvd][host] 或 pftp[-ingvd][host]

其中,ftp或pftp為命令名稱;參數(shù)host為要連接服務(wù)器端的IP地址或主機(jī)名稱;其他的是命令選項(xiàng),這些選項(xiàng)可以在命令行中、也可以在命令解釋程序中指定。 命令選項(xiàng)及說明:表10-1ftp命令選項(xiàng)及說明命令選項(xiàng)選項(xiàng)說明-p數(shù)據(jù)傳輸采用被動(dòng)模式。-i在多文件傳輸中,關(guān)閉交互模式的提示信息。-n不使用自動(dòng)登錄。ftp在啟動(dòng)時(shí)會(huì)從.netrc文件中讀取信息,試圖自動(dòng)登錄指定的遠(yuǎn)程計(jì)算機(jī)系統(tǒng);如果該文件不存在,ftp會(huì)放棄自動(dòng)登錄并詢問用戶賬戶名稱和口令。-g禁止本地主機(jī)文件名支持特殊字符的擴(kuò)充特性。-v顯示ftp命令執(zhí)行的詳細(xì)過程。-d允許進(jìn)行調(diào)試。

進(jìn)入FTP模式后,可以使用的命令有:! debug mdir sendport site$ dir mget put sizeaccount disconnect mkdir pwd statusappend exit mls quit structascii form mode quote systembell get modtime recv suniquebinary glob mput reget tenexbye hash newer rstatus tickcase help nmap rhelp tracecd idle nlist rename typecdup image ntrans reset userchmod lcd open restart umaskclose ls prompt rmdir verbosecr macdef passive runique ?delete mdelete proxy send

其中,許多命令與命令行模式下的命令相同。如果忘記了這些命令名稱,則在FTP模式下任何時(shí)候只要鍵入?命令即可顯示。10.1.4.2參考示例參考示例1:登錄到IP地址為的主機(jī),準(zhǔn)備進(jìn)行文件傳輸。[root@localhost/]#ftpConnectedto().220(vsFTPd3.0.2)Name(:root):zxj331Pleasespecifythepassword.Password:230Loginsuccessful.RemotesystemtypeisUNIX.Usingbinarymodetotransferfiles.ftp>以上顯示的信息中要求用戶輸入所登錄到主機(jī)的用戶名和口令,其中斜體字并帶下劃線的部分為用戶輸入的信息(以下同此);登錄成功后顯示ftp提示符。參考示例2:列出登錄主機(jī)用戶目錄中的內(nèi)容。ftp>ls227EnteringPassiveMode(192,168,122,1,46,223).150Herecomesthedirectorylisting.-rw-r--r--100162Oct0215:22xjdrwxr-xr-x2100010006Aug1511:01下載drwxr-xr-x2100010006Aug1511:01公共drwxr-xr-x2100010006Aug1511:01圖片drwxr-xr-x2100010006Aug1511:01文檔drwxr-xr-x2100010006Aug1511:01桌面drwxr-xr-x2100010006Aug1511:01模板drwxr-xr-x2100010006Aug1511:01視頻drwxr-xr-x2100010006Aug1511:01音樂226DirectorysendOK.ftp>在ftp提示符下,鍵入ls命令即可列出所登錄用戶目錄中的文件,與一般ls命令不同的只是以長格式顯示目錄中的文件信息。

參考示例3:從所登錄的主機(jī)用戶目錄中下載文件。 ftp>getxjxjtlocal:xjtremote:xj227EnteringPassiveMode(192,168,122,1,162,96).150OpeningBINARYmodedataconnectionforxj(162bytes).226Transfercomplete.162bytesreceivedin9.9e-05secs(1636.36Kbytes/sec)ftp>

從遠(yuǎn)程主機(jī)的zxj用戶目錄中下載xj源文件到本地主機(jī)的當(dāng)前目錄并以xjt目標(biāo)文件名保存;如果不指定目標(biāo)文件名,則以源文件同名保存。在下載完成時(shí)顯示傳輸?shù)男畔⒘?、所花費(fèi)的時(shí)間和平均傳輸速度。

參考示例4:向所登錄的主機(jī)用戶目錄中上傳文件。 ftp>putyum.doclocal:yum.docremote:yum.doc227EnteringPassiveMode(192,168,122,1,154,134).150Oktosenddata.226Transfercomplete.58152bytessentin0.00267secs(21755.33Kbytes/sec)ftp>

向遠(yuǎn)程主機(jī)的zxj用戶目錄中上傳yum.doc源文件,由于沒有指定遠(yuǎn)程主機(jī)的目標(biāo)文件名,所以仍以同名文件保存。同樣,在上傳完成時(shí)顯示相關(guān)的信息。

參考示例5:向遠(yuǎn)程主機(jī)上傳大文件。 ftp>hashHashmarkprintingon(1024bytes/hashmark).ftp>putNTFS-3G_1@170545.exelocal:NTFS-3G_1@170545.exeremote:NTFS-3G_1@170545.exe227EnteringPassiveMode(192,168,122,1,102,151).150Oktosenddata.#######################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################226Transfercomplete.1121488bytessentin0.0284secs(39445.96Kbytes/sec)ftp>

當(dāng)傳輸大文件時(shí)所花的時(shí)間較長,一般需要顯示文件傳輸?shù)倪M(jìn)度;在這種情況下可以使用hash命令,以便在文件傳輸過程中用“#”顯示傳輸?shù)倪M(jìn)度。本例是向遠(yuǎn)程主機(jī)上傳一個(gè)NTFS-3G_1@170545.exe軟件。

參考示例6:匿名登錄遠(yuǎn)程主機(jī)并準(zhǔn)備文件傳輸。 [root@zxjroot]#ftpConnectedto().220(vsFTPd3.0.2)Name(:root):anonymous331Pleasespecifythepassword.Password:注意:此處直接回車!230Loginsuccessful.RemotesystemtypeisUNIX.Usingbinarymodetotransferfiles.ftp>

在Internet上廣泛使用的公共文件傳輸服務(wù)就是“匿名”(anonymous)文件傳輸服務(wù)。采用“匿名”文件傳輸時(shí),一般在服務(wù)器上會(huì)指定一個(gè)公共目錄,CentOS7默認(rèn)是在/var/ftp下的pub目錄。“匿名”文件傳輸允許任何被允許建立TCP連接的用戶遠(yuǎn)程訪問公共目錄中的文件,而其他目錄是禁止訪問的。這個(gè)功能可以用于讓用戶從網(wǎng)絡(luò)上發(fā)布開發(fā)的軟件或收集共享軟件給其他用戶下載使用。

參考示例7:在匿名登錄下,查看匿名文件傳輸?shù)墓材夸洝? ftp>ls227EnteringPassiveMode(192,168,122,1,84,118).150Herecomesthedirectorylisting.drwxr-xr-x2006Oct302018pub226DirectorysendOK.ftp>

在匿名登錄遠(yuǎn)程主機(jī)后,執(zhí)行l(wèi)s命令顯示服務(wù)器上的公共目錄。

參考示例8:切換到公共目錄中并查看該目錄中的文件。 ftp>cdpub250Directorysuccessfullychanged.ftp>ls227EnteringPassiveMode(192,168,122,1,216,109).150Herecomesthedirectorylisting.-rwxrwxrwx100232Aug2008:02grub-rwxrwxrwx10017763Aug1813:02xfs.doc226DirectorysendOK.ftp> 可以執(zhí)行cd命令來切換到公共目錄。 參考示例9:通過匿名文件傳輸下載文件。

ftp>getgrublocal:grubremote:grub227EnteringPassiveMode(192,168,122,1,51,65).150OpeningBINARYmodedataconnectionforgrub(232bytes).226Transfercomplete.232bytesreceivedin0.00092secs(252.17Kbytes/sec)ftp>

在匿名文件傳輸下,只能從公共目錄下載文件,而禁止從其他目錄下載。

參考示例10:將grub文件以grub.bak上傳。 ftp>putgrubgrub.baklocal:grubremote:grub.bak227EnteringPassiveMode(192,168,122,1,114,191).550Permissiondenied.ftp>

本例是要將/var/ftp/pub目錄中的grub文件以grub.bak上傳到遠(yuǎn)程主機(jī)的公共目錄中(匿名文件傳輸),但從顯示的信息可以看到,在匿名文件傳輸下是禁止文件上傳的。

以上10個(gè)參考示例說明了ftp服務(wù)器的基本用法。當(dāng)FTP服務(wù)器配置完成后檢查CentOS7的防火墻端口號(hào)是否為21,在CentOS7的Firefox瀏覽器中輸入:

即可通過瀏覽器看到pub目錄,如圖10-4所示;點(diǎn)擊pub即可進(jìn)入目錄。圖10-4瀏覽器查看pub目錄10.2Web服務(wù)器

通常WEB服務(wù)器也稱為WWW(WorldWildWeb)服務(wù)器,它采用瀏覽器/服務(wù)器(Browser/Server)結(jié)構(gòu)。當(dāng)Web用戶通過瀏覽器(客戶端)連到服務(wù)器并發(fā)出HTTP文件請(qǐng)求時(shí),Web服務(wù)器將處理該請(qǐng)求并將文件發(fā)送到該瀏覽器上,瀏覽器對(duì)HTTP文件進(jìn)行處理,將其中的視頻、聲音和圖片等多媒體文件從服務(wù)器上取回并顯示。主要功能是提供網(wǎng)上多媒體信息瀏覽服務(wù)。WWW是Internet上發(fā)展起來的服務(wù),也是發(fā)展最快和目前應(yīng)用最廣泛的服務(wù)。正是因?yàn)橛辛薟WW工具,才使得Internet迅速發(fā)展,且用戶數(shù)量飛速增長。 Linux是借助某種Web服務(wù)器軟件來實(shí)現(xiàn)Web服務(wù)的,常用的是Apache服務(wù)器軟件。據(jù)統(tǒng)計(jì)在Internet上有半數(shù)以上的WWW服務(wù)器使用Apache軟件。10.2.1Web服務(wù)基本原理

雖然Linux的Web服務(wù)器有很多種,但它們的基礎(chǔ)工作原理是相同的,如圖10-5所示。用戶在URL中輸入網(wǎng)址后回車,或者是點(diǎn)擊網(wǎng)址鏈接等,瀏覽器隨即獲取了該事件;瀏覽器與服務(wù)端程序建立起TCP連接;瀏覽器將用戶的事件按照HTTP協(xié)議格式打包成數(shù)據(jù)包;瀏覽器按照TCP協(xié)議將數(shù)據(jù)包通過互聯(lián)網(wǎng)發(fā)往服務(wù)端程序;服務(wù)端程序收包后,以HTTP協(xié)議格式解包并解析數(shù)據(jù);再按提供文件或處理數(shù)據(jù)進(jìn)行分類處理;然后將結(jié)果裝入服務(wù)端緩沖區(qū);服務(wù)端程序按照HTTP協(xié)議格式將緩沖區(qū)的數(shù)據(jù)打包;服務(wù)器通過互聯(lián)網(wǎng)將數(shù)據(jù)包發(fā)送到到客戶端;瀏覽器收包后,以HTTP協(xié)議格式解包并解析;最后在瀏覽器頁面上展示HTTP文件。圖10-5Web服務(wù)原理10.2.2Web服務(wù)器的安裝與配置文件

在CentOS7Linux操作系統(tǒng)安裝時(shí),若未選擇相應(yīng)的Web服務(wù)器軟件包,則可以在系統(tǒng)啟動(dòng)后執(zhí)行yum命令進(jìn)行安裝,執(zhí)行的命令為: #yum–yinstallhttpd

也可以在圖形方式下安裝,進(jìn)入“應(yīng)用程序”菜單,選擇“系統(tǒng)工具”菜單項(xiàng)下的“軟件”菜單項(xiàng)并回車,進(jìn)入的界面如圖10-6所示。選中“ApacheHTTPServer”軟件包,再點(diǎn)擊“應(yīng)用更改”按鈕即可安裝。圖10-6圖形化安裝Web服務(wù)器

系統(tǒng)會(huì)自動(dòng)檢查軟件包的依賴關(guān)系。

系統(tǒng)的Web服務(wù)是httpd.service,當(dāng)安裝成功后在在/var目錄下將會(huì)新建子目錄,例如/var/www/html為默認(rèn)網(wǎng)站的根(root)目錄;在/etc目錄下也會(huì)新建一個(gè)httpd目錄及相應(yīng)的子目錄,其中/etc/httpd/conf/httpd.conf為主配置文件。這個(gè)文件中有許多配置項(xiàng)被注釋(用#字符),用戶如果需要可以打開;但有些選項(xiàng)

關(guān)系到系統(tǒng)的安全,在確定打開前一定要仔細(xì)閱讀其說明。該文件主要內(nèi)容如下:ServerRoot"/etc/httpd" #存放Web服務(wù)配置文件的目錄Listen80 #Apache服務(wù)偵聽端口號(hào)Includeconf.modules.d/*.conf#存放Apache服務(wù)模塊的目錄和文件Userapache #Apache子進(jìn)程的用戶Groupapache #Apache子進(jìn)程的組ServerAdminroot@localhost #設(shè)置Apache服務(wù)管理員郵件地址

#ServerName:80

#拒絕訪問服務(wù)器的整個(gè)文件系統(tǒng)。須顯式地指定允許訪問的web內(nèi)容。<Directory/>AllowOverridenoneRequirealldenied</Directory>DocumentRoot"/var/www/html" #網(wǎng)站默認(rèn)的根目錄#放寬對(duì)/var/www中內(nèi)容的訪問。<Directory"/var/www">AllowOverrideNone #none不使用.htaccess控制,all允許Requireallgranted #granted表示允許所有訪問,denied表示拒絕所有訪問</Directory> <Directory"/var/www/html"> #網(wǎng)站容器開始標(biāo)識(shí)

OptionsIndexesFollowSymLinks#找不到主頁時(shí),以目錄的方式呈現(xiàn),并允許鏈接到網(wǎng)站根目錄以外

AllowOverrideNoneRequireallgranted</Directory> #容器結(jié)束

#定義主頁文件,當(dāng)訪問到網(wǎng)站目錄時(shí)如果有定義的主頁文件,網(wǎng)站會(huì)自動(dòng)訪問<IfModuledir_module>DirectoryIndexindex.html </IfModule><Files".ht*">Requirealldenied</Files>ErrorLog"logs/error_log" #錯(cuò)誤日志目錄及文件LogLevelwarn #日志級(jí)警告<IfModulelog_config_module>#日志格式LogFormat"%h%l%u%t\"%r\"%>s%b\"%{Referer}i\"\"%{User-Agent}i\""combinedLogFormat"%h%l%u%t\"%r\"%>s%b"common

<IfModulelogio_module>LogFormat"%h%l%u%t\"%r\"%>s%b\"%{Referer}i\"\"%{User-Agent}i\"%I%O"combinedio</IfModule>CustomLog"logs/access_log"combined #日志/訪問日志總計(jì)</IfModule>

<IfModulealias_module>

ScriptAlias/cgi-bin/"/var/www/cgi-bin/" #服務(wù)器腳本目錄

</IfModule><Directory"/var/www/cgi-bin">AllowOverrideNoneOptionsNoneRequireallgranted</Directory>

<IfModulemime_module>

#類型配置文件TypesConfig/etc/mime.types

#AddType允許用戶添加或覆蓋TypesConfig中為特定文件類型指定的MIME配置文件。AddDefaultCharsetUTF-8 #網(wǎng)頁文件的字符編碼

<IfModulemime_magic_module>MIMEMagicFileconf/magic</IfModule>#EnableMMAPoffEnableSendfileon #允許發(fā)送文件IncludeOptionalconf.d/*.conf #配置選項(xiàng)目錄及文件

10.2.3Web服務(wù)的啟動(dòng)

當(dāng)Linux系統(tǒng)安裝完成并啟動(dòng)時(shí),默認(rèn)情況下Web服務(wù)是沒有啟動(dòng)的。如果需要使用Web,則必須首先啟動(dòng)Web服務(wù)。在Linux系統(tǒng)的發(fā)行套件中,Web服務(wù)的名稱是httpd.service,如果用戶沒有安裝Linux的服務(wù)器模組軟件包,則可能需要使用安裝光盤或ISO軟件重新安裝該服務(wù)。如果用戶已經(jīng)安裝了httpd.service服務(wù),則可以有兩種不同的方法來啟動(dòng)或停止它。 1.設(shè)置自啟動(dòng)方式在終端窗口的字符界面下,鍵入setup命令,利用上下光標(biāo)鍵選擇Systemservices菜單項(xiàng)并回車;找到httpd.service服務(wù)項(xiàng),按空格鍵或單擊鼠標(biāo)左鍵選中該服務(wù)項(xiàng)前的復(fù)選框。當(dāng)下次系統(tǒng)啟動(dòng)時(shí),Web服務(wù)將自動(dòng)被運(yùn)行。 2.命令行啟動(dòng)或停止如果需要馬上啟動(dòng)該服務(wù),不需要重新啟動(dòng)系統(tǒng),只要執(zhí)行服務(wù)啟動(dòng)命令,例如:[root@localhostroot]#systemctlenablehtppd.service[root@localhostroot]#systemctlrestarthtppd.service

正常情況下系統(tǒng)沒有信息顯示;如果需要停止該服務(wù),只要執(zhí)行停止命令,例如:[root@localhostroot]#systemctlstophtppd.service

同樣,正常情況下系統(tǒng)沒有信息顯示。

但可以執(zhí)行l(wèi)sof命令,查看80端口信息確定httpd服務(wù)是否啟動(dòng),執(zhí)行:[root@localhost~]#lsof-i:80COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAMEhttpd31144root4uIPv63558790t0TCP*:http(LISTEN)httpd31145apache4uIPv63558790t0TCP*:http(LISTEN)httpd31146apache4uIPv63558790t0TCP*:http(LISTEN)httpd31147apache4uIPv63558790t0TCP*:http(LISTEN)httpd31148apache4uIPv63558790t0TCP*:http(LISTEN)httpd31149apache4uIPv63558790t0TCP*:http(LISTEN)httpd33206apache4uIPv63558790t0TCP*:http(LISTEN)httpd40386apache4uIPv63558790t0TCP*:http(LISTEN)httpd40425apache4uIPv63558790t0TCP*:http(LISTEN)httpd40426apache4uIPv63558790t0TCP*:http(LISTEN)

當(dāng)配置及啟動(dòng)完成后,可以先測試Apache服務(wù)器,打開firefox瀏覽器,在URL中輸入(本書所用的IP地址),盡管此時(shí)還沒有在/var/www/html目錄中存放任何網(wǎng)頁文件,但仍可顯示Apache的測試界面,結(jié)果如圖10-7所示。圖10-7Apache服務(wù)器測試界面10.2.4Web服務(wù)命令及用法

在Linux系統(tǒng)中Web服務(wù)的命令是httpd,它是Apache超文本傳輸協(xié)議(HTTP)服務(wù)器程序。它被設(shè)計(jì)為作為獨(dú)立的守護(hù)進(jìn)程運(yùn)行。通常,httpd不應(yīng)直接調(diào)用,而應(yīng)在基于Unix的系統(tǒng)上通過apachectl命令調(diào)用。10.2.4.1httpd命令

該命令可以啟動(dòng)Apache服務(wù)器的服務(wù),這個(gè)功能可以被systemctl命令代替;也可以設(shè)置服務(wù)的配置選項(xiàng),這個(gè)功能可以通過直接修改/etc/httpd/conf/httpd.conf文件實(shí)現(xiàn);但做為熟悉命令的管理員也許使用更方便。若沒有指定任何選項(xiàng)、參數(shù),則httpd會(huì)去讀取/etc/httpd/conf/httpd.conf文件,并根據(jù)文件中的設(shè)定來啟動(dòng)服務(wù)器。

命令格式: httpd[-Dname][-ddirectory][-ffile][-C"directive"][-c"directive"][-kstart|restart|graceful|graceful-stop|stop][-v][-V][-h][-l][-L][-t][-T][-S][-X] 其中,httpd為命令名稱;-后的字母為選項(xiàng),其后的為選項(xiàng)參數(shù)。命令選項(xiàng)及說明:表10-2httpd命令選項(xiàng)及說明命令選項(xiàng)選項(xiàng)說明-Dname指定要傳入配置文件(<IfDefinename>區(qū)段)的參數(shù)。-ddirectory指定服務(wù)器根目錄,默認(rèn)為/etc/httpd目錄。-ffile自定義的配置文件,而不是用默認(rèn)的。-C"directive"讀取配置文件之前先處理指令。-c"directive"讀取配置文件之后再處理指令。-elevel顯示啟動(dòng)錯(cuò)誤級(jí)別。-Efile將啟動(dòng)錯(cuò)誤記錄到文件。-v顯示版本信息。-V顯示編譯設(shè)置。-h顯示幫助信息。-l顯示服務(wù)器編譯時(shí)包含的模塊。-L列出可用的配置指令。-t-DDUMP_VHOSTS顯示已解析的虛擬主機(jī)設(shè)置。-t-DDUMP_RUN_CFG顯示已解析的運(yùn)行設(shè)置。-S與-t-DDUMP_VHOSTS-DDUMP_RUN_CFG同義。-t-DDUMP_MODULES顯示所有已裝載的模塊。-M與-t-DDUMP_MODULES同義。-t測試配置文件的語法。-T在沒有DocumentRoot(s)檢查的情況下開始。-X進(jìn)入調(diào)試模式。10.2.4.2參考示例

參考示例1:測試Apache服務(wù)器的配置文件是否正確[root@localhost~]#httpd-tAH00558:httpd:Couldnotreliablydeterminetheserver'sfullyqualifieddomainname,usinglocalhost.localdomain.Setthe'ServerName'directivegloballytosuppressthismessageSyntaxOK

命令執(zhí)行后顯示使用localhost.localdomain無法可靠地確定服務(wù)器的標(biāo)準(zhǔn)域名。這是因?yàn)榕渲梦募蠸erverName被注釋(參見10.2.2小節(jié)中的配置文件),而其它語法正確。

參考示例2:顯示服務(wù)器編譯設(shè)置[root@localhost~]#httpd-VServerversion:Apache/2.4.6(CentOS)Serverbuilt:Aug8201911:41:18Server'sModuleMagicNumber:20120211:24Serverloaded:APR1.4.8,APR-UTIL1.5.2Compiledusing:APR1.4.8,APR-UTIL1.5.2Architecture:64-bitServerMPM:preforkthreaded:noforked:yes(variableprocesscount)Servercompiledwith-DAPR_HAS_SENDFILE-DAPR_HAS_MMAP-DAPR_HAVE_IPV6(IPv4-mappedaddressesenabled)-DAPR_USE_SYSVSEM_SERIALIZE-DAPR_USE_PTHREAD_SERIALIZE-DSINGLE_LISTEN_UNSERIALIZED_ACCEPT-DAPR_HAS_OTHER_CHILD-DAP_HAVE_RELIABLE_PIPED_LOGS-DDYNAMIC_MODULE_LIMIT=256-DHTTPD_ROOT="/etc/httpd"-DSUEXEC_BIN="/usr/sbin/suexec"-DDEFAULT_PIDLOG="/run/httpd/httpd.pid"-DDEFAULT_SCOREBOARD="logs/apache_runtime_status"-DDEFAULT_ERRORLOG="logs/error_log"-DAP_TYPES_CONFIG_FILE="conf/mime.types"-DSERVER_CONFIG_FILE="conf/httpd.conf"

命令執(zhí)行后顯示服務(wù)器版本、模塊、編譯器、架構(gòu)以及編譯的選項(xiàng)和參數(shù)等。參考示例3:編寫一個(gè)靜態(tài)網(wǎng)頁文件index.html,測試Apache服務(wù)器基本性能。編寫的index.html文件:<html> <head> <title>標(biāo)題字體與文本字體</title> </head> <body> <h1>1號(hào)標(biāo)題字體</h1> <h2>2號(hào)標(biāo)題字體</h2> <h3>3號(hào)標(biāo)題字體</h3> <h4>4號(hào)標(biāo)題字體</h4> <h5align="center">5號(hào)標(biāo)題字體(居中)</h5> <fontface="黑體"size=3>黑體3號(hào)字體</font> <i> <u> <fontface="仿宋體"size=4>仿宋體4號(hào)文字(傾斜、下劃線)</font> </u> </i> <fontfaxe="宋體"size=5color=ff0000>宋體5號(hào)紅色文字</font> </body></html>保存文件時(shí)注意字符代碼選擇UTF-8,這是httpd.conf文件默認(rèn)的字符代碼,否則網(wǎng)頁顯示可能是亂碼!打開瀏覽器,在URL中輸入結(jié)果如圖10-8所示。圖10-8CentOS7下靜態(tài)網(wǎng)頁測試

若要在Windows下訪問Web服務(wù)器,則需要配置防火墻規(guī)則,這里只是測試它,所以執(zhí)行如下命令暫時(shí)關(guān)閉防火墻:#systemctlstopfirewalld在Windows7下打開瀏覽器,在URL輸入02;如圖10-9所示。圖10-9Windows7下靜態(tài)網(wǎng)頁測試

以上對(duì)于CentOS7下搭建Web服務(wù)器(Apache)做了簡單的介紹的了解,由于實(shí)際使用中主要是動(dòng)態(tài)的網(wǎng)頁,這涉及到Apache、PHP5、MySQL等服務(wù)器的安裝與配置,限于篇幅本章不再做詳細(xì)的介紹。10.3DNS服務(wù)器

由于IP地址難以記憶,所以為網(wǎng)絡(luò)中的每臺(tái)主機(jī)指定一個(gè)用戶容易記憶的名字,這個(gè)名字就稱為域名(也稱為主機(jī)名)。域名服務(wù)器的主要功能就是將用戶容易記憶的域名轉(zhuǎn)換為計(jì)算機(jī)使用的IP地址,或?qū)P地址翻譯為域名。10.3.1DNS服務(wù)基本原理

整個(gè)互聯(lián)網(wǎng)上的域名服務(wù)器采用樹形層次結(jié)構(gòu),樹上的每個(gè)節(jié)點(diǎn)都有一個(gè)名稱,即“域”,每層用“.”分隔。在互聯(lián)網(wǎng)中域名的“根(“.”)”通常被省略。例如,“.”被省略為。互聯(lián)網(wǎng)域名系統(tǒng)結(jié)構(gòu)示意圖如圖10-10所示。圖10-10DNS結(jié)構(gòu)示意圖

圖中的左邊的分支“.arpa.in-addr.XXX”用于反向域名解析,即將IP地址翻譯為域名。

如果一個(gè)網(wǎng)絡(luò)不與互聯(lián)網(wǎng)相連,則可以任意設(shè)置域名服務(wù)器;否則必須遵循互聯(lián)網(wǎng)有關(guān)規(guī)則,即要向上層的域名服務(wù)器申請(qǐng)使用的域名,不然即使能連接上互聯(lián)網(wǎng)也無法正確轉(zhuǎn)換出域名。10.3.2DNS服務(wù)器的安裝與配置文件

在CentOS7Linux操作系統(tǒng)安裝時(shí),若未選擇相應(yīng)的DNS服務(wù)器軟件包,則可以在系統(tǒng)啟動(dòng)后執(zhí)行yum命令進(jìn)行安裝,執(zhí)行的命令為: #yum–yinstallbindbind-libsbind-utils

這個(gè)命令會(huì)將指定的bind軟件包都進(jìn)行安裝,并自動(dòng)檢查依賴關(guān)系和自動(dòng)更新依賴包。

系統(tǒng)的DNS服務(wù)是named.service,當(dāng)安裝成功后在/var、/run和/etc目錄下將會(huì)新建名為named的子目錄,存放配置的數(shù)據(jù)文件;在/etc目錄下也會(huì)新建一個(gè)名為named.conf的主配置文件。//named.conf配置文件options{ //域名解析數(shù)據(jù)文件目錄 listen-onport53{;}; listen-on-v6port53{::1;}; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file"/var/named/data/named_stats.txt"; memstatistics-file"/var/named/data/named_mem_stats.txt"; recursing-file"/var/named/data/named.recursing"; secroots-file"/var/named/data/named.secroots"; allow-query{localhost;};

//緩存服務(wù)器區(qū) recursionyes;

dnssec-enableyes; dnssec-validationyes;

/*PathtoISCDLVkey*/ bindkeys-file"/etc/named.root.key";

managed-keys-directory"/var/named/dynamic";

pid-file"/run/named/named.pid"; session-keyfile"/run/named/session.key";};

logging{channeldefault_debug{file"data/named.run";severitydynamic;};};

zone"."IN{ typehint; file"named.ca"; //緩存服務(wù)器數(shù)據(jù)文件};

include"/etc/named.rfc1912.zones";include"/etc/named.root.key";

首先,將以上文件中的兩個(gè)語句按如下修改后保存:

原:listen-onport53{;};->修改:listen-onport53{any;};

原:allow-query{localhost;};->修改:allow-query{any;};

然后,打開/etc/named.rfc1912.zones文件參照其格式修改,以便添加DNS正反向解析規(guī)則://添加的正向解析zone""IN{typemaster;file".zone";allow-update{none;};};

正向解析的目的是將名字翻譯為IP地址;上述代碼是定義一個(gè)域名為ns_解析的區(qū)域,域名解析數(shù)據(jù)存放在/var/named/ns_.zone文件中。//添加的反向解析zone"40.168.192."IN{typemaster;file"192.168.40.zone";allow-update{none;};};

反向解析的目的是將IP地址翻譯為名字;上述代碼是定義一個(gè)用于反向域名解析的10.168.192.區(qū),域名解析數(shù)據(jù)存放在/var/named/192.168.10.zone文件中。

第三,參照/var/named/named.localhost文件的格式,同目錄下創(chuàng)建.zone文件。$TTL1000@INSOAns.ns_.admin.ns_.( 41000100020002000) INNSnsns INA34www INA35mail INA36

第四,參照/var/named/named.loopback文件的格式,同目錄下創(chuàng)建192.168.40.zone文件。$TTL1000@INSOA..( 41000100020002000)INNS.134INPTR.135INPTR.136INPTRmail..

注意.zone和192.168.40.zone文件的格式,第一行為數(shù)據(jù)包生命周期;@表示當(dāng)前域,等價(jià)于“0.0.127.”;IN表示互聯(lián)網(wǎng);SOA是主服務(wù)器域名解析數(shù)據(jù)文件中必須設(shè)置的授權(quán)記錄;4表示本文件的版本號(hào),第一個(gè)1000表示更新時(shí)間,第二個(gè)1000表示重試時(shí)間,第一個(gè)2000是指定的終止時(shí)間,第二個(gè)2000是無法從文件內(nèi)找到所請(qǐng)求域名時(shí),緩存一條命名錯(cuò)誤的時(shí)間(這些時(shí)間只是測試時(shí)指定的便于較快的響應(yīng),具體應(yīng)用時(shí)需根據(jù)網(wǎng)絡(luò)設(shè)置);A用于正向解析的指定域名與IP地址對(duì)應(yīng)關(guān)系,PTR用于反向解析的指定IP地址與名字對(duì)應(yīng)關(guān)系,以上這些都屬于資源記錄,更詳細(xì)的資源記錄說明請(qǐng)參閱相關(guān)文檔。

文件開頭依次定義了DNS服務(wù)器名、DNS管理員郵件地址,特別提醒DNS和郵件地址的最后必須有一個(gè)“.”

第五,修改文件權(quán)限,執(zhí)行命令:#chmod777.zone192.168.40.zone10.3.3DNS服務(wù)的啟動(dòng)

當(dāng)Linux系統(tǒng)安裝完成并啟動(dòng)時(shí),默認(rèn)情況下DNS服務(wù)是沒有啟動(dòng)的。如果需要使用DNS,則必須首先啟動(dòng)DNS服務(wù)。在Linux系統(tǒng)的發(fā)行套件中,DNS服務(wù)的名稱是named.service,如果用戶沒有安裝Linux的服務(wù)器模組軟件包,則可能需要使用安裝光盤或ISO軟件重新安裝該服務(wù)。如果用戶已經(jīng)安裝了named.service服務(wù),則可以有兩種不同的方法來啟動(dòng)或停止它。 1.設(shè)置自啟動(dòng)方式在終端窗口的字符界面下,鍵入setup命令,利用上下光標(biāo)鍵選擇Systemservices菜單項(xiàng)并回車;找到named.service服務(wù)項(xiàng),按空格鍵或單擊鼠標(biāo)左鍵選中該服務(wù)項(xiàng)前的復(fù)選框。當(dāng)下次系統(tǒng)啟動(dòng)時(shí),DNS服務(wù)將自動(dòng)被運(yùn)行。 2.命令行啟動(dòng)或停止如果需要馬上啟動(dòng)該服務(wù),不需要重新啟動(dòng)系統(tǒng),只要執(zhí)行服務(wù)啟動(dòng)命令,例如:[root@localhostroot]#systemctlenablenamed.service[root@localhostroot]#systemctlrestartnamed.service

正常情況下系統(tǒng)沒有信息顯示;如果需要停止該服務(wù),只要執(zhí)行停止命令,例如:[root@localhostroot]#systemctlstopnamed.service

同樣,正常情況下系統(tǒng)沒有信息顯示。

但可以執(zhí)行systemctl命令,查看named.service服務(wù)是否啟動(dòng),執(zhí)行: #systemctlstatusnamed.service

結(jié)果顯示:●named.service-BerkeleyInternetNameDomain(DNS)Loaded:loaded(/usr/lib/systemd/system/named.service;enabled;vendorpreset:disabled)Active:active(running)since六2019-10-0503:47:48PDT;1min15sagoProcess:6965ExecStart=/usr/sbin/named-unamed-c${NAMEDCONF}$OPTIONS(code=exited,status=0/SUCCESS)Process:6701ExecStartPre=/bin/bash-cif[!"$DISABLE_ZONE_CHECKING"=="yes"];then/usr/sbin/named-checkconf-z"$NAMEDCONF";elseecho"Checkingofzonefilesisdisabled";fi(code=exited,status=0/SUCCESS)MainPID:7054(named)Tasks:7CGroup:/system.slice/named.service└─7054/usr/sbin/named-unamed-c/etc/named.conf10月0503:47:48localhost.localdomainnamed[7054]:networkunreachableresolving...310月0503:47:48localhost.localdomainnamed[7054]:networkunreachableresolving...310月0503:47:48localhost.localdomainnamed[7054]:networkunreachableresolving...310月0503:47:48localhost.localdomainnamed[7054]:networkunreachableresolving...310月0503:47:48localhost.localdomainsystemd[1]:StartedBerkeleyInternetName10月0503:47:48localhost.localdomainnamed[7054]:networkunreachableresolving...310月0503:47:48localhost.localdomainnamed[7054]:networkunreachableresolving...310月0503:47:48localhost.localdomainnamed[7054]:managed-keys-zone:Key20326f...d10月0503:47:49localhost.localdomainnamed[7054]:resolverprimingquerycomplete10月0503:47:49localhost.localdomainnamed[7054]:listeningonIPv4interfacevi...3Hint:Somelineswereellipsized,use-ltoshowinfull.

顯示的結(jié)果可以看出named服務(wù)處于活動(dòng)狀態(tài)、運(yùn)行中。10.3.4DNS服務(wù)命令及用法

在Linux系統(tǒng)中DNS服務(wù)的命令是nslookup,它是用于查詢Internet域名服務(wù)器的程序。Nslookup有兩種模式:交互式和非交互式。交互模式允許用戶查詢名稱服務(wù)器以獲取有關(guān)各種主機(jī)和域的信息,或打印域中的主機(jī)列表。非交互模式用于僅打印主機(jī)或域的名稱和請(qǐng)求的信息。10.3.4.1nslookup命令

在以下情況下進(jìn)入交互模式:

1.沒有提供參數(shù)時(shí)(將使用默認(rèn)名稱服務(wù)器)

2.當(dāng)?shù)谝粋€(gè)參數(shù)是連字符(-),第二個(gè)參數(shù)是

名稱服務(wù)器的主機(jī)名或Internet地址。

此時(shí)出現(xiàn)“>”提示符,等待用戶輸入命令。

當(dāng)將要查找的主機(jī)的名稱或Internet地址作為第一個(gè)參數(shù)時(shí),將使用非交互模式。第二個(gè)參數(shù)指定域名服務(wù)器的主機(jī)名或地址。

命令用法:nslookup[-option][name|-][server]

本命令的選項(xiàng)較少,常用的有-query、-timeout、-version等。使用交互式的常用命令列表:表10-3交互式nslookup常用命令及說明

在實(shí)際應(yīng)用中更多地是使用非交互式。命令名稱命令說明host[server]使用當(dāng)前默認(rèn)服務(wù)器(如果指定)查找主機(jī)信息。如果主機(jī)是Internet地址,并且查詢類型是A或PTR,則返回主機(jī)名。如果host是一個(gè)名稱,并且沒有尾隨時(shí)間,則使用搜索列表來限定名稱。要查找不在當(dāng)前域中的主機(jī),請(qǐng)?jiān)诿Q后加上句點(diǎn)。srverdomain設(shè)置服務(wù)器,domain為服務(wù)器IPlserverdomain將默認(rèn)服務(wù)器更改為domain;lserver使用初始服務(wù)器查找有關(guān)域的信息,而server使用當(dāng)前默認(rèn)服務(wù)器。exit退出nslookup。setkeyword[=value]此命令用于更改影響查找的狀態(tài)信息。有效的關(guān)鍵字是:all顯示要設(shè)置的常用選項(xiàng)的當(dāng)前值。還顯示有關(guān)當(dāng)前默認(rèn)服務(wù)器和主機(jī)的信息。class=value設(shè)置類(IN、CH、HS和ANY)的值。默認(rèn)為IN(theInternetclass)domain=name設(shè)置搜索列表。port=value設(shè)置TCP/UDP域名服務(wù)器端口號(hào)。默認(rèn)端口號(hào)為53type=value設(shè)置信息查詢的類型,默認(rèn)為A(正向)。retry=number設(shè)置重試次數(shù)。timeout=number設(shè)置超時(shí)值。10.3.4.2參考示例參考示例1:在CentOS7下測試(正、反向)本章配置的DNS服務(wù)器。結(jié)果如圖10-9所示。圖10-9CentOS下測試DNS服務(wù)器參考示例2:在Windows7下測試(正、反向)本章配置的DNS服務(wù)器。結(jié)果如圖10-11所示。在windows操作系統(tǒng)下也有nslookup命令,其功能是一樣的,只是在交互式命令上有一些差別。圖10-11Windows7下測試DNS服務(wù)器

注意:在Windows下測試需要關(guān)閉防火墻,如果只是測試可以暫時(shí)關(guān)閉(參見Web服務(wù)器),如果是實(shí)際應(yīng)用要配置防火墻的規(guī)則。

參考示例3:

以交互式設(shè)置服務(wù)器。[root@localhost~]#nslookup>server35Defaultserver:35Address:35#53

參考示例4:

以交互式查詢要設(shè)置的常用選項(xiàng)的當(dāng)前值。[root@localhost~]#nslookup>setallDefaultserver:35Address:35#53

Setoptions:novc nodebug nod2search recursetimeout=0 retry=3 port=53 ndots=1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論