共计 4684 个字符,预计需要花费 12 分钟才能阅读完成。
一、环境准备
1)CentOS release 6.5 (Final)
2)本例采用 YUM 安装,需要先配置好 YUM 源
3)为了实验的顺利,这里关闭防火墙和 selinux
二、安装部署
1)配置 vsftpd
[root@linuxidc ~]# yum install -y vsftpdLoaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
–> Running transaction check
—> Package vsftpd.x86_64 0:2.2.2-24.el6 will be installed
–> Finished Dependency Resolution
Dependencies Resolved
===============================================================================================
Package Arch Version Repository Size
===============================================================================================
Installing:
vsftpd x86_64 2.2.2-24.el6 base 156 k
Transaction Summary
===============================================================================================
Install 1 Package(s)
Total download size: 156 k
Installed size: 340 k
Downloading Packages:
vsftpd-2.2.2-24.el6.x86_64.rpm | 156 kB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : vsftpd-2.2.2-24.el6.x86_64 1/1
Verifying : vsftpd-2.2.2-24.el6.x86_64 1/1
Installed:
vsftpd.x86_64 0:2.2.2-24.el6
Complete!
[root@linuxidc ~]# cd /etc/vsftpd/
[root@linuxidc vsftpd]# cp vsftpd.conf vsftpd.conf-bak
[root@linuxidc vsftpd]# vim vsftpd.conf
修改如下内容:
anonymous_enable=YES —>anonymous_enable=NO
#chroot_list_enable=YES —> chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list —> chroot_list_file=/etc/vsftpd/chroot_list
假定我们需要登录的用户为 linuxidc, 需要上传下载的目录为 /data
[root@linuxidc vsftpd]# mkdir /data
[root@linuxidc vsftpd]# useradd -d /data linuxidc
useradd: warning: the home directory already exists. #此报错提示可以忽略,因为上面已经新建了 linuxidc 的家目录
Not copying any file from skel directory into it.
[root@linuxidc vsftpd]# chsh -s /sbin/nologin linuxidc
Changing shell for linuxidc.
Shell changed.
[root@linuxidc data]# echo RedHat |passwd –stdin linuxidc
Changing password for user linuxidc.
passwd: all authentication tokens updated successfully.
[root@linuxidc vsftpd]# cat /etc/passwd
linuxidc:x:500:500::/data:/sbin/nologin
[root@linuxidc vsftpd]# vim /etc/vsftpd/chroot_list
linuxidc #保存
[root@linuxidc vsftpd]# service vsftpd restart
Shutting down vsftpd: [FAILED]
Starting vsftpd for vsftpd: [OK]
三、测试
[root@linuxidc vsftpd]# cd /data/
[root@linuxidc data]# touch aa bb cc
[root@linuxidc data]# service vsftpd restart
此时我们可以正常从 ftp 服务器上面下载文件,但是上传文件会有如下报错:
解决方法:
[root@linuxidc data]# ll -d /data
drwxr-xr-x. 2 root root 4096 Nov 10 14:24 /data #该目录权限是属于 root 用户,root 组
修改目录权限如下
[root@linuxidc data]# chown linuxidc:root /data
[root@linuxidc data]# service vsftpd restart
再次测试,已经可以正常上传到 /data 目录下文件了,至此 vsftpd 服务器搭建完成。(同样适用于 CentOS 7.x)
[root@linuxidc data]# ll
total 32
-rw-r--r--. 1 root root 0 Nov 10 14:24 aa
-rw-r--r--. 1 root root 0 Nov 10 14:24 bb
-rw-r--r--. 1 root root 0 Nov 10 14:24 cc
-rw-r--r--. 1 linuxidc biezz 28715 Nov 10 14:43 SSJ.txt
附:Linux 下上传和下载
[root@linuxidc /]# rpm -qa |grep lftp
lftp-4.4.8-8.el7_3.2.x86_64 #检查是否有安装 lftp, 如果没有请用 YUM 安装 lftp
[root@linuxidc ~]# touch bie
[root@linuxidc ~]# lftp linuxidc@192.168.23.129
口令:
lftp linuxidc@192.168.23.129:~> put bie #上传文件
lftp linuxidc@192.168.23.129:/>
[root@linuxidc ~]# cd /
[root@linuxidc /]# lftp linuxidc@192.168.23.129
口令:
lftp linuxidc@192.168.23.129:~> mirror -R ops/ #上传目录
Total: 1 directory, 1 file, 0 symlinks
New: 1 file, 0 symlinks
查看 ftp 服务器端:
[root@linuxidc data]# ll
total 36
-rw-r–r–. 1 linuxidc biezz 0 Nov 10 15:37 bie
drwxr-xr-x. 2 linuxidc biezz 4096 Nov 10 15:41 ops
-rw-r–r–. 1 linuxidc biezz 28715 Nov 10 14:43 SSJ.txt
[root@linuxidc data]# mkdir test
再次切回到客户端:
[root@linuxidc /]# cd /ops
lftp linuxidc@192.168.23.129:~>
lftp linuxidc@192.168.23.129:~> get SSJ.txt #下载文件
28715 bytes transferred
lftp linuxidc@192.168.23.129:/> mirror test/ #下载目录
Total: 1 directory, 0 files, 0 symlinks
[root@linuxidc ops]# ll
总用量 32
-rw-r–r–. 1 root root 0 12 月 14 19:23 bie
-rw-r–r–. 1 root root 28715 11 月 10 14:43 SSJ.txt
drwxr-xr-x. 2 root root 6 12 月 14 19:30 test
更多 Vsftpd 相关教程见以下内容:
Linux CentOS 6.5 下搭建 vsftpd ftp 服务器 http://www.linuxidc.com/Linux/2016-07/133319.htm
CentOS 安装 vsftpd-3.0.2 及安全配置 http://www.linuxidc.com/Linux/2016-12/138040.htm
openSUSE 13.2/13.1 下安装配置 FTP 服务器 vsftpd http://www.linuxidc.com/Linux/2014-12/110070.htm
CentOS7 基于虚拟用户的 vsftpd http://www.linuxidc.com/Linux/2016-11/137150.htm
Ubuntu 14.04 配置 vsftpd 实现 FTP 服务器 – 通过 FTP 连接 AWS http://www.linuxidc.com/Linux/2016-08/133933.htm
FTP 协议详解与 vsftpd 在 Linux 上的安装配置 http://www.linuxidc.com/Linux/2016-09/134831.htm
CentOS 6.7 安装 vsftpd 服务器 http://www.linuxidc.com/Linux/2017-04/142612.htm
CentOS 7.3 安装配置 Vsftpd 文件服务器 http://www.linuxidc.com/Linux/2017-06/144886.htm
Vsftpd3.0–FTP 服务器搭建之本地用户篇 http://www.linuxidc.com/Linux/2017-04/142699.htm
CentOS7 基于虚拟用户的 vsftpd http://www.linuxidc.com/Linux/2016-11/137150.htm
Ubuntu 16.04 下 vsftpd 安装配置实例 http://www.linuxidc.com/Linux/2017-06/144807.htm
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-12/149502.htm