Vsftpd

FTP协议的工作模式

主动模式:FTP服务器主动向客户端发起连接请求。

被动模式:FTP服务器等待客户端发起连接请求(FTP的默认工作模式)。

安装vsftpd服务

yum install vsftpd -y

设置防火墙

iptables -F

service iptables save

# iptables默认禁止了FTP传输协议的端口号

备份并过滤主配置文件

mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

cat /etc/vsftpd/vsftpd.conf.bak | grep -v "#" > /etc/vsftpd/vsftpd.conf

vsftpd主配置文件常用参数说明

参数
作用

listen=[YES|NO]

是否以独立运行的方式监听服务

listen_address=IP地址

设置要监听的IP地址

listen_port=21

设置FTP服务的监听端口

download_enable=[YES|NO]

是否允许下载文件

userlist_enable=[YES

NO] userlist_deny=[YES

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服务器。

**本地用户模式:**是通过Linux系统本地的账户密码信息进行认证的模式,相较于匿名开放模式更安全,而且配置起来也很简单。但是如果被黑客破解了账户的信息,就可以畅通无阻地登录FTP服务器,从而完全控制整台服务器。

**虚拟用户模式:**是这三种模式中最安全的一种认证模式,它需要为FTP服务单独建立用户数据库文件,虚拟出用来进行口令验证的账户信息,而这些账户信息在服务器系统中实际上是不存在的,仅供FTP服务程序进行认证使用。这样,即使黑客破解了账户信息也无法登录服务器,从而有效降低了破坏范围和影响。

Last updated