1.首先检查centos 7 中是否安装ftp
- 方法一:[root@localhost ~]# rpm -q vsftpd
- 方法二:[root@localhost ~]# vsftpd -v
2.安装 vsftpd:
- [root@localhost ~]# yum -y install vsftpd
3.查看 vsftpd 安装位置:
- [root@localhost ~]# whereis vsftpd
4.去该目录下查看
- [root@localhost ~]# cd /etc/vsftpd
- [root@localhost vsftpd]# ls
- 显示文件夹下的目录结构
编辑此文件
- [root@localhost vsftpd]# vi vsftpd.conf
4.配置文件 /etc/vsftpd/vsftpd.conf
配置文件 /etc/vsftpd/vsftpd.conf
anonymous_enable=NO # 不允许匿名访问,禁用匿名登录
chroot_local_user=YES # 启用限定用户在其主目录下
use_localtime=YES # 使用本地时(自行添加)
chroot_list_enable=YES
local_enable=YES # 允许使用本地帐户进行FTP用户登录验证
allow_writeable_chroot=YES # 如果启用了限定用户在其主目录下需要添加这个配置,解决报错 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
xferlog_enable=YES # 启用上传和下载的日志功能,默认开启。
local_umask=022 # 设置本地用户默认文件掩码022
# FTP上本地的文件权限,默认是077,不过vsftpd安装后的配置文件里默认是022
- 注意:vsftpd 配置文件如果修改,需要重新启动 vsftpd :systemctl restart vsftpd.service
查看防火墙状态:
在linux下,防火墙不能打开,否则在Windows上登录不了。
- [root@localhost ~]# systemctl status firewalld.service
若显示防火墙打开,正在运行中,则需要手动关闭
- [root@localhost ~]# systemctl stop firewalld.service
重启防火墙:
[root@localhost ~]# systemctl restart firewalld.service
禁止开机启动:
[root@localhost ~]# systemctl disable firewalld.service
开启开机启动:
[root@localhost ~]# systemctl enable firewalld.service
-
检查是否连接成功
在Windows下和linux下查看自身ip,使用 ipconfig 和 ifconfig
在两种操作系统上 ping一下。
6.然后修改文件,使root用户能够登录
这两个文件中的root 注释掉
7.最后 重启vsftpd服务
- [root@localhost ~]# systemctl restart vsftpd.service
8.测试
登陆成功,并且上传文件成功。使用 put d:/1.txt 即可