用Vsftpd服务传输文件
文件传输协议
文件传输协议(FTP,File Transfer Protocol),即能够让用户在互联网中上传、下载文件的文件协议,而FTP服务器就是支持FTP传输协议的主机,要想完成文件传输则需要FTP服务端和FTP客户端的配合才行。
通常用户使用FTP客户端软件向FTP服务器发起连接并发送FTP指令,服务器收到用户指令后将执行结果返回客户端。
FTP协议占用两个端口号:
21端口:命令控制,用于接收客户端执行的FTP命令。
20端口:数据传输,用于上传、下载文件数据。
FTP数据传输的类型:
主动模式:FTP服务端主动向FTP客户端发起连接请求。
被动模式:FTP服务端等待FTP客户端的连接请求。
Vsftpd即“Very Secure FTP Daemon”是一款运行在类Unix操作系统的FTP服务端程序,Vsftpd主打的是安全性、完全开源及免费、速率高、支持IPv6、虚拟用户功能等等其他FTP服务端软件不具备的功能。
安装命令:
yum install vsftpd -y
Vsftpd的程序与配置文件:
主程序 |
/usr/sbin/vsftpd |
用户禁止登陆列表 |
/etc/vsftpd/ftpusers |
主配置文件 |
/etc/vsftpd/vsftpd.conf |
vsftpd程序配置文件参数的作用:
参数 |
作用 |
listen=[YES|NO] |
是否以独立运行的方式监听服务。 |
listen_address=IP地址 |
设置要监听的IP地址。 |
listen_port=21 |
设置FTP服务的监听端口。 |
download_enable=[YES|NO] |
是否允许下载文件。 |
userlist_enable=[YES|NO] |
是否启用“禁止登陆用户名单”。 |
max_clients=0 |
最大客户端连接数,0为不限制。 |
max_per_ip=0 |
同一IP地址最大连接数,0位不限制。 |
anonymous_enable=[YES|NO] |
是否允许匿名用户访问。 |
anon_upload_enable=[YES|NO] |
是否允许匿名用户上传文件。 |
anon_umask=022 |
匿名用户上传文件的umask值。 |
anon_root=/var/ftp |
匿名用户的FTP根目录。 |
anon_mkdir_write_enable=[YES|NO] |
是否允许匿名用户创建目录。 |
anon_other_write_enable=[YES|NO] |
是否开放匿名用户其他写入权限。 |
anon_max_rate=0 |
匿名用户最大传输速率(字节),0为不限制。 |
local_enable=[YES|NO] |
是否允许本地用户登陆FTP。 |
local_umask=022 |
本地用户上传文件的umask值。 |
local_root=/var/ftp |
本地用户的FTP根目录。 |
chroot_local_user=[YES|NO] |
是否将用户权限禁锢在FTP目录,更加的安全。 |
local_max_rate=0 |
本地用户最大传输速率(字节),0为不限制。 |
Vsftpd的验证方式
vsftpd程序提供的FTP服务可选认证方式,分别为匿名访问、本地用户和虚拟用户:
匿名访问:任何人无需验证口令即可登入FTP服务端。
本地用户:使用FTP服务器中的用户、密码信息。
虚拟用户:创建独立的FTP帐号资料。
顾名思义匿名访问就是所有人均可随意登入FTP服务,这样自然会产生安全问题,一般用于存放公开的数据。
而本地用户与虚拟用户则需要用户提供帐号及口令后才能登入FTP服务,更加的安全,而虚拟用户则是最安全的。
下一篇博客就介绍三种模式的配置方法!