阿里雲centos搭建ftp服務器


一、簡介

vsftpd 全稱是:very secure FTP daemon 非常安全的ftp后台程序,及ftp 服務端

 

二、服務器端部署

1.安裝服務   yum install vsftpd -y

2.啟動服務   systemctl start  vsftpd.service

3.查看狀態   systemctl status vsftpd.service

4.關閉服務   systemctl stop vsftpd.service

5.檢查端口   netstat -anp | grep 21   (找不到netstat命令時運行yum install net-tools)

 

三、創建ftp訪問用戶

1.創建用戶目錄   mkdir -p /home/wwwroot/ftptest

2.創建用戶          useradd -d /home/wwwroot/ftptest -g ftp -s /sbin/nologin ftptest   

                         (-d  新用戶每次登陸時所使用的家目錄)(-g  指定用戶對應的用戶組 ftp分組是內置的,本來就存在,不需要自己創建)( -s /sbin/nologin 表示這個用戶不能用來登錄xshell這樣的客戶端。 這種不能登陸的用戶又叫做虛擬用戶)

3.設置目錄權限   chown -R  ftptest  /home/wwwroot/ftptest   (擁有者設置為ftptest)

                            chmod -R  775  /home/wwwroot/ftptest      (使ftptest用戶擁有這個目錄的讀寫權限)
4.設置用戶密碼    echo "123456" | passwd --stdin ftptest         (修改ftptest用戶密碼為123456)
 
 
四、在vsftpd服務器中配置用戶
1.編輯vsftpd配置文件禁止匿名登陸 
 vi /etc/vsftpd/vsftpd.conf   
將   
anonymous_enable=YES
改為
anonymous_enable=NO
2.限制ftptest用戶訪問其他目錄         
vi /etc/vsftpd/vsftpd.conf   
將 
 # chroot_list_enable=YES
 # (default follows)
 # chroot_list_file=/etc/vsftpd.chroot_list
改為
chroot_list_enable=YES   (表示對用戶訪問進行限制)
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list   (表示對chroot_list里面指定的用戶進行限制)
3.編輯用戶清單

vi /etc/vsftpd/chroot_list   (此文件本來是空的) 增加一行: ftptest

4.增加用戶允許寫權限

(vsftpd服務器是這樣的,一旦某個用戶被限制訪問了,那么默認情況下,該用戶的寫權限也被剝奪了。 這就導致ftp客戶端連接上服務器之后無法上傳文件。
這個時候,就需要打開此用戶的寫權限)

vi /etc/vsftpd/vsftpd.conf  在最后面新加一行:allow_writeable_chroot=YES

 

五、配置端口

1.vsftpd有兩種端口,一個是21端口,用來監聽客戶端連接請求的。 這個一般說來是固定的,就一直使用21端口。
                                  另一種是,一旦獲取到請求之后,再專門用用戶服務端和客戶端傳輸數據的端口。

2.編輯配置文件 

vi /etc/vsftpd/vsftpd.conf

在最后添加:

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30010

(表示使用被動模式,用於傳輸數據的端口分配從30000-30010之間)

 

六:解決用戶鑒權問題

(因為用戶 ftptest 是 nologin的,所以存在鑒權的問題。 )

1.編輯pam.d/vsftpd 文件

vi /etc/pam.d/vsftpd    注釋掉  #auth required pam_shells.so (這樣不去鑒權,從而允許 ftptest 這種 nologin用戶登錄 ftp 服務器.)

2.編輯shells 文件

vi /etc/shells    增加一行:/sbin/nologin  (允許不能登錄系統的用戶通過鑒權)

 

七、重啟vsftpd服務器

通常重啟命令:service vsftpd restart
centos7改用命令:systemctl restart vsftpd.service
查看狀態:systemctl status vsftpd.service

 

八、阿里雲服務器還需配置安全組,新增21和 30000/30010端口

 

九、客戶端

1.ftp客戶端工具

FileZilla (所有平台)、WinSCP (Windows)、Transmit (Mac OS X)、FireFTP (所有平台與Firefox)、Cyberduck (Mac OS X)、ftprush(Windows)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM