linux系统搭建ftp服务器--只给某个用户访问其默认目录下的文件

1、环境:

window操作系统中安装FlashFXP 软件或xftp;
服务器端的操作系统为centos8;

2、检查安装vsftpd软件

查看所有的安装的软件包 并在结果中查找包含vsftp 的文件

rpm -qa | grep vsftpd

如果没有装则使用yum命令安装

yum -y install vsftpd

3、创建用户

在/var目录下创建www文件,
使用useradd命令:创建用户feng并指定用户目录为/var/www/feng

useradd -d /var/www/feng feng 

#(回车)给用户feng设置登录密码

passwd feng   

在/var/www/feng 目录下创建一个site文件夹一个da文件夹

用于存储项目配置文件,需要在nginx.conf文件中引入site文件下的.conf文件

mkdir site

用于放项目内容

mkdir da

查看新创建的用户的信息
tail:默认显示指定文件的末尾10行

tail /etc/passwd

或:

cat /etc/passwd
/etc/passwd文件存放的是用户的信息,由6个分号组成的7个信息,解释如下
(1):用户名。
(2):密码(已经加密)
(3):UID(用户标识),操作系统自己用的
(4):GID组标识。
(5):用户全名或本地帐号
(6):开始目录
(7):登录使用的Shell,就是对登录命令进行解析的工具。

4、配置/etc/vsftpd/vsftpd.conf文件

查看下该文件里有些啥

cat /etc/vsftpd/vsftpd.conf

切换当前工作目录到/etc/vsftpd

cd /etc/vsftpd

配置vsftpd.conf 锁定根目录

vim vsftpd.conf
#本地用户登录后自动转到的ftp根目录
local_root= /var/www
#将所有用户都不被限定在指定的主目录内
chroot_local_user=NO
#启用列外的用户列表
chroot_list_enable=YES
#指定列外的用户列表文件--指定的用户列表,这些用户作为“例外”,被限定在指定的主目录
chroot_list_file=/etc/vsftpd/chroot_list

在/etc/vsftpd/下建立文件chroot_list文件,不希望使用者在ftp 时能够切换到上一层目录/var/www

vim /etc/vsftpd/chroot_list

在文件中添加用户名,然后可以禁止了访问上一层了
例如:username 多个用户请换行

在这里插入图片描述

配置完之后重启vsftpd服务
查看vsftpd 服务的运行状态

systemctl status vsftpd

如果最后一条状态是stoped则启动vsftpd

systemctl start vsftpd 

如果最后一条状态是started则重启vsftpd

systemctl restart vsftpd 

在window系统中使用FlashFXP 客户端登录或者用xftp登录

5、配置文件夹权限

切换工作目录到/var/www

cd /var/www

查看文件夹中所包含的文件的信息—查看文件夹属于用户,属于哪个用户组,

ll

改文件夹的用户权限

 chown feng:feng feng
 chmod 700 feng

这个时候 他们可以在各自拥有的文件夹这创建文件 ,但不可以到对方的文件夹中创建文件

权限值的解读 文件夹权限:
r==>可读 w==>可写 x==>可执行
r=4 w=2 x=1
777 代表 rwxr-rwx-rwx 所有用户都可读可写可执行。

用户登录xftp测试能否打开其他用户的文件。

结果:feng用户只可以对feng目录下的文件进行操作(上传、下载、修改),可以访问其他目录文件,但是,对于其他目录文件只能查看,不能修改。

((注意)):如果需要让该用户只可以看到其目录下的内容,不可以查看,且不能访问其他目录文件,请看:https://blog.csdn.net/weixin_38797742/article/details/109306322

6、vsftp设置不同用户登录ftp的根目录不同

vim vsftpd.conf

添加如下配置

user_config_dir=/etc/vsftpd/userconfig 用户配置目录

mkdir userconfig

cd userconfig/

[root@localhost userconfig]# vi 8601 (文件名就是用户名)

local_root=/app/printfile/8601 (设置用户登录的目录)

6,额外

创建某个用,可以操作linux修改文件夹及其下面所有文件的权限:
chmod -R 777 www/
-R参数是递归 处理目录下的所有文件以及子文件夹
777是变更后的权限表示(所有用户有读和写以及执行的权限)
这样www文件夹下的文件就可以被所有用户修改了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值