内部服务器如何提供访问服务
通过内部服务器方式对互联网用户提供访问服务

在企业互联网接入应用中除了要满足基本的内部PC访问互联网的需求外,还有一项很重要的业务就是企业信息对外发布,只有信息对外发布才使企业业务为外界所了解,带来商业机会,对外发布的载体通常就是一些WEB服务器。

在上图例子中,内部服务器192.168.10.2对外提供了2项服务,端口分别是TCP 80和TCP 37777,由于服务器在内部,互联网PC是无法直接访问的,因此需要在网关上作特殊设置,使互联网PC访问网关的WAN口地址就可以访问内部服务器,这项功能和共享上网的方向是相反的:

共享上网(动态NAT)

内部服务器(端口映射)

访问发起方向

内网访问外网

外网访问内网

是否单向访问隔离

外网无法访问内网

外网可以访问内网的固定端口

转换表项

由内网向外网发起访问时建立,转换表项具有生存窗口,在窗口过期后外网回包因无法匹配表项而被丢弃,有单向访问的作用

静态表项,生存窗口无限期,使用固定的端口进行映射,方便外网随时发起访问

内网到外网方向转换内容

源地址:内网àWAN口地址

源端口:内网随机端口àWAN口随机端口

源地址:内网àWAN口地址

源端口:内网固定端口àWAN口固定端口

外网到内网方向转换内容

目的地址:WAN口地址à内网地址

目的端口:WAN口转换表项端口à内网表项端口

目的地址:WAN口地址à内网地址

目的端口:WAN口固定端口à内网固定端口

从上面来看,两者除了原理上的本质区别,对于互联网用户而言,只有两个

1. 共享上网:外网用户无法随时访问内网用户,只能由内网用户发起访问后进行回应,具备较高的安全性,只能通过引诱内网用户下载木马方式进行入侵。

2. 内部服务器:开放了特定的端口,外网用户可以随时访问该端口,如果内部服务器设计有缺陷的话,就有可能入侵。内部服务器原理如下图所示:

但总体而言,内部服务器开放了有限的端口,或者说是用得着的端口,并不是所有端口,所谓端口就代表这某项服务,有些已知的服务是存在漏洞的,比如蠕虫病毒使用的TCP 135端口就使用RPC DCOM服务的漏洞。如果内部服务器开放端口较多,那么就要求收集所有端口,一一做成内部服务器的端口映射,如此一来配置可能就稍显麻烦。

现在还有一种DMZ主机的功能,它的作用是将所有无法匹配共享上网表项的外网访问统统转换到DMZ主机,这么一来用户就只需要配置一台DMZ主机就可以实现配置内部服务器多个端口映射需求,在配置上带来了简便,但是从原理上来说DMZ主机只能配置一个,而内部服务器端口映射可以将不同的端口映射到不同的内部服务器上。DMZ主机原理如下图所示:

由于DMZ主机几乎所有端口都暴露,所以极容易被入侵,一般在设计DMZ主机时都会限制DMZ主机发起的任何访问,如不允许DMZ主机对互联网和LAN内PC发起访问。只允许DMZ主机对访问进行响应,这样可以避免因为DMZ主机被入侵后,黑客利用DMZ主机再发起对内部的入侵的悲剧发生。

内部服务器(端口映射)

DMZ主机(默认端口转发)

访问端口权限

允许访问指定的端口

允许访问所有端口

是否单向访问隔离

在默认情况,内部服务器还可以访问外网

因为安全原因,DMZ主机不得发起任何访问,只允许被访问

适用场景

对服务器安全要求较高;允许内部服务器发起访问;存在多个内部服务器;

内部只有一台服务器对外提供多个访问服务(开放多个端口,特别是一些端口不易收集或记忆情况);对服务器安全不是那么重视。

内部PC对内部服务器发起访问

内部PC和内部服务器都在客户的内部网络,那么访问的时候有什么特殊性呢,如果单纯的内网访问内网是绝对没有问题,问题就在于内部服务器主要是对外提供服务的,访问者记住的是域名,域名解析出来就是商领网关的WAN口地址,也就是说访问者都是在访问WAN口地址后转换的,那么内网用户也通过域名(或WAN口地址)发起访问会有什么问题呢?我们来看一下原理:

我们会发现,内网用户通过WAN口地址直接访问内部服务器是会失败的,原因就在于:

1. 内部PC访问60.191.99.140会正确地进行转换成192.168.10.2,并转发给内部服务器。

2. 内部服务器收到的访问请求是来自于内部的192.168.8.3,在回应时直接给了192.168.8.3。

3. 内部PC收到的访问回应时来自于192.168.10.2的,并不是60.191.99.140的,因此会被内部PC拒绝,访问失败。

为了使内部PC能够正确访问,我们要在商领网关上做一些修改,能够使内部服务器不直接回应给内部PC:

可以看到:

1. 目的地址从60.191.99.140转换成192.168.10.2

2. 源地址也从192.168.8.3变成了商领网关的LAN口地址192.168.10.1

对于内部服务器来说这次访问是由网关发起的,必然回应给网关:

从这里可以看出,网关在对回应的处理也是做了两次:

1. 把源地址60.191.99.140改成192.168.10.2

2. 把目的地址192.168.10.1改成192.168.8.3

对于内部PC而言,访问的是60.191.99.140,回应的也是60.191.99.140,因此访问成功。那么如何进行这个配置呢?假设内部PC的网段包括192.168.8.0/24、192.168.1.0/24和192.168.10.0/24,请参考如下:

内部服务器如何提供访问服务相关推荐

  1. 登录wd云盘显示内部服务器错误,网络访问失败,请检查你的网络。360云盘登陆不上!...

    http://help.360.cn/5030804/256704945.html 服务器不能登录360云盘 提示网络连接失败 请检测网络 有网络的 但是不能登录 可以访问网页 2013-01-31 ...

  2. web服务器php配置实例,配置 Web 服务器提供 PHP 服务

    有多种方式来配置一个 web 服务器以提供 PHP 服务.传统(并且糟糕的)的方式是使用 Apache 的 mod_php.Mod_php将PHP 绑定到 Apache 自身,但是 Apache 对于 ...

  3. 内网PC通过NAT server公网地址访问内部服务器时TCP三次握手不成功

    公网地址访问内部服务器时TCP三次握手不成功   一.  背景 在上图所示的网络中,PC 及Server属不同LAN,都是zone trust.为了让Internet用户能够访问到Server,FW上 ...

  4. 解决:此错误(HTTP 500 内部服务器错误)意味着您正在访问的网站出现了服务器问题,此问题阻止了该网页的显示...

    问题:此错误(HTTP 500 内部服务器错误)意味着您正在访问的网站出现了服务器问题,此问题阻止了该网页的显示 我的网站解决办法: 可能是因为IIS服务器没有开启父路径 解决:       在IIS ...

  5. Exchange2010 owa 访问 http 500 内部服务器错误

    故障原因:exchange2010服务器意外关机,重启后 owa 能打开,输入用户名及密码后,无法访问 "http 500 内部服务器错误" 解决方法:在控制面板中打开" ...

  6. 随时随地通过代理访问内部服务器(tfcenter)

    1.组网如下: 2.操作方法: 2.1 运行tfcenter软件 在存储盒子.笔记本或台式机安装运行tfcenter软件: 下载安装包(绿色免安装) tfcenter安装包https://share. ...

  7. linux服务返回500,Linux系统下的站点500内部服务器错误及故障排除500错误

    有时浏览网页时发生的最常见错误之一是看到"500 Internal Server Error(500内部服务器错误)",此消息表明Web服务器遇到技术问题.本文介绍500错误的含义 ...

  8. Linux下http500内部服务错误,HTTP 500内部服务器错误怎么办

    HTTP 500内部服务器错误怎么办 IIS安装完成,一运行出现"HTTP 500 - 内部服务器错误"怎么办?只要三步就可以解决问题了. 1. 运行:regsvr32 %wind ...

  9. 2012服务器系统关闭网络共享,提供网络服务的前提,Windows Server 2012如何更改高级共享设置...

    今天介绍系统提供网络服务的前提,Windows Server 2012 R2操作系统如何更改高级共享设置.小伙伴们可能都听说,网络配置是提供各种网络服务的前提.Windows Server 2012 ...

最新文章

  1. 为何 Map接口不继承Collection接口
  2. 无法安装此计算机不存在英特尔,win2008serverr2intel网卡驱动无法安装不存在英特尔PRO适配器的解决方法...
  3. HDU-4454 Stealing a Cake 三分枚举
  4. vim 粘贴代码格式
  5. Ubuntu 16.04下使用gcc输出汇编的.0文件为可执行文件时出现:`_start'被多次定义
  6. c语言作业题五六章答案,C语言程序设计五六章习题和课堂测试答案.doc
  7. python 立方体_Python | 创建三个数字列表,分别是正方形和立方体
  8. react(89)--设置只能正整数
  9. php mysql 反斜杠_MySQL中如何插入反斜杠,反斜杠被吃掉,反斜杠转义(转)
  10. android人脸抠图,人脸框抠图如何实现
  11. ⅰsee是什么意思_see是什么意思?
  12. 常用软件的替代软件 (免费和自由软件)
  13. Python制作卡点视频
  14. 什么是AI预训练模型?
  15. 给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)
  16. 【css】i标签icon图标旋转样式
  17. 俺的作品也开始有盗版了... hiahia... 奇怪, 为什么我反而很得意涅...
  18. Kali Linux 2020.1安装教程
  19. 曾遭作者“删库”的faker.js,现被社区接手;Apache Ambari 项目被弃用;FFmpeg 5.0 发布 | 开源日报
  20. 谷智网Ebay大账户

热门文章

  1. 如何零基础开始自学Python编程,值得一看!
  2. 入门Python,总遇到这样那样的安装问题,手把手教会你
  3. 大数据之Hadoop教程
  4. java金字塔等边三角形_java99乘法表的小练习 正三角 倒三角 正金字塔 倒金字塔...
  5. iphone怎么看wifi密码_无线网密码正确但是手机连接不上wifi怎么回事?
  6. Digital Text Animations for Mac - 未来感活力全屏标题动画fcpx插件
  7. H7-TOOL | 以太网 - 动态IP(DHCP)功能测试
  8. python矩阵对角化_numpy创建单位矩阵和对角矩阵的实例
  9. C++笔记-二维棋盘数组使用BFS(宽度优先遍历)
  10. Java笔记-ReadWriteLock与Condition的使用