vsftpd(very secure FTP daemon)是一个广泛使用的、开源的FTP服务器软件,以其高性能、高安全性和稳定性著称,支持多种FTP相关协议,包括FTP、SFTP(通过SSH)、TLS/SSL加密的FTP等。
一:安装vsftpd
#安装vsftpd服务 yum install vsftpd -y #启动FTP服务,并设置开机自启动 systemctl enable vsftpd systemctl restart vsftpd #查看FTP服务监听的端口 netstat -anpt |grep ftp
二:配置vsftpd
创建一个Linux用户并设置密码。
FTP支持以下三种认证模式:
-
匿名用户模式:任何人无需密码验证就可以直接登录到FTP服务器。这种模式最不安全,一般只用来保存不重要的公开文件,不推荐在生产环境中使用。
-
本地用户模式:通过Linux系统本地账号进行验证的模式,相较于匿名用户模式更安全。
-
虚拟用户模式:FTP服务器的专有用户。虚拟用户只能访问Linux系统为其提供的FTP服务,而不能访问Linux系统的其他资源,进一步增强了FTP服务器的安全性。
本文介绍为FTP服务创建一个Linux系统本地账号
运行以下命令,为FTP服务创建一个Linux用户。
adduser ftptest passwd ftptest
修改vsftpd.conf
配置文件。
运行以下命令,打开vsftpd的配置文件
[root@localhostvsftpd]# cat vsftpd.conf #禁止匿名登录FTP服务器 anonymous_enable=NO #允许本地用户登录FTP服务器 local_enable=YES #可以上传文件全局控制 write_enable=YES #本地用户上传的文件权限 local_umask=077 #监听IPv4 sockets listen=YES pam_service_name=vsftpd tcp_wrappers=YES allow_writeable_chroot=YES #启用例外用户名单 chroot_list_enable=YES #全部用户被限制在主目录 chroot_local_user=YES #指定例外用户列表文件,列表中用户不被锁定在主目录 chroot_list_file=/etc/vsftpd/chroot_list #开启被动模式。 pasv_enable=YES [root@localhostvsftpd]#
本文配置的为用户登录后在自己家目录中进行操作的实例
配置讲解:
chroot_local_user=YES #设置是否锁定本地用户在自己的主目录中,(登录后无法cd到父目录或同级目录中) chroot_list_enable=YES #设置是否将用户锁定在自己的主目录中 chroot_list_file=/etc/vsftpd/chroot_list #定义哪些用户将会锁定在自己的主目录中 vsftp配置文件及参数说明 /etc/vsftpd目录下文件说明如下: /etc/vsftpd/vsftpd.conf是vsftpd的核心配置文件。 /etc/vsftpd/ftpusers是黑名单文件,此文件中的用户不允许访问FTP服务器。 /etc/vsftpd/user_list是白名单文件,此文件中的用户允许访问FTP服务器。
参考文档:在Linux实例中搭建FTP服务器_云服务器 ECS(ECS)-阿里云帮助中心 (aliyun.com)
标签:FTP,chroot,用户,vsftpd,Linux,YES,搭建 From: https://www.cnblogs.com/saneri/p/18469723