设置防火墙规则,允许位于局域网中的主机可以访问外网:

  1. 搭建内外网案例环境
  2. 配置SNAT策略实现共享上网访问

一:首先搭建内外网案例环境

实验拓扑

image

这里,我们设定192.168.2.0/24网络为外部网络,192.168.4.0/24为内部网络。

现在,在外部网络中有一台web服务器192.168.2.100,因为设置了网关,client已经可以访问此web服务器了。但,如果查看web1的日志就会发现,日志里记录的是192.168.4.10在访问网页。

我们需要实现的效果是,client可以访问web服务器,但要伪装为192.168.2.5后再访问web服务器(模拟所有位于公司内部的电脑都使用的是私有IP,希望访问外网,就需要伪装为公司的外网IP后才可以)。

二:设置防火墙规则,实现IP地址的伪装(SNAT源地址转换)

1)确保proxy主机开启了路由转发功能

开启路由转发

echo 1 > /proc/sys/net/ipv4/ip_forward

2)设置防火墙规则,实现SNAT地址转换

iptables  -t  nat  -A POSTROUTING  -s  192.168.4.0/24 -p tcp --dport 80  -j SNAT  --to-source 192.168.2.5

3)登陆web主机查看日志

tail /var/log/httpd/access_log192.168.2.5 - - [12/Aug/2018:17:57:10 +0800] "GET / HTTP/1.1" 200 27 "-"
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"

通过日志会发现,客户端是先伪装为了192.168.2.5之后再访问的web服务器!

4)扩展知识,对于proxy外网IP不固定的情况可以执行下面的地址伪装,动态伪装IP

iptables  -t  nat  -A POSTROUTING -s  192.168.4.0/24 -p tcp --dport 80 -j MASQUERADE

最后,所有iptables规则都是临时规则,如果需要永久保留规则需要执行如下命令:
安装iptables-services并启动服务,保存防火墙规则。

yum -y install iptables-services
systemctl start iptables.service
systemctl enable iptables.service
service  iptables save

防火墙规则存放文件:
/etc/sysconfig/iptables

作者:一个小运维
链接:https://www.jianshu.com/p/807fcc9197f3

相关资源:

java 对Redis的导入和导出 - Dcsdn

GitOps 初探 - Dcsdn

Redis数据的导出和导入 - Dcsdn

iptables配置SNAT实现共享上网相关推荐

  1. 配置SNAT实现共享上网: 搭建内外网案例环境 配置SNAT策略实现共享上网访问

    4.1 问题 本案例要求设置防火墙规则,允许位于局域网中的主机可以访问外网,主要包括下列服务: 搭建内外网案例环境 配置SNAT策略实现共享上网访问 4.2 步骤 实现此案例需要按照如下步骤进行. 步 ...

  2. 配置SNAT实现共享上网

    问题 本案例要求熟悉SNAT策略的典型应用场景,完成以下任务: 1)搭建一套"局域网-Linux网关-互联网"的案例环境 2)在Linux网关上配置SNAT策略,实现局域网主机的共 ...

  3. SNAT实现共享上网(1)

    文章目录 1 iptables基本管理 关闭firewalld,启动iptables服务 熟悉iptables框架 2 filter过滤和转发控制 iptables防火墙规则的条件 主机型防火墙 网络 ...

  4. Linux操作系统下iptables+nat实现ADSL共享上网!

    Linux操作系统下iptables+nat实现ADSL共享上网! ADSL作为一种较为成熟的宽带接入技术,凭着传输速度快.安装使用方便,无需太多的投入,以及节省费用等优点被现在大部分家庭和中小企业所 ...

  5. KVM 虚拟机 配置 NAT 连接方式上网

    1.命令行安装方式 virt-install \ --name=kvm99 --ram 1024 --vcpus=1 \ --disk path=/home/vms/kvm99.qcow2,size= ...

  6. 一、三种基本的共享上网方式:

    一.三种基本的共享上网方式: 总的来说,目前的共享上网方式不外乎:网关型共享上网.代理服务器型共享上网和路由共享上网三种.下面分别予以简单介绍. 1. 网关型共享上网: 网关型共享上网,就把直接连接互 ...

  7. 用iptables做软路由实现共享上网

    我们平时使用的大多数家用路由器都是通过NAT(Network Address Translation,网络地址转换)功能实现共享上网的,iptables是linux内核里整合的一个ip信息包过滤系统, ...

  8. CentOS 6.6下双网卡共享上网配置

    CentOS 6.6下双网卡共享上网配置 时间:2015-10-15 01:03来源:blog.51cto.com作者:l19891223j 的BLOG 举报 点击:494次   实现方式:通过设置i ...

  9. ubuntu iptables 共享上网

    为什么80%的码农都做不了架构师?>>>    环境 主机 Ubuntu 12.04 eth0(192.168.31.198)用于共享上网 eth1(10.10.100.100)内网 ...

最新文章

  1. python使用什么注释语句和运算-Python3 注释和运算符
  2. 【Python】透视表、统计表、汇总表、报表
  3. 近似求PI(15 分)
  4. ubuntu 网络知识总结
  5. android读写文本文件,Android读写文件
  6. 1-3.Win10系统利用Pycharm社区版安装Django搭建一个简单Python Web项目的步骤之三
  7. 更新显示当前歌曲的名称 winform 0130
  8. congatec AG acquires Real-Time Systems GmbH
  9. Tyvj P1016 包装问题 (DP)
  10. jquery怎么选择 某个指定id的div下面的第2个子div再设置css?
  11. 一道题目,检验一千个瓶子中哪个有毒
  12. 343.整数拆分(力扣leetcode) 博主可答疑该问题
  13. CTO、技术总监、首席架构师的区别
  14. ctfshow-Misc入门 图片篇(1-49)
  15. 11 空间平面方程 : 参数方程、向量式方程、行列式方程、三点式方程、点法式方程、一般方程
  16. c语言数组五种排序法:bubble,choise,quick,insert,shell 和js 数组排序sort的区别
  17. 某程序员上线原谅宝:抓取全球不可描述网站和社交平台10万渣女
  18. 如何用CSS3画出一个立体魔方?
  19. SATA串口硬盘设置、分区及安装
  20. 物流行业智能化转型的幕后推手!盘点机器视觉物流分拣四大优势

热门文章

  1. ubuntu解决网络连接的优先级
  2. Mac Tomcat安装 localhost 拒绝了我们的连接请求
  3. python断网重联_Python实现WiFi断线自动重连的方法详解
  4. 软件测试人员能力矩阵
  5. JSON转String
  6. Alfresco 部署 企业文档管理系统
  7. python模拟网页点击_python模拟点击
  8. PXE启动配置及原理
  9. matlab中if语句的分号,matlab if语句
  10. 运算器的基本组成及操作过程