共享服務-FTP基礎(一)

一入IT深似海·發表於2018-08-26

 

介紹:檔案傳輸協議FTP

兩種模式:伺服器角度

主動(PORT style):伺服器主動連線

命令(控制):客戶端:隨機port — 伺服器:tcp21

資料:客戶端:隨機port —伺服器:tcp20

被動(PASV style):客戶端主動連線

命令(控制):客戶端:隨機port — 伺服器:tcp21

資料:客戶端:隨機port —伺服器:隨機port

FTP軟體

FTP伺服器:

Wu-ftpd,Proftpd,Pureftpd,ServU,IIS

vsftpd:Very Secure FTP Daemon,CentOS預設FTP伺服器

高速,穩定,下載速度是WU-FTP的兩倍

ftp.redhat.com資料:單機最多可支援15000個併發

客戶端軟體:

ftp,lftp,lftpget,wget,curl

ftp -A ftpserver port -A主動模式 –p 被動模式

lftp –u username ftpserver

lftp username@ftpserver

lftpget ftp://ftpserver/pub/file

gftp: GUI centos5 最新版2.0.19 (11/30/2008)

filezilla,CuteFtp,FlashFXP,LeapFtp

IE ftp://username:password@ftpserver

FTP狀態碼

狀態碼:

1XX:資訊 125:資料連線開啟

2XX:成功類狀態 200:命令OK 230:登入成功

3XX:補充類 331:使用者名稱OK

4XX:客戶端錯誤 425:不能開啟資料連線

5XX:伺服器錯誤 530:不能登入

使用者認證

匿名使用者:ftp,anonymous,對應Linux使用者ftp

系統使用者:Linux使用者,使用者/etc/passwd,密碼/etc/shadow

虛擬使用者:特定服務的專用使用者,獨立的使用者/密碼檔案

nsswitch:network service switch名稱解析框架

pam:pluggable authentication module 使用者認證

/lib64/security /etc/pam.d/ /etc/pam.conf

vsftpd服務:

使用者認證配置檔案:/etc/pam.d/vsftpd

服務指令碼: /usr/lib/systemd/system/vsftpd.service

/etc/rc.d/init.d/vsftpd

配置檔案:/etc/vsftpd/vsftpd.conf

vsftpd服務配置

命令埠

listen_port=21

主動模式埠

connect_from_port_20=YES 主動模式埠為20

ftp_data_port=20 (預設) 指定主動模式的埠

被動模式埠範圍

linux 客戶端預設使用被動模式

windows 客戶端預設使用主動模式

pasv_min_port=6000 0為隨機分配

pasv_max_port=6010

使用當地時間

use_localtime=YES 使用當地時間(預設為NO,使用GMT)

匿名使用者:配置

anonymous_enable=YES 支援匿名使用者(預設)

no_anon_password=YES(預設NO) 匿名使用者略過口令檢查

anon_world_readable_only (預設YES)只能下載全部讀的檔案

anon_upload_enable=YES 匿名上傳,注意:檔案系統許可權

anon_mkdir_write_enable=YES 匿名建目錄

anon_umask=077 指定匿名上傳檔案的umask

anon_other_write_enable=YES 可刪除和修改上傳的檔案

指定上傳檔案的預設的所有者和許可權

chown_uploads=YES(預設NO)

chown_username=wang

chown_upload_mode=0644

Linux系統使用者:配置(備註:使用者根有寫許可權是不行的)

guest_enable=YES 所有系統使用者都對映成guest使用者

guest_username=ftp 配合上面選項才生效,指定guest使用者

local_enable=YES 是否允許linux使用者登入

write_enable=YES 允許linux使用者上傳檔案

local_umask=022 指定系統使用者上傳檔案的預設許可權

local_root=/ftproot guest使用者登入所在目錄

禁錮所有系統使用者在家目錄中

chroot_local_user=YES(預設NO,不禁錮)禁錮系統使用者

禁錮或不禁錮特定的系統使用者在家目錄中,與上面設定功能相反

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

當chroot_local_user=YES時,則chroot_list中使用者不禁錮

當chroot_local_user=NO時,則chroot_list中使用者禁錮

wu-ftp日誌:預設啟用

xferlog_enable=YES (預設) 啟用記錄上傳下載日誌

xferlog_std_format=YES (預設) 使用wu-ftp日誌格式

xferlog_file=/var/log/xferlog (預設)可自動生成

vsftpd日誌:預設不啟用

dual_log_enable=YES 使用vsftpd日誌格式,預設不啟用

vsftpd_log_file=/var/log/vsftpd.log(預設)可自動生成

登入提示資訊

ftpd_banner=“welcome to mage ftp server”

banner_file=/etc/vsftpd/ftpbanner.txt 優先上面項生效

目錄訪問提示資訊

dirmessage_enable=YES (預設)

message_file=.message(預設) 資訊存放在指定目錄下.message

相關文章