1、建立httpd服务,要求:
(1) 提供两个基于名称的虚拟主机:
www1.stuX.com,页面文件目录为/web/vhosts/www1;错误日志为/var/log/httpd/www1/error_log,访问日志为/var/log/httpd/www1/access_log;
www2.stuX.com,页面文件目录为/web/vhosts/www2;错误日志为/var/log/httpd/www2/error_log,访问日志为/var/log/httpd/www2/access_log;
(2) 通过www1.stuX.com/server-status输出其状态信息,且要求只允许提供账号的用户访问;
(3)
www1不允许192.168.1.0/24网络中的主机访问;
2、为上面的第2个虚拟主机提供https服务,使得用户可以通过https安全的访问此web站点;
(1) 要求使用证书认证,证书中要求使用国家(CN),州(Beijing),城市(Beijing),组织为(MageEdu);
(2) 设置部门为Ops, 主机名为www2.stuX.com;
在CentOS7中安装好httpd:yum install –y httpd
1题中(1)要求提供两个基于名称的虚拟主机,并重新制定页面的文件目录、错误和访问日志的路径:
为实现该要求的思路为:1>首先创建目录,和日志相应的文件
2>因为CentOS7中httpd高度支持模块化,可以直接创建两个单独的模块作为虚拟主机的配置文件:
在/etc/httpd/conf.d/ 目录下 mkdir www1.conf 同理创建www2.conf,之后根据需求修改主配置文件/etc/httpd/conf/httpd.conf中相应的设置
(2)中要求通过www1.stuX.com/server-status输出其状态信息,需要加入server-status模块,限制网段中主机的访问,需要加入RequireAll模块;
(3)中要求到限制网段中的主机访问,在此可以放入单独的一个配置文件中
建议试验过程中将SElinux关掉 setenforce 0 防止出现错误
实验步骤:
1、mkdir –p /web/vhosts/www1 /web/vhosts/www2 ; mkdir –p /var/log/httpd/www{1,2} touch /var/log/httpd/www{1,2}/{error_log,access_log};在各自目录下编辑index.html文件,作为测试以区别
2、mkdir /etc/httpd/conf.d/www1.conf
vim /etc/httpd/conf.d/www1.conf
3、cp –a www1.conf www2.conf 将其中对应于www2的配置修改一下即可
4、为了能够通过域名访问vim /etc/httpd/conf/httpd.conf
将其中的ServerNmae修改为本地服务器的IP地址
5、httpd –t 检查配置文件是否有语法错误,显示如下则正常
6、开启服务:systemctl start httpd.service;ss -ntl 查看80端口是否打开
7、清空防火墙规则 iptables -F
8、加入状态信息模块 vim /etc/httpd/conf.d/www1.conf
9、加入访问控制模块vim /etc/httpd/conf.d/www1.conf
10、提供账号访问,需要先创建账号文件
htpasswd -c /etc/httpd/conf.d/.htpasswd 用户名
htpasswd -b /etc/httpd/conf.d/.htpasswd 用户名 密码
11、编辑访问控制文件 vim /etc/httpd/conf.d/admin.conf
12、在这里我用Windows操作系统访问主页,需要修改hosts文件,加入域名解析,文件位置C:\Windows\System32\drivers\etc 用记事本打开,保存即可
在CentOS6中配置题1:思路同上,这里要注意将/etc/httpd/conf/httpd.conf 中DocumentRoot选项注释掉
将NameVirtualHost 后添加IP地址
题2要求提供https服务:
思路:为服务器申请数字证书,配置httpd支持使用ssl,及使用的证书
实验步骤:
1、cd /etc/pki/CA ;(umask 077; openssl genrsa -out private/cakey.pem 2048)生成私钥
2、openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 365 生成自签证书
3 touch index.txt serial;echo 01 > serial
4、httpd服务器端:yum install -y mod_ssl;mkdir /etc/httpd/ssl;cd /etc/httpd/ssl;
(umask 077; openssl genrsa -out httpd_key.pem 1024)
5、openssl req -new -key httpd_key.pem -out httpd_csr.pem
6、scp httpd_csr.pem 172.16.251.57:/tmp
7、CA签证服务器端:
8、scp certs/httpd_crt.pem 172.16.250.31:/etc/httpd/ssl
9、vim ssl.conf
将其修改为你的https服务要指向的虚拟主机
将签发的证书以及私钥的位置写入
10、将CA签发的cacert.pem证书导入浏览器后即可安全浏览
原创文章,作者:Immortals、zcy,如若转载,请注明出处:http://www.178linux.com/77589