Linux 服务器--Iptables 端口转发
日常Iptables 端口转发
- 需求:公司是局域网络,通过一个外网ip,进行互联网的访问。公司的云平台服务器在公网中,虚拟化平台中有一台内部服务器,用于公司某部门的使用,上面运行www 服务,ssh端口,方便平时上传网站文件。现领导要求将此内部服务器交接给此部门,并只让其在公司内部访问,外面的公网是拒绝访问的。
结构图:

2.解决方法:通过linux 服务器的iptables,利用端口转发,在公司内部通过A机器(或者说A代表某个部门),使其访问到B机器上的特定连接转发至内部机器C上。由于机房服务器只开放了特定端口,所以,利用B机器的9090端口和80端口分别转发到内部机器C上的22端口和80端口。
修改防火墙之前,需要先修改系统内核,开启ipv4转发功能:vim /etc/sysconfig,修改以下值 ipv4_net_forward = 1 ,之后运行 sysctl -p 命令生效。
先备份一下防火墙的配置文件,之后编辑防火墙:vim /etc/sysconfig/iptables,追加以下规则(做转发的四条规则必须写在nat表中):
*nat :PREROUTING ACCEPT [:] :POSTROUTING ACCEPT [:] :OUTPUT ACCEPT [:]
-A PREROUTING -s 223.1.1.2 -d 101.1.1.3 -p tcp -m tcp --dport -j DNAT --to-destination 10.8.88.88: -A POSTROUTING -d 10.8.88.88 -p tcp -m tcp --dport -j SNAT --to-source 10.8.88.77 -A PREROUTING -s 223.1.1.2 -d 101.1.1.3 -p tcp -m tcp --dport -j DNAT --to-destination 10.8.88.88: -A POSTROUTING -d 10.8.88.88 -p tcp -m tcp --dport -j SNAT --to-source 10.8.88.77
注:PREROUTING 来自223.1.1.2 且目标是 101.1.1.3:9090端口的链接转发到 10.8.88.88:22端口上
注:POSTROUTING 回路的包,所有从内部机器C的22端口返回的包转发到B机器上的eth1网卡上
同上:
*filter -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -A INPUT -s 223.1.1.2 -p tcp -m tcp --dport -j ACCEPT -A INPUT -s 223.1.1.2 -p tcp -m tcp --dport -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited
3.修改完成后,保存配置。重启iptables服务,现在可以测试一下。
Linux 服务器--Iptables 端口转发的更多相关文章
- 〖Linux〗iptables端口转发(11.11.136.80:5552 <==> 10.10.136.1:8055/11.11.136.1:8055)
环境: pc1: 10.10.72.1 (network: 10.10.72.0/22) pc2: 地址1: 10.10.136.1 (nework: 10.10.136.0/22) 地址2: 11. ...
- 烂泥:KVM使用NAT联网并为VM配置iptables端口转发
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 在前面的文章中,我们介绍KVM的虚拟机(以下简称VM)都是通过桥接方式进行联网的. 本篇文章我们来介绍KVM的VM通过NAT方式进行联网,并且通过配置I ...
- 转:KVM使用NAT联网并为VM配置iptables端口转发,kvmiptables
转载地址:https://www.ilanni.com/?p=7016 在前面的文章中,我们介绍KVM的虚拟机(以下简称VM)都是通过桥接方式进行联网的. 本篇文章我们来介绍KVM的VM通过NAT方式 ...
- Linux IPTABLES端口转发
之前在Linux上用普通用户部署了一个Tomcat,然后将其server.xml中的端口配置为80端口,用普通用户运行就提示绑定端口失败(permission denied),google了一下,原来 ...
- linux系统非ROOT用户80端口不能启动tomcat问题的变通办法——通过Iptables端口转发
2010-07-17 13:21:42 org.apache.tomcat.util.digester.SetPropertiesRule begin 警告: [SetPropertiesRule]{ ...
- 【Linux】实现端口转发的rinetd
Linux下端口转发一般都使用iptables来实现,使用iptables可以很容易将TCP和UDP端口从防火墙转发到内部主机上.但是如果需要将流量从专用地址转发到不在您当前网络上的机器上,可尝试另一 ...
- linux centos6 NAT 端口转发
有很多时候我们为了安全,需要将例如数据库服务器放到内网中.但是有些时候又系统给外网开一个端口,这时就可以利用外网的服务器进行一个端口转发.今天我们以centos6 为例进行端口转发配置. 首先vi / ...
- iptables 端口转发规则
玩 vps 的经常要用到端口转发用以实现更快的速度.比如 ovh 机房的网络我这里访问非常慢,用远程桌面会吐血的类型.所以就会用其他的线路作为跳板,比如洛杉矶,香港之类的.再比如如果需要一个日本 ip ...
- Linux 通过rinetd端口转发来访问内网服务
可以通过端口映射的方式,来通过具有公网的云服务器 ECS 访问用户名下其它未购买公网带宽的内网 ECS 上的服务.端口映射的方案有很多,比如 Linux 下的 SSH Tunnel.rinetd,Wi ...
随机推荐
- Android程序员学WEB前端(4)-HTML(4)-注册页面-Sublime
转载请注明出处:http://blog.csdn.net/iwanghang/article/details/76576031 觉得博文有用,请点赞,请评论,请关注,谢谢!~ 注册页面1: <! ...
- 《Drools7.0.0.Final规则引擎教程》第4章 4.4 约束(Pattern的一部分)
4.4.3 约束(Pattern的一部分) 前面我们已经介绍了条件约束在Pattern中位置了,那么什么是条件约束呢?简单来说就是一个返回true或者false的表达式,比如下面的5小于6,就是一个约 ...
- Android架构设计之MVP分析
转载请注明出处:http://blog.csdn.net/crazy1235/article/details/51471280
- python全局替换文件内容脚本第1版
#!/usr/bin/python #coding=utf8 """ # Author: xiaoyafei # Created Time : 2018-05-08 09 ...
- times(NULL) Segmentation fault
****************************************************************************** * times(NULL) Segment ...
- 报错 Inferred type 'S' for type parameter 'S' is not within its bound; 解决办法
出现情况: Inferred type 'S' for type parameter 'S' is not within its bound; should extends xxxxxx 出现这种问题 ...
- Excel VBA to Interact with Other Applications
转载自:https://analysistabs.com/excel-vba/interact-with-other-applications/ Interact with PowerPoint fr ...
- ubuntu 新手帖
作为菜鸟,接触ubuntu的时间不长,遇到一些问题,在这总结一下,可能不全不完善,但是希望能有用: 1,ubuntu 12.04的gedit打开中文记事本全是乱码的处理 参考:http://bbs.c ...
- 从hello world 说程序运行机制
转自:http://www.cnblogs.com/yanlingyin/archive/2012/03/05/2379199.html 开篇 学习任何一门编程语言,都会从hello world 开始 ...
- 理解可变参数va_list、va_start、va_arg、va_end原理及使用方法
原文: http://www.cnblogs.com/pengdonglin137/p/3345911.html