Centos7安装vsftp服务,配置用户,并使用nginx开启访问

一、安装vsftpd和ftp客户端

1.安装vsftp

yum -y install vsftpd

在这里插入图片描述
可以看到安装成功,版本为3.0.2,安装成功之后默认是未启动的,我们需要手工启动

2.启动vsftp并设置为开机自启

systemctl start vsftpd

在这里插入图片描述

# 停止
systemctl stop vsftpd
# 重启
systemctl restart vsftpd

设置为开机自启动

systemctl enable vsftpd.service

3.测试ftp服务是否开启成功

启动成功后,使ftp客户端访问测试一下,需要先安装ftp客户端

yum -y install ftp
ftp localhost

用户名:ftp
密码:任意字符串(默认支持匿名访问)
ftp>dir 查看文件目录
在这里插入图片描述

二、配置用户和访问权限

1.配置vsftpd

cd /etc/vsftpd

在这里插入图片描述
编辑vsftpd.conf文件

vim vsftpd.conf

修改以下配置:

#不允许匿名访问
anonymous_enable=NO    
......
#限制用户通过ftp只能访问自己的主目录
chroot_local_user=YES
#是否开启例外名单
chroot_list_enable=NO
#例外名单的路径
chroot_list_file=/etc/vsftpd/chroot_list
#主目录允许写
allow_writeable_chroot=YES

chroot_local_user和chroot_list_enable的关联关系如下

chroot_local_user=YESchroot_local_user=NO
chroot_list_enable=YES所有ftp用户都被限定只能访问自己的主目录;chroot_list_file用于指定哪些用户不受此限制,即这些用户可以访问自己主目录外的目录所有ftp用户都可以访问自己主目录外的目录;chroot_list_file用于指定哪些用户不受此限制 ,即这些用户只能访问自己的主目录
chroot_list_enable=NO所有ftp用户都被限定只能访问自己的主目录;不存在例外情况,chroot_list_file无效所有ftp用户都可以访问自己主目录外的目录;不存在例外情况,chroot_list_file无效

如果不需要配置例外用户,则必须要把chroot_list_enable设置为NO,或者手动创建一个空的chroot_list
在这里插入图片描述
修改完配置文件后重启

systemctl restart vsftpd

2.新增FTP用户

#新增ftp用户ftpuser,设置其主目录/home/ftpuser
useradd -d /home/ftpuser ftpuser
#给用户ftpuser设置密码
passwd ftpuser
#限制用户只能用户ftp登录
usermod -s /sbin/nologin ftpuser

这个时候使用ftp客户端登录,有可能会提示登录失败
在这里插入图片描述
由于我们上面把用户shell设置为了/sbin/nologin,可以通过命令查看,但是/ect/shells里没有/sbin/nologin,需要手动添加

cat /etc/passwd

在这里插入图片描述

vim /etc/shells

添加一行/sbin/nologin
在这里插入图片描述

3.使用ftp客户端测试

#登录ftp服务
ftp localhost
#查看当前目录下的文件
ftp> dir
#切换到用户根目录,如果该用户允许访问主目录外的权限,则此运行此命令会访问到系统的根目录
ftp> cd /
#创建文件夹
ftp> mkdir test
#查看是否创建成功
ftp> dir

可以看到test文件夹创建成功在这里插入图片描述

三、配置nginx访问ftp文件

nginx安装可访问
https://blog.csdn.net/yuer5531/article/details/104629475
添加ftp目录到nginx配置,

		location ^~ /profiles/ {
            alias /home/ftpuser/;
        }

使用浏览器访问
http://localhost/profiles/test/1.jpg
即对应文件文件目录/home/ftpuser/test/1.jpg
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值