版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Chapter22簡易FTPServer架設--WuFTPChapter22簡易FTPServer架設--122.1原理FileTransferProtocol(FTP)進行Server端與Client端之間的檔案傳送的功能以TCP封包的模式進行Server與Client之間的連線,當連線建立之後,使用者可以在Client端連上Server端進行檔案的下載與上傳22.1原理FileTransferProtocol2FTP的功能不同等級的使用者身份,三種主要的身份realuserguestanonymous命令記錄與登錄檔記錄syslogddaemon進行資料的紀錄使用者下達過的命令與使用者傳輸資料的紀錄限制或解除使用者家目錄所在chroot(changeroot)FTP的功能不同等級的使用者身份,三種主要的身份3FTP正常情況下的連線主動模式(active)建立指令通道(port21)Clientrequest(SYN)ftp-commandport:21Serverresponse(SYN與ACK)ClientACK建立資料傳輸通道(port20)Clientrequest(SYN)ftp-commandport:21Serverrequest(SYN)ftp-dataport:20Clientresponse(ACK)FTP正常情況下的連線主動模式(active)4ActivemodeclientFTPserverport21(ftp-command)port20(ftp-data)port>1024port>1024ActivemodeclientFTPserverpor5在NAT或者防火牆後端的FTPClient連線問題
個人PC經過NAT主機連線FTPServer看到的IP是NAT主機的FTPServer主動由port20向NAT主機的>1024port要求建立連線(Error)在NAT或者防火牆後端的FTPClient連線問題6Passivemode建立指令通道(port21)Sameasactivemode建立資料傳輸通道(port20)Clientrequest(SYN)ftp-commandport:21告訴FTPServer使用PASV模式(passive)的方式來進行資料傳輸ServerresponseServer隨機選取一個大於1024的埠口,並經由命令通道告訴client端那個大於1024的埠口,開始等待client端的連線Clientrequest(SYN)Serverresponse(ACK)Passivemode建立指令通道(port21)7PassivemodeclientFTPserverport21(ftp-command)port20(ftp-data)port>1024port>1024NATserverPassivemodeclientFTPserverpo822.2套件安裝rpm-qa|grepftpncftp-3.0.3-6
ftp-0.17-12
wu-ftpd-2.6.1-20wu-ftpdFTP伺服器ftpftpclient端工具ncftp提供匿名登入的FTP網站的client端的連線FTP軟體22.2套件安裝rpm-qa|grepftp922.3Server端設定1.WuFTP的結構設定檔/etc/ftpaccess/etc/ftpusers檔案內的使用者都不能使用FTP的服務/etc/ftphosts允許或拒絕某部主機或者某位使用者是否能夠登入FTP主機/etc/xinetd.d/wu-ftpd啟動FTP的daemon設定檔案22.3Server端設定1.WuFTP的結構10WuFTP的結構執行檔ftpcount:計算『目前連線的人數ftpwho:顯示目前連線的使用者資訊ftprestart:重新啟動ftpftpshut:指定時候關閉FTPin.ftpd:WuFTP的daemon用戶端的使用執行檔ftpncftpWuFTP的結構執行檔112.最簡單的ftpaccess設定檔1.設定人物群組名稱
class<人物群組名稱><用戶身份1,用戶身份2,..><允許連線的來源>
class
all
real,guest,anonymous
* classallone real,guest,anonymous*.edu.tw
classalltwo guest,anonymous !*.!/16*2.設定FTP管理員的e-mail位址與主機名稱 emailroot@localhost
hostname
2.最簡單的ftpaccess設定檔1.設定人物群組12ftpaccess設定檔(Cont.)3.允許同一次連線當中,錯誤登入的次數 loginfails54.向使用者顯示README檔案的內容訊息 <readme><README*><動作> readme
README*
login
readme
README*
cwd=*Login:登入cwd=*:變換目錄5.將檔案的內容直接顯示在螢幕上面 message/welcome.msg
login
message.message
cwd=*ftpaccess設定檔(Cont.)3.允許同一次連13ftpaccess設定檔(Cont.)6.是否提供使用者線上立即執行的指令
<指令名稱><是否允許/yes/no><針對的對象是誰>
compress yes
all
tar
yes
all
chmod
no
guest,anonymous
delete
no
anonymous
overwrite
no
anonymous
rename
no
anonymous
umask
no
allftpaccess設定檔(Cont.)6.是否提供使用14ftpaccess設定檔(Cont.)7.將使用者執行的部分指令歷程記錄到/var/log/xferlog
<log><欲登錄的項目><記錄的使用者身份><何種動作> logtransfersanonymous,guest,realinbound,outboundftpaccess設定檔(Cont.)7.將使用者執行15ftpaccess設定檔(Cont.)9.匿名者的密碼驗證 <passwd-check><no|trivial|rfc822><動作>no :不需要密碼確認trivial :密碼當中必須含有@這個e-mail的字元rfc822:密碼必須符合frc822的規範動作warn:使用者輸入錯誤密碼時僅顯示警告訊息,仍允許其登入enforce:使用者輸入錯誤密碼,顯示警告訊息並中斷連線喔passwd-checkrfc822warn<deny-email>deny-emailIE?0User@deny-emailmozilla@ftpaccess設定檔(Cont.)9.匿名者的密碼16ftpaccess設定檔(Cont.)10.設定允許與不許登入FTP伺服器的使用者與群組
deny-uid%-99%65534-
deny-gid%-99%65534-
allow-uidftp
allow-gidftp deny-uidtestingtestqq deny-uid100-1000
ftpaccess設定檔(Cont.)10.設定允許與173.Superdaemon管理FTP/etc/xinetd.d/wu-ftpd serviceftp
{
disable=no
……}/etc/rc.d/init.d/xinetdrestartnetstat-tl
ftplocalhost
3.Superdaemon管理FTP/etc/xin184.歡迎畫面message/welcome.msg
login/welcome.msg WelcometomyFTPsite.
Nowisthetime==>%T
Thehostnameis%L
Youare%Uandfrom%R
Thereare%Npersoninmysite,now.
Ifyouhaveanyproblempleasecallme
%E
4.歡迎畫面message/welcome.msg
19變數%T本地端主機時間格式為FriMar2111:28:502003%C使用者目前所在的目錄%R遠端主機的IP或hostname%L本地端主機的名稱或IP%E系統管理員的email%U使用者的登入帳號名稱%MFTP主機所能允許的使用者最大連線數量%NFTP主機目前已經連線的使用者數量變數%T本地端主機時間205.限制最大線上人數etc/ftpaccess <limit><群組名稱><最大連線數><時間><顯示檔案>
limit all 20 Any/etc/ftpmaxnumber limit guest 10 Any/etc/ftpmaxnumber limit anonymous5
Any0800-2000/etc/ftpmaxnumber/etc/ftpmaxnumber 這裡已經太多人啦!請您等一下再進入!^_^5.限制最大線上人數etc/ftpaccess216.限制與取消使用者的家目錄Forrealusers/etc/ftpaccessrestricted-uid*restricted-uid200-400testtestingunrestricted-uidtesttesting6.限制與取消使用者的家目錄Forrealusers227.時間相關的設定項目(/etc/ftpaccess)timeoutaccept120FTPdaemon等待PASV的連線時間(client回應)timeoutconnect120等待client端回應的ACKtimeoutdata2400FTP可以讓我們下載或上傳一個檔案的最多時間timeoutidle
timeoutmaxidle1800多久沒有動作會被踢掉limit-timeanonymous30
limit-timeguest
100一次連線內,多久會被強制斷線7.時間相關的設定項目(/etc/ftpaccess)ti238.流量與上傳下載的限制項目
(/etc/ftpaccess)整體檔案數目與檔案容量的限額<file-limit><in|out|total><數目或bytes數><身份群組>file-limit out 32 alltwodata-limit in
10240 alltwo限制流量的方法 <throughput><根目錄><次目錄><檔名><bytes/s><倍數><位址>
throughput/var/ftp**10240-*
throughput/home/test/public_html*51200-*
throughput/home/test/realdown*oo-*.8.流量與上傳下載的限制項目
(/etc/ftpacces2410.anonymous的根目錄與建立可上傳目錄vi/etc/ftpaccessanonymous-root/var/ftpupload<家目錄><次目錄><yes|no><檔案所屬人><群組><權限><目錄>
upload/home/ftp/public/upload
yesftpsys0666
upload/home/ftp/public/upfilesyesftpsys0666nodirs10.anonymous的根目錄與建立可上傳目錄vi2511.針對人物的限制設定real,guest,anonymous/etc/ftpaccess
nice<數值><使用者群組或身份>
defumask<數值><使用者群組或身份>
nice10anonymous
nice-5real
defumask022real
defumask002anonymous
11.針對人物的限制設定real,guest,anon2612.拒絕與開放某些使用者的登入/etc/ftpaccess<deny><位址或主機名稱><回覆給使用者訊息的文件>
deny00
/etc/ftpdeny.msg
deny*.
/etc/ftpdeny.msg<deny-uid><帳號、UID或範圍>
deny-uid%-499%65000-
deny-gid%-499%65000-
allow-uidftp
allow-gidftp12.拒絕與開放某些使用者的登入/etc/ftpacces27使用額外檔案來抵擋:/etc/ftphosts<deny><使用者帳號><不許連線的IP或主機名稱><allow><使用者帳號><不許連線的IP或主機名稱>
denytest/24
allowtesting:
denytest2
0allowtest2*使用額外檔案來抵擋:/etc/ftphosts<deny>2814.建立passiveport/etc/ftpaccess<passiveports><CIDR位址><最小port><最大port><pasv-allow><人員身份><位址>passiveports/06550165505pasv-allowall*
14.建立passiveport/etc/ftpacce29Example三個群組real,guest,anonymousreal僅允許來自/16網域guest,anonymous允許來自所有網域,但不允許來自/16網域允許使用passiveportsportnumber為65501-65510小於499以及大於65000的UID與GID都被拒絕登入Example三個群組30Example最大線上人數限制為30人guest最多10人,anonymous最多為5人實體用戶mysiteuser被限制僅能在其家目錄當中工作,無法離開其家目錄anonymous登入者家目錄:/var/ftp限制anonymous一次連線最久10分鐘最多僅能下載20個文件,以及10MB的資料量上傳僅允許上傳到/var/ftp/upload預設檔案擁有者為ftp,群組是sysExample最大線上人數限制為30人311.使用者的帳號1.使用者的帳號322./etc/ftpaccess1.
針對Server的設定項目針對群組的設定項目
class
all
real,guest,anonymous
/16
class
allreal
real
/16
class
allguest
guest
!/16
*
class
allanonymous
anonymous
!/16
*其他主機相關的設定項目 email
vbird@
hostname
shutdown
/etc/shutmsg
loginfails
3
log
transfers
anonymous,guest,real
inbound,outbound
passwd-check
rfc822
warn2./etc/ftpaccess1.
針對Serve33針對Server的設定項目訊息管理
readme
README*
login
readme
README*
cwd=*
message
/welcome.msg
login
message
.message
cwd=*指令管理
compress yes
all
tar
yes
all
chmod
no
guest,anonymous
delete
no
anonymous
overwrite
no
anonymous
rename
no
anonymous針對Server的設定項目訊息管理
readme
34針對Server的設定項目人物登入管理
deny-uid
%-499
%65000-
deny-gid
%-499
%65000-
allow-gid
myftpusers時間相關的設定值
timeoutdata
2400
timeoutidle
1800
timeoutmaxidle 1800主機最大連線人數設定
limit
all
30
Any
/etc/ftpmaxnumber被動的port設定
passiveports
/0
65501
65510針對Server的設定項目人物登入管理
deny-ui35針對實體,guest用戶的設定針對實體,guest用戶的設定36針對guest用戶的設定針對guest用戶的設定37針對anonymous用戶的設定4.
針對anonymous用戶的設定 limitallanonymous5Any/etc/ftpmaxnumber
anonymous-root
/var/ftp limit-time
anonymous
10 file-limit
out
20
allanonymous data-limit out
10000000
allanonymous upload /var/ftp/upload yesftpsys0666針對anonymous用戶的設定4.
針對anony38建立可上傳目錄與使用者家目錄建立可上傳目錄與使用者家目錄39端之间的档案传送的功能40演讲完毕,谢谢观看!演讲完毕,谢谢观看!41Chapter22簡易FTPServer架設--WuFTPChapter22簡易FTPServer架設--4222.1原理FileTransferProtocol(FTP)進行Server端與Client端之間的檔案傳送的功能以TCP封包的模式進行Server與Client之間的連線,當連線建立之後,使用者可以在Client端連上Server端進行檔案的下載與上傳22.1原理FileTransferProtocol43FTP的功能不同等級的使用者身份,三種主要的身份realuserguestanonymous命令記錄與登錄檔記錄syslogddaemon進行資料的紀錄使用者下達過的命令與使用者傳輸資料的紀錄限制或解除使用者家目錄所在chroot(changeroot)FTP的功能不同等級的使用者身份,三種主要的身份44FTP正常情況下的連線主動模式(active)建立指令通道(port21)Clientrequest(SYN)ftp-commandport:21Serverresponse(SYN與ACK)ClientACK建立資料傳輸通道(port20)Clientrequest(SYN)ftp-commandport:21Serverrequest(SYN)ftp-dataport:20Clientresponse(ACK)FTP正常情況下的連線主動模式(active)45ActivemodeclientFTPserverport21(ftp-command)port20(ftp-data)port>1024port>1024ActivemodeclientFTPserverpor46在NAT或者防火牆後端的FTPClient連線問題
個人PC經過NAT主機連線FTPServer看到的IP是NAT主機的FTPServer主動由port20向NAT主機的>1024port要求建立連線(Error)在NAT或者防火牆後端的FTPClient連線問題47Passivemode建立指令通道(port21)Sameasactivemode建立資料傳輸通道(port20)Clientrequest(SYN)ftp-commandport:21告訴FTPServer使用PASV模式(passive)的方式來進行資料傳輸ServerresponseServer隨機選取一個大於1024的埠口,並經由命令通道告訴client端那個大於1024的埠口,開始等待client端的連線Clientrequest(SYN)Serverresponse(ACK)Passivemode建立指令通道(port21)48PassivemodeclientFTPserverport21(ftp-command)port20(ftp-data)port>1024port>1024NATserverPassivemodeclientFTPserverpo4922.2套件安裝rpm-qa|grepftpncftp-3.0.3-6
ftp-0.17-12
wu-ftpd-2.6.1-20wu-ftpdFTP伺服器ftpftpclient端工具ncftp提供匿名登入的FTP網站的client端的連線FTP軟體22.2套件安裝rpm-qa|grepftp5022.3Server端設定1.WuFTP的結構設定檔/etc/ftpaccess/etc/ftpusers檔案內的使用者都不能使用FTP的服務/etc/ftphosts允許或拒絕某部主機或者某位使用者是否能夠登入FTP主機/etc/xinetd.d/wu-ftpd啟動FTP的daemon設定檔案22.3Server端設定1.WuFTP的結構51WuFTP的結構執行檔ftpcount:計算『目前連線的人數ftpwho:顯示目前連線的使用者資訊ftprestart:重新啟動ftpftpshut:指定時候關閉FTPin.ftpd:WuFTP的daemon用戶端的使用執行檔ftpncftpWuFTP的結構執行檔522.最簡單的ftpaccess設定檔1.設定人物群組名稱
class<人物群組名稱><用戶身份1,用戶身份2,..><允許連線的來源>
class
all
real,guest,anonymous
* classallone real,guest,anonymous*.edu.tw
classalltwo guest,anonymous !*.!/16*2.設定FTP管理員的e-mail位址與主機名稱 emailroot@localhost
hostname
2.最簡單的ftpaccess設定檔1.設定人物群組53ftpaccess設定檔(Cont.)3.允許同一次連線當中,錯誤登入的次數 loginfails54.向使用者顯示README檔案的內容訊息 <readme><README*><動作> readme
README*
login
readme
README*
cwd=*Login:登入cwd=*:變換目錄5.將檔案的內容直接顯示在螢幕上面 message/welcome.msg
login
message.message
cwd=*ftpaccess設定檔(Cont.)3.允許同一次連54ftpaccess設定檔(Cont.)6.是否提供使用者線上立即執行的指令
<指令名稱><是否允許/yes/no><針對的對象是誰>
compress yes
all
tar
yes
all
chmod
no
guest,anonymous
delete
no
anonymous
overwrite
no
anonymous
rename
no
anonymous
umask
no
allftpaccess設定檔(Cont.)6.是否提供使用55ftpaccess設定檔(Cont.)7.將使用者執行的部分指令歷程記錄到/var/log/xferlog
<log><欲登錄的項目><記錄的使用者身份><何種動作> logtransfersanonymous,guest,realinbound,outboundftpaccess設定檔(Cont.)7.將使用者執行56ftpaccess設定檔(Cont.)9.匿名者的密碼驗證 <passwd-check><no|trivial|rfc822><動作>no :不需要密碼確認trivial :密碼當中必須含有@這個e-mail的字元rfc822:密碼必須符合frc822的規範動作warn:使用者輸入錯誤密碼時僅顯示警告訊息,仍允許其登入enforce:使用者輸入錯誤密碼,顯示警告訊息並中斷連線喔passwd-checkrfc822warn<deny-email>deny-emailIE?0User@deny-emailmozilla@ftpaccess設定檔(Cont.)9.匿名者的密碼57ftpaccess設定檔(Cont.)10.設定允許與不許登入FTP伺服器的使用者與群組
deny-uid%-99%65534-
deny-gid%-99%65534-
allow-uidftp
allow-gidftp deny-uidtestingtestqq deny-uid100-1000
ftpaccess設定檔(Cont.)10.設定允許與583.Superdaemon管理FTP/etc/xinetd.d/wu-ftpd serviceftp
{
disable=no
……}/etc/rc.d/init.d/xinetdrestartnetstat-tl
ftplocalhost
3.Superdaemon管理FTP/etc/xin594.歡迎畫面message/welcome.msg
login/welcome.msg WelcometomyFTPsite.
Nowisthetime==>%T
Thehostnameis%L
Youare%Uandfrom%R
Thereare%Npersoninmysite,now.
Ifyouhaveanyproblempleasecallme
%E
4.歡迎畫面message/welcome.msg
60變數%T本地端主機時間格式為FriMar2111:28:502003%C使用者目前所在的目錄%R遠端主機的IP或hostname%L本地端主機的名稱或IP%E系統管理員的email%U使用者的登入帳號名稱%MFTP主機所能允許的使用者最大連線數量%NFTP主機目前已經連線的使用者數量變數%T本地端主機時間615.限制最大線上人數etc/ftpaccess <limit><群組名稱><最大連線數><時間><顯示檔案>
limit all 20 Any/etc/ftpmaxnumber limit guest 10 Any/etc/ftpmaxnumber limit anonymous5
Any0800-2000/etc/ftpmaxnumber/etc/ftpmaxnumber 這裡已經太多人啦!請您等一下再進入!^_^5.限制最大線上人數etc/ftpaccess626.限制與取消使用者的家目錄Forrealusers/etc/ftpaccessrestricted-uid*restricted-uid200-400testtestingunrestricted-uidtesttesting6.限制與取消使用者的家目錄Forrealusers637.時間相關的設定項目(/etc/ftpaccess)timeoutaccept120FTPdaemon等待PASV的連線時間(client回應)timeoutconnect120等待client端回應的ACKtimeoutdata2400FTP可以讓我們下載或上傳一個檔案的最多時間timeoutidle
timeoutmaxidle1800多久沒有動作會被踢掉limit-timeanonymous30
limit-timeguest
100一次連線內,多久會被強制斷線7.時間相關的設定項目(/etc/ftpaccess)ti648.流量與上傳下載的限制項目
(/etc/ftpaccess)整體檔案數目與檔案容量的限額<file-limit><in|out|total><數目或bytes數><身份群組>file-limit out 32 alltwodata-limit in
10240 alltwo限制流量的方法 <throughput><根目錄><次目錄><檔名><bytes/s><倍數><位址>
throughput/var/ftp**10240-*
throughput/home/test/public_html*51200-*
throughput/home/test/realdown*oo-*.8.流量與上傳下載的限制項目
(/etc/ftpacces6510.anonymous的根目錄與建立可上傳目錄vi/etc/ftpaccessanonymous-root/var/ftpupload<家目錄><次目錄><yes|no><檔案所屬人><群組><權限><目錄>
upload/home/ftp/public/upload
yesftpsys0666
upload/home/ftp/public/upfilesyesftpsys0666nodirs10.anonymous的根目錄與建立可上傳目錄vi6611.針對人物的限制設定real,guest,anonymous/etc/ftpaccess
nice<數值><使用者群組或身份>
defumask<數值><使用者群組或身份>
nice10anonymous
nice-5real
defumask022real
defumask002anonymous
11.針對人物的限制設定real,guest,anon6712.拒絕與開放某些使用者的登入/etc/ftpaccess<deny><位址或主機名稱><回覆給使用者訊息的文件>
deny00
/etc/ftpdeny.msg
deny*.
/etc/ftpdeny.msg<deny-uid><帳號、UID或範圍>
deny-uid%-499%65000-
deny-gid%-499%65000-
allow-uidftp
allow-gidftp12.拒絕與開放某些使用者的登入/etc/ftpacces68使用額外檔案來抵擋:/etc/ftphosts<deny><使用者帳號><不許連線的IP或主機名稱><allow><使用者帳號><不許連線的IP或主機名稱>
denytest/24
allowtesting:
denytest2
0allowtest2*使用額外檔案來抵擋:/etc/ftphosts<deny>6914.建立passiveport/etc/ftpaccess<passiveports><CIDR位址><最小port><最大port><pasv-allow><人員身份><位址>passiveports/06550165505pasv-allowall*
14.建立passiveport/etc/ftpacce70Example三個群組real,guest,anonymousreal僅允許來自/16網域guest,anonymous允許來自所有網域,但不允許來自/16網域允許使用passiveportsportnumber為65501-65510小於499以及大於65000的UID與GID都被拒絕登入Example三個群組71Example最大線上人數限制為30人guest最多10人,anonymous最多為5人實體用戶mysiteuser被限制僅能在其家目錄當中工作,無法離開其家目錄anonymous登入者家目錄:/var/ftp限制anonymous一次連線最久10分鐘最多僅能下載20個文件,以及10MB的資料量上傳僅允許上傳到/var/ftp/upload預設檔案擁有者為ftp,群組是sysExample最大線上人數限制為30人721.使用者的帳號1.使用者的帳號732./etc/ftpaccess1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村土地整治挖掘机施工协议
- 社会福利彩钢板安装合同样本
- 学校药品器材安全警示标识
- 实验室事故报告流程
- 电子产品生产资产管理指南
- 2024年艺人演艺事业发展规划3篇
- 油气开采挖机设备租赁合同
- 高铁工程预应力施工协议
- 轨道车物料成本优化
- 铁路建设临时用电服务合同
- 2024年四川省自然资源置业集团招聘笔试冲刺题(带答案解析)
- 幼儿园小班语言课件:《冬天到了》
- GB/T 26527-2024有机硅消泡剂
- 医院内急诊重症快速反应小组建设专家共识1
- 形象与礼仪智慧树知到期末考试答案2024年
- 化工建设综合项目审批作业流程图
- 2023-2024学年度九上圆与无刻度直尺作图专题研究(刘培松)
- 2023年度四川公需科目:数字经济与驱动发展
- 颈椎病的分型和治课件
- 汽车制造业的柔性生产与敏捷制造
- 绿化养护工作日记录表
评论
0/150
提交评论