RHCE——三:Web服务器(内网穿透实验)

2024-03-19 23:04
文章标签 服务器 web 实验 穿透 rhce

本文主要是介绍RHCE——三:Web服务器(内网穿透实验),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

RHCE—第三天:Web服务器

  • 一、WWW简介
      • 1、常见Web服务程序介绍:
      • 2、服务器主机
      • 3、主要数据
      • 4、浏览器
      • 5、网址及HTTP简介
        • URL
  • 二、部署Nginx
      • 1、常用命令
        • systemctl系列
        • nginx自带命令
        • nginx配置文件
      • 2、实验操作
        • 实验1( 快速搭建网站)
        • 实验2(替换网页目录)
        • 实验3(内网穿透)

一、WWW简介

  • Web网络服务也叫WWW(World Wide Web 全球信息广播)万维网服务,一般是指能够让用户通过浏览器访问到互联网中文档等资源的服务

  • Web 网络服务是一种被动访问的服务程序,即只有接收到互联网中其他主机发出的请求后才会响应,最终用于提供服务程序的 Web 服务器会通过 HTTP(超文本传输协议)或HTTPS(安全超文本传输协议)把请求的内容传送给用户,如图:

image-20221016093613033

1、常见Web服务程序介绍:

  • Windows系统中默认Web服务程序是I I S(Internet Information Services),这是一款图形化的网站管理工具,IIS程序不光能提供Web网站服务,还能够提供FTP、NMTP、SMTP等服务功能,但只能在Windows系统中使用

在这里插入图片描述

2004 年 10 月 4 日,为俄罗斯知名门户站点而开发的 Web 服务程序 Nginx 横空出世。Nginx程序作为一款轻量级的网站服务软件,因其稳定性和丰富的功能而快速占领服务器市场,但Nginx 最被认可的还当是低系统资源占用、内存少且并发能力强,因此得到了国内诸如新浪、网易、腾讯等门户站的青睐
image-20221016094123540

Apache——取自美国印第安人土著语Apache,寓意着拥有高超的作战策略和无穷的耐性,由于其跨平台和安全性广泛被认可且拥有快速、可靠、简单的API扩展。目前拥有很高的Web服务软件市场占用率,全球使用最多的Web服务软件,开源、跨平台(可运行于Unix,linux,windows中)

image-20221016094238292

2、服务器主机

  • 网站是由域名、网页源程序和主机空间组成的,其中主机空间则是用于存放网页源代码并能够将网页内容展示给用户,虽然本小节与Apache服务没有直接关系,但如果您想要在互联网中搭建网站并被顺利访问,主机空间一定不能选错
image-20221016094514122
  • 虚拟主机:在一台服务器中分出一定的磁盘空间供用户放置网站、存放数据等,仅提供基础的网站访问、数据存放与传输流量功能,能够极大的降低用户费用,也几乎不需要管理员维护除网站数据以外的服务,适合小型网站

  • VPS(Virtual Private Server):在一台服务器中利用OpenVZ、Xen或KVM等虚拟化技术模拟出多个“主机”,每个主机都有独立的IP地址、操作系统,实现不同VPS之间磁盘空间、内存、CPU资源、进程与系统配置间的完全隔离,管理员可自由使用分配到的主机中的所有资源,所以需要有一定的维护系统的能力,适合小型网站

  • 云服务器(ECS):是一种整合了计算、存储、网络,能够做到弹性伸缩的计算服务,其使用起来与VPS几乎一样,但差别是云服务器建立在一组集群服务器中,每个服务器都会保存一个主机的镜像(备份),大大的提升了安全稳定性,另外还具备了灵活性与扩展性,用户只需按使用量付费的即可,适合大中小型网站。

  • 独立服务器:这台服务器仅提供给您使用,详细来讲又可以区分为租用方式与托管方式

    • 租用方式:用户只需将硬件配置要求告知IDC服务商,服务器硬件设备由机房负责维护,运维管理员一般需要自行安装相应的软件并部署网站服务,租期可以为月、季、年,减轻了用户初期对硬件设备的投入,适合大中型网站。
    • 托管方式:用户需要自行购置服务器后交给IDC服务供应商的机房进行管理(缴纳管理服务费用),用户对服务器硬件配置有完全的控制权,自主性强,但需要自行维护、修理服务器硬件设备,适合大中型网站。
    • 另外有必要提醒,选择主机空间供应商时请一定要注意看口碑,综合分析再决定购买,某些供应商会有限制功能、强制添加广告、隐藏扣费或强制扣费等恶劣行为,一定一定不要上当!

3、主要数据

  • 服务器所提供的最主要数据是超文本标记语言(Hyper Text Markup Language,HTML)、多媒体文件(图片、影像、声音、文字等,都属于多媒体或称为超媒体),HTML只是一些纯文本数据,通过所谓的标记来规范所要显示的数据格式

4、浏览器

  • 客户端收到服务器的数据之后需要软件解析服务器所提供的数据,最后将效果呈现在用户的屏幕上。
  • 那么著名的浏览器就有内建在Windows操作系统内的IE浏览器(淘汰)和Microsoft Edge,还有Firefox浏览器和Google的chrome浏览器

5、网址及HTTP简介

  • web服务器提供的这些数据大部分都是文件,那么我们需要在服务器端先将数据文件写好,并且放置在某个特殊的目录下面,这个目录就是我们整个网站的首页,在redhat中,这个目录默认在 /var/www/html 。
  • 浏览器是通过你在地址栏中输入你所需要的网址来取得这个目录的数据的
URL
  • Uniform Resource Locator,统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址

  • 网址格式:<协议>://<主机或主机名>[:port]/<目录资源,路径>**

  • 协议::http、https、ftp等

  • 主机地址或者主机名:主机地址就是服务器在因特网所在的IP地址。如果是主机名的话,那么就需要域名解析了

  • 端口号(port):http为80,https为443 (IANA:互联网数字分配机构)

    • 0-1023:永久地分配给固定的应用程序使用
    • 1024-41951:注册端口,但要求不是特别严格,分配给程序注册为某应用使用
    • 41952-60000:客户端程序随机使用的端口,动态端口,或私有端口

二、部署Nginx

[root@server ~]# setenforce  0           [root@server ~]# systemctl stop  firewalld[root@server ~]# systemctl disable  firewalld[root@server ~]# yum  install  nginx  -y[root@server ~]# nginx  -V  # 查看版本,编译器、配置参数等信息[root@server ~]# systemctl start  nginx   # 启动httpd[root@server ~]# systemctl enable  nginx  # 设置开机启动
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.[root@server ~]# systemctl status  nginx    # 查看状态,q键退出查看[root@server ~]# ps  -ef  |  grep  nginx  # 查看进程
root        1690       1  0 13:57 ?        00:00:00 nginx: master process /usr/sbin/nginx
nginx       1691    1690  0 13:57 ?        00:00:00 nginx: worker process
nginx       1692    1690  0 13:57 ?        00:00:00 nginx: worker process
root        1726    1510  0 14:00 pts/0    00:00:00 grep --color=auto nginx# 测试,Windows中打开浏览器输入服务器IP地址

image-20231115160220011

1、常用命令

systemctl系列
systemctl  start  nginx   # 启动服务systemcctl restart  nginx  # 重启服务systemctl  enable  nginx   # 开机启动systemctl  stop  nginx     # 停止服务systemctl  disable  nginx  # 取消开机启动systemctl  status   nginx  # 查看状态
nginx自带命令
nginx    # 启动nginxnginx   restart  # 重启服务nginx  -s  reload  # 重新加载配置文件nginx  -s  stop    # 强行停止服务nginx  -s  quit    # 优雅停止服务,即所有请求处理完后退出服务nginx  -v         # 查看版本号nginx -t         # 检查配置文件的语法错误,无错返回ok
nginx配置文件
[root@server ~]# cd  /etc/nginx     # 服务目录(主配置目录
[root@server nginx]# yum  install  tree  -y
[root@server nginx]# tree
.
├── conf.d                 # 子配置文件目录
├── default.d           
├── fastcgi.conf
├── fastcgi.conf.default
├── fastcgi_params
├── fastcgi_params.default
├── koi-utf               #  KOI8-R 编码(俄语)转换的映射文件
├── koi-win               # #  KOI8-R 编码(俄语)转换的映射文件
├── mime.types             # 配置支持的媒体类型
├── mime.types.default     # 样例文件
├── nginx.conf             # 主配置文件
├── nginx.conf.default     # 样例文件
├── scgi_params            
├── scgi_params.default
├── uwsgi_params
├── uwsgi_params.default
└── win-utf                #  KOI8-R 编码(俄语)转换的映射文件2 directories, 15 files网页默认目录:/usr/share/nginx/html
访问日志:/var/log/nginx/access.log
错误日志:/var/log/nginx/error.log

2、实验操作

实验1( 快速搭建网站)
[root@server ~]# yum  install  nginx  -yecho  "welcome to  www.openlab.com"  >  /usr/share/nginx/html/index.html      # 写入网页数据[root@server ~]# systemctl  restart  nginx# 打开windows中打开火狐浏览器输入主机IP测试

image-20230531102450777
或者通过curl命令查看网站的网页数据,验证网站是否能访问

[root@server ~]# curl  127.0.0.1
welcome to  www.openlab.com
实验2(替换网页目录)
[root@server ~]# yum  install  nginx  -y# 新建网页存储目录
[root@server ~]# mkdir  -p  /www/sxhkt       # 网页存储目录不能放在/root下# 使用xftp将windows端的sxhkt文件夹中的数据上传到Linux端的/www/sxhkt目录内[root@server ~]# vim  /etc/nginx/nginx.conf
# 定位第42行,修改如下:
root         /www/sxhkt;[root@server ~]# systemctl restart nginx  # 重启服务# 测试:打开windows端浏览器输入服务端IP地址
实验3(内网穿透)
  • 搭建网站使用花生壳的内网穿透实现公网访问
    第一步:准备工作
# 恢复快照[root@server ~]# setenforce  0           [root@server ~]# systemctl stop  firewalld[root@server ~]# systemctl disable  firewalld[root@server ~]# yum  install  nginx  -y[root@server ~]# systemctl start  nginx [root@server ~]# systemctl enable  nginx

第二步:搭建网站

# 新建网页存储目录
[root@server ~]# mkdir  /www/zy# 使用xftp将zy网站数据上传到linux的/www/zy目录中[root@server ~]# vim  /etc/nginx/nginx.conf 
# server端中启用location模块
server {listen       80;listen       [::]:80;server_name  _;location / {root         /www/zy;index  index.html  index.htm;}[root@server ~]# systemctl restart nginx  # 重启服务

第三步:使用花生壳进行内网穿透

注册,登录,完成身份证的实名认证

image-20230531110349353

# 内网穿透第一步
# 创建内网映射,如下:# 应用名称:自定
# 映射类型:https
# 外网域名:系统指定,不能更改
# 外网端口:443,默认
# 内网主机:本机linux服务的IP地址
# 内网端口:本地linux端的http端口,默认80

image-20230531110651780

# 内网穿透第二步,linux系统安装花生壳客户端
# 下载客户端,选择应用平台为RedHat ,“点击复制”

image-20230531110842450

# 客户端下载:
[root@server ~]# yum  install  net-tools  -y   # 安装网络工具包可以使用netstat[root@server ~]# wget "https://dl.oray.com/hsk/linux/phddns_5.2.0_amd64.rpm" -O phddns_5.2.0_amd64.rpm
# 客户端安装
[root@server ~]# rpm  -ivh  phddns_5.2.0_amd64.rpm # 启动
[root@server ~]# phddns  start# 复制下图“右下角的网址”# 重新打开浏览器,输入http://b.oray.com,完成账户登录,激活

image-20230531111623769

登录激活后花生壳的管理平台效果:


image-20230531112836527
点击绿色公网域名访问网站:https://40a09234i8.imdo.co/
image-20230531112944881
最后能通过公网域名访问网址就说明实验成功。

大家有什么问题可以在评论区与我讨论~

这篇关于RHCE——三:Web服务器(内网穿透实验)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

python web 开发之Flask中间件与请求处理钩子的最佳实践

《pythonweb开发之Flask中间件与请求处理钩子的最佳实践》Flask作为轻量级Web框架,提供了灵活的请求处理机制,中间件和请求钩子允许开发者在请求处理的不同阶段插入自定义逻辑,实现诸如... 目录Flask中间件与请求处理钩子完全指南1. 引言2. 请求处理生命周期概述3. 请求钩子详解3.1

Windows Server 2025 搭建NPS-Radius服务器的步骤

《WindowsServer2025搭建NPS-Radius服务器的步骤》本文主要介绍了通过微软的NPS角色实现一个Radius服务器,身份验证和证书使用微软ADCS、ADDS,具有一定的参考价... 目录简介示意图什么是 802.1X?核心作用802.1X的组成角色工作流程简述802.1X常见应用802.

SpringBoot项目Web拦截器使用的多种方式

《SpringBoot项目Web拦截器使用的多种方式》在SpringBoot应用中,Web拦截器(Interceptor)是一种用于在请求处理的不同阶段执行自定义逻辑的机制,下面给大家介绍Sprin... 目录一、实现 HandlerInterceptor 接口1、创建HandlerInterceptor实

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

使用Nginx配置文件服务器方式

《使用Nginx配置文件服务器方式》:本文主要介绍使用Nginx配置文件服务器方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 为什么选择 Nginx 作为文件服务器?2. 环境准备3. 配置 Nginx 文件服务器4. 将文件放入服务器目录5. 启动 N

Python使用Reflex构建现代Web应用的完全指南

《Python使用Reflex构建现代Web应用的完全指南》这篇文章为大家深入介绍了Reflex框架的设计理念,技术特性,项目结构,核心API,实际开发流程以及与其他框架的对比和部署建议,感兴趣的小伙... 目录什么是 ReFlex?为什么选择 Reflex?安装与环境配置构建你的第一个应用核心概念解析组件

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服