vsftp服务共享多个目录

avatar 2020年10月23日18:08:09 评论 1,847 次浏览

我们搭建的vsftp服务,在共享目录里只能设置一个目录,导致在使用的时候想共享多个路径下的目录就不能使用了。尝试着做个软连接,并且赋予权限,还是不能使用。尝试使用挂载的方式,把目录挂载到vsftp共享路径下的一个目录里。下面看一下我的目录挂载方法:

[root@wulaoer ]# vim /etc/vsftpd/vsftpd.conf 
..................................
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=YES
tcp_wrappers=YES
local_root=/apps/work/data
chroot_local_user=no
pasv_enable=YES
...............................

我这里在vsftp中设置的共享目录是/apps/work/data,下面我还想通过vsftp上传到/home目录下的wulaoer目录中。但是我的vsftp没有这个目录也没有权限。怎么办呢。我在/apps/work/data下创建一个目录,并命名为wulaoer,并且在home目录下也创建一个wulaoer目录。

[root@wulaoer ]# mkdir /apps/work/data/wulaoer
[root@wulaoer ]# mkdir /home/wulaoer

创建好了,下面就做目录挂载,我把/home/wulaoer目录挂载搭到/apps/work/data/wulaoer上。

[root@wulaoer ]# mount --bind /home/wulaoer /apps/work/data/wulaoer
[root@wulaoer ]# chown -R wulaoer:wulaoer wulaoer
[root@wulaoer ]#  ll /home/
total 20
drwxr-xr-x 2 wulaoer wulaoer 4096 Oct 23 17:46 wulaoer

挂载后需要给目录赋予一下权限,这样vsftp用户就有权限写入了,如果不赋予权限也是上传不了的。赋予权限后home目录下的目录也会跟着改变。

下面尝试着上传文件。看看是否有权限上传

[root@wulaoer ]# ll
total 4720
-rw------- 1 root root       0 Oct 22 15:32 ipp.txt
[root@wulaoer ]# ftp -i 10.17.20.93
Connected to 10.17.20.93 (10.17.20.93).
220 (vsFTPd 3.0.2)
Name (10.17.20.93:root): ienglish
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls  #查看远程目录
227 Entering Passive Mode (0,0,0,0,86,99).
150 Here comes the directory listing.
drwxr-xr-x    2 2002     2002         4096 Oct 23 09:49 wulaoer
226 Directory send OK.
ftp> cd wulaoer #进入到远程目录中
250 Directory successfully changed.
ftp> !ls  #查看当前目录下的文件
ipp.txt  
ftp> put ipp.txt  #上传文件
local: ipp.txt remote: ipp.txt
227 Entering Passive Mode (0,0,0,0,95,27).
150 Ok to send data.
226 Transfer complete.
ftp> ls   #查看远程目录文件
227 Entering Passive Mode (0,0,0,0,82,19).
150 Here comes the directory listing.
-rw-r--r--    1 2002     2002            0 Oct 23 09:55 ipp.txt
226 Directory send OK.

同一个用户可以上传多个路径下的文件了,这样是否可以在发布的时候就不需要根据不同的用户创建不同的目录了,也不用指定不同的目录,只需要在vsftp指定的目录下给不同的目录赋予不同用户的权限即可。这样可以多个用户访问不同的目录了。

[root@wulaoer ]# umount /apps/work/data/wulaoer

如果不想使用,可以卸载,这里卸载使用的umount,不能直接使用rm删除。如果强制删除会报错,也不回对文件有影响。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: