版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
Linux操作系統管理1第13章FTP服務器配置項目導入職業(yè)能力目標和要求2
掌握FTP服務的工作原理。學會配置vsftpd服務器。某學院組建了校園網,建設了學院網站,架設了Web服務器來為學院網站安家,但在網站上傳和更新時,需要用到文件上傳和下載功能,因此還要架設FTP服務器,為學院內部和互聯網用戶提供FTP等服務。本單元將實踐配置與管理FTP服務器。項目13
配置與管理FTP服務器主要內容13.1相關知識13.1.1FTP工作原理13.1.2匿名用戶13.2項目設計與準備13.3項目實施13.3.1安裝、啟動與停止vsftpd服務13.3.2認識vsftpd的配置文件13.3.3配置匿名用戶FTP實例13.3.4配置本地模式的常規(guī)FTP服務器案例13.3.5設置vsftp虛擬賬號3項目13
配置與管理FTP服務器主要內容13.4項目實錄13.5練習題13.6實踐習題13.7超級鏈接4513.1相關知識以HTTP為基礎的WWW服務功能雖然強大,但對于文件傳輸來說卻略顯不足。一種專門用于文件傳輸的FTP服務應運而生。
FTP服務就是文件傳輸服務,FTP的全稱是FileTransferProtocol,顧名思義,就是文件傳輸協議,具備更強的文件傳輸可靠性和更高的效率。
1.bind軟件包簡介BIND是一款實現DNS服務器的開放源碼軟件。FTP大大簡化了文件傳輸的復雜性,它能夠使文件通過網絡從一臺主機傳送到另外一臺計算機上卻不受計算機和操作系統類型的限制。無論是PC、服務器、大型機,還是IOS、Linux、Windows操作系統,只要雙方都支持協議FTP,就可以方便、可靠地進行文件的傳送。613.1.1FTP的工作原理
FTP服務的具體工作過程如下,如圖11-1所示。(1)客戶端向服務器發(fā)出連接請求,同時客戶端系統動態(tài)地打開一個大于1024的端口等候服務器連接(比如1031端口)。(2)若FTP服務器在端口21偵聽到該請求,則會在客戶端1031端口和服務器的21端口之間建立起一個FTP會話連接。(3)當需要傳輸數據時,FTP客戶端再動態(tài)地打開一個大于1024的端口(比如1032端口)連接到服務器的20端口,并在這兩個端口之間進行數據的傳輸。當數據傳輸完畢后,這兩個端口會自動關閉。(4)當FTP客戶端斷開與FTP服務器的連接時,客戶端上動態(tài)分配的端口將自動釋放。7
通過使用一個共同的用戶名anonymous,密碼不限的管理策略(一般使用用戶的郵箱作為密碼即可)讓任何用戶都可以很方便地從這些服務器上下載軟件。813.1.2匿名用戶913.2項目設計與準備主機名稱操作系統IP地址角色及其他DHCP服務器:server1CentOS7FTP服務器,VMnet1Linux客戶端:Client1CentOS70FTP客戶端,VMnet1Windows客戶端:Win7-1Windows70宿主機、FTP客戶端,直接在網卡VMnet1上設置IP地址為:0/24亦可1013.3項目實施13.3.1安裝、啟動與停止vsftpd服務1.安裝vsftpd服務[root@server1~]#rpm-qvsftpd[root@server1~]#mkdir/iso[root@server1~]#mount/dev/cdrom/iso[root@server1~]#yumcleanall //安裝前先清除緩存[root@server1~]#yuminstallvsftpd-y[root@server1~]#yuminstallftp-y //同時安裝ftp軟件包[root@server1~]#rpm-qa|grepvsftpd //檢查安裝組件是否成功1113.3項目實施13.3.1安裝、啟動與停止vsftpd服務2.vsftpd服務啟動、重啟、隨系統啟動、停止,開放防火墻,開放SELinux[root@server1~]#systemctlrestartvsftpd[root@server1~]#systemctlenablevsftpd[root@server1~]#firewall-cmd--permanent--add-service=ftp[root@server1~]#firewall-cmd--reload[root@server1~]#setsebool-Pftpd_full_access=on1213.3項目實施13.3.2認識vsftpd的配置文件1.主配置文件[root@server1~]#mv/etc/vsftpd/vsftpd.conf/etc/vsftpd/vsftpd.conf.bak[root@server1~]#grep-v"#"/etc/vsftpd/vsftpd.conf.bak>/etc/vsftpd/vsftpd.conf[root@server1~]#cat/etc/vsftpd/vsftpd.conf-n131.主配置文件1 anonymous_enable=YES2 local_enable=YES3 write_enable=YES4 local_umask=0225 dirmessage_enable=YES6 xferlog_enable=YES7 connect_from_port_20=YES8 xferlog_std_format=YES9 listen=NO10 listen_ipv6=YES11 12 pam_service_name=vsftpd13 userlist_enable=YES14 tcp_wrappers=YES14參數作用listen=[YES|NO]是否以獨立運行的方式監(jiān)聽服務listen_address=IP地址設置要監(jiān)聽的IP地址listen_port=21設置FTP服務的監(jiān)聽端口download_enable=[YES|NO]是否允許下載文件userlist_enable=[YES|NO]userlist_deny=[YES|NO]設置用戶列表為“允許”還是“禁止”操作max_clients=0最大客戶端連接數,0為不限制max_per_ip=0同一IP地址的最大連接數,0為不限制anonymous_enable=[YES|NO]是否允許匿名用戶訪問anon_upload_enable=[YES|NO]是否允許匿名用戶上傳文件anon_umask=022匿名用戶上傳文件的umask值anon_root=/var/ftp匿名用戶的FTP根目錄anon_mkdir_write_enable=[YES|NO]是否允許匿名用戶創(chuàng)建目錄anon_other_write_enable=[YES|NO]是否開放匿名用戶的其他寫入權限(包括重命名、刪除等操作權限)anon_max_rate=0匿名用戶的最大傳輸速率(字節(jié)/秒),0為不限制local_enable=[YES|NO]是否允許本地用戶登錄FTPlocal_umask=022本地用戶上傳文件的umask值local_root=/var/ftp本地用戶的FTP根目錄chroot_local_user=[YES|NO]是否將用戶權限禁錮在FTP目錄,以確保安全local_max_rate=0本地用戶最大傳輸速率(字節(jié)/秒),0為不限制1513.3項目實施13.3.2認識vsftpd的配置文件2./etc/pam.d/vsftpdvsftpd的PluggableAuthenticationModules(PAM)配置文件,主要用來加強vsftpd服務器的用戶認證。3./etc/vsftpd/ftpusers所有位于此文件內的用戶都不能訪問vsftpd服務。當然,為了安全起見,這個文件中默認已經包括了root、bin和daemon等系統賬號。1613.3項目實施13.3.2認識vsftpd的配置文件4./etc/vsftpd/user_list 當userlist_deny=NO時,僅允許文件列表中的用戶訪問FTP服務器。 當userlist_deny=YES時,這也是默認值,拒絕文件列表中的用戶訪問FTP服務器5./var/ftp文件夾vsftpd提供服務的文件集散地,它包括一個pub子目錄。在默認配置下,所有的目錄都是只讀的,不過只有root用戶有寫權限。1713.3.3配置匿名用戶FTP實例1.vsftpd的認證模式vsftpd允許用戶以三種認證模式登錄到FTP服務器上。匿名開放模式:是一種最不安全的認證模式,任何人都可以無需密碼驗證而直接登錄到FTP服務器。本地用戶模式:是通過Linux系統本地的賬戶密碼信息進行認證的模式,相較于匿名開放模式更安全,而且配置起來也很簡單。但是如果被黑客破解了賬戶的信息,就可以暢通無阻地登錄FTP服務器,從而完全控制整臺服務器。虛擬用戶模式:是這三種模式中最安全的一種認證模式,它需要為FTP服務單獨建立用戶數據庫文件,虛擬映射用來進行口令驗證的賬戶信息,而這些賬戶信息在服務器系統中實際上是不存在的,僅供FTP服務程序進行認證使用。這樣,即使黑客破解了賬戶信息也無法登錄服務器,從而有效降低了破壞范圍和影響。1813.3.3配置匿名用戶FTP實例2.匿名用戶登錄的參數說明參數作用anonymous_enable=YES允許匿名訪問模式anon_umask=022匿名用戶上傳文件的umask值anon_upload_enable=YES允許匿名用戶上傳文件anon_mkdir_write_enable=YES允許匿名用戶創(chuàng)建目錄anon_other_write_enable=YES允許匿名用戶修改目錄名稱或刪除目錄1913.3.3配置匿名用戶FTP實例3.配置匿名用戶登錄FTP服務器實例【例11-1】搭建一臺FTP服務器,允許匿名用戶上傳和下載文件,匿名用戶的根目錄設置為/var/ftp。①新建測試文件,編輯/etc/vsftpd/vsftpd.conf。[root@server1~]#touch/var/ftp/pub/sample.tar[root@server1~]#vim/etc/vsftpd/vsftpd.conf②在文后添加4行(語句前后一定不要帶空格,若有重復的語句請刪除或直接在其上更改?。篴nonymous_enable=YES #允許匿名用戶登錄anon_root=/var/ftp #設置匿名用戶的根目錄為/var/ftpanon_upload_enable=YES #允許匿名用戶上傳文件anon_mkdir_write_enable=YES #允許匿名用戶創(chuàng)建文件夾2013.3.3配置匿名用戶FTP實例3.配置匿名用戶登錄FTP服務器實例【例11-1】搭建一臺FTP服務器,允許匿名用戶上傳和下載文件,匿名用戶的根目錄設置為/var/ftp。③允許SELinux,讓防火墻放行ftp服務,重啟vsftpd服務。[root@server1~]#setenforce0[root@server1~]#firewall-cmd--permanent--add-service=ftp[root@server1~]#firewall-cmd--reload[root@server1~]#firewall-cmd--list-all[root@server1~]#systemctlrestartvsftpd2113.3.3配置匿名用戶FTP實例3.配置匿名用戶登錄FTP服務器實例【例11-1】搭建一臺FTP服務器,允許匿名用戶上傳和下載文件,匿名用戶的根目錄設置為/var/ftp。在Windows7客戶端的資源管理器中輸入,打開pub目錄,新建一個文件夾,結果出錯了。如圖11-3所示。2213.3.3配置匿名用戶FTP實例3.配置匿名用戶登錄FTP服務器實例【例11-1】搭建一臺FTP服務器,允許匿名用戶上傳和下載文件,匿名用戶的根目錄設置為/var/ftp。④設置本地系統權限,將屬主設為ftp,或者對pub目錄賦予其他用戶寫的權限。
[root@server1~]#ll-ld/var/ftp/pubdrwxr-xr-x.2rootroot6Mar232017/var/ftp/pub //其他用戶沒有寫入權限[root@server1~]#chownftp/var/ftp/pub //將屬主改為匿名用戶ftp,或者[root@server1~]#chmodo+w/var/ftp/pub //將屬主改為匿名用戶ftp[root@server1~]#ll-ld/var/ftp/pubdrwxr-xr-x.2ftproot6Mar232017/var/ftp/pub //已將屬主改為匿名用戶ftp[root@server1~]#systemctlrestartvsftpd2313.3.3配置匿名用戶FTP實例3.配置匿名用戶登錄FTP服務器實例【例11-1】搭建一臺FTP服務器,允許匿名用戶上傳和下載文件,匿名用戶的根目錄設置為/var/ftp。⑤在Windows7客戶端再次測試,在pub目錄下能夠建立新文件夾。提示:如果在Linux上測試,用戶名輸入:ftp,密碼處直接回車即可。2413.3.4配置本地模式的常規(guī)FTP服務器案例1.FTP服務器配置要求公司內部現在有一臺FTP服務器和Web服務器,FTP主要用于維護公司的網站內容,包括上傳文件、創(chuàng)建目錄、更新網頁等。公司現有兩個部門負責維護任務,兩者分別適用team1和team2賬號進行管理。先要求僅允許team1和team2賬號登錄FTP服務器,但不能登錄本地系統,并將這兩個賬號的根目錄限制為/web/www/html,不能進入該目錄以外的任何目錄。2513.3.4配置本地模式的常規(guī)FTP服務器案例2.需求分析將FTP服務器和Web服務器做在一起是企業(yè)經常采用的方法,這樣方便實現對網站的維護。為了增強安全性,首先需要使用僅允許本地用戶訪問,并禁止匿名用戶登錄。其次,使用chroot功能將team1和team2鎖定在/web/www/html目錄下。如果需要刪除文件,則還需要注意本地權限。2613.3.4配置本地模式的常規(guī)FTP服務器案例3.解決方案(1)建立維護網站內容的FTP賬號team1、team2和user1并禁止本地登錄,然后為其設置密碼。[root@server1~]#useradd-s/sbin/nologinteam1[root@server1~]#useradd-s/sbin/nologinteam2[root@server1~]#useradd-s/sbin/nologinuser1[root@server1~]#passwdteam1[root@server1~]#passwdteam2[root@server1~]#passwduser12713.3.4配置本地模式的常規(guī)FTP服務器案例3.解決方案(2)配置vsftpd.conf主配置文件并做相應修改(寫入配置文件時,注釋一定去掉,語句前后不要加空格,切記!另外,要把13.3.3的配置文件恢復到最初狀態(tài),免提實訓間互相影響。)[root@server1~]#vim/etc/vsftpd/vsftpd.confanonymous_enable=NO #禁止匿名用戶登錄local_enable=YES #允許本地用戶登錄local_root=/web/www/html #設置本地用戶的根目錄為/web/www/htmlchroot_local_user=NO #是否限制本地用戶,這也是默認值,可以省略chroot_list_enable=YES #激活chroot功能chroot_list_file=/etc/vsftpd/chroot_list #設置鎖定用戶在根目錄中的列表文件allow_writeable_chroot=YES #只要啟用chroot就一定加入這條:允許chroot限制!!否則出現連接錯誤。切記。2813.3.4配置本地模式的常規(guī)FTP服務器案例3.解決方案實現鎖定目錄有兩種實現方法。第一種是除列表內的用戶外,其他用戶都被限定在固定目錄內。即列表內用戶自由,列表外用戶受限制。(這時啟用chroot_local_user=YES)chroot_local_user=YESchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_listallow_writeable_chroot=YES2913.3.4配置本地模式的常規(guī)FTP服務器案例3.解決方案第二種是除列表內的用戶外,其他用戶都可自由轉換目錄。即列表內用戶受限制,列表外用戶自由(這時啟用chroot_local_user=NO)。為了安全,建議使用第一種。chroot_local_user=NOchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_listallow_writeable_chroot=YES3013.3.4配置本地模式的常規(guī)FTP服務器案例3.解決方案(3)建立/etc/vsftpd/chroot_list文件,添加team1和team2賬號。[root@server1~]#vim/etc/vsftpd/chroot_listteam1team23113.3.4配置本地模式的常規(guī)FTP服務器案例3.解決方案(4)防火墻放行和SELinux允許!重啟FTP服務。
[root@server1~]#firewall-cmd--permanent--add-service=ftp[root@server1~]#firewall-cmd--reload[root@server1~]#firewall-cmd--list-all[root@server1~]#setenforce0[root@server1~]#systemctlrestartvsftpd3213.3.4配置本地模式的常規(guī)FTP服務器案例3.解決方案(5)修改本地權限。[root@server1~]#mkdir/web/www/html-p[root@server1~]#touchtest.sample[root@server1~]#ll-d/web/www/html[root@server1~]#chmod-Ro+w/web/www/html //其他用戶可以寫入![root@server1~]#ll-d/web/www/html3313.3.4配置本地模式的常規(guī)FTP服務器案例3.解決方案(6)在Linux客戶端client1上先安裝ftp工具,然后測試。[root@client1~]#mount/dev/cdrom/iso[root@client1~]#yumcleanall[root@client1~]#yuminstallftp–y34①使用team1和team2用戶不能轉換目錄,但能建立新文件夾,顯示的目錄是“/”,其實是/web/www/html文件夾![root@client1~]#ftpConnectedto().220(vsFTPd3.0.2)Name(:root):team1 //鎖定用戶測試331Pleasespecifythepassword.Password:230Loginsuccessful.RemotesystemtypeisUNIX.Usingbinarymodetotransferfiles.ftp>pwd 257"/" //顯示是“/”,其實是/web/www/html,從列示的文件中就知道。35ftp>mkdirtestteam1257"/testteam1"createdftp>ls227EnteringPassiveMode(192,168,10,1,46,226).150Herecomesthedirectorylisting.-rw-r--r--1000Jul2101:25test.sampledrwxr-xr-x2100110016Jul2101:48testteam1226DirectorysendOK.ftp>cd/etc550Failedtochangedirectory. //不允許更改目錄ftp>exit221Goodbye.3613.3.4配置本地模式的常規(guī)FTP服務器案例②使用user1用戶,能自由轉換目錄,可以將/etc/passwd文件下載到主目錄,何其危險啊![root@client1~]#ftpConnectedto().220(vsFTPd3.0.2)Name(:root):user1 //列表外的用戶是自由的331Pleasespecifythepassword.Password:230Loginsuccessful.RemotesystemtypeisUNIX.Usingbinarymodetotransferfiles.ftp>pwd257"/web/www/html"ftp>mkdirtestuser1257"/web/www/html/testuser1"createdftp>cd/etc //成功轉換到/etc目錄250Directorysuccessfullychanged.37ftp>getpasswd //成功下載密碼文件passwd到/root,可以退出后查看local:passwdremote:passwd227EnteringPassiveMode(192,168,10,1,80,179).150OpeningBINARYmodedataconnectionforpasswd(2203bytes).226Transfercomplete.2203bytesreceivedin9e-05secs(24477.78Kbytes/sec)ftp>cd/web/www/html250Directorysuccessfullychanged.ftp>ls227EnteringPassiveMode(192,168,10,1,182,144).150Herecomesthedirectorylisting.-rw-r--r--1000Jul2101:25test.sampledrwxr-xr-x2100110016Jul2101:48testteam1drwxr-xr-x2100310036Jul2101:50testuser1226DirectorysendOK.3813.3.5設置vsftp虛擬賬號1.創(chuàng)建用戶數據庫(1)創(chuàng)建用戶文本文件。使用vim編輯器建立用戶文件vuser.txt,添加虛擬賬號user2和user3。如下所示。[root@server1~]#mkdir/vftp[root@server1~]#vim/vftp/vuser.txtuser212345678User3123456783913.3.5設置vsftp虛擬賬號1.創(chuàng)建用戶數據庫(2)生成數據庫。[root@server1~]#db_load-T-thash-f/vftp/vuser.txt/vftp/vuser.db[root@server1~]#ls/vftpvuser.dbvuser.txt4013.3.5設置vsftp虛擬賬號1.創(chuàng)建用戶數據庫(3)修改數據庫文件訪問權限。[root@server1~]#chmod700/vftp/vuser.db[root@server1~]#ll/vftp4113.3.5設置vsftp虛擬賬號2.配置PAM文件[root@server1~]#vim/etc/pam.d/vsftpd#PAM-1.0#session optional pam_keyinit.so force revoke#auth required pam_listfile.so item=user sense=deny#file=/etc/vsftpd/ftpusers onerr=succeed#auth required pam_shells.soauth required pam_userdb.so db=/vftp/vuseraccount required pam_userdb.so db=/vftp/vuser4213.3.5設置vsftp虛擬賬號3.創(chuàng)建虛擬賬戶對應系統用戶[root@server1~]#useradd-d/var/ftp/vuservuser [root@server1~]#chownvuser.vuser/var/ftp/vuser [root@server1~]#chmod555/var/ftp/vuser [root@server1~]#ls-ld/var/ftp/vuser dr-xr-xr-x.6vuservuser127Jul2114:28/var/ftp/vuser4313.3.5設置vsftp虛擬賬號4.修改/etc/vsftpd/vsftpd.confanonymous_enable=NO anon_upload_enable=NOanon_mkdir_write_enable=NOanon_other_write_enable=NOlocal_enable=YES chroot_local_user=YES allow_writeable_chroot=YESwrite_enable=NO guest_enable=YES guest_username=vuser listen=YES pam_servi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 化工企業(yè)反違章培訓課件
- 12月大類資產配置展望:權益大盤風格仍有機會債券保持短久期
- 飛機通信技術介紹
- 飛機知識課件
- 2026山東事業(yè)單位統考煙臺萊陽市招聘138人備考考試題庫及答案解析
- 中國通號2026年公開招聘(辦公室、戰(zhàn)略投資部)參考考試題庫及答案解析
- 2026 長沙市天心區(qū)明德啟南中學上學期物理、數學老師(初中)招聘備考考試試題及答案解析
- 2026廣西桂林市陽朔縣人民法院書記員招聘2人考試參考試題及答案解析
- 廉潔過節(jié)活動方案策劃(3篇)
- 關鍵設備檢修管理制度(3篇)
- 建筑室外亮化施工方案
- 引水隧洞洞挖專項施工方案
- 醫(yī)療器械生產企業(yè)變更控制程序
- 研究生學術交流論壇策劃
- 關于個人述責述廉存在問題及整改措施
- 靜脈穿刺血管選擇課件
- 非法營運執(zhí)法培訓課件
- 裝修鋼架租賃合同范本
- 天津2024生物高考試卷及答案
- 雙簧管樂器介紹課件
- 國開經濟學(本)1-14章練習試題及答案
評論
0/150
提交評論