Ubuntu 防火墙IP转发做NAT,内网集群共享网络(简单)
服务器架构:

系统:
Ubuntu 16.04 x64 使用自带防火墙 UFW
操作:
在有公网的服务器上,进行防火墙基本操作开启自己所需业务的端口,并按下方设置启动NAT;
其他内网机器修改网关或者路由表,即可使用NAT共享网络
UFW基本操作:
- 查看当前状态和防火墙规则
ufw status #Status: active 服务激活;如果没有配置规则,将不显示防火墙规则
- 设置默认动作
ufw default allow/deny #对未配置的端口执行默认允许/拒绝动作
- 添加允许/拒绝端口的规则
ufw allow /tcp #允许 tcp封包;还可以换成 /udp,表示允许22端口 udp封包
ufw deny #拒绝 端口 (udp+tcp) - 删除允许/拒绝端口的规则
ufw delete allow/deny #删除规则同添加一致 添加 /tcp就删除 /tcp,不能删除
- 启动/关闭/重载防火墙
通过ssh远程连接建议先设置 22/tcp允许规则再启动防火墙服务
ufw enable/disable/reload
防火墙配置转发
- 首先开启系统的IP转发
net.ipv4.ip_forward = #增加或修改该字段,值设为1
/etc/sysctl.conf
- 生效
sysctl -p
- 设置防火墙的转发(修改俩个配置文件)
DEFAULT_FORWARD_POLICY="ACCEPT" #该值设为ACCEPT
/etc/default/ufw
# 注意默认规则内容都包含在 *filter...COMMIT 内
# 添加如下内容时注意 *nat...COMMIT 不能放在 *filter...COMMIT 内
# 172.17.0.0/16是私网网段*nat
:PREROUTING - [0:0]
:POSTROUTING - [0:0]
-A POSTROUTING -s 172.17.0.0/16 -o eth0 -j MASQUERADE
COMMIT/etc/ufw/before.rules
- 重启防火墙,成功
设置网关/路由
- 修改网关
route add default gw 172.17.0.1 #IP为拥有公网服务器的私网地址
以上为临时修改生效且基本通用,永久修改请百度,博主发现不同系统配置文件修改方法差异太大
可以ping公网了! - 修改路由表(使用云产品VPC专有网络)

阿里云进入产品,专有网络,左侧选择路由表,点击添加路由条目
添加下一跳,选择具有公网IP的ECS配置完成!
意义:
阿里云买ecs不配置公网IP可以省很多钱!
内网集群给每一个配公网ip太浪费,公网偶尔用一下(第三方软件脚本升级)
内网通信延迟低,速率快(网卡速率)
作者:saopanda 地址 https://www.cnblogs.com/saopanda/p/10906421.html
转载请附原链接,谢谢!
Ubuntu 防火墙IP转发做NAT,内网集群共享网络(简单)的更多相关文章
- 内网集群准同步shell脚本
在公司的内网中配置集群同步,可能是代理问题,ntpd和chrony都没有用,所以只好写shell脚本解决 前提条件集群中各台机器已经配置好了免密登录 一.免密登录配置 1. 用 root 用户登录.每 ...
- 通过rinetd实现端口转发来访问内网的服务
通过rinetd实现端口转发来访问内网的服务 一. 问题描述 通过外网来访问内网的服务 二. 环境要求 需要有一台能够外网访问的机器做端口映射,通过数据包转发来实现外部访问阿里云的内网服务 三 ...
- Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践
欢迎转载,转载时请保留全文及出处. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践 Apache安装 下载源程序(http://httpd.ap ...
- Linux通过端口转发来访问内网服务(端口转发访问阿里云Redis数据库等服务)
# 安装rinetd wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz& ...
- 推断给定的IP地址是否是内网IP
/** * 推断给定的IP地址是否是内网IP * * @author GaoHuanJie */ public class Test{ public boolean isInnerIP(String ...
- ubuntu ceph集群安装以及简单使用
ubuntu ceph安装以及使用 1.安装环境 本文主要根据官方文档使用ubuntu14.04安装ceph集群,并且简单熟悉其基本操作.整个集群包括一个admin节点(admin node,主机名为 ...
- Ubuntu 12.04下Hadoop 2.2.0 集群搭建(原创)
现在大家可以跟我一起来实现Ubuntu 12.04下Hadoop 2.2.0 集群搭建,在这里我使用了两台服务器,一台作为master即namenode主机,另一台作为slave即datanode主机 ...
- Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本)
Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本) Hive 安装依赖 Hadoop 的集群,它是运行在 Hadoop 的基础上. 所以在安装 Hive 之 ...
- Linux 通过rinetd端口转发来访问内网服务
可以通过端口映射的方式,来通过具有公网的云服务器 ECS 访问用户名下其它未购买公网带宽的内网 ECS 上的服务.端口映射的方案有很多,比如 Linux 下的 SSH Tunnel.rinetd,Wi ...
随机推荐
- linux命令学习笔记(16):which命令
我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which 查看可执行文件的位置. whereis 查看文件的位置. locate 配合数据库查看文件位置. f ...
- Java 网络通信(TCP/UDP)
1.InetAdress类 与 Socket类 >InetAdress >Socket 2.TCP/IP协议簇 客户端: 创建 Socket:根据指定服务端的 IP 地址或端口号构 ...
- C++中Segmentation fault(Core Dump)错误处理
什么是Core Dump? Core的意思是内存, Dump的意思是扔出来, 堆出来. 开发和使用Unix程序时, 有时程序莫名其妙的down了, 却没有任何的提示(有时候会提示core dumped ...
- SPOJ8093Sevenk Love Oimaster(广义后缀自动机)
Oimaster and sevenk love each other. But recently,sevenk heard that a girl named ChuYuXun was da ...
- python 3中对list进行sort时,返回值为None
进行在用python的list结构时, 发现一个问题: methods = ['blogger.deletePost', 'blogger.get ...
- 【转】Pro Android学习笔记(二六):用户界面和控制(14):RelativeLayout
相对布局:RelativeLayout RelativeLayout也是非常常用的布局,能够精确对控件的位置进行网格对齐,可以设置在控件与其他控件的相对位置,以及控件在容器中的位置.缺省控件的位置为最 ...
- Linker Tools Error LNK2001
https://msdn.microsoft.com/en-us/library/f6xx1b1z.aspx https://www.cnblogs.com/runningRain/p/5674833 ...
- IIS备份和还原
当我们电脑系统有大量的站点和虚拟目录的时候,电脑因为种种原因需要重做系统,那么重装系统后这些站点我们是否只能一个一个的添加,如果有成百上千个站点呢,任务量可想而知,本文将介绍如何备份和还原window ...
- MySQL绿色版的安装步骤
由于工作需要最近要开始研究MySQL了(看来学习都是逼出来的),本人对mysql没有研究,可以说一个小白. 下面就从安装开始吧,虽然网上关于这方面的东西很多,还是需要自己把操作过程写下来. 1.数据库 ...
- java数据库连接模板代码通用收集
package org.lxh.dbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLE ...