Linux vsFTPd服务详解——vsFTPd基础知识

今天继续给大家介绍Linux运维相关内容,本文主要内容是Linux的vsFTPd服务。

一、vsFTPd服务简介与安装

FTP服务,即File Transfer Protocol、文件传输服务,用于在互联网上提供文件存储和访问服务。有关FTP的原理请参见以下文章:FTP协议详解。该文章写的很详细,在这里就不过多介绍乐。vsFTPd是基于GPL发布的类Unix系统上使用的FTP服务服务端软件,即very security FTP。vsFTPd也是基于FTP服务架构的软件,采用C/S模式,是一个安全高效稳定的服务器。
在安装vsFTPd时,如果采用yum的方式安装,可以执行命令:

yum install -y vsftpd lftp

其中,前面的vsftpd是FTP服务的服务端,lftp是FTP服务的客户端。

二、vsFTPd配置文件与启动

vsftpd在安装完成后,会自动生成以下配置文件:
/etc/vsfptd/vsftpd.conf:这是vsftpd的革新配置文件
/etc/vsfptd/ftpusers:该文件指定了FTP服务器的黑名单
/etc/vsfptd/user_list:该文件指定了FTP服务器的白名单
配置文件如下所示:
Linux vsFTPd服务详解——vsFTPd基础知识_第1张图片
上图中最后一个vsftpd的脚本,是用于设置一些vsftpd的变量。
vsftpd启动命令如下:

systemctl start vsftpd

启动成功后,本地计算机会监听22端口,如下所示:
Linux vsFTPd服务详解——vsFTPd基础知识_第2张图片
注意,有时候我们会发现启动后vsftpd服务监听的IPv6的22端口而不是IPv4的22端口,这需要我们在vsftpd的主配置文件中更改监听端口配置,vsftpd只能监听单IP协议栈的22端口,因此不可以同时监听IPv4和IPv6的22端口。修改时需要将配置文件中,listen参数改为YES,listen_IPv6改为NO。修改如下图所示:
Linux vsFTPd服务详解——vsFTPd基础知识_第3张图片

三、vsFTPd简单实战

下面,我将采用一个简单的案例,来进行vsFTPd配置的简单实战,来使得匿名用户可以登录并访问我们的FTP服务器。
首先来介绍一下在vsFTPd中的三种用户:
1、匿名用户。 用户名为anonymous,密码为空。
2、本地用户。 即本地系统用户,/etc/passwd中设置的用户。
3、系统用户。 可以简单的将系统用户理解为虚拟用户,该用户不可登录系统。

为了使得匿名用户访问,我们在配置文件/etc/vsftpd/vsftpd.conf文件中添加下列内容:

anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
allow_writeable_chroot=YES
chroot_local_user=YES

之后还要关闭防火墙,同时给ftp目录首选。在默认情况下,vsftpd的默认上传下载目录是/var/ftp,但是在vsftpd安装完毕后,该目录的属主和属组都是root,在这种情况下,即使客户端能够成功登录ftp,但是由于权限的原因,不能进行写操作,因此,我们还需要对目录进行授权。但是,由于vsftpd的chroot保护机制,我们不可以给/var/ftp目录授予写权限,因此正确操作如下:

chown -R ftp:ftp /var/ftp
chmod a-w /var/ftp

完成上述操作后,重新启动vsftpd服务,另一端就可以链接上了,执行操作如下所示:
Linux vsFTPd服务详解——vsFTPd基础知识_第4张图片
这样,我们就实现了vsftpd的基本匿名用户登录配置。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

你可能感兴趣的