一、实验要求
【要求】
任务一:
1、 建立一台Linux下的FTP服务器,IP地址为192.168.XX.16(XX为学号后两位)。
2、 允许匿名访问FTP服务器;匿名用户访问的根目录为var/ftp/doc
3、 匿名用户不能上传文件,只可以下载文件的权限;
4、 FTP服务器能够接受最大的连接数为100,同一IP的连接数为2;
5、 允许本地用户访问FTP服务器;设定本地用户test被约束在自己的主目录;
任务二:
1、 建立一个基于IP地址的虚拟Web站点,IP地址有192.168.XX.6和192.168.XX.8(XX为学号后两位),第一个站点主目录为var/www/www1,并且192.168.XX.0/24子网可访问;第二个站点主目录为var/www/www2,并建立允许来自192.168.XX.0/24和com.cn域的客户访问。
任务三:
1、 建立一台Web服务器,假定服务器有多个IP地址,有一IP地址为192.168.XX.4(XX为学号后两位)。
2、 设置文档主目录var/www/myweb
3、 设置Web服务器只监听192.168.XX.4的80端口和81端口
4、 设置文档主目录缺省打开文档为index.php、index.jsp、index.html和index.htm
5、 设置默认字符集为GB2312
6、 为站点建立虚拟目录var/www/OA,别名为OA
7、 自己动手写一个简单页面文件index.htm,在客户端计算机访问验证。
实现过程
任务一
(0)要求
1、 建立一台Linux下的FTP服务器,IP地址为192.168.30.16(XX为学号后两位)。
2、 允许匿名访问FTP服务器;匿名用户访问的根目录为var/ftp/doc
3、 匿名用户不能上传文件,只可以下载文件的权限;
4、 FTP服务器能够接受最大的连接数为100,同一IP的连接数为2;
5、 允许本地用户访问FTP服务器;设定本地用户test被约束在自己的主目录;
(1)下载包
rpm -q ftpd 检查是否下载完成
yum -y install ftpd 下载ftpd包
(2)修改配置文件
打开计算机文件vsftpd.conf对配置文件的编辑修改。方法如下:
1.anonymous_enable = yes ------------->>[允许匿名用户登录]
2.anon_upload_enable = no------->>(禁止匿名用户上传文件)
3.anon_world_readable_only = yes------>>(允许匿名用户下载文件)
4.max_clints = 100
max_per_ip = 2----------->>【FTP服务器能够接受最大的连接数为100,同一IP的连接数为】
5.anon_root=/var/ftp/doc---------->>匿名用户访问的根目录为var/ftp/doc
将chroot_local_user 设置为NO
将chroot_list_enable 设置为YES
chroot_local_user=NO 表示,(全局性)将所有用户访问范围限制在主目录,YES为限制 NO表示不限制。
chroot_list_enable=YES 表示,是否启用list 列表里的用户作为例外。默认为不限制
【允许本地用户访问FTP服务器;设定本地用户test被约束在自己的主目录】
allow_writeable_chroot = yes
allow writeable chroot=yes的意思是允许在chroot环境中创建可写文件。
(3)test用户约束
按照实验要求,新建/var/ftp/doc文件夹,并且在这个目录中创建新的用户test。
设定本地用户test被约束在自己的主目录
重启vsftpd服务,关闭防火墙,方便后续实验。
(4)IP地址
按照实验要求,配置IP地址为192.168.30.16
(4)实验测试【关键】
看是否虚拟机ping的通物理机【192.168.30.2】
看是否物理机ping的通虚拟机【192.168.30.16】
【关键】
输入ftp,连接到虚拟机【192.168.30.16】
变换为已经被授权特权的test用户,输入pwd发现为“/”,所以说被限制在根目录
而其他没有在chroot-list中的用户进行同样操作后发现不为‘/’,所以说没有被限制
测试匿名用户,输入ftp://192.168.30.16/发现不用密码就可以登录,但是不能上传只能下载,成功!
任务二&三
(0)要求
【任务二要求】
1、 建立一个基于IP地址的虚拟Web站点,IP地址有192.168.30.6和192.168.30.8(XX为学号后两位)
2、第一个站点主目录为var/www/www1,并且192.168.30.0/24子网可访问;
3、第二个站点主目录为var/www/www2,并建立允许来自192.168.30.0/24和com.cn域的客户访问。
【任务三要求】
1、 建立一台Web服务器,假定服务器有多个IP地址,有一IP地址为192.168.30.4(XX为学号后两位)。
2、 设置文档主目录var/www/myweb
3、 设置Web服务器只监听192.168.30.4的80端口和81端口
4、 设置文档主目录缺省打开文档为index.php、index.jsp、index.html和index.htm
5、 设置默认字符集为GB2312
6、 为站点建立虚拟目录var/www/OA,别名为OA
7、 自己动手写一个简单页面文件index.htm,在客户端计算机访问验证。
(1)下载包
yum -y install httpd 下载httpd包
rpm -q httpd 检查是否下载完成
(2)检验是否完成安装
systemctl start httpd.service 启用后打开浏览器,输入默认127.0.0.1,假如有图像就是安装完成
systemctl stop httpd.service --测试完毕,停止httpd.service
setenforce 0 --关闭防火墙
(3)输入ifconfig 查看系统
(4)【实验二】采用虚拟网卡的方法配置多个ip地址
ifconfig ens33:1 192.168.30.4【按实验3中要求】
ifconfig ens33:2 192.168.30.6【按实验2要求】
ifconfig ens33:3 192.168.30.8【按实验2要求】
(5)【实验三】更改httpd.conf中的文件
更改添加文件/etc/httpd/conf/httpd.conf中的文件
1、使用alias命令,设置别名为"OA"
2、设置默认字符集为GB2312
3、 为站点建立虚拟目录var/www/OA
1、文档主目录var/www/myweb
Web服务器只监听192.168.30.4的80端口和81端口
配置主目录为/var/www/myweb
档主目录缺省打开文档为index.php、index.jsp、index.html和index.htm
(6)【实验二】配置www1和www2
新建立/etc/httpd/conf.d/a.conf并在其中添加192.168.30.6和192.168.30.8的相关配置
【要求】:
1、var/www/www1,192.168.30.0/24子网可访问;
2、var/www/www2,建立允许来自192.168.30.0/24和com.cn域的客户访问。
(7)新建立四个文件方便后续展示
/var/www/OA
/var/www/www1
/var/www/www2
/var/www/www/myweb
建立好了之后要建立其中的提示文字:eg:比如说www1文件中有“www1”
(8)配置OA目录的权限文件.htaccess
AuthName "Testing"----------------------------------【提示信息】
AuthType Basic----------------------------------------【认证类型】
AuthuserFile "/etc/httpd/conf/OAuser"------【保存用户名和密码的文件位置】
Require user admin-----------------------------------【只有用户“admin”才能够访问】
(9)配置OAuser列表中admin用户的密码
(10)使用命令 httpd -t 查看是否配置完成
如说完成,则会显示“Syntax OK”
然后关闭防火墙,重新启动 httpd.service
(11)测试实验结果
这时候需要登录,输入用户名admin和密码后可以看到"OA"
实验中没有提到的知识点/命令
✓/etc/vsftpd/vsftpd.conf文件的默认内容如下
✓user_list文件
➢ 该文件存放于/etc/vsftpd目录下,与ftpusers的 内容一样,该文件可以用来设置黑白名单。但是, 需要在vsftpd.conf主配置文件中设定
“userlist_deny=YES”有效后,user_list文件才 表示被拒绝访问ftp的用户列表,如果在主配置文 件中设定“userlist_deny=NO”的时候,文件中 的用户列表就表示允许访问ftp的用户
(1)匿名用户服务器
anonymous_enable=YES
控制是否允许匿名用户登入,YES?为允许匿名登入,NO?为不允许。默认值为YES。
local_enable=YES
控制是否允许本地用户登入,YES?为允许本地用户登入,NO为不允许。默认值为YES。
write_enable=YES
是否允许登陆用户有写权限。属于全局设置,默认值为YES。
local_umask=022
本地用户新增文件时的umask值。默认值为022。
anon_upload_enable=YES
如果设为YES,则允许匿名登入者有上传文件(非目录)的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。默认值为NO。
anon_mkdir_write_enable=YES
如果设为YES,则允许匿名登入者有新增目录的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。默认值为NO。
connect_from_port_20=YES
指定FTP使用20端口进行数据传输,默认值为YES。
chown_uploads=YES
设置是否改变匿名用户上传文件(非目录)的属主。默认值为NO。
chown_username=whoever
设置匿名用户上传文件(非目录)的属主名。建议不要设置为root。
chroot_local_user=YES
用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。
chroot_list_enable=YES
设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。
chroot_list_file=/etc/vsftpd/chroot_list
用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。
write_enable=YES #全局设置,是否容许写入(无论是匿名用户还是本地用户,若要启用上传权限的话,就要开启他)
anon_root=(none) #匿名用户主目录chown_uploads=YES #所有匿名上传的文件的所属用户将会被更改成chown_username
chown_username=whoever #匿名上传文件所属用户名下面这四个主要语句控制这文件和文件夹的上传、下载、创建、删除和重命名。
anon_upload_enable=(yes/no); #控制匿名用户对文件(非目录)上传权限。
anon_world_readable_only=(yes/no); #控制匿名用户对文件的下载权限
anon_mkdir_write_enable=(yes/no); #控制匿名用户对文件夹的创建权限
anon_other_write_enable=(yes/no); #控制匿名用户对文件和文件夹的删除和重命名
(1)匿名用户服务器
使用命令# vi /etc/vsftpd/vsftpd.conf打开文档进行修改。
(2)真实用户服务器
✓设定local_enable=YES,许可Linux系统的真实用户可 以登录FTP,默认值为NO。
✓可以设定所有本地用户的根目录,比如设定 local_root=/tmp;
✓chroot_local_user=YES:所有用户都没有chroot权限, 都限制在自己的家目录为根目录 ✓allow_writeable_chroot=YES:所有的用户都将拥有 chroot权限
✓如果要求锁定根目录,还需要设定 chroot_list_enable=YES的时候,并且chroot_list_file 设置值为/etc/vsftpd/chroot_list文件,此时,文件中的 用户为被约束在根目录下,根目录为用户主目录。 2023/10/26 1
(3)虚拟用户服务器
(4)建立虚拟目录
建立虚拟目录,与Windows的IIS的FTP建 立概念一样,需要在共享的主目录下建立 一个子目录,将该子目录看成虚拟目录的 一个别名。比如:将/home/public映射到 ftp://主机名/public 的子目录public中,此 时访问ftp://主机名/public就如同访问 /home/public。此时同样要注意目录权限 问题。
阿帕奇直升机突突突
(1)Apache的相关文件和目录
5、用户认证