Centos搭建vsftp服务器的方法

  • Post category:Linux

下面是“Centos搭建vsftp服务器的方法”的完整攻略。

一、安装vsftpd

使用以下命令来安装vsftpd:

# yum install vsftpd -y

二、配置vsftpd

1. 设置匿名用户禁止上传文件

编辑vsftpd的配置文件 /etc/vsftpd/vsftpd.conf,解除以下两行的注释:

write_enable=YES
anon_upload_enable=YES

将其改为:

write_enable=YES
anon_upload_enable=NO

2. 设置上传目录

/etc/vsftpd/vsftpd.conf 文件中增加以下行:

local_root=/var/ftp/pub

这将会使得所有用户都被锁定在 /var/ftp/pub 目录下,并且只有该目录及子目录下的文件才能够被上传和下载。

3. 设置用户

在vsftpd中有两种用户,分别为本地用户和虚拟用户。本地用户就是系统中已经存在的用户,而虚拟用户则是与系统中的用户无关的用户。在这里我们只介绍如何设置本地用户。

添加用户

使用以下命令来添加一个新用户(比如:testuser1):

# useradd testuser1

为用户设置密码

使用以下命令来设置testuser1的密码:

# passwd testuser1

为用户创建目录

使用以下命令创建一个目录供testuser1上传文件:

# mkdir /var/ftp/pub/testuser1
# chown testuser1:testuser1 /var/ftp/pub/testuser1
# chmod 700 /var/ftp/pub/testuser1

4. 启动vsftpd

执行以下命令来启动vsftpd:

# systemctl start vsftpd

三、测试服务器

使用ftp客户端连接服务器,输入用户名和密码,测试是否可以登录。

例如,我们使用FileZilla来进行测试:

  1. 打开FileZilla,点击菜单栏上的“文件”(File),然后点击“站点管理器”(Site Manager)

  2. 在站点管理器中新建一个站点,设置好相关参数后,点击“连接”(Connect)按钮

  3. 如果连接成功,则会在连接的右侧显示服务器上的目录结构,这说明你的vsftpd服务器已经成功部署,并且你已经可以使用ftp客户端与之进行交互了。

示例说明

示例一:使用ftp客户端上传文件

假设我们要上传一个文件,可以按照以下步骤操作:

  1. 打开FileZilla客户端,并连接上vsftpd服务器

  2. 将要上传的文件拖拽到右侧的服务器目录上即可。如果出现了“Permission denied”错误,说明你的用户没有权限上传文件,请检查用户的权限设置。

示例二:使用命令行上传文件

假设我们要上传一个文件 test.txt,可以按照以下步骤操作:

  1. 将 test.txt 文件上传到 /var/ftp/pub/testuser1 目录下:
# ftp localhost
Name:
testuser1
Password:
*******
ftp> cd /var/ftp/pub/testuser1
ftp> put test.txt
  1. 退出ftp客户端:
ftp> bye

这样便上传成功了。