windows中使用的IIS可以搭建ftp的平臺澡腾,但是非常的不穩(wěn)定,Serv-U等軟件可以完成ftp的共享边臼,一般來說,只要需要ftp的服務假消,都是基于Linux柠并,Linux中的ftp的服務是VSFtp(Very Security FTP)
1、FTP的安裝
????????yum install vsftpd
????????systemctl status vsftpd
????????systemctl enable vsftpd -->重啟(reboot -h now)之后開啟vsftpd
????????systemctl start vsftpd -->啟動vsftp
2置谦、ftp的配置
[root@localhost vsftpd]# more bak_conf
anonymous_enable=YES? ##匿名登錄
local_enable=YES ##是否允許本地用戶登錄
write_enable=YES ##文件是否可寫
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
?
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
?
##以下配置是將用戶鎖定在宿主目錄
chroot_local_user=YES
chroot_list_enable=YES
# (default follows)
##在vsftp的2.5之后如果打開chroot_list堂鲤,這不具備寫權限亿傅,需要通過以下命令打開寫權限
allow_writeable_chroot=YES
chroot_list_file=/etc/vsftpd/chroot_list##在chroot_list中的用戶不會鎖定在宿主目錄
3媒峡、匿名用戶登錄
匿名用戶登錄成功之后會默認訪問/var/ftp 文件夾, 登錄成功之后在window的命令提示符中可以通過一些ftp的命令來操作ftp
ftp 192.168.213.122 ##完成ftp 的登錄操作葵擎,可以使用anonymous來匿名登錄谅阿,沒有密碼
##登錄成功之后使用dir可以查詢ftp中的內(nèi)容,使用!dir查詢本地文件的內(nèi)容
##使用get或者mget來下載一個文件酬滤,mget可以基于通配符的方式下載签餐,get只能下載一個文件
mget hello* ##會獲取所有的hello開頭的文件
##使用put可以把文件上傳到服務器
put jude.log ##上傳jude.log到服務器
##使用bye退出ftp
bye
4、其他用戶登錄問題
為了安全性盯串,不建議開啟匿名用戶登錄氯檐,使用本地用戶登錄,首先要關閉匿名用戶
anonymous_enable=NO
關閉用戶之后体捏,在/etc/vsftpd的文件夾中有兩個非常重要的文件冠摄,ftpusers和user_list
ftpusers文件只要把用戶寫在里面糯崎,就一定不能登錄
user_list:該文件中的用戶,如果在配置文件里面設置了userlist_deny=NO表示只有該文件中的用戶可以登錄河泳,如果設置為YES(默認情況)說明沃呢,該文件中的用戶不能登錄
此時只要是新建的任意的一個用戶,都可以使用ftp拆挥,如果希望只有特殊的用戶可以登錄薄霜,那需要在vsftpd.conf中設置userlist_deny=NO,之后把需要登錄的用戶放到user_list中的纸兔,此時如果ftpusers中也有這個用戶惰瓜,也無法登陸。
驗證的過程汉矿,首先驗證user_list鸵熟,如果user_list通過了,會讓輸入密碼负甸,之后會使用ftpusers來進行二次驗證流强,如果兩次都通過,就允許ftp登錄呻待。為了效率打月,建議在user_list中直接來隔離不同的用戶。