一则自用iptables例子解释

公网IP:110.24.3.83
内网IP:10.252.214.186
局域网数据库:10.252.214.100

通过NAT端口转发,访问110.24.3.83:3308端口跳转到局域网数据库机器的3306端口

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -d 110.24.3.83 -p tcp --dport 3308 -j DNAT --to-destination 10.252.214.100:3306
-A POSTROUTING -d 10.252.214.100 -p tcp -j SNAT --to-source 10.252.214.186
COMMIT

*filter
:INPUT DROP [0:0] #默认进来的所有包DROP,0:0表示没有限制包的个数和总字节数,匹配的动作可以无限制的流入流出。
:FORWARD DROP [0:0] #默认转发的所有包DROP,0:0表示没有限制包的个数和总字节数,匹配的动作可以无限制的流入流出。
:OUTPUT ACCEPT [0:0] #默认出去的所有包ACCEPT,0:0表示没有限制包的个数和总字节数,匹配的动作可以无限制的流入流出。
:RH-Firewall-1-INPUT - [0:0] #自定义了一个表RH-Firewall-1-INPUT
-A INPUT -j RH-Firewall-1-INPUT #将INPUT的所有包转发到自定义的RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT #将FORWARD的所有包转发到自定义的RH-Firewall-1-INPUT ;这样INPUT和FORWARD的规则就一致了,也就意味着,只要定义好RH-Firewall-1-INPUT,就定义好了INPUT和FORWARD两个链
-A RH-Firewall-1-INPUT -i lo -j ACCEPT #允许本机数据包通过
-A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #允许已建立的链接数据包通过
-A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT #允许ping本机
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -s 121.10.246.64/255.255.255.224 -m state --state NEW -j ACCEPT
-A RH-Firewall-1-INPUT -s 123.27.13.60 -m state --state NEW -j ACCEPT
-A RH-Firewall-1-INPUT -s 123.27.16.45 -m state --state NEW -j ACCEPT
COMMIT

时间: 2024-10-15 03:05:55

一则自用iptables例子解释的相关文章

用通俗的例子解释OAuth和OpenID的区别【原】

什么是OAuth(Wiki) 什么是OpenID(Wiki) 详细的定义可以看wiki,下面举个例子说说我的理解 现在很多网站都可以用第三方的账号登陆,比如,现在我要登录淘宝买东西,而如果我没有淘宝的账号,我也可以用微博的账号登录,这个微博账号就是第三方账号了. OpenID强调 验证 authentication,而OAuth强调 授权 authorization. 验证就是说“我”是不是(微博用户),而授权是说“淘宝”可不可以,而可不可以的前提则是“我”是不是. 过程大概是这样 我点开微博登

用生活中的例子解释java中的接口

阅读本文前置条件 需要你掌握接口和抽象类的基本定义与区别. 小例子 抽象类 一说到公司的财务人员,大家都知道他的行政职能是什么. 这个职位就是抽象类.其中那套财政处理流程就是抽象类中具体的方法. 这个抽象类(职位)并不能直接处理财务问题,只是规定了在这个职位上的人应该遵循这套办事流程. 具体类 每个职员都有各自不同的特性,比如工资差异,回家的方式等. 这个人员就是具体的类,继承自这个财务职位,但是有各自差异的方法. 这个具体类(财务人员)是直接处理财务问题,是一个可以产生活动的类(人员).其中哪

虚函数调用过程(用汇编和几个例子解释)

1.(mov ecx,dword ptr [ebp-0Ch])将this指针压入ecx 2.(mov edx,dword ptr [ecx])this指针指向该对象的首地址,而该处的前四个字节存放着该对象的虚函数表的首地址,将虚表指针放到edx中. 3.(call dword ptr [edx+4])由于edx中存放着虚表指针,则edx+4表示调用该虚表中的第二个函数 4.执行到上述操作后,执行该条指令(jmp B::say (00401320)),从而真正调用我们的虚函数! 如果我们的程序是通

如何用简单易懂的例子解释隐马尔可夫模型?

隐马尔可夫(HMM)好讲,简单易懂不好讲. 本文回答简单易懂,https://www.zhihu.com/question/20962240/answer/33438846 原文地址:https://www.cnblogs.com/liuyihai/p/8449068.html

如何向妻子解释OOD

原文:如何向妻子解释OOD 前言 此文译自CodeProject上一文,该文章在Top Articles上排名第3,读了之后觉得非常好,就翻译出来,供不想读英文的同学参考学习. 作者(Shubho)的妻子(Farhana)打算重新做一名软件工程师(她本来是,后来因为他们孩子出生放弃了),于是作者就试图根据自己在软件开发设计方面的经验帮助她学习面向对象设计(OOD). 自作者从事软件开发开始,作者常常注意到不管技术问题看起来多复杂,如果从现实生活的角度解释并以对答的方式讨论,那么它将变得更简单.现

python速成第二篇(小爬虫+文件操作+socket网络通信小例子+oop编程)

大家好,由于前天熬夜写完第一篇博客,然后昨天又是没休息好,昨天也就不想更新博客,就只是看了会资料就早点休息了,今天补上我这两天的所学,先记录一笔.我发现有时候我看的话会比较敷衍,而如果我写出来(无论写到笔记本中还是博客中,我都有不同的感觉)就会有不同的想法,我看书或者看资料有时候感觉就是有一种惰性,得过且过的感觉,有时候一个知识想不通道不明,想了一会儿,就会找借口给自己说这个知识不重要,不需要太纠结了,还是去看下一个吧,然后就如此往复下去,学习就会有漏洞,所以这更加坚定了我写博客来记录的想法.

c++ primer,友元函数上的一个例子(By Sybase)

本文试图解释c++ primer Screen 和 Window_Mgr的例子,为什么将两个类放在两个文件中无法编译? 将两个类写在同一个文件中,通过三个例子解释问题: 第一种写法问题: 编译到Screen时,由于Screen类使用到Window_Mgr的成员函数,虽然前面给出了Window_Mgr的声明,但此时还清楚Window_Mgr的完整定义,所以编译出错. class Window_Mgr class Screen { public: friend Window_Mgr& Window_

js闭包原理与例子[转]

闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 一.闭包原理: 一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域. 变量的作用域无非就是两种:全局变量和局部变量. Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量. var n=999; function f1(){ alert(n); } f1(); // 999 另一方面,在函数外部自然无法读取函数内的局部变量. function f

软件开发培训:开闭原则丨穿衣服的例子

文章来源:http://www.zretc.com/technologyDetail/477.html 软件开发中经常需要注意的原则有哪些呢?开闭原则就是其中之一 "开闭原则"图示如下: 让我来解释一下,设计规则如下: "软件实体(类,模块,函数等)应该对扩展开放,对修改关闭." 这意味着在最基本的层面上,你可以扩展一个类的行为,而无需修改.这就像我能够穿上衣服,而对我的身体不做任何改变,哈哈. 同学:太有意思啦. 你可以通过穿不同的衣服来改变你的外貌, 但是你不必