记录在Linux系统使用vsftpd服务

vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。

一.FTP工作模式
1)主动模式

主动模式,也称PORT模式(服务器端开启的端口是tcp 20和21;21端口传输命令,20端口传输数据)
主动模式首先客户端请求服务器端的21端口,建立命令连接;当客户端想要传输数据时,发送PORT命令,告诉服务器“我打开了xxx端口,来连接我吧”

服务器使用20端口主动与客户端建立数据连接,传输数据。

2)被动模式

被动模式,又称PASV模式(服务器端开启的端口是tcp 21和一个大于1024的随机端口;21端口传输命令,另外一个端口传输数据)
被动模式首先客户端请求服务器端的21端口,建立命令连接;当客户端想要传输数据时,与主动方式的FTP不同,客户端不会提交PORT命令并允许服务器来回连它的数据端口,而是提交PASV命令。发送PASV命令,表示使用被动模式传输数据,服务器端会告诉客户端“我开启了xxx端口,来发送数据吧”,然后客户端就会连接服务器通知它的那个端口,进行数据传输。此模式不需要开启20端口。

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

二.FTP用户

1)匿名用户

不需要用户名密码,直接使用匿名用户Anonymous 或直接登录,  默认只能下载,不能上传

2)本地用户,一般用这个

使用VSFTPD服务端的本地用户及密码登录

3)虚拟用户

模拟的是匿名用户,默认只能下载不能上传,登录方式模拟的是本地用户

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

报错:

在CentOS Linux release 7.7.1908 (Core)中【布置此次vsftpd的环境】,需注释掉/etc/pam.d/vsftpd一个单位,不然连接vsftpd服务器可能报错响应: 530 Login incorrect.

#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth       required    pam_shells.so     #注释
auth       include      password-auth
account    include      password-auth
session    required     pam_loginuid.so
session    include      password-auth

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

三.配置文件

 /etc/vsftpd/vsftpd.conf为配置文件

配置选项解释(不全)

vsftpd]# cat vsftpd.conf
anonymous_enable=YES
anon_umask=022
anon_root=/var/ftp/ftp
#anon_upload_enable=YES
#anon_other_write_enable=YES
#anon_mkdir_write_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=YES
listen_ipv6=NO

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list


pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
ftpd_banner=Welcome to ftp!!!

pasv_max_port=10010
pasv_min_port=10000

allow_writeable_chroot=YES
#pasv_promiscuous=YES

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

其中

vsftpd 配置:chroot_local_user与chroot_list_enable

详细解释

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

其中

local_umask=022

umask决定目录和文件被创建时得到的初始权限
umask = 022时
新建的目录 权限是755
文件的权限是 644

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

客户端推荐

Filezilla,有客户端和服务端,支持Linux,Windows,Mac,中文网址官网

界面

 

 

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

报错

500 OOPS: vsftpd: refusing to run with writable root inside chroot()  解决:添加配置文件 allow_writeable_chroot=YES,,,可解决

 

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

 

posted @ 2020-05-09 15:11  5444de  阅读(174)  评论(0编辑  收藏  举报