Linux安装vsftpd及配置ftp服务器实现windwos的ftp上传下载功能

以下操作环境为:虚拟机Red Hat Enterprise Linux 7 64 位(红帽),CenTos可能存在细微差别

安装vsftpd

没有yum仓库参考:

将vsftpd 主配置文件进行备份

使用grep命令后面添加-v参数,过滤并反选出没有包含井号(#)的参数行(即过滤掉所有的注释信息)然后使用将过滤后的参数行通过输出重定向符写回原始的主配置文件中

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

查看没有#注释得命令行:

cat /etc/vsftpd/vsftpd.conf

创建快照以防翻车

配置匿名开放模式

匿名开放模式是最不安全的一种认证模式。任何人都可以无需密码验证而直接登录到FTP服务器。

既然不安全,那为什么需要这个模式?

(频繁)访问不重要的公开文件(在生产环境中尽量不要存放重要文件),又懒得输账号密码。

vsftpd服务程序默认开启了匿名开放模式。

1:修改主配置文件

vim /etc/vsftpd/vsftpd.conf

开放匿名用户的上传、下载文件的权限,以及让匿名用户创建、删除、更名文件的权限;

2:确认匿名访问模式已经开启,设置匿名用户上传文件的umask值

如果没该两行需要手工配置添加以下两行

anonymous_enable=YESlocal_umask=022

wq保存

使用mkdir在根目录创建一个文件夹,

mkdir mamublog

系统就会默认赋予此文件夹755权限,最高权限是777

ls -ld mamublog

如果使用touch创建一个txt文件,那么其默认权限为644(系统不会赋予文件执行权限,所谓文件默认最高权限是666)

touch mamublog.txtls -ld mamublog.txt

如果需要修改rgo的权限,那么需要使用命令chmod

chmod g+w mamublog.txt

ll查看

发现权限-rw-r--r--变成了-rw-rw-r--

vim /etc/vsftpd/vsftpd.conf编辑添加以下内容

红帽没有以下三个内容需手动添加,Centos没有也可以自行添加,

键盘按O开始编辑及添加

允许匿名用户上传文件anon_upload_enable=YES允许匿名用户创建目录anon_mkdir_write_enable=YES允许匿名用户修改目录名称或删除目录anon_other_write_enable=YES

键盘按shirf+;输入wq保存

启动vsftpd服务,并且加入开机启动项

启动命令:systemctl start vsftpd查看启动命令:systemctl status vsftpd

设置自启动:systemctl enable vsftpd

提示而已再次回车即可

查看自启动状态:systemctl is-enabled vsftpd 为enabled即可

物理机使用ftp命令连接虚拟机ftp

发现卡着连接不上

需要关闭虚拟机防火墙:systemctl stop firewalld

再次尝试,发现可以连接ftp了!!!

账号是ftp或者anonymous,密码为空。

创建文件夹发现创建失败!

回到Linux系统,看一下这个文件夹的权限。使用命令ls -ld /var/ftp,发现这个权限只适用root账户,匿名用户不可创建文件夹!

倘若依然一意孤行,一定要o+w权限,验证如下

chmod o+w /var/ftp

此时再退出ftp,再通过ftp x.x.x.x登入,输入账号密码,显示登入被拒绝

所以只能针对ftp的根目录下的某个文件夹赋予o+w的权限!!!!!

在/var/ftp下任意创建一个文件夹mamublog(名称自己改,可以以自己名字命名)

cd /var/ftpmkdir mamublog

赋予o+w的权限

chmod o+w mamublog

ll查看权限

chmod o-w /var/ftp

再次登陆ftp创建文件夹发现还是不行

这次需要考虑是否是SELinux的限制原因

setenforce 0 关闭SELinux

cd 刚才/var/ftp创建的mamublog,在里面创建文件夹测试,发现可以了!!!

使用dir命令查看该文件夹下有什么文件夹,发现了刚才mamublog文件下再创建的mamublog文件夹

虚拟机中查看也是一样的

物理机下载上传文件测试

首先需要输入bye退出ftp

cd 命令进入需要上传文件所在位置盘符文件夹

比如我要上传F盘的d.png图片到ftp服务器去

cmd命令行则需要进入F盘后连接ftp

先cd 进刚才创建的mamublog文件夹

cd mamublog

使用put 命令上传刚才F盘的d.png图片文件

put d.png

使用dir查看该文件夹下的所有文件,找到刚才上传的d.png,说明上传成功

返回虚拟机使用终端命令查看是否成功

可视化界面使用文件管理器查看上传的文件

更加便利使用ftp服务器

右击选择添加一个网络位置

添加ftp://虚拟机ip

操作完成就会弹出如下

即可像硬盘那样正常添加删除等操作,不过只能在设置了权限的mamublog文件夹下才能新建文件夹等操作