RHCE--Linux--网站需求

1.基于域名www.openlab.com可以访问网站内容为 welcome to openlab!!!

2.给该公司创建三个子界面分别显示学生信息,教学资料和缴费网站,基于www.openlab.com/student 网站访问学生信息,www.openlab.com/data网站访问教学资料,网站访问缴费网站(http://www.openlab.com/money网站访问缴费网站)。

3.要求 (1)学生信息网站只有song和tian两人可以访问,其他用户不能访问。

(2)访问缴费网站实现数据加密基于https访问。

确保服务器的端口能正常访问(允许端口)

#思路
1.实现网站主界面首页主界面的的正常使用
2.考虑子界面
3.子界面的限制

#操作:
1.考虑防火墙(有明文协议,也有加密协议)--确保均能访问--将端口设置为允许访问即可
2.配置web服务--基于nginx实现
3.启动服务进行测试
4.创建子界面,配置访问
1.考虑防火墙(有明文协议,也有加密协议)--确保均能访问--将端口设置为允许访问即可
[root@localhost ~]# systemctl restart firewalld		--这条命令将会重启firewalld服务,使其重新加载配置文件并生效
[root@localhost ~]# firewall-cmd --list-all		--用于查看防火墙的所有规则和配置信息

public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: bb bgp dhcpv6-client https mdns mountd nfs ntp rpc-bind ssh
  ports: 80/tcp 22/tcp
  protocols: 
  forward: yes
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 
  
#如果没有上述端口可以做以下配置
#配置80和22端口
[root@localhost ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent
[root@localhost ~]# firewall-cmd --zone=public --add-port=22/tcp --permanent

#根据题目要求,还需要有https访问
[root@localhost ~]# firewall-cmd --add-service=https --permanent

#配置完成之后,需要重载生效
[root@localhost ~]# firewall-cmd --reload		--重新加载防火墙配置,使新的配置生效


2.服务端
[root@localhost ~]# yum install nginx -y		--web服务基于nginx实现,此命令安装nginx
[root@localhost ~]# vim /etc/nginx/conf.d/openlab.conf	--创建子配置文件openlab.conf
#服务配置内容
server {
		listen       192.168.xxx.xxx<本地IP>:80;
        server_name  www.openlab.com;		--首页
        root         /www/openlab;
        location /student {					--student
                index index.html;
                alias /www/openlab/student;
                auth_basic on;
                auth_basic_user_file .etc/nginx/users;
       }
 }
 server {
		listen       192.168.xxx.xxx<本地IP>:443 ssl;
        server_name  www.openlab.com;			--money
        root         /www;
        ssl_certificate "/etc/pki/tls/certs/openlab.crt";
		ssl_certificate "/etc/pki/tls/private/openlab.key";
        location / {
                index index.html;
       }
 }

[root@localhost ~]# mkdir /www/openlab -pv		--创建多级目录 -- -p选项可以确保如果目录已经存在,不会报错。使用-v选项可以显示创建的每个目录

#1.基于域名[www.openlab.com](http://www.openlab.com)可以访问网站内容为 welcome to openlab!!!
[root@localhost ~]# echo www.openlab.com\!\!\! > /www/openlab/index.com		--写入所要求的界面内容 
3.客户端
[root@localhost ~]# vim /etc/hosts		--实现本地主机域名解析
#写入以下内容
192.168.xxx.xxx<本地IP> www.openlab.com		

#确保该文件可以被HTTP服务器进程访问和提供给客户端
[root@localhost ~]# semanage fcontext -a -t httpd_sys_content_t /www/openlab/index.html		--将/www/openlab/index.html文件的安全上下文设置为httpd_sys_content_t类型

#客户端访问测试
[root@localhost ~]# curl www.openlab.com		--获取www.openlb.com网页的内容
4.创建子界面,配置访问
[root@localhost ~]# chcon -a -t httpd_sys_content_t > /www -R		--满足程序加载的标签类型

#创建三个子界面
[root@localhost ~]# mkdir /www/openlab/{data,money,student} -pv
[root@localhost ~]# echo this is data > /www/openlab/data/index.html
[root@localhost ~]# echo this is money > /www/openlab/money/index.html
[root@localhost ~]# echo this is student > /www/openlab/student/index.html

#安装所需要的httpd-tools包
[root@localhost ~]# yum install httpd-tools

#创建密钥和私钥文件
[root@localhost ~]# openssl genrsa -aes128 2048 > /etc/pki/tls/private/openlab.key
[root@localhost ~]# openssl req -utf8 -new -key /etc/pki/tls/private/openlab.key -x509 -days 365 -o

#指定用户验证文件
[root@localhost ~]# htpasswd  -c /etc/nginx/users song
[root@localhost ~]# htpasswd   /etc/nginx/users tian

#测试是否能访问成功
[root@localhost ~]# curl www.openlab.com/student/ -u song:123
this is student
[root@localhost ~]# curl www.openlab.com/student/ -u tian:123
this is student

你可能感兴趣的:(linux,运维,服务器)