当前位置: 首页 > news >正文

网络服务(第三次作业)

综合练习:请给openlab搭建web网站,网站需求:

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

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

3.要求

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

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

第一步:准备工作

a.关闭防火墙及SELinux

[root@master ~]# systemctl stop firewalld
[root@master ~]# systemctl enable firewalld
Created symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service → /usr/lib/systemd/system/firewalld.service.
Created symlink /etc/systemd/system/multi-user.target.wants/firewalld.service → /usr/lib/systemd/system/firewalld.service.
[root@master ~]# systemctl status firewalld
○ firewalld.service - firewalld - dynamic firewall daemonLoaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)Active: inactive (dead)Docs: man:firewalld(1)
[root@master ~]# getenforce
Disabled

b.安装所需软件

[root@master ~]# yum install nginx mod_ssl httpd-tools -y
[root@master ~]# systemctl start nginx
[root@master ~]# systemctl enable nginx
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.

c.在windows的C:\Windows\System32\drivers\etc\hosts  文件进行映射

第二步:创建www.openlab.com网站

a.创建网页目录及网页

[root@master ~]# mkdir -p /www/openlab
[root@master ~]# echo "welcom to openlab" > /www/openlab/index.html

b.编辑nginx配置文件(在38行写入代码)

[root@master ~]# vim /etc/nginx/nginx.confserver {listen       80;server_name  www.openlab.com;root         /www/openlab;

c.重启nginx

[root@master ~]# systemctl restart nginx

d.在Windows端打开浏览器输入www.openlab.com测试

第三步:创建教学资料子网站www.openlab.com/data

a.创建网页目录及网页

[root@master ~]# mkdir /www/openlab/data
[root@master ~]# echo "data" > /www/openlab/data/index.html

b.编写nginx配置文件(在42行接着往后写)

[root@master ~]# vim /etc/nginx/nginx.confserver {listen       80;server_name  www.openlab.com;root         /www/openlab;
server {listen       80;server_name  www.openlab.com;root         /www/openlab;location /data {alias /www/openlab/data;index index.html index.htm;}}

c.重启nginx

[root@master ~]# systemctl restart nginx

d.在Windows端打开浏览器输入www.openlab.com/data测试

第四步:创建学生信息子网站www.openlab.com/student

a.创建网页目录及网页

[root@master ~]# mkdir /www/openlab/student
[root@master ~]# echo "student" > /www/openlab/student/index.html

b.创建学生song和学生tian并创建密码(song密码123456,tian密码654321)

[root@master ~]# useradd song
[root@master ~]# passwd song
更改用户 song 的密码 。
新的密码: 
无效的密码: 密码少于 8 个字符
重新输入新的密码: 
passwd:所有的身份验证令牌已经成功更新。
[root@master ~]# useradd tian
[root@master ~]# passwd tian
更改用户 tian 的密码 。
新的密码: 
无效的密码: 密码少于 8 个字符
重新输入新的密码: 
passwd:所有的身份验证令牌已经成功更新。

c.增加密码来控制访问

[root@master ~]# htpasswd -c /etc/nginx/passwd song
New password: 
Re-type new password: 
Adding password for user song
[root@master ~]# htpasswd  /etc/nginx/passwd tian
New password: 
Re-type new password: 
Adding password for user tian

d.编写nginx配置文件(设置访问网站时需要验证密码,并在48行接着往后写)

   
[root@master ~]# vim /etc/nginx/nginx.confserver {listen       80;server_name  www.openlab.com;root         /www/openlab;location /data {alias /www/openlab/data;index index.html index.htm;}location /student{alias  /www/openlab/student;index index.html index.htm;auth_basic "Please input password";auth_basic_user_file  /etc/nginx/passwd;}}

e.重启nginx

[root@master ~]# systemctl restart nginx

f.在Windows端打开浏览器输入www.openlab.com/student测试

song学生登录界面:

tian学生登录界面:

 

第五步:创建缴费子网站www.openlab.com/money

a.创建网页目录及网页

[root@master ~]# mkdir /www/openlab/money
[root@master ~]# echo "money"  > /www/openlab/money/index.html

b.在/etc/nginx目录下制作私钥文件money.key(密码为123456)

[root@master ~]# openssl genrsa -aes128 2048 > /etc/nginx/money.key
Generating RSA private key, 2048 bit long modulus (2 primes)
........................................................................+++++
...............................+++++
e is 65537 (0x010001)
Enter pass phrase:        #输入加密私钥的密码为123456
Verifying - Enter pass phrase:  #再输入一遍密码

c.制作证书

[root@master ~]# openssl req -utf8 -new -key /etc/nginx/money.key -x509 -days 365 -out /etc/nginx/money.crt
Enter pass phrase for /etc/nginx/money.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:86                              #国家代码
State or Province Name (full name) [Some-State]:guangxi           #省份
Locality Name (eg, city) []:guilin                                #城市
Organization Name (eg, company) [Internet Widgits Pty Ltd]:openlab#公司
Organizational Unit Name (eg, section) []:RHCE                    #部门
Common Name (e.g. server FQDN or YOUR name) []:master             #主机名
Email Address []:jun@qq.com                                       #邮箱

d.删除私钥需要验证的密码

[root@master ~]# cd /etc/nginx
[root@master nginx]# cp money.key money.key.org
[root@master nginx]# openssl rsa -in money.key.org -out money.key
Enter pass phrase for money.key.org:    #输入私钥密码123456
writing RSA key

e.编写nginx配置文件(接着在57行接着往后写)

[root@master nginx]# vim /etc/nginx/nginx.confserver {listen       80;server_name  www.openlab.com;root         /www/openlab;location /data {alias /www/openlab/data;index index.html index.htm;}location /student{alias  /www/openlab/student;index index.html index.htm;auth_basic "Please input password";auth_basic_user_file  /etc/nginx/passwd;}
}server{listen  443 ssl http2;server_name www.openlab.com;location /money  {alias /www/openlab/money;index index.html index.htm;	    }ssl_certificate  "/etc/nginx/money.crt";ssl_certificate_key "/etc/nginx/money.key";}

f.重启nginx

[root@master nginx]# systemctl restart   nginx 

g.在Windows端打开浏览器输入https://www.openlab.com/money测试(访问时会出现拒绝访问,点高级继续访问)

http://www.lryc.cn/news/594673.html

相关文章:

  • 果园里的温柔之手:Deepoc具身智能如何重塑采摘机器人的“生命感知”
  • GoLand安装指南
  • QT6 源,七章对话框与多窗体(5) 文件对话框 QFileDialog 篇二:源码带注释
  • Android 默认图库播放视频没有自动循环功能,如何添加2
  • 文远知行推出与联想共研的100%车规级HPC 3.0计算平台
  • SpringDoc 基本使用指南
  • Boost库智能指针boost::shared_ptr详解和常用场景使用错误示例以及解决方法
  • 如何防止QQ浏览器录屏,盗录视频资源?
  • Pytorch02:深度学习基础示例——猫狗识别
  • MySQL(05) mysql锁,MVCC、Innodb行锁
  • 网络协议与层次对应表
  • Spring Boot 集成 RabbitMQ:普通队列、延迟队列与死信队列全解析
  • 我的网页聊天室设计
  • Python100个库分享第38个—lxml(爬虫篇)
  • sky-take-out项目中Redis的使用
  • 【Linux】Prometheus 监控 Kafka 集群
  • 基于大数据的旅游推荐系统 Python+Django+Hive+Vue.js
  • 关于 URL 中 “+“ 号变成空格的问题
  • 机器学习对词法分析、句法分析、浅层语义分析的积极影响
  • 人工智能真的能编程吗?研究勾勒出自主软件工程的障碍
  • [Python] -项目实战10- 用 Python 自动化批量重命名文件
  • 识别并计算滑块距离
  • 远程登录服务器黑屏如何处理?
  • 日历类生辰八字九九三伏入梅出梅算法
  • 某日在某个月份中不存在导致软件出现异常的问题排查(判断闰年以及月份中的天数,附完整源码)
  • 编译支持cuda硬件加速的ffmpeg
  • cuda编程笔记(9)--使用 Shared Memory 实现 tiled GEMM
  • Linux进程核心机制:状态、优先级与上下文切换详解
  • 亚马逊自养号测评实战指南:从环境搭建到安全提排名
  • 微信小程序服务端快速对接指南(java版)