ftp服務搭建詳解

2021-08-08 10:17:49 字數 2771 閱讀 5809

詳解linux中搭建乙個ftp伺服器。

ftp工作是會啟動兩個通道:

控制通道 , 資料通道

在ftp協議中,控制連線均是由客戶端發起的,而資料連線有兩種模式:port模式(主動模式)和pasv(被動模式)

port模式:

在客戶端需要接收資料時,ftp_client(大於1024的隨機埠)-port命令->ftp_server(21)  傳送port命令,這個port命令包含了客戶端是用什麼埠來接收資料(大於1024的隨機埠),在傳送資料時,ftp_server將通過自己的tcp 20 埠和port中包含的埠建立新的連線來傳送資料。

pasv模式:

傳送資料時,ftp_client--pasv命令-->ftp_server(21) 傳送pasv命令時,ftp_server自動開啟乙個1024--5000之間的隨機埠並且通知ftp_client在這個埠上傳送資料,然後客戶端向指定的埠發出請求連線,建立一條資料鏈路進行資料傳輸。

安裝ftp

#rpm -qa vsftpd 檢視是否已經安裝

#yum install -y vsftpd

#service vsftpd start 

#chkconfig --level vsftpd 

#chkconfig --level 2345 vsftpd on

#vim  /etc/vsftpd/vsftpd.conf  

anon_upload_enable=yes      上傳 

anon_mkdir_write_enable=yes    建立 

anon_other_write_enable=yes    刪除 

#service vsftpd restart

為了安全應該禁止匿名使用者的登入:

123456 #vim  /etc/vsftpd/vsftpd.conf 

anonymous_enable=no 

#anon_upload_enable=yes      上傳 

#anon_mkdir_write_enable=yes    建立 

#anon_other_write_enable=yes    刪除 

#service vsftpd restart

3 建立乙個直接登入系統使用者來登入ftp:

#useradd -s /sbin/nologin viong 

#passwd viong

限制重要系統使用者不能登入ftp:

#cat /etc/vsftpd/ftpusers  預設已經新增了系統中一些比較重要的使用者 

#echo "viong" >>/etc/vsftpd/ftpusers  此時viong不能登入ftp

利用ftp使用者策略允許登入ftp的系統使用者:

/etc/vsftpd/user_list 只有在這個檔案中的使用者才能登入系統: 

#vim /etc/vsftpd/vsftpd.conf 

#在userlist_enable=yes 的後面新增 

userlist_deny=no 

userlist_file=/etc/vsftpd/user_list

---------------------------------------  

搭建支援ssl加密傳輸的vsftpd:

#openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem    生成證書 

#vim /etc/vsftpd/vsftpd.conf 

ssl_enable=yes 

allow_anon_ssl=no 

force_local_data_ssl=yes 

force_local_logins_ssl=yes 

ssl_tlsv1=yes 

ssl_sslv2=yes 

ssl_sslv3=yes 

rsa_cert_file=/etc/vsftpd/vsftpd.pem

下面是ssl引數一些定義,根據自己需求去修改:

ssl_enable=yes/no            //是否啟用 ssl,預設為no

allow_anon_ssl=yes/no        //是否允許匿名使用者使用ssl,預設為no

rsa_cert_file=/path/to/file      //rsa證書的位置

dsa_cert_file=/path/to/file      //dsa證書的位置

force_local_logins_ssl=yes/no    //非匿名使用者登陸時是否加密,預設為yes

force_local_data_ssl=yes/no    //非匿名使用者傳輸資料時是否加密,預設為yes

force_anon_logins_ssl=yes/no    //匿名使用者登入時是否加密,預設為no

force_anon_data_ssl=yes/no    //匿名使用者資料傳輸時是否加密,預設為no

ssl_sslv2=yes/no              //是否啟用sslv2加密,預設no

ssl_sslv3=yes/no                //是否啟用sslv3加密,預設no

ssl_tlsv1=yes/no                //是否啟用tls v1加密,預設yes

ssl_ciphers=加密方法            //預設是des-cbc3-sha

#service vsftpd restart

ftp服務搭建

檔案傳輸服務 主配置檔案目錄 etc vsftpd vsftpd.conf 首先安裝ftp伺服器 yum install vsftpd 預設存放檔案的目錄 var ftp pub 匿名登陸 建立乙個檔案 啟動服務 關閉防火牆 瀏覽器訪問 ftp ip位址 記住修改pub目錄許可權 還要注意更改安全值...

搭建ftp服務

ftp file transfer procotol 檔案傳輸協議 svn git是主流的網際網路資料傳輸方式。svn常用,git在公司不常用。在這兩種方式沒有的情況下,就用ftp 應用 實現網路內的資料傳輸 特點 1 安全 身份驗證 2 跨平台 跨網路 搭建 1 服務端 安裝vsftpd服務 啟動...

FTP服務搭建 ftp限制使用者

yum intstall y vsftpd systemctl start vsftpd vi etc vsftpd users.conf 此檔案為自己建立 zhang1 奇數行為賬號 0000 偶數行為密碼 zhang2 0000 轉化為berkeley db格式的資料庫檔案 db load t ...