网络服务综合实验项目
目录
实验要求
运行环境
基础配置
业务需求
实验步骤
一、基础配置
1.1、配置静态IP
1.1.1、 在192.168.159.130中配置
1.1.2、 在192.168.159.131中配置
编辑 1.2、修改主机名及hosts映射
1.2.1、在192.168.159.130中配置
1.2.2、 编辑配置hosts文件
1.2.3、重启服务
1.2.4、在192.168.159.131中配置
1.2.5、重启服务
1.3、开启防火墙(Web端和NFS-DNS端都需要开启)
1.4、时间同步 (Web端和NFS-DNS端都需要开启)
1.4.1、编辑配置hosts文件
1.4.2、重启服务
1.4.3、时间同步
1.4.4、查看时间是否同步
1.5、配置免密ssh登录
1.5.1、在192.168.48.130(Server-Web)中配置
1.5.2、在192.168.48.130(Server-NFS-DNS)中配置
1.6、 Server-web端安装LAMP环境软件
1.7、 Server-NFS-DNS端上传博客软件
二、Server-NFS-DNS端设置NFS共享
2.1、Server-NFS-DNS端设置NFS共享
2.1.1、下载
2.1.2、编辑配置exports文件
2.1.3、修改wordpress文件权限
2.1.4、防火墙添加服务放行
2.1.5、启动服务
三、Server-web设置
3.1、挂载远程共享目录
3.1.1、下载
3.1.2、在本地挂载目录wp中挂载wordpress
3.1.3、查看结果
3.2、nginx设置
3.2.1、防火墙添加服务放行
3.2.2、编辑nginx配置文件(将第42行修改为 root /wp;)
3.3、修改wordpress配置文件
3.3.1、根据模板拷贝配置文件
3.3.2、编辑wp-config.php配置文件
3.4、启动数据库
3.5、在数据库中创建数据库和用户
3.6、重启数据库和http
3.7、测试 在windows端输入192.168.159.130继续完成wordpress配置 (邮箱必须设置)
四、在Server-NFS-DNS端配置DNS
4.1、下载
4.2、防火墙设置
4.3、编辑主配置文件named.conf
编辑 4.4、编辑主配置文件named.rfc1912.zones
4.5、新建区域数据文件并配置解析
4.6、启动服务
4.7、成果展示
实验要求
运行环境
| 主机 | 主机名 | 系统 | 服务 |
| 192.168.159.130 | Server-Web | Linux | Web |
| 192.168.159.130 | Server-NFS-DNS | Linux | NFS/DNS |
基础配置
配置主机名,静态IP地址
开启防火墙并配置
部分开启SElinux并配置
服务器之间使用同ntp.aliyun.com进行时间同步
服务器之间实现SSH免密登录
业务需求
Server-NFS-DNS主机配置NFS服务器,将博客网站资源文件共享给Server-web主机,Server-NFS-DNS 主机配置DNS
Server-web主机配置web服务,通过域名 www.openlab.com可以访问到自建的博客网站
实验步骤
一、基础配置
1.1、配置静态IP
1.1.1、 在192.168.159.130中配置
nmcli c modify ens32 ipv4.method manual ipv4.addresses '192.168.159.130/24' ipv4.gateway '192.168.159.2' ipv4.dns "114.114.114.114"
nmcli c reload
nmcli c up ens32
1.1.2、 在192.168.159.131中配置
nmcli c modify ens32 ipv4.method manual ipv4.address '192.168.159.131/24' ipv4.gateway '192.168.159.2' ipv4.dns '114.114.114.114'
nmcli c reload
nmcli c up ens32
静态配置结果
1.2、修改主机名及hosts映射
1.2.1、在192.168.159.130中配置
hostnamectl set-hostname Server-Web #将用户名改为Server-Web
1.2.2、 编辑配置hosts文件
vim /etc/hosts #编辑配置文件
127.0.0.1 Server-Web
192.168.159.130 Server-Web
192.168.159.131 Server-NFS-DNS
编辑配置文件结果

1.2.3、重启服务
reboot #重启服务端
1.2.4、在192.168.159.131中配置
hostnamectl set-hostname Server-NFS-DNS #将用户名改为Server-NFS-DNS
vim /etc/hosts #进入主程序编辑
127.0.0.1 Server-NFS-DNS
192.168.159.130 Server-Web
192.168.159.131 Server-NFS-DNS
进入主程序编辑结果

1.2.5、重启服务
reboot #重启服务端
1.3、开启防火墙(Web端和NFS-DNS端都需要开启)
systemctl start firewalld
systemctl enable firewalld
1.4、时间同步 (Web端和NFS-DNS端都需要开启)
1.4.1、编辑配置hosts文件
vim /etc/chrony.conf
server ntp.aliyun.com iburst # 第三行更改,将阿里开源提供的时间服务器推荐配置复制粘贴到该文件中
第三行更改结果

1.4.2、重启服务
systemctl restart chronyd #重启服务
1.4.3、时间同步
chronyc sources -v #时间同步
时间同步结果 (203.107.6.88是chronyd当前同步到的源)

1.4.4、查看时间是否同步
timedatectl status #查看时间是否同步
查看时间是否同步结果 (yes代表同步完成)

1.5、配置免密ssh登录
1.5.1、在192.168.48.130(Server-Web)中配置
ssh-keygen -t rsa #生成密钥对(一路回车)
生成密钥对结果

ssh-copy-id 192.168.159.131 #将公钥上传到NFS-DNS端
ssh 192.168.48.131 #登录NFS-DNS端
exit #退出
1.5.2、在192.168.48.130(Server-NFS-DNS)中配置
ssh-keygen -t rsa #生成密钥对(一路回车)
生成密钥对结果

ssh-copy-id 192.168.159.130 #将公钥上传到Web端
ssh 192.168.48.130 #登录Web端
exit #退出
1.6、 Server-web端安装LAMP环境软件
yum install nginx mariadb-server php* -y #安装LAMP环境软件
1.7、 Server-NFS-DNS端上传博客软件
网址: https://cn.wordpress.org/ ,下载后为zip压缩文件
利用Xftp将wordpress上传到192.168.159.131(Server-NFS-DNS)端的/目录下
cd / #切换到根目录
unzip wordpress-6.1-zh_CN.zip #将wordpress解压缩
cd wordpress # 切换到wordpress目录
ls #查看目录里有哪些文件
二、Server-NFS-DNS端设置NFS共享
2.1、Server-NFS-DNS端设置NFS共享
目的:将Server-NFS-DNS端的/wordpress 目录共享给192.168.48.130(Server-Web)
2.1.1、下载
yum install rpcbind -y #下载rpcbind
yum install nfs-utils -y #下载nfs-utils
2.1.2、编辑配置exports文件
vim /etc/exports # 编辑配置文件
编辑配置文件结果
![]()
2.1.3、修改wordpress文件权限
chmod -Rf 777 /wordpress #修改wordpress文件权限
2.1.4、防火墙添加服务放行
firewall-cmd --permanent --zone public --add service=mountd
firewall-cmd --permanent --zone public --add-service=rpc bind
firewall-cmd --permanent --zone public --add-service=nfs
firewall-cmd --reload #重启
2.1.5、启动服务
systemctl start rpcbind
systemctl start nfs-server
三、Server-web设置
3.1、挂载远程共享目录
3.1.1、下载
yum install rpcbind -y #下载rpcbind
yum install nfs-utils -y #下载nfs-utils
3.1.2、在本地挂载目录wp中挂载wordpress
showmount -e 192.168.48.131 # 查看
mkdir /wp # 新建本地挂载目录wp
mount -t nfs 192.168.48.131:/wordpress /wp # 挂载
3.1.3、查看结果
cd /wp #切换进入wp文件夹
ls #查看文件内容
查看文件内容结果

3.2、nginx设置
3.2.1、防火墙添加服务放行
firewall-cmd --permanent --zone public --add-service=http # http放行
firewall-cmd --reload #重启
3.2.2、编辑nginx配置文件(将第42行修改为 root /wp;)
vim /etc/nginx/nginx.conf # 编辑nginx配置文件
编辑nginx配置文件结果

3.3、修改wordpress配置文件
3.3.1、根据模板拷贝配置文件
cp wp-config-sample.php wp-config.php # 根据模板拷贝配置文件
3.3.2、编辑wp-config.php配置文件
vim wp-config.php #编辑配置文件wp-config.php
define('DB_NAME', 'wordpress'); # WordPress数据库的名称
define('DB_USER', 'test1'); # MySQL数据库用户名
define('DB_PASSWORD', '123456'); # MySQL数据库密码
编辑wp-config.php配置文件结果

3.4、启动数据库
systemctl start mariadb #启动数据库
3.5、在数据库中创建数据库和用户
mysql #进入mysql
create database wordpress; # 创建数据库,尾部有分号
create user 'test1'@'localhost' identified by '123456'; # 第一 个''为数据库账号,@后面的''内容为数据库可以登录的地址,localhost意为只能本机登录。用户和密码与 wordpress配置文件一样,
grant all on wordpress.* to 'test1'@'localhost'; # 给用户授权
exit #退出
3.6、重启数据库和http
systemctl restart mariadb
systemctl restart nginx
3.7、测试 在windows端输入192.168.159.130继续完成wordpress配置 (邮箱必须设置)
输入信息
点击登录
输入之前填写的邮箱和密码,点击登录
登陆成功
四、在Server-NFS-DNS端配置DNS
4.1、下载
yum install bind -y #下载bind
4.2、防火墙设置
firewall-cmd --permanent --zone public --add-service=dns # 防火墙放行
firewall-cmd --reload #重启
systemctl start named #开启named
4.3、编辑主配置文件named.conf
vim /etc/named.conf # 编辑主配置文件named.conf,第11 19行修改为any任意主机
编辑主配置文件结果
4.4、编辑主配置文件named.rfc1912.zones
vim /etc/named.rfc1912.zones # 编辑主配置文件named.rfc1912.zones
编辑主配置文件结果

4.5、新建区域数据文件并配置解析
cd /var/named #进入named文件
cp -a named.localhost openlab.com.zone #拷贝
vim openlab.com.zone # 添加正向解析,注意:解析为192.168.48.130web服务器
编辑主配置文件结果

4.6、启动服务
systemctl restart named #启动服务
4.7、成果展示

相关文章:
网络服务综合实验项目
目录 实验要求 运行环境 基础配置 业务需求 实验步骤 一、基础配置 1.1、配置静态IP 1.1.1、 在192.168.159.130中配置 1.1.2、 在192.168.159.131中配置 编辑 1.2、修改主机名及hosts映射 1.2.1、在192.168.159.130中配置 1.2.2、 编辑配置hosts文件 1.2.3、重启…...
工厂模式与抽象工厂模式
如有错误或有补充,以及任何的改进意见,请在评论区留下您的高见 工厂模式 工厂模式是一种创建型设计模式。在工厂模式中,类的实例化过程通常是通过一个专门的工厂类来完成的,而不是直接在客户端代码中进行的。这样可以提供更好的…...
Springboot整合Websocket实现ws和wss连接
1. 引入pom依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId><version>2.7.10</version> </dependency>2. 新建websocket配置文件 import org.springf…...
CSC联合培养博士申请亲历|联系外导的详细过程
在CSC申报的各环节中,联系外导获得邀请函是关键步骤。这位联培博士同学的这篇文章,非常详细且真实地记录了申请过程、心理感受,并提出有益的建议,小编特推荐给大家参考。 2024年国家留学基金委公派留学项目即将开始,其…...
没有外网Nginx如何配置如何开启https
判断是否支持open-ssl 在服务器执行如下命令 openssl version没有则安装open-ssl,由于服务器没有外网,可以离线安装openssl-3.0.1.tar.gz,我是在有网的服务器直接下载的,然后再上传到这台无网的服务器上 wget https://www.open…...
【Docker篇】Linux安装Docker、docker安装mysql、redis、rabbitmq
1.Linux安装docker 官方帮助文档:Install Docker Engine on CentOS | Docker Docs 1.1安装命令 # 1. 卸载之前的dockersudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate…...
WPF应用程序(.Net Framework 4.8) 国际化
1、新建两个资源字典文件zh-CN.xaml和en-US.xaml,分别存储中文模板和英文模板 (1) zh-CN.xaml <ResourceDictionary xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml&q…...
Elasticsearch:Geoshape query
Geoshape 查询可以用于过滤使用 geo_shape 或 geo_point 类型索引的文档。 geo_shape 查询使用与 geo_shape 或 geo_point 映射相同的索引来查找具有与查询形状相关的形状的文档,并使用指定的空间关系:相交(intersect)、包含(con…...
安装配置sqoop
一、了解Sqoop 1、Sqoop产生的原因 A. 多数使用hadoop技术的处理大数据业务的企业,有大量的数据存储在关系型数据中。 B. 由于没有工具支持,对hadoop和关系型数据库之间数据传输是一个很困难的事。 以上是sqoop产生的主要原因,也因此Sqoop主要用于hadoop与关系型数据库之…...
数据结构——实验01-线性表的链式存储和操作
一、实验内容 二、算法思想与算法实现 1、解题思想 (1)逆序创建链表La就是使用头插法创建一个链表,所谓头插法就是在创建链表时始终将新元素插入到头结点之后,而正序创建链表Lb就是使用尾插法创建一个链表,所谓尾插法…...
十分钟上手vue!
Vue 是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。无论是简单还是复杂的界面,Vue 都可以胜任。 一 vue.js的导入及使用 vue安装…...
day37WEB攻防-通用漏洞XSS跨站权限维持钓鱼捆绑浏览器漏洞
目录 XSS-后台植入 Cookie&表单劫持(权限维持) 案例演示 XSS-Flash 钓鱼配合 MSF 捆绑上线 1、生成后门 2、下载官方文件-保证安装正常 3、压缩捆绑文件-解压提取运行 4、MSF 配置监听状态 5、诱使受害者访问 URL-语言要适当 XSS-浏览器网马…...
【Java程序设计】【C00215】基于SSM的勤工助学管理系统(论文+PPT)
基于SSM的勤工助学管理系统(论文PPT) 项目简介项目获取开发环境项目技术运行截图 项目简介 这个一个基于SSM的勤工助学管理系统,本系统共分为三种权限:管理员、教师和学生 管理员:首页、个人中心、教师管理、学生管理…...
c#的反汇编对抗
文章目录 前记nim攻防基础FFI内存加载加解密、编码 后记C#类型转换表nim基础 前记 随便编写一个c#调用winapi并用vs生成dll,同时用csc生成exe using System; using System.Runtime.InteropServices; namespace coleak {class winfun{[DllImport("User32.dll")]publ…...
设计模式之框架源码剖析(实战+图解)
Java设计模式 1,概述 随着软件开发人员人数的增多,一些公司急需一些高端人才。作为一个高端人才,设计面向对象软件是必不可少的能力,而软件设计是需要很深的功力,设计模式就要求你必须掌握。 2,本章特色…...
SQL注入:sqli-labs靶场通关(1-37关)
SQL注入系列文章: 初识SQL注入-CSDN博客 SQL注入:联合查询的三个绕过技巧-CSDN博客 SQL注入:报错注入-CSDN博客 SQL注入:盲注-CSDN博客 SQL注入:二次注入-CSDN博客 SQL注入:order by注入-CSDN博客 …...
浙政钉(专有钉钉)
专有钉钉是浙政钉的测试版本,可在正式发布之前进行业务开发。 专有钉钉 原名政务钉钉 是高安全、强管控、灵活开放的面向大型组织专有独享的协同办公平台。支持专有云、混合云等多种方式灵活部署,以满足客户特定场景所需为目标,最大化以“平…...
【lesson2】定长内存池的实现
文章目录 介绍定长内存池的设计定长内存池的实现需要成员变量需要的成员函数定长内存池结构定长内存池Delete(释放空间)的实现定长内存池New(申请空间)的实现 定长内存池的实现完整版 介绍 作为程序员(C/C)我们知道申请内存使用的…...
C++迷宫游戏详解
个人主页:[PingdiGuo_guo] 收录专栏:[C干货专栏] 大家好呀,我是PingdiGuo_guo,今天我们来学习用C实现一个迷宫游戏。 目录 1.迷宫的具体步骤 1.1.迷宫的初始化 1.2.寻路算法 1.DFS算法 2.BFS算法 1.3.移动 2.总结 C迷宫游…...
java下载网络文件
/*** 下载文件** param fileId* param response* throws Exception*/ GetMapping("/downLoadFile") public void downLoadFile(Long fileId, HttpServletResponse response) throws Exception{// 根据文件ID查询文件路径FileDO fileDO fileService.get(fileId);// 定…...
(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
OD 算法题 B卷【正整数到Excel编号之间的转换】
文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...
【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...
es6+和css3新增的特性有哪些
一:ECMAScript 新特性(ES6) ES6 (2015) - 革命性更新 1,记住的方法,从一个方法里面用到了哪些技术 1,let /const块级作用域声明2,**默认参数**:函数参数可以设置默认值。3&#x…...
Java中HashMap底层原理深度解析:从数据结构到红黑树优化
一、HashMap概述与核心特性 HashMap作为Java集合框架中最常用的数据结构之一,是基于哈希表的Map接口非同步实现。它允许使用null键和null值(但只能有一个null键),并且不保证映射顺序的恒久不变。与Hashtable相比,Hash…...
el-amap-bezier-curve运用及线弧度设置
文章目录 简介示例线弧度属性主要弧度相关属性其他相关样式属性完整示例链接简介 el-amap-bezier-curve 是 Vue-Amap 组件库中的一个组件,用于在 高德地图 上绘制贝塞尔曲线。 基本用法属性path定义曲线的路径,可以是多个弧线段的组合。stroke-weight线条的宽度。stroke…...
