课程要求
1. 设置vsftpd服务匿名用户能够对/var/ftp/pub/目录有上传下载的权限。
2. 系统用户能够访问家目录,上传下载删除
3. 除了系统用户student有chroot的权限,其他系统用户没有chroot的权限
基础概念
- FTP 是File Transfer Protocol(文件传输协议)
- 运行方式分两种:主动和被动
主动FTP:
1. 命令连接:客户端 >1023端口 -> 服务器 21端口
2. 数据连接:客户端 >1023端口 <- 服务器 20端口
被动FTP:
1. 命令连接:客户端 >1023端口 -> 服务器 21端口
2. 数据连接:客户端 >1023端口 -> 服务器 >1023端口
3.VSFTPD 软件 “very secure FTP daemon(非常安全的FTP进程) www.vsftpd.org
Vsftpd是一种在GPL许可下开放源代码的FTP服务器,用于多种UNIX系统和Linux系统。Vsftpd也称为Very Secure FTP Daemon,它是一种安全、快速、稳定的FTP服务器,能够高效地处理大量的并发连接。
4.用户类型:真实用户\匿名用户
真实用户–系统用户
* /etc/passwd里的用户
* 默认的主目录就是用户家目录
匿名用户–Anonymous(匿名)
* 在FTP服务器中没有指定帐户
* 默认的访问目录是公开的资源
项目实践1: 设置vsftpd服务匿名用户能够对/var/ftp/pub/目录有上传下载的权限
rhel6 服务器端:
软件名 vsftpd
配置文件 /etc/vsftpd/vsftpd.conf
service vsftpd
daemon vsftpd
监听端口 21
数据文件 /var/ftp
rhel7 客户端
1.浏览器 firefox
ftp://172.25.0.11/
2.lftp工具
软件 lftp
命令 lftp
匿名用户 lftp 172.25.0.11
系统用户 lftp student@172.25.0.11
下载 get
上传 put
=================================
服务器:
让匿名用户具有上传权限
1.配置文件 anon_upload_enable=YES
2.目录的权限ugo 一般权限、特殊权限、隐藏权限attr、acl访问控制列表
3.selinux—需要安装一个软件 setroubleshoot来分析selinux的日志
selinux日志的存放位置/var/log/audit/audit.log
分析日志 sealert -a /var/log/audit/audit.log
# semanage fcontext -a -t public_content_rw_t /var/ftp/pub
# restorecon -R -v /var/ftp/pub
# setsebool -P allow_ftpd_anon_write 1
如何查看安全上下文 ll -Z file~~~~~~~~~
项目实践2: 真实用户(系统用户)能够访问家目录,上传下载删除
1.配置文件
2.目录的权限ugo
3.selinux
setsebool -P ftp_home_dir 1
项目实践3: 除了系统用户student有chroot的权限,其他系统用户没有chroot的权限
||chroot_local_user=YES | chroot_local_user=NO|
|:--|:--|:--|
|chroot_list_enable=YES |不能换根,有例外| 都能换根,有例外|
|chroot_list_enable=NO |不能换根,没例外| 都能换根,没例外|
如果指定 chroot_list_enable=YES
则需要指定文件位置 chroot_list_file=/etc/vsftpd/chroot_list
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
/etc/vsftpd/chroot_list
student
==============================================
综合项目1:
配置vsftpd使student用户可以通过ftp上传下载文件自己家目录中的文件,同时只对student用户启用chroot功能,并且允许匿名用户上传文件到
/var/ftp/test目录下。
综合项目2:
通过APACHE搭建两个虚拟主机 www.batmanX.com www.supermanX.com
要求
1.访问网址 www.batmanX.com/justice 时需要用户认证,用户batman,密码test123可以访问
2.访问网址 www.supermanX.com 时,只允许172.25.0.10访问,其他主机都不允许