日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

FTP文件共传输服务

發布時間:2023/11/29 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FTP文件共传输服务 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

FTP文件共傳輸服務

一,vsftpd服務基礎

1),FTP服務概述

? ? ? ? FTPFile Transfer ?Protocol,文件傳輸協議)是典型的C/S結構的應用層協議,需要由服務端軟件、客戶端軟件共同實現文件傳達輸功能。

1,FTP連接及傳輸模式

#FTP服務器默認使用TCP協議的“2021端口”與客戶端進行通信

#20端口用于建立數據連接,并傳輸文件數據

#21端口用于建立控制連接,并傳輸FTP控制命令

【模式】

#主動模式:服務器主動發起數據連接,首先由客戶端向服務端的21端口建立FTP

控制連接,當需要傳輸數據時,客戶端以ROPT命令告知服務器“我打開了某

個端口,你過來連接我“,于是,服務器從20端口向客戶端發送請求并建立

數據連接。

#被動模式:服務器被動等待數據連接,如果客戶機所在網絡的防火墻禁止主動模

式連接,通常會使用被動模式,客戶端向服務器的該端口(非20)發送請求

并建立數據連接。

【端口】

隨機端口 > 1024 ? ? ? ? ? ? ?周知端口 <= 1024

2,FTP用戶類型

#匿名用戶:ftpanonymous,空密碼,一般用于提供公共文件的下載。

#本地用戶:本機的系統用戶。

#虛擬用戶:不是直接使用系統用戶,而是位于獨立數據文件中的FTP用戶賬號,通

過使用虛擬用戶,將FTP賬戶與Linux系統賬戶的關聯性降至最低,可以為系

統提供更好的安全。

3,FTP服務器軟件的分類

#windowsiis ? ? ? ? ? ? ? ? ?serv-u

#Linuxproftpd pureftpd ?vsftpd

〖vsftpd〗

a)該軟件針對安全特性方面做了大量的設計

b)Vsftpd在速度和穩定性方面的表現也相當突出

c)Vsftpd可以支持15000個用戶并發連接

d)Vsftpd:“very secure ?FTP ?daemon

4,FTP客戶端工具的種類

#windowscuteFTP FlashFxp ?LeapFTP ?Filezilla

#Linuxgftp kuftp

2),vsftpd的配置

? ? ? ? #主程序:/usr/sbin/vsftpd

? ? ? ? #配置文件:/etc/vsftpd

? ? ? ? #腳本文件:/etc/init.d/vsftpd

1,用戶列表文件“ftpusersuser_list

#ftpusers:黑名單文件,此文件中列出的用戶將禁止登錄到vsftpd服務

#user_list:黑白名單文件,一般用作白名單。此文件中包含的用戶可能被禁止登錄,

也可能被允許登錄,具體取決于主配置文件vsftpd.conf中的設置

? ? ? ? ? userlist_enable=yesuser_list列表文件才生效

? ? ? ? ? userlist_deny=yes,為黑白名單,禁止此列表中的用戶登錄

? ? ? ? ? userlist_deny=no,為白名單,允許此列表中的用戶登錄

2,主配置文件“vsftpd.conf

格式:配置項=參數


【vsftpd.conf常見配置項及含義說明】

【匿名用戶/適用于虛擬用戶】

anonymous_enable=yes /是否允許匿名訪問

anon_umask=022 /設置匿名用戶所上傳文件的默認權限掩碼值,采用反碼方式表示

anon_root=/var/ftp ? ?/設置匿名用戶的FTP根目錄(缺省為/var/ftp)

anon_upload_enable=yes ? /是否允許匿名用戶上傳文件

anon_mkdir_write_enable=yes ? ?/是否允許匿名用戶有創建目錄的寫入權限

anon_other_write_enable=yes ?/是否允許匿名用戶有其他寫入權限“改名,刪除”

anon_max_rate=0 ?/限制匿名用戶的最大傳輸速率(0為無限制),單位為字節/秒

【本地用戶】

? ?local_enable=yes ?/是否允許本地系統用戶訪問

? ?local_umask=022 ?/設置本地用戶所上傳文件的默認權限

? ?local_root=/var/ftp ? ?/設置本地用戶的FTP根目錄,適用于虛擬用戶

? ?local_local_user=yes ?/是否將FTP本地用記禁錮在宿主目錄中

? ?local_max_rate=0 ?/限制本地用戶的最大傳輸率(0為無限制)

【全局配置】

? ?userlist_enable=yes ?/是否啟用user_list用戶列表文件,啟用黑白名單

? ?userlist_deny=yes ?/是否禁用user_list列表文件中的用戶賬號,yes為黑

? ?max_clients=0 ?/是否允許多個客戶端同時連接(0為無限制)

max_per_ip=0 ?/對來自同一個IP地址的客戶端,最多允許多少個并發連接(0為元限制),控制多進程下載,如“迅雷”

connect_from_port_20=yes /允許服務器主動模式(從20端口建立數據連接)

pasv_enable=yes ?/允許被動模式連接

pasv_max_port=24600 ?/設置用于被動模式的服務器最大端口號

pasv_min_port=24500 ?/設置用于被動模式的服務器最小端口號

pam_service_name=vsftpd ?/設置用于用戶認證的PAM文件位置(/dev/pam.d/目錄中對應的文件名)

listen=yes ?/是否以獨立運行的方式監聽服務

listen_address=0.0.0.0 ?/設置監聽FTP服務的IP地址

listen_port=21 ?/設置監聽FTP服務的端口號

write_enable=yes ?/啟用任何形式的寫入權限(如上傳、刪除文件等)要開啟它

download_enable=yes ?/是否允許下載文件(no為僅限于瀏覽、上傳)

dirmessage_enable=yes ?/用戶切換進入目錄時顯示.message文件

xferlog_enable=yes ?/啟用xferlog日志,默認記錄到/var/log/xferlog

xferlog_std_format=yes ?/啟用標準的xferlog日志格式。如禁用,將使用vsftpd自己的日志格式

二,基于系統用戶的FTP服務

1),匿名訪問的FTP服務

1,準備匿名FTP訪問的目錄

? ? ? ? #FTP匿名用戶對應的系統用戶為ftp

? ? ? ? #宿主目錄:/var/ftp

2,開放匿名用戶配置,并啟動vsftpd服務

#設置主配置文件:vim /etc/vsftpd/vsftpd.conf

#開啟服務:service vsftpd ?restart

3,測試匿名FTP服務器

ftp ?192.168.1.1


【登錄FTP后,對客戶端操作方法】


Linux

Windows

顯示當前路徑

!pwd

!cd

改變路徑

lcd

lcd

查看目錄內容

!ls

!dir


2),用戶驗證的FTP服務

1,基本的本地用戶驗證

·ftp://用戶名@192.168.1.1

·ftp://用戶名:密碼@192.168.1.1

2,使用user_list用戶列表文件

·編輯“vim /etc/vsftpd/user_list”

添加本地用戶

·編輯 vim ?/etc/vsftpd/vsftpd.conf

? ? ? ? ? userlist_enable=yes ? ? ?啟用此項

? ? ? ? ? userlist_deny=no ? ? 啟用白名單

·重啟服務:service vsftpd ?restart

3),vsftpd服務的其他常用配置

1,修改vsftpd服務的監聽地址、端口

查看vsftpd服務的監聽情況:netstat ?-anpt | ?grep ?“vsftpd”

2,允許使用FTP服務器的被動模式

3,限制FTP連接的并發數、傳輸速度

三,基于虛擬用戶的FTP服務

1),建立虛擬用戶的賬號數據庫

準備工作:rpm ?-ivh ?db4-utils-..rpm ? ? ? ? ? ? ? ? ? ? ? /安裝此軟件

1,創建文件格式的用戶名、密碼列表

vim /etc/vsftpd/vusers.list ? ? ? ? ? ? ? ? ? /vusers.list文件名,后綴名自定義

用戶名奇數行

密碼偶數行

2,創建Berkeley DB格式的數據庫文件源文件目標文件

a)先進入/etc/vsftpd/目錄:cd ?/etc/vsftpd

b)創建轉換:db_load ?-T -t ?hash ?-f ?vusers.listvusers.db

c)查看轉換后的文件類型:flie ?vusers.db

d)為提高虛擬用戶賬號文件的安全性,設置文件權限

chmod ?600 /etc/vsftpd/vusers.*

3,添加虛擬用戶的映射賬號、創建FTP根目錄

useradd ?-d /var/ftproot ?-s ?/sbin/nologin virtual ?

chmod ?755 ?/var/ftproot ? ? ? ? ? ? ? ? ? ftproot這個目錄會自動創建)

2),為vsftpd服務添加虛擬用戶支持

1,為虛擬用戶建立PAM認證文件

位于:/etc/pam.d/vsftpd

vim ?/etc/pam.d/vsftpd.vuvsftpd.vu文件名可自定義)

? ? ? ? ? ? ? ? ? auth ? ? ? ? ? ? required ?pam_userdb.so ?db=/etc/vsftpd/vusers

? ? ? ? ? ? ? ? ? account ?required pam_userdb.so db=/etc/vsftpd/vusers

2,修改vsftpd配置,添加虛擬用戶支持

vim /etc/vsftpd/vsftpd.conf

? ? ? ? ? ? ? ? ? ……//省略部分內容

? ? ? ? ? ? ? ? ? local_enable=yes ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?/需要映射本地用戶、所以啟用此項

? ? ? ? ? ? ? ? ? write_enable=yes ? ? ? ? ? ? ? ? ? ? ? ? ? ?/啟用上傳寫入支持

? ? ? ? ? ? ? ? ? anon_umask=022 ? ? ? ? ? ? ? ? ? ? ? ? ? ? /指定上傳權限掩碼


? ? ? ? ? ? ? ? ? guest_enable=yes ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? /啟用用戶映射功能

? ? ? ? ? ? ? ? ? guest_username=virtual ? ? ? ? ? ? ? /指定映射的系統用戶名稱

? ? ? ? ? ? ? ? ? pam_service_name=vsftpd.vu ? /指定新的PAM認證文件

3,為不同的虛擬用戶建立獨立的配置文件

a)vim ?/etc/vsftpd/vsftpd.conf

……//省略部分內容

user_config_dir=/etc/vsftpd/vusers_dir ? ? ? ? ? ? ? ? ? ? ? (vusers_dir目錄名自定義)

b)創建用戶配置文件夾

mkdir ?/etc/vsftpd/vusers_dir

c)進入此文件夾,為用戶建立獨立的配置文件

cd ?/etc/vsftpd/vusers_dir

vim ?用戶名

? ? ? ? ? anon_upload_enable=yes ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? /上傳權限

? ? ? ? ? anon_mkdir_write_enable=yes ? ? ? ? ? ? ? ? ? ?/創建、定入權限

? ? ? ? ? anon_other_write_enable=yes ? ? ? ? ? ? ? ? ? ?/修改權限

d)重新加載配置

service vsftpd ?reload


轉載于:https://blog.51cto.com/haigou1995/1331505

總結

以上是生活随笔為你收集整理的FTP文件共传输服务的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。