一、认识
官方站点:http://vsftpd.beasts.org/
主程序:/usr/sbin/vsftpd
服务名:vsftpd
用户控制列表文件
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
主配置文件
/etc/vsftpd/vsftpd.conf
1.常用的全局配置项
listen=YES:是否以独立运行的方式监听服务
listen_address=192.168.4.1:设置监听的 IP 地址
listen_port=21:设置监听 FTP 服务的端口号
write_enable=YES:是否启用写入权限
download_enable=YES:是否允许下载文件
userlist_enable=YES:是否启用 user_list 列表文件
userlist_deny=YES:是否禁用 user_list 中的用户
max_clients=0:限制并发客户端连接数
max_per_ip=0:限制同一 IP 地址的并发连接数
2.常用的匿名 FTP 配置项
anonymous_enable=YES:启用匿名访问
anon_umask=022:匿名用户所上传文件的权限掩码
anon_root=/var/ftp:匿名用户的 FTP 根目录
anon_upload_enable=YES:允许上传文件
anon_mkdir_write_enable=YES:允许创建目录
anon_other_write_enable=YES:开放其他写入权
anon_max_rate=0:限制最大传输速率(字节/秒)
二、ftp匿名访问配置
1、准备访问目录
[root@hfj vsftpd]# chown ftp /var/ftp/pub
[root@hfj vsftpd]# ls -ld /var/ftp/pub
drwxr-xr-x. 2 ftp root 4096 3月 22 16:48 /var/ftp/pub
2、配置vsftpd.conf文件
配置匿名访问的主要选项如下:
anonymous_enable=YES:启用匿名访问
anon_umask=022:匿名用户所上传文件的权限掩码 //反向掩码
anon_root=/var/ftp:匿名用户的 FTP 根目录,需要手动添加。
anon_upload_enable=YES:允许上传文件
anon_mkdir_write_enable=YES:允许创建目录
anon_other_write_enable=YES:开放其他写入权
local_enable=NO:是否启用本地系统用户
注释ipv6
anon_root=/var/ftp
3、启动vsftpd服务
[root@hfj vsftpd]# systemctl start vsftpd //开启服务vsftpd
[root@hfj vsftpd]# ps -ax|grep vsftpd //查找vsftpd
188828 ? Ss 0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
189169 pts/3 S+ 0:00 grep --color=auto vsftpd
4、访问测试
[root@hfj vsftpd]# netstat -anpt |grep vsftpd
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 188828/vsftpd
[root@hfj vsftpd]# ftp 10.5.63.202Connected to 10.5.63.202 (10.5.63.202).
220 Welcome to hfj FTP service.
Name (10.5.63.202:root): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (10,5,63,202,160,131).
150 Here comes the directory listing.
drwxr-xr-x 2 14 0 4096 Mar 22 08:48 pub
226 Directory send OK.
ftp> cd pub
250 Directory successfully changed.
检查selinux中关于ftp的
getsebool -a | grep ftp
打开ftp的访问权限
#setsebool -P ftpd_full_access=on
重新加载vsftp配置
systemctl reload vsftpd //关闭服务时重新启动