服务器架构

系统

Ubuntu 16.04 x64 使用自带防火墙 UFW

操作:

在有公网的服务器上,进行防火墙基本操作开启自己所需业务的端口,并按下方设置启动NAT;

其他内网机器修改网关或者路由表,即可使用NAT共享网络

UFW基本操作:

  1. 查看当前状态和防火墙规则

    ufw status    #Status: active 服务激活;如果没有配置规则,将不显示防火墙规则
  2. 设置默认动作
    ufw default allow/deny    #对未配置的端口执行默认允许/拒绝动作
  3. 添加允许/拒绝端口的规则
    ufw allow /tcp    #允许  tcp封包;还可以换成 /udp,表示允许22端口 udp封包
    ufw deny        #拒绝 端口 (udp+tcp)
  4. 删除允许/拒绝端口的规则
    ufw delete allow/deny     #删除规则同添加一致 添加 /tcp就删除 /tcp,不能删除 
  5. 启动/关闭/重载防火墙
    通过ssh远程连接建议先设置 22/tcp允许规则再启动防火墙服务
    ufw enable/disable/reload

防火墙配置转发

  1. 首先开启系统的IP转发

    net.ipv4.ip_forward =     #增加或修改该字段,值设为1
    /etc/sysctl.conf
  2. 生效
    sysctl -p
  3. 设置防火墙的转发(修改俩个配置文件)
    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
  4. 重启防火墙,成功

设置网关/路由

  1. 修改网关

    route add default gw 172.17.0.1    #IP为拥有公网服务器的私网地址

    以上为临时修改生效且基本通用,永久修改请百度,博主发现不同系统配置文件修改方法差异太大

    可以ping公网了!

  2. 修改路由表(使用云产品VPC专有网络)

    阿里云进入产品,专有网络,左侧选择路由表,点击添加路由条目


    添加下一跳,选择具有公网IP的ECS

    配置完成!

意义:

阿里云买ecs不配置公网IP可以省很多钱!

内网集群给每一个配公网ip太浪费,公网偶尔用一下(第三方软件脚本升级)

内网通信延迟低,速率快(网卡速率)

作者:saopanda 地址 https://www.cnblogs.com/saopanda/p/10906421.html

转载请附原链接,谢谢!

Ubuntu 防火墙IP转发做NAT,内网集群共享网络(简单)的更多相关文章

  1. 内网集群准同步shell脚本

    在公司的内网中配置集群同步,可能是代理问题,ntpd和chrony都没有用,所以只好写shell脚本解决 前提条件集群中各台机器已经配置好了免密登录 一.免密登录配置 1. 用 root 用户登录.每 ...

  2. 通过rinetd实现端口转发来访问内网的服务

    通过rinetd实现端口转发来访问内网的服务 一.   问题描述 通过外网来访问内网的服务 二.   环境要求 需要有一台能够外网访问的机器做端口映射,通过数据包转发来实现外部访问阿里云的内网服务 三 ...

  3. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践

    欢迎转载,转载时请保留全文及出处. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践 Apache安装 下载源程序(http://httpd.ap ...

  4. Linux通过端口转发来访问内网服务(端口转发访问阿里云Redis数据库等服务)

    # 安装rinetd wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz& ...

  5. 推断给定的IP地址是否是内网IP

    /** * 推断给定的IP地址是否是内网IP * * @author GaoHuanJie */ public class Test{ public boolean isInnerIP(String ...

  6. ubuntu ceph集群安装以及简单使用

    ubuntu ceph安装以及使用 1.安装环境 本文主要根据官方文档使用ubuntu14.04安装ceph集群,并且简单熟悉其基本操作.整个集群包括一个admin节点(admin node,主机名为 ...

  7. Ubuntu 12.04下Hadoop 2.2.0 集群搭建(原创)

    现在大家可以跟我一起来实现Ubuntu 12.04下Hadoop 2.2.0 集群搭建,在这里我使用了两台服务器,一台作为master即namenode主机,另一台作为slave即datanode主机 ...

  8. Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本)

    Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本) Hive 安装依赖 Hadoop 的集群,它是运行在 Hadoop 的基础上. 所以在安装 Hive 之 ...

  9. Linux 通过rinetd端口转发来访问内网服务

    可以通过端口映射的方式,来通过具有公网的云服务器 ECS 访问用户名下其它未购买公网带宽的内网 ECS 上的服务.端口映射的方案有很多,比如 Linux 下的 SSH Tunnel.rinetd,Wi ...

随机推荐

  1. BEC listen and translation exercise 31

    听力练习: All societies have ways of encouraging and enforcing what they view as appropriate behaviour w ...

  2. VScode 为 *.cu文件 添加高亮及c++ intelligence相关操作的方法

    问题:*.cu在VScode不能像*.cc或*.cpp一样在c++及c++ intelligence插件有关键字的高亮以及go to definition等的操作 解决方案:添加*.cu与*.cpp文 ...

  3. MarkDown不支持图片放缩。。

    ![](http://images2015.cnblogs.com/blog/573995/201604/573995-20160430162211050-1357272526.jpg =100x20 ...

  4. Gym - 100570E:Palindrome Query (hash+BIT+二分维护回文串长度)

    题意:给定字符串char[],以及Q个操作,操作有三种: 1:pos,chr:把pos位置的字符改为chr 2:pos:问以pos为中心的回文串长度为多长. 3:pos:问以pos,pos+1为中心的 ...

  5. 随机数 while循环 do while循环 for循环

    1.随机数   arc4random()    返回一个随机数 如果要随机[a,b]范围内的随机数   arc4random() % (b - a + 1) +  a ; 2.break  跳出本次循 ...

  6. Poj_1008--Maya Calendar

    一.Description 上周末,M.A. Ya教授对古老的玛雅有了一个重大发现.从一个古老的节绳(玛雅人用于记事的工具)中,教授发现玛雅人使用了一个一年有365天的叫做Haab的历法.这个Haab ...

  7. js数组中的reverse()方法

    reverse方法是将数组中的元素的顺序进行反转,在原数组上操作,然后返回原数组.由于本人是学习js的新人,对reverse函数进行了几个小实验,以下实验均在Chrome浏览器上运行 实验一:reve ...

  8. ubuntu安装wget

    ubuntu安装wget apt-get update apt-get install wget wget --version

  9. linux切割文件【split命令详解】

    linux查看帮助 [tomcat-nohup]$ split --help 用法:split [选项]... [输入 [前缀]] 将输入内容拆分为固定大小的分片并输出到"前缀aa" ...

  10. HTML基础:

    HTML是英文HyperText Markup Language的缩写,即超级文本标记语言,是用于描述网页文档的一种标记语言.HTMl是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言.HTM ...