系统相关
首页 > 系统相关> > bilibili_Linux网络基础7_VSFTP服务

bilibili_Linux网络基础7_VSFTP服务

作者:互联网

第七章 VSFTP服务

第一节 FTP简介与原理

FTP简介
FTP(File Transfer Protocol)中文称为“文件传输协议”。用于Internet上的控制文件的双向传输。

主动模式
主动模式:服务的从20端口主动向客户端发起连接
在这里插入图片描述
被动模式
被动模式:服务端在指定范围内某个端口被动等待客户端连接
在这里插入图片描述
主动模式不好实验,客户端不在管理员的控制范围之内,FTP连接有可能被客户端的防火墙中断。

端口
FTP连接端口

第二节 FTP相关文件

常见的FTP服务器程序

安装
Vsftpd-2.2.2-11.el6.i686.rpm

相关文件

FTP相关用户

注意事项

第三节 配置文件详解

/etc/vsftpd/vsftpd.conf

常用全局配置

被动模式

常用安全配置

第四节 客户端使用

第五节 匿名用户访问

anonymous_enable=YES 允许匿名用户访问
#anon_upload_enable=YES 允许匿名用户上传
#anon_mkdir_write_enable=YES 允许匿名用户建立目录
#anon_umask 设置上传的默认文件权限(默认是600)

匿名用户如果想上传,先修改配置文件,还得修改服务器中/var/ftp目录中pub目录的权限,把这个目录的所有者修改为ftp用户 chown ftp /var/ftp/pub,不能直接把权限修改为777,这样有很大的安全隐患
注意事项:

第六节 本地用户访问

第一讲 本地用户基本设置

本地用户基本配置

把用户限制在家目录

chroot_local_user=YES
#开启用户目录限制(只有此行,把所有用户都限制在用户目录中)
在CentOS 7 中用yum下载的ftp,在这一步之后会报错
需要在配置文件中加入这条语句

allow_writeable_chroot=YES ##验证在vsftpd.conf中增加该项配置,vsftpd服务无法正常启动。

给一些人畅通无阻的权限的时候,需要把下面三条配置文件全打开

第二讲 用户访问控制

用户控制列表文件

访问控制
这几条配置文件没有写

不要把限制用户主目录和用户访问限制搞混
chroot_local_user=YES 用于把用户禁锢在主目录
uselist_enable=YES 用于用户访问控制

第七节 虚拟用户访问

第一讲 配置虚拟用户访问

配置虚拟用户登陆步骤

添加虚拟用户口令
vim /etc/vsftpd/vuser.txt
cangls 用户名
123 密码
bols 用户名
123 密码

生成虚拟用户口令认证文件

yum -y install db4-utils 如果没安装口令认证命令,需要安装
或者使用wget http://rpmfind.net/linux/centos/6.10/os/i386/Packages/db4-utils-4.7.25-22.el6.i686.rpm
安装
db_load -T -t hash -f /etc/vsftpd/vuser.txt
/etc/vsftpd/vuser.db 把文本文档转变为认证的数据库

编辑vsftpd的PAM认证文件

vim /etc/pam.d/vsftpd
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
注释掉其他的行,加入 这两行即可
注释掉其他行,可以禁止本地用户登陆,因为本地用户登陆时的验证依然依赖这个文件

建立本地映射用户并设置宿主目录权限

修改配置文件
vim /etc/vsftpd/vsftpd.conf,加入:

重启vsftpd服务,并测试
systemctl restart vsftpd.service
此时虚拟用户可以登陆,查看,下载,不能上传
默认上传文件的位置是宿主用户的家目录
权限使用的是匿名用户权限进行管理

调整虚拟用户权限

第二讲 为每个虚拟用户建立自己的配置文件,单独定义权限

可以给每个虚拟用户单独建立目录,并建立自己的配置文件。这样方便单独配置权限,并可以单独指定上传目录

修改配置文件
vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/vusers_dir
指定保存虚拟用户配置文件的目录

手工建立目录
mkdir /etc/vsftpd/vusers_dir

为每个虚拟用户建立配置文件
vim /etc/vsftpd/vusers_dir/cangls
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
允许此用户上传
local_root=/tmp/cangls
给cangls指定独立的上传目录

建立上传目录
mkdir /tmp/vcangls
chown vuser /tmp/vcangls/

如果不给bols指定单独的配置文件,则遵守主配置文件(/etc/vsftpd/vsftpd.conf)的权限

配置完效果如下:

第八节 总结

我是阿里云忠实用户!!!,我会在里面穿插基于阿里云CentOS7 FTP服务器搭建!!!!

匿名用户很简单,下载好启动服务就可以,不过非常不安全,
需要把匿名用户登陆修改为anonymous_enable=YES 默认即可,anon_upload_enable=YES 把匿名上传权限的注释去掉,
local_root=/var/ftp/,为匿名用户默认上传位置
修改/var/ftp/pub权限。允许匿名用户写入文件
,chmod o+w /var/ftp/pub/ 或者 chown ftp /var/ftp/pub,修改所有者,不能直接把权限修改为777,这样有很大的安全隐患

接着systemctl restart vsftpd.service重启服务即可
这种模式非常不安全,最好不要使用,这里只是介绍一下!!!!

所以只讲本地用户和虚拟用户
允许本地用户登陆

OK 这个服务器就搭建好啦!!!!大家辛苦了!

标签:enable,配置文件,etc,用户,bilibili,vsftpd,VSFTP,Linux,YES
来源: https://blog.csdn.net/aiqq136/article/details/113835415