下面是“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来进行测试:
-
打开FileZilla,点击菜单栏上的“文件”(File),然后点击“站点管理器”(Site Manager)
-
在站点管理器中新建一个站点,设置好相关参数后,点击“连接”(Connect)按钮
-
如果连接成功,则会在连接的右侧显示服务器上的目录结构,这说明你的vsftpd服务器已经成功部署,并且你已经可以使用ftp客户端与之进行交互了。
示例说明
示例一:使用ftp客户端上传文件
假设我们要上传一个文件,可以按照以下步骤操作:
-
打开FileZilla客户端,并连接上vsftpd服务器
-
将要上传的文件拖拽到右侧的服务器目录上即可。如果出现了“Permission denied”错误,说明你的用户没有权限上传文件,请检查用户的权限设置。
示例二:使用命令行上传文件
假设我们要上传一个文件 test.txt,可以按照以下步骤操作:
- 将 test.txt 文件上传到 /var/ftp/pub/testuser1 目录下:
# ftp localhost
Name:
testuser1
Password:
*******
ftp> cd /var/ftp/pub/testuser1
ftp> put test.txt
- 退出ftp客户端:
ftp> bye
这样便上传成功了。