RHEL7配置端口转发和地址伪装
说明:这里是Linux服务综合搭建文章的一部分,本文可以作为Linux上使用firewalld做端口转发和地址伪装以及外网访问内网的参考。
注意:这里所有的标题都是根据主要的文章(Linux基础服务搭建综合)的顺序来做的。
如果需要查看相关软件版本和主机配置要求,请根据目录自行查看。
Linux服务综合搭建的文章目录
====================================================
5、foundation通过Rsyslog搭建集中日志服务器
8、rhel7 JAVA web环境搭建(使用Tomcat8整合httpd)
10、foundation配置kerberos和NTP服务以及安全的NFS挂载
====================================================
主机角色说明

13 rhel7主机配置端口转发和地址伪装
13.1 一些概念和注意事项
13.1.1 说明
由于我们这里所有主机都在内网,实现的端口转发和地址伪装实际上意义不大,这里主要是为了演示在外网访问内网,
或者不同网段或者公司内部不同部门处在不同网段的情况下,我们实现地址伪装和端口转发来实现伪装实际主机和外网访问内网。
13.1.2 地址伪装和端口转发方式
本地端口转发:在本机做端口转发,目标是本机的其它端口。
目标端口转发:在本机做端口转发,目标是其他主机的端口。
地址伪装:实际上就是NAT,网络地址转换,但是在firewalld中不需要想华为,华三等的路由器一样需要具体配置地址池等内容,
直接开启地址伪装功能即可,要做目标端口转发必须要配置地址伪装,至于路由器上配置NAT的一些实现方式这里大致说一下,
它有很多方式,主要有基于IP地址的NAT,和基于端口的NAT,有兴趣可以去了解一下网络相关和路由交换相关的内容,这里就不赘述,以免偏离主题。
13.1.3 注意事项
注意:要实现通过https访问本主机网站时自动转发到foundation主机的https网站,即内容是foundation的,
浏览器地址栏依旧是本机(rhel7主机)的,不要做全站重写,这里我们可以用防火墙(firewalld)的富规则实现端口转发即可,
但是要注意的是我们要配置的是目标端口转发而不是本地端口转发,另外,我们也可以使用防火墙(firewalld)本身的端
口转发配置语法来配置(语法和参数较多),但是要在更大程度上做精准控制转发规则还是使用富规则的好,
同时富规则我们也比较常用,语法相对简单,这里推荐使用富规则。
下面将介绍两种方式。
13.2 配置地址伪装和端口转发
13.2.1 配置地址伪装
首先必须配置地址伪装(NAT)才能实现端口目标端口转发,在Redhat Enterprise Linux中的firewalld中只需要开启地址伪装即可,
不用像华为、华三等路由器配置NAT一样要做具体的配置。
1 firewall-cmd --add-masquerade
13.2.2 配置端口转发
方式一:使用富规则
1 [root@rhel7 ~]# firewall-cmd --permanent --add-rich-rule='rule family=ipv4 forward-port port=443 to-port=443 protocol=tcp to-addr=172.25.0.55'
方式二:使用端口转发的语法
1 [root@rhel7 ~]# firewall-cmd --permanent --add-forward-port=port=443:proto=tcp:toport=443:toaddr=172.25.0.55
13.3 测试
给Firefox导入证书,然后地址栏数据https://rhel7.mei.com测试网站能够正常访问。

测试我们的https网站的php网页能够正常访问,且地址栏的地址一致是rhel7.mei.com:


最后希望大家提意见、转发、评论和交流!!!
RHEL7配置端口转发和地址伪装的更多相关文章
- Windows下Nginx的安装与使用(一):配置端口转发
什么是端口转发 当我们在服务器上搭建一个图书以及一个电影的应用,其中图书应用启动了 8001 端口,电影应用启动了 8002 端口.此时如果我们可以通过: localhost:8001 //图书 lo ...
- windows下nginx中配置端口转发 ----本文来自转载
什么是端口转发 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 转载原文链接:https://www.cnblogs.com/chanshuyi/ ...
- VMware虚拟机配置端口转发(端口映射),实现远程访问【转】
前言本文所写的远程为各个电脑在同一个网段内 本文主要详细介绍如何远程访问虚拟机里面的项目! 机器:虚拟机(装在电脑1里).电脑1(宿主机).电脑2.电脑3.电脑4.电脑n... 操作步骤: step1 ...
- 【Windows】netsh动态配置端口转发
文章转载自傲风 使用多个虚拟机,将开发环境和工作沟通环境分开(即时通,办公系统都只能在windows下使用-),将开发环境的服务提供给外部访问时,需要在主机上通过代理配置数据转发. VirtualBo ...
- 在windows上用netsh动态配置端口转发
使用多个虚拟机,将开发环境和工作沟通环境分开(即时通,办公系统都只能在windows下使用…),将开发环境的服务提供给外部访问时,需要在主机上通过代理配置数据转发. VirtualBox提供了端口转发 ...
- linux中nginx中配置端口转发
域名指向主机IP地址,通过域名:8080才能访问网站,去掉后面的8080:或者其他的端口号,直接使用域名访问网站 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处 ...
- Windows配置端口转发
windows命令行下用netsh实现端口转发 微软Windows的netsh是一个命令行脚本实用工具.使用netsh工具 ,可以查看或更改本地计算机或远程计算机的网络配置.不仅可以在本地计算机上运行 ...
- linux配置端口转发
一.使用rinted进行端口转发 将10.50.13.13 80请求转到10.50.13.11 80上 1.安装rinetd $ tar zxf rinetd.tar.gz $ cd rinetd $ ...
- 在CentOS 7 上为docker配置端口转发以兼容firewall
在CentOS 7上当我们以类似下列命令将主机端口与容器端口映射时可能遇到无法访问容器服务的问题 docker run --name web_a -p 192.168.1.250:803:80 -d ...
随机推荐
- 实验6、Flask API使用示例和拓展
实验介绍 1. 实验内容 Flask 提供了多种API拓展,本节我们主要学习基于RESTful的Flask应用程序设计 2. 实验要点 学习和掌握多种RESTful的设计模式 3.实验环境 Cento ...
- Pytorch Dataset和Dataloader 学习笔记(二)
Pytorch Dataset & Dataloader Pytorch框架下的工具包中,提供了数据处理的两个重要接口,Dataset 和 Dataloader,能够方便的使用和加载自己的数据 ...
- Mybati-Plus的用法 记录
参考文件下载地址: https://files.cnblogs.com/files/bulter/MyBatis-Plus.zip --------------------------------- ...
- c#根据名称反射对应的枚举类型
今天遇到了要配置串口的停止位,这个时候直接反射枚举比较方便. 第一反射所有的枚举值 FieldInfo[] fieldInfoes= typeof(StopBits).GetFields(Bindin ...
- 『无为则无心』Python基础 — 10、Python字符串的格式化输出
目录 1.什么是格式化输出 2.Python格式化输出的五种方式 方式一:字符串之间用+号拼接 方式二:print()函数可同时输出多个字符串 方式三:占位符方式 方式四:f格式化方式(推荐) 方式五 ...
- Unity StateMachineBehaviour
在unity animator中单个Animator Clip中点击Add Behaviour增加当执行该动画时的一些状态代码,请看如下 创建完之后基本代码结构如下:(如果想修改默认代码结构,请看示例 ...
- Docker_CICD笔记
1 环境说明 1.1 机器配置 主机名称 IP地址 系统版本/内存/cpu核数/硬盘 安装软件 controlnode 172.16.1.70/24 centos7.4/4/2/60 docker.d ...
- flex发生错误积累。每次遇到错误记录一点点
error #2044: 未处理的 ioerrorevent: text=error #2036: 加载未完成 出现这个问题,因为我是要实现图片编辑裁剪,然后上传.没有上传成功,出现上面的这个错误, ...
- 非静态的字段、方法或属性“System.Web.UI.Page.ClientScript.get”要求对象引用
解决Response.Write("<script>alert('修改失败,请稍后再试!');</script>");布局错误的问题 在后台CS代码(不是C ...
- layui table 使用table放输入框时控制每列的宽度
<table class="layui-table" lay-filter="demo"> <colgroup> <%--设置每列 ...