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 ~]# setenforce  0           [root ~]# systemctl stop  firewalld[root ~]# systemctl disable  firewalld[root ~]# yum  install  nginx  -y[root ~]# nginx  -V  # 查看版本,编译器、配置参数等信息[root ~]# systemctl start  nginx   # 启动httpd[root ~]# systemctl enable  nginx  # 设置开机启动
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.[root ~]# systemctl status  nginx    # 查看状态,q键退出查看[root ~]# 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 ~]# cd  /etc/nginx     # 服务目录(主配置目录
[root nginx]# yum  install  tree  -y
[root 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 ~]# yum  install  nginx  -yecho  "welcome to  www.openlab.com"  >  /usr/share/nginx/html/index.html      # 写入网页数据[root ~]# systemctl  restart  nginx# 打开windows中打开火狐浏览器输入主机IP测试

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

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

第二步:搭建网站

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

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

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

image-20230531110349353

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

image-20230531110651780

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

image-20230531110842450

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

image-20230531111623769

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


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

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

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



http://www.chinasem.cn/article/827505

相关文章

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

Java Web指的是什么

Java Web指的是使用Java技术进行Web开发的一种方式。Java在Web开发领域有着广泛的应用,主要通过Java EE(Enterprise Edition)平台来实现。  主要特点和技术包括: 1. Servlets和JSP:     Servlets 是Java编写的服务器端程序,用于处理客户端请求和生成动态网页内容。     JSP(JavaServer Pages)

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

Linux服务器Java启动脚本

Linux服务器Java启动脚本 1、初版2、优化版本3、常用脚本仓库 本文章介绍了如何在Linux服务器上执行Java并启动jar包, 通常我们会使用nohup直接启动,但是还是需要手动停止然后再次启动, 那如何更优雅的在服务器上启动jar包呢,让我们一起探讨一下吧。 1、初版 第一个版本是常用的做法,直接使用nohup后台启动jar包, 并将日志输出到当前文件夹n

EasyPlayer.js网页H5 Web js播放器能力合集

最近遇到一个需求,要求做一款播放器,发现能力上跟EasyPlayer.js基本一致,满足要求: 需求 功性能 分类 需求描述 功能 预览 分屏模式 单分屏(单屏/全屏) 多分屏(2*2) 多分屏(3*3) 多分屏(4*4) 播放控制 播放(单个或全部) 暂停(暂停时展示最后一帧画面) 停止(单个或全部) 声音控制(开关/音量调节) 主辅码流切换 辅助功能 屏

9.8javaweb项目总结

1.主界面用户信息显示 登录成功后,将用户信息存储在记录在 localStorage中,然后进入界面之前通过js来渲染主界面 存储用户信息 将用户信息渲染在主界面上,并且头像设置跳转,到个人资料界面 这里数据库中还没有设置相关信息 2.模糊查找 检测输入框是否有变更,有的话调用方法,进行查找 发送检测请求,然后接收的时候设置最多显示四个类似的搜索结果

STM32(十一):ADC数模转换器实验

AD单通道: 1.RCC开启GPIO和ADC时钟。配置ADCCLK分频器。 2.配置GPIO,把GPIO配置成模拟输入的模式。 3.配置多路开关,把左面通道接入到右面规则组列表里。 4.配置ADC转换器, 包括AD转换器和AD数据寄存器。单次转换,连续转换;扫描、非扫描;有几个通道,触发源是什么,数据对齐是左对齐还是右对齐。 5.ADC_CMD 开启ADC。 void RCC_AD

JavaWeb【day09】--(Mybatis)

1. Mybatis基础操作 学习完mybatis入门后,我们继续学习mybatis基础操作。 1.1 需求 需求说明: 根据资料中提供的《tlias智能学习辅助系统》页面原型及需求,完成员工管理的需求开发。 通过分析以上的页面原型和需求,我们确定了功能列表: 查询 根据主键ID查询 条件查询 新增 更新 删除 根据主键ID删除 根据主键ID批量删除

速盾:直播 cdn 服务器带宽?

在当今数字化时代,直播已经成为了一种非常流行的娱乐和商业活动形式。为了确保直播的流畅性和高质量,直播平台通常会使用 CDN(Content Delivery Network,内容分发网络)服务器来分发直播流。而 CDN 服务器的带宽则是影响直播质量的一个重要因素。下面我们就来探讨一下速盾视角下的直播 CDN 服务器带宽问题。 一、直播对带宽的需求 高清视频流 直播通常需要传输高清视频

Redis中使用布隆过滤器解决缓存穿透问题

一、缓存穿透(失效)问题 缓存穿透是指查询一个一定不存在的数据,由于缓存中没有命中,会去数据库中查询,而数据库中也没有该数据,并且每次查询都不会命中缓存,从而每次请求都直接打到了数据库上,这会给数据库带来巨大压力。 二、布隆过滤器原理 布隆过滤器(Bloom Filter)是一种空间效率很高的随机数据结构,它利用多个不同的哈希函数将一个元素映射到一个位数组中的多个位置,并将这些位置的值置