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 ...
随机推荐
- hsv空间
hsv在不同的软件中,有不同的阈值, 在描述阈值之前,看一下它的定义,按照标准的定义,hsv应该是从0°到360°的一个环,加上一个表示亮度的轴,重点就是那个环. 这个环如图一,0°一般为红色120° ...
- linux 故障:df -h统计磁盘空间占用太多,但又du -h找不到大的文件
用lsof / | grep -i delete 从根目录定位打开的被删除的文件 如果定位到某文件占用空间很大 主要是因为我们在删除这个日志文件的时候是用rm -rf *.log这样的命令删除的,删除 ...
- 每天一个linux命令(13):more命令
版权声明更新:2017-05-17博主:LuckyAlan联系:liuwenvip163@163.com声明:吃水不忘挖井人,转载请注明出处! 1 文章介绍 本文介绍了Linux下面的mv命令. 2. ...
- 如何在virtualenv环境中安装指定的python版本
指定python版本:virtualenv -p python执行文件路径 自定义虚拟环境名称.如果文件路径有空格,用引号. 如果不指定python版本,则默认使用环境变量中的python ...
- bzoj 1711 Dining吃饭 —— 最大流
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1711 食物一列,牛拆点,饮料一列. 代码如下: #include<cstdio> ...
- 开启现有android项目
开启工程 在屏幕上方的选单列上,选择「File->New->Project」, 会弹出「New Project」对话视窗.Eclipse 是通用的编辑环境,可根据你所安装的不同扩充套件而支 ...
- Poj1258_Agri-Net(最小生成树)
一.Description(poj1258) Farmer John has been elected mayor of his town! One of his campaign promises ...
- JVM体系结构之六:堆Heap之2:新生代及新生代里的两个Survivor区(下一轮S0与S1交换角色,如此循环往复)、常见调优参数
一.为什么会有年轻代 我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完全可以,分代的唯一理由就是优化GC性能.你先想想,如果没有分代,那我们所有的对象都在一块,GC的时候我 ...
- asp弹出层
asp弹出层 <style type="text/css"> html, body { height: %; width: %; } .white_content { ...
- 共有11款Python 中文分词库开源软件
件过滤: 排序: 收录时间 | 浏览数 Python 中文分词库 Yaha "哑哈"中文分词,更快或更准确,由你来定义.通过简单定制,让分词模块更适用于你的需求. "Ya ...