RHCE: web服务器+nfs服务器搭建

网站需求:

1.基于域名[www.openlab.com](http://www.openlab.com)可以访问网站内容为 welcome to openlab!!!

web服务器准备工作:

#添加多ip(也可以用nmtui命令在图形界面配置)
[root@192 ~]# nmcli connection modify ens32 ipv4.method manual  ipv4.addresses 192.168.112.129/24 ipv4.gateway 192.168.112.2 ipv4.dns 114.114.114.114 +ipv4.addresses 192.168.112.130/24#连接ens32网卡
[root@192 ~]# nmcli con up ens32#openEuler系统自带yum源,安装nginx
[root@192 ~]# yum install nginx -y#关闭防火墙
[root@192 ~]# systemctl stop firewalld#查看防火墙工作状态
[root@192 ~]# systemctl status firewalld#关闭selinux
[root@192 ~]# setenforce 0

主要配置:


#启动nginx服务
[root@192 ~]# systemctl start nginx#使用vim编辑test_name.conf文件
[root@localhost ~]# vim /etc/nginx/conf.d/test_name.confserver {listen 192.168.112.129:80;root /www/name/openlab;server_name www.openlab.com;location / {index index.html;}}#查看nginx服务运行状态,也可用于检查配置文件语法是否有错
[root@localhost ~]# systemctl status nginx#创建/www/name/openlab目录文件
[root@localhost ~]# mkdir /www/name/openlab -pv
mkdir: 已创建目录 '/www'
mkdir: 已创建目录 '/www/name'
mkdir: 已创建目录 '/www/name/openlab'#重启nginx服务
[root@localhost ~]# systemctl restart nginx#将要输出的内容写入html文件
[root@localhost ~]# echo welcome to openlab > /www/name/openlab/index.html

测试:

[root@localhost ~]# vim /etc/hosts#编辑hosts文件使其客户端能够访问到相应的网站# Loopback entries; do not change.
# For historical reasons, localhost precedes localhost.localdomain:
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
# See hosts(5) for proper format and other examples:
# 192.168.1.10 foo.mydomain.org foo
# 192.168.1.13 bar.mydomain.org bar192.168.112.129 www.openlab.com#进行测试(用此方法查看的测试结果是html代码,这里简化了结果)[root@client ~]# curl http://www.openlab.com
welcome to openlab

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

[www.openlab.com/data](http://www.openlab.com/data)网站访问教学资料,

[www.openlab.com/money](http://www.openlab.com/money网站访问缴费网站)。

[root@localhost ~]# vim /etc/nginx/conf.d/test_name.confserver {listen 192.168.112.129:80;root /www/name/openlab/student;server_name www.openlab.com/student;location / {index index.html;}}
server {listen 192.168.112.129:80;root /www/name/openlab/data;server_name www.openlab.com/data;location / {index index.html;}}
server {listen 192.168.112.129:80;root /www/name/openlab/money;server_name www.openlab.com/money;location / {index index.html;}}#创建子目录
[root@localhost ~]# mkdir /www/name/openlab/{student,data,money} -pv
mkdir: 已创建目录 '/www/name/openlab/student'
mkdir: 已创建目录 '/www/name/openlab/data'
mkdir: 已创建目录 '/www/name/openlab/money'#将要输出的内容写入其中
[root@localhost ~]# echo 学生信息网 > /www/name/openlab/student/index.html
[root@localhost ~]# echo 教学资源网  > /www/name/openlab/date/index.html
[root@localhost ~]# echo 缴费网  > /www/name/openlab/money/index.html#重启nginx服务
[root@localhost ~]# systemctl restart nginx

测试结果:

[root@localhost ~]# vim /etc/hosts# Loopback entries; do not change.
# For historical reasons, localhost precedes localhost.localdomain:
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
# See hosts(5) for proper format and other examples:
# 192.168.1.10 foo.mydomain.org foo
# 192.168.1.13 bar.mydomain.org bar192.168.112.129 www.openlab.com192.168.112.129 www.openlab.com/student
192.168.112.129 www.openlab.com/data
192.168.112.129 www.openlab.com/money#进行测试(简化了之后的结果)
[root@client ~]# curl http://www.openlab.com/student/
学生信息网
[root@client ~]# curl http://www.openlab.com/date/
教学资源网
[root@client ~]# curl http://www.openlab.com/money/
缴费网

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

#修改配置文件
[root@localhost ~]# vim /etc/nginx/conf.d/test_name.confserver {listen 192.168.112.129:80;root /www/name/openlab/student;server_name www.openlab.com/student;location / {index index.html;auth_basic on;auth_basic_user_file /etc/nginx/users;}}#查看htpassswd的安装包
[root@localhost ~]# yum provides htpasswd
Last metadata expiration check: 2:55:14 ago on 2024年01月11日 星期四 15时43分48秒.
httpd-tools-2.4.55-3.oe2309.x86_64 : Related tools for use HTTP Server
Repo        : OS
Matched from:
Filename    : /usr/bin/htpasswdhttpd-tools-2.4.55-3.oe2309.x86_64 : Related tools for use HTTP Server
Repo        : everything
Matched from:
Filename    : /usr/bin/htpasswd#安装htpasswd
[root@localhost ~]# yum install httpd-tools -y#用户管理 
[root@localhost ~]# htpasswd -c /etc/nginx/users song    
New password: 
Re-type new password: 
Adding password for user song
[root@localhost ~]# htpasswd -c /etc/nginx/users tian
New password: 
Re-type new password: 
Adding password for user tian#重启nginx服务
[root@localhost ~]# systemctl restart nginx

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

#安装ssl包(Web服务器是Apache)
[root@localhost ~]# yum install mod_ssl#nginx里包含了ssl服务,可删除
[root@localhost ~]# yum remove mod_ssl#修改配置文件
[root@localhost ~]# vim /etc/nginx/conf.d/test_name.confserver {listen 192.168.112.129:443 ssl;root /www/name/openlab/money;server_name www.openlab.com/money;ssl_certificate /etc/pki/tls/certs/openlab.crt;ssl_certificate_key /etc/pki/tls/private/openlab.key;location / {index index.html;}}#设置其访问时需要https(使用ca证书)#生成密钥(私钥)
[root@localhost ~]# openssl genrsa -out /etc/pki/tls/private/openlab.key
# /etc/pki/tls/private/openlab.key用于存储私钥#获取公钥
[root@localhost ~]# openssl req -utf8 -new -key /etc/pki/tls/private/openlab.key  -x509 -days 365 -out /etc/pki/tls/certs/openlab.crt#在输入基本信息后成功注册ca证书
Country Name (2 letter code) [AU]:86
State or Province Name (full name) [Some-State]:sichuan
Locality Name (eg, city) []:chengdu
Organization Name (eg, company) [Internet Widgits Pty Ltd]:xixihaha
Organizational Unit Name (eg, section) []:an^H^H^H^H^H
Common Name (e.g. server FQDN or YOUR name) []:rrl
Email Address []:adimin^H^H^H#重启nginx配置
[root@localhost ~]# systemctl restart nginx

3.架设一台NFS服务器,并按照以下要求配置

准备工作:

#修改主机名
[root@localhost ~]# hostname server
[root@localhost ~]# bash
[root@server ~]# #安装需要的软件(服务端和客户端都需要安装)
[root@server ~]# yum install rpcbind -y
[root@server ~]# yum install nfs-utils -y# 关闭防火墙以及selinux
[root@server ~]# systemctl stop firewalld
[root@server ~]# setenforce 0# 启动程序
[root@server ~]# systemctl start rpcbind
[root@server ~]#systemctl start nfs-server

1、开放/nfs/shared目录,供所有用户查询资料  

#创建目录文件
[root@server ~]# mkdir /nfs/shared -pv
mkdir: 已创建目录 '/nfs'
mkdir: 已创建目录 '/nfs/shared'#编辑配置文件
[root@server ~]# vim /etc/exports
/nfs/shared   *(ro)   *表示允许所有人共享,ro表示只读#创建5个文件
[root@server ~]# touch /nfs/shared/{1..5}客户端配置:
#创建对应目录
[root@client ~]# mkdir /nfs/shared -pv#挂载对应文件
[root@client ~]# mount 192.168.112.129:/nfs/shared /nfs/shared#验证相应的文件是否挂载成功
[root@client ~]# ll /nfs/shared
总计 4
-rw-r--r--. 1 root root 6  1月11日 21:29 1
-rw-r--r--. 1 root root 0  1月11日 21:15 2
-rw-r--r--. 1 root root 0  1月11日 21:15 3
-rw-r--r--. 1 root root 0  1月11日 21:15 4
-rw-r--r--. 1 root root 0  1月11日 21:15 5

2、开放/nfs/upload目录,为192.168.xxx.0/24网段主机可以上传目录,

  并将所有用户及所属的组映射为nfs-upload,其UID和GID均为210

服务端配置:
#创建目录
[root@server ~]# mkdir /nfs/upload -pv
mkdir: 已创建目录 '/nfs/upload'#创建5个文件
[root@server ~]# touch /nfs/shared/{1..5}#编辑文件
[root@server ~]# vim /etc/exports
/nfs/shared   *(ro)
/nfs/upload  192.168.0.0/24(rw,nfs-upload_squash,anonuid=210,anongid=210)
#,为192.168.xxx.0/24网段主机可以上传目录, 并将所有用户及所属的组映射为nfs-upload,其UID和GID均为210客户端配置:
#创建对应文件
[root@client ~]# mkdir /nfs/upload -pv#挂载对应文件
[root@client ~]# mount 192.168.88.132:/nfs/upload /nfs/upload #查看是否挂载成功
[root@client ~]# ll /nfs/upload
总计 0
-rw-r--r--. 1 root root 0  1月11日 03:53 1
-rw-r--r--. 1 root root 0  1月11日 03:53 2
-rw-r--r--. 1 root root 0  1月11日 03:53 3
-rw-r--r--. 1 root root 0  1月11日 03:53 4
-rw-r--r--. 1 root root 0  1月11日 03:53 5#测试写入功能
[root@client ~]# ll /nfs/upload
总计 0
-rw-r--r--. 1 root root 0  1月11日 03:53 1
-rw-r--r--. 1 root root 0  1月11日 03:53 2
-rw-r--r--. 1 root root 0  1月11日 03:53 3
-rw-r--r--. 1 root root 0  1月11日 03:53 4
-rw-r--r--. 1 root root 0  1月11日 03:53 5
-rw-r--r--. 1 root root 0  1月11日 04:15 6

3、将/home/tom目录仅共享给192.168.xxx.xxx这台主机,并只有用户tom可以完全访问该目录

服务端配置:
#创建相关目录
[root@server ~]# mkdir /home/tom -pv
mkdir: 已创建目录 '/home/tom'#创建10个文件
[root@server ~]# touch /home/tom/{1..10}#编辑配置文件
[root@server ~]# vim /etc/exports/nfs/shared   *(ro)
/nfs/upload  192.168.0.0/24(rw,nfs-upload_squash,anonuid=210,anongid=210)
/home/tom    192.168.0.0/24(ro,no_all_squash,anonuid=tom,anongid=tom)
#仅共享给192.168.xxx.xxx这台主机,并只有用户tom可以完全访问该目录客户端配置:
#创建对应目录
[root@client ~]# mkdir /home/tom -pv#挂载对应目录
[root@client ~]# mount 192.168.88.132:/home/tom /home/tom#验证是否挂载成功
[root@client ~]# ll /home/tom
总计 0
-rw-r--r--. 1 root root 0  1月11日 04:21 1
-rw-r--r--. 1 root root 0  1月11日 04:21 10
-rw-r--r--. 1 root root 0  1月11日 04:21 2
-rw-r--r--. 1 root root 0  1月11日 04:21 3
-rw-r--r--. 1 root root 0  1月11日 04:21 4
-rw-r--r--. 1 root root 0  1月11日 04:21 5
-rw-r--r--. 1 root root 0  1月11日 04:21 6
-rw-r--r--. 1 root root 0  1月11日 04:21 7
-rw-r--r--. 1 root root 0  1月11日 04:21 8
-rw-r--r--. 1 root root 0  1月11日 04:21 9

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/630292.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[面试题~] Golang

1. 逃逸分析 1.1 逃逸分析是什么? 在编译原理中,分析指针动态范围的方法称之为逃逸分析。在Go中的表现是,如果一个对象的指针被多个方法或线程引用时,则称这个指针发生了逃逸。 所以,我认为逃逸分析指的是&#xff0…

[leetcode~数位动态规划] 2719. 统计整数数目 hard

给你两个数字字符串 num1 和 num2 &#xff0c;以及两个整数 max_sum 和 min_sum 。如果一个整数 x 满足以下条件&#xff0c;我们称它是一个好整数&#xff1a; num1 < x < num2 min_sum < digit_sum(x) < max_sum. 请你返回好整数的数目。答案可能很大&#xff…

极客时间-《左耳听风》文章笔记 + 个人思考

极客时间-《左耳听风》文章笔记 个人思考 分布式架构21 | 分布式系统架构的冰与火 分布式架构 21 | 分布式系统架构的冰与火 比较流行的高并发框架&#xff1a; Node.js&#xff1a;是一个基于Chrome V8引擎的JavaScript运行环境&#xff0c;它使用事件驱动、非阻塞I/O模型…

2024.1.17

今天我已经回家了&#xff0c;感觉家就像我的温柔乡一样&#xff0c;一到了家&#xff0c;就不想学习了&#xff0c;这是很不对的事情&#xff0c;不该如此堕落&#xff0c;还是要像在学校一样该干什么干什么&#xff0c;所以说还是复习和写了一下曾经写过的代码。 #define _C…

[Android] Android架构体系(1)

文章目录 Android 的框架Dalvik 虚拟机JNI原生二进制可执行文件Android NDK中的binutils Bionic谷歌考虑到的版权问题Bionic与传统的C标准库&#xff08;如glibc&#xff09;的一些不同 参考 Android 的框架 Android 取得成功的关键因素之一就是它丰富的框架集。 没有这些框架…

第2章 法律法规

文章目录 2.1.1 《电信条例》概述2.1.2 《电信条例》关于电信市场的规定1、电信业务许可规定2、电信资费规定3、电信资费规定 2.1.3《电信条例》关于电信服务的规定1、电信业务经营者的义务2、电信用户的相关义务3、电信用户申诉及受理的规定4、电信业务经营者不正当行为的规定…

架构08- 理解架构的模式2-管理和监控

大使模式&#xff1a;构建一个辅助服务&#xff0c;代表消费者使用服务或应用程序发送网络请求。 进程外的代理服务&#xff08;之前介绍中间件的时候也提到了&#xff0c;很多框架层面的事情可以以软件框架的形式寄宿在进程内&#xff0c;也可以以独立的代理形式做一个网络中…

AI绘图制作红包封面教程

注意&#xff1a;有不懂的话可加入QQ群聊一起交流&#xff1a;901944946欢迎大家关注微信公众号【程序猿代码之路】&#xff0c;每天都会不定时的发送一些红包封面&#xff01;&#xff01; 2024的春节即将到来&#xff0c;而在这春节到来之前&#xff0c;就有一个非常爆火的小…

黑马程序员 Java设计模式学习笔记(一)

目录 一、设计模式概述 1.1、23种设计模式有哪些&#xff1f; 1.2、软件设计模式的概念 1.3、学习设计模式的必要性 1.4、设计模式分类 二、UML图 2.1、类图概述 2.2、类图的作用 2.3、类图表示法 类的表示方式 类与类之间关系的表示方式 关联关系 聚合关系 组合…

陀螺仪LSM6DSV16X与AI集成(6)----检测自由落体

陀螺仪LSM6DSV16X与AI集成.6--检测自由落体 概述视频教学样品申请源码下载生成STM32CUBEMX串口配置IIC配置CS和SA0设置串口重定向参考程序初始换管脚获取ID复位操作BDU设置 概述 本文介绍如何初始化传感器并配置其参数&#xff0c;以便在检测到自由落体事件时发送通知。 最近…

【Python_PySide6学习笔记(二十九)】基于PySide6实现选项卡位于左侧的TabWidget控件,且文字方向为水平方向

基于PySide6实现选项卡位于左侧的TabWidget控件,且文字方向为水平方向 基于PySide6实现选项卡位于左侧的TabWidget控件,且文字方向为水平方向前言一、基于 QTabBar 实现 ctTabBar() 自定义选项卡1、重写获取索引处制表符大小函数 tabSizeHint()2、重写绘制事件 paintEvent()二…

显示报错: nmap.nmap.PortScannerError: ‘nmap program was not found in path‘

解决方案&#xff1a; 《关于想在Pycharm下使用nmap然后报错nmap.nmap.PortScannerError: ‘nmap program was not found in path.然后解决的那些事》 文章中进行了详尽的描述&#xff0c;总结一下就是下载一个nmap.exe&#xff0c;然后在nmap.py中引入nmap.exe所在的路径&…

基于长短期神经网络的回归分析,基于LSTM的回归预测

​目录 背影 摘要 LSTM的基本定义 LSTM实现的步骤 基于长短期神经网络LSTM的回归分析 MATALB代码:基于长短期神经网络的回归分析,基于LSTM的回归预测资源-CSDN文库 https://download.csdn.net/download/abc991835105/88184633 效果图 结果分析 展望 参考论文 背影 LSTM神经…

RabbitMQ常见问题之消息堆积

文章目录 一、介绍二、使用惰性队列1. 基于Bean2. 基于RabbitListener 一、介绍 当生产者发送消息的速度超过了消费者处理消息的速度,就会导致队列中的消息堆积,直到队列存储消息达到上限。最 早接收到的消息&#xff0c;可能就会成为死信&#xff0c;会被丢弃&#xff0c;这就…

Pod控制器:

Pod控制器&#xff1a; Pv pvc 动态PV Pod控制器&#xff1a;工作负载。WordLoad&#xff0c;用于管理pod的中间层 &#xff0c;确保pod资源符合预期的状态 预期状态&#xff1a; 副本数容器的重启策略镜像的拉取策略 Pod出现故障时的重启等等 Pod控制器的类型&#xff1a…

【大数据】Flink 详解(八):SQL 篇 Ⅰ

《Flink 详解》系列&#xff08;已完结&#xff09;&#xff0c;共包含以下 10 10 10 篇文章&#xff1a; 【大数据】Flink 详解&#xff08;一&#xff09;&#xff1a;基础篇【大数据】Flink 详解&#xff08;二&#xff09;&#xff1a;核心篇 Ⅰ【大数据】Flink 详解&…

小程序系列--7.页面导航

一、页面导航 1、 什么是页面导航&#xff1f; 页面导航指的是页面之间的相互跳转。例如&#xff0c;浏览器中实现页面导航的方式有如下两种&#xff1a; <a> 链接 location.href 2. 小程序中实现页面导航的两种方式 二、声明式导航 1. 导航到 tabBar 页面 2. 导航…

Cellinx NVT 摄像机 UAC.cgi 任意用户创建漏洞复现

0x01 产品简介 Cellinx NVT IP PTZ是韩国Cellinx公司的一个摄像机设备。 0x02 漏洞概述 Cellinx NVT 摄像机 UAC.cgi接口处存在任意用户创建漏洞,未经身份认证的攻击者可利用此接口创建管理员账户,登录后台可查看敏感信息,使系统处于极不安全的状态。 0x03 复现环境 FO…

乐意购项目前端开发 #4

一、Home页面组件结构 结构拆分 创建组件 在 views/Home 目录下创建component 目录, 然后在该目录下创建5个组件: 左侧分类(HomeCategory.vue)、Banner(HomeBanner.vue)、精选商品(HomeHot.vue)、低价商品(Homecheap.vue)、最新上架(HomeNew.vue) 引用组件 修改 views/Home…

2. 示例:Spring Boot 入门

1.1 概述 Spring Boot是由Pivotal团队提供的全新框架&#xff0c;其设计目的是用来简化新Spring应用的初始搭建以及开发过程。习惯优于配置 1.2 为什么使用Spring Boot J2EE笨重的开发、繁多的配置、低下的开发效率、复杂的部署流程、第三方技术集成难度大。 1.3 Spring Bo…