阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

搭建Linux vsFTPd服务器

199次阅读
没有评论

共计 2732 个字符,预计需要花费 7 分钟才能阅读完成。

一、vsftpd 简介

vsFTPd 是一款在 Linux 发行版中最受推崇的 FTP 服务器程序;特点是小巧轻快,安全易用;能让其自身特点得发发挥和掌握,也然最主要的是会用;目前在开源操作系统中常用的 FTPD 套件主要有 ProFTPD、PureFTPd 和 wuftpd 等;至于哪个 FTP 服务器套件更好,哪个是你最熟悉的,哪个就是最好的。

二、vsftpd 的两种工作模式

FTP 的连接一般是有两个连接的,一个是用于客户程和服务器传输命令的,另一个是用于数据传送的连接。FTP 服务程序一般会支持两种不同的模式,一种是 Port 模式,一种是 Passive 模式(Pasv Mode), 我先说说这两种不同模式连接方式的分别。(先假设客户端为 C, 服务端为 S)

主动模式 (Port Mode):命令连接的建立是由客户端 C 的随机端口向服务端 S 的 TCP 21 端口请求连接产生;数据连接的建立是由:(命令端口的连接建立在成功后) 客户端 C 会发送一条命令告诉服务端 S(客户端 C 在本地打开了一个端口随机端口 N 在等着你进行数据连接),当服务端 S 收到这个 Port 命令后,就会利用服务器 S 自己的 TCP 20 端口向客户端打开的那个随机端口 N 进行请求连接,最终连接成功。

被动模式 (Pasv Mode):命令连接的建立也是由客户端 C 的随机端口向服务端 S 的 TCP 21 端口请求连接产生;(命令端口的连接建立在成功后) 服务端 S 会发信息给客户端 C,这个信息内容是(服务端 S 在本地打开了一个高位端口 M,你现在去连接我吧),当客户端 C 收到这个信息后,就利用客户端自己的随机端口向服务端 S 的 M 端口进行连接,进而数据连接建立成功。

三、vsftpd 的安装与启动

Vsftpd 的安装程序在 RHEL5 安装光盘的 Server 目录中,名称是:vsftpd-*(版本).rpm。在安装之前您可以先查看自己的服务器上是否已经安装。例如下所示:

#rpm -qa|grep vsftpd

vsftpd-2.0.5-10.e15

如果您的服务器上没有安装 vsftpd 的程序包,您可以使用以下命令安装:

#rpm -ivh vsftp-2.0.5-10.e15.i386.rpm

当您的 vsftpd 程序包安装上之后,就可以设置 vsftpd 服务开机自动启动。命令如下:

#chkconfig vsftpd on

并设置手工启动该服务,命令如下所示:

#service vsftpd start  或  #/etc/init.d/vsftpd start

四、vsftpd 的用户

Vsftpd 服务支持三种用户登录 ftp 服务器,包括:匿名用户、本地用户、虚拟用户。

匿名用户在 text 模式下,要用用户名 ftp,密码也是 ftp,来进行登陆;如果是用 FTP 工具来匿名登陆的话,用户名和密码都为:anonymous。默认情况下匿名用户可以访问和下载,但不能进行上传、删除、新建目录、执行文件等操作!默认情况下匿名用户登录之后访问的位置是 /var/ftp 目录

本地用户就是使用 useradd 手工建立的用户,这些用户的相关资料都存储在 /etc/passwd 与 /etc/shadow 文件中。当 vsftpd 的客户端利用本地用户的身份与口令登录 vsftpd 时,默认访问本地用户自己的家目录(主目录)。(提示:为了提高 vsftpd 服务器的安全性,我们可以把一些 vsftpd 的本地用户的 shell 设置为 /sbin/nologin,表示这些用户不能在本地登录系统,但可以使用 ftp 的方式访问服务器上的资料)

虚拟用户:即客户端登录 vsftpd 服务器时输入的多个用户名在服务器上根本不存在,这些用户名都对应了一个 vsftpd 服务器上的本地用户。所以当这些虚拟用户在登录时看到的主目录都是相同的位置(就是对应的那个本地用户的家目录)。这样可以提高 vsftpd 的安装性。

五、vsftpd 的配置文件:

Vsftpd 相关的配置文件有:/etc/vsftpd/vsftpd.conf、/etc/vsftpd/ftpusers、/etc/vsftpd/user_list 三个。其中 /etc/vsftpd/ftpusers 为 ftp 黑名单文件,即此文件中存储的用户名都禁止访问 vsftpd;/etc/vsftpd/vsftpd.conf 是 vsftpd 的主配置文件;/etc/vsftpd/user_list 文件比较灵活,它根据 vsftpd.conf 主配置文件的不同配置,即可以充当黑名单文件(默认即是),也可以充当白名称文件(即只允许该文件中存储的用户名访问 vsftpd),具体设置详见本文相关介绍。

Vsftpd 主配置文件 /etc/vsftpd/vsftpd.conf 的相关设置:

anonymous_enable=YES 允许使用匿名用户

anon_upload_enable=YES 允许匿名用户上传数据

anon_mkdir_write_enable=YES 允许匿名用户创建目录并在新目录中写入数据

anon_world_readable_only=NO  允许匿名用户浏览已目录中已经存在的数据

anon_other_write_enable=YES 允许匿名修改、删除文件

anon_umask=022 设置匿名用户上传数据的默认权限

anon_max_rate=81920 匿名用户的最大传输速度(80K/s)

local_enable=YES 允许使用本地用户

推荐阅读

玩转 vsftpd 服务器的四大高级配置:http://www.linuxidc.com/Linux/2013-09/90565.htm

vsFTPd 配置教程:http://www.linuxidc.com/Linux/2013-09/90562.htm

Ubuntu 实用简单的 FTP 架设 http://www.linuxidc.com/Linux/2012-02/55346.htm

Ubuntu 上架设 FTP 服务器和 Apache 服务器 http://www.linuxidc.com/Linux/2011-04/35295.htm

Ubuntu 13.04 安装 LAMP\vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm

RHEL6 平台下 SeLinux 和 vsftpd 的匿名上传的简单案例 http://www.linuxidc.com/Linux/2013-04/82300.htm

Linux 系统 vsftpd 源码安装 http://www.linuxidc.com/Linux/2013-03/81475.htm

vsftpd 的安全配置案例分析 http://www.linuxidc.com/Linux/2012-12/76501.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计2732字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中