linux环境下搭建FTP
一、简介
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。
vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。
比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。
vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。
二、安装VSFTP
1.[root@localhost ~] yum -y install vsftpd
2.安装完成后,查看位置
[root@localhost ~] whereis vsftpd
展示安装包位置:vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
3.直接启动VSFTP服务
[root@localhost ~] systemctl start vsftpd.service
[root@localhost ~]
4.查看是否启动成功
[root@localhost ~]# netstat -npal|grep vsftpd ps -ef | grep vsftpd
tcp6 0 0 :::21 :::* LISTEN 4432/vsftpd
如果可以看到上述信息服务已经启动,端口为21,pid为4432
5.关闭SELinux限制,添加防火墙白名单
① 查看linux对ftp的限制信息
[root@localhost ~] getsebool -a | grep ftp 通过该指令可查看linux对ftp的限制信息
② 设置关闭SELinux对ftp的限制
[root@localhost ~] setsebool -P ftpd_full_access on
③ 将ftp加入防火墙白名单
firewall-cmd --permanent --zone=public --add-service=ftp
④ 防火墙重新加载配置
firewall-cmd --reload
⑤ 查看防火墙状态(active为活动状态)
firewall-cmd --list-all
⑥防火墙配置文件中再开 21端口,重启防火墙服务
三、更改配置
-
进入安装目录 cd /etc/vsftpd/
-
编辑配置文件 vim vsftpd.conf
允许匿名访问(访问某目录/var/ftp)
anonymous_enable=YES
允许ascii文件上传和下载
ascii_upload_enable=YES
ascii_download_enable=YES
将用户限制在为其配置的主目录
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
-
如果设置anonymous_enable=YES表示可以匿名登陆,保存后重新启动vsftp服务systemctl restart vsftpd.service,即可以匿名登陆ftp服务(ftp ipaddr),密码是空,对应目录是/var/ftp,如果你在配置里面配置了anonymous_enable=NO,匿名就无法登录。
四、访问
输入地址 ftp://地址即可访问