⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ip-masquerade.txt

📁 linux-bible.rar linux-bible.rar
💻 TXT
📖 第 1 页 / 共 5 页
字号:
   这是一个给在固定 PPP 位址之 PPP 连线後面的防火墙/伪装系统使用的设定。信   赖(trusted) 界面为 192.168.255.1, PPP 界面已经修改过以避免犯错 :) 。我   分别列出每一个进入(incoming)以及送出(outgoing)界面来抓出变更递送路   径(stuffed routing) 以及/或是伪装(masquerading)等等这些个 IP spoofing   技巧。同时任何没有明确允许的东西都是禁止的!   #!/bin/sh## /etc/rc.d/rc.firewall,  定义防火墙配置,从 rc.local 执行。#PATH=/sbin:/bin:/usr/sbin:/usr/bin# 测试用,等待一段时间然後清除所有的防火墙规则。# 如果你希望防火墙十分钟之後自动关闭就取消下列几行的注解。# (sleep 600; \# ipfwadm -I -f; \# ipfwadm -I -p accept; \# ipfwadm -O -f; \# ipfwadm -O -p accept; \# ipfwadm -F -f; \# ipfwadm -F -p accept; \# ) &# 进入伪装闸道的设定,更新以及设定拒绝的策略(policy)。事实上# 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则ipfwadm -I -fipfwadm -I -p deny# 伪装闸道的本地(local) 界面,区域网路里的机器,允许连往任何# 地方ipfwadm -I -a accept -V 192.168.255.1 -S 192.168.0.0/16 -D 0.0.0.0/0# 伪装闸道的远端(remote)界面,声称是区域网路里的机器,IP spoofing# 拒绝ipfwadm -I -a deny -V your.static.PPP.address -S 192.168.0.0/16 -D 0.0.0.0/0 -o# 伪装闸道的远端界面,任何来源,允许送往固定 (permanent) PPP# 位址ipfwadm -I -a accept -V your.static.PPP.address -S 0.0.0.0/0 -D your.static.PPP.address/32# 回授(loopback)界面是允许的ipfwadm -I -a accept -V 127.0.0.1 -S 0.0.0.0/0 -D 0.0.0.0/0# 捕捉所有规则,任何其它的进入方式都会被拒绝并记录。可惜没有# 记录用的选项但这可以代替ipfwadm -I -a deny -S 0.0.0.0/0 -D 0.0.0.0/0 -o# 送出伪装闸道的设定,更新以及设定拒绝的策略(policy)。事实上# 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则ipfwadm -O -fipfwadm -O -p deny# 本地界面,允许任何来源送出至区域网路ipfwadm -O -a accept -V 192.168.255.1 -S 0.0.0.0/0 -D 192.168.0.0/16# 远端界面送出至区域网路,stuffed routing ,拒绝ipfwadm -O -a deny -V your.static.PPP.address -S 0.0.0.0/0 -D 192.168.0.0/16 -o# 区域网路的机器从远端界面送出,stuffed masquerading,拒绝ipfwadm -O -a deny -V your.static.PPP.address -S 192.168.0.0/16 -D 0.0.0.0/0 -o# 区域网路的机器从远端界面送出,stuffed masquerading,拒绝ipfwadm -O -a deny -V your.static.PPP.address -S 0.0.0.0/0 -D 192.168.0.0/16 -o# 任何其它远端界面送出的东西都是允许的ipfwadm -O -a accept -V your.static.PPP.address -S your.static.PPP.address/32 -D 0.0.0.0/0# 回授(loopback)界面是允许的ipfwadm -O -a accept -V 127.0.0.1 -S 0.0.0.0/0 -D 0.0.0.0/0# 捕捉所有规则,任何其它的送出方式都会被拒绝并记录。可惜没有# 记录用的选项但这可以代替ipfwadm -O -a deny -S 0.0.0.0/0 -D 0.0.0.0/0 -o# 伪装闸道的转送设定,更新以及设定拒绝的策略(policy)。事实上# 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则ipfwadm -F -fipfwadm -F -p deny# 伪装区域网路的机器从本地界面送出至任何地方的资料ipfwadm -F -a masquerade -W ppp0 -S 192.168.0.0/16 -D 0.0.0.0/0# 捕捉所有规则,任何其它的转送方式都会被拒绝并记录。可惜没有# 记录用的选项但这可以代替ipfwadm -F -a deny -S 0.0.0.0/0 -D 0.0.0.0/0 -o   你可以使用 -I, -O 或是 -F 来控制到某特定节点的流量。记得这些规则集是由   上往下扫描的而 -a 代表"附加(append)"到目前现有的规则集中所以任何限制必   须在全域(global)规则之前出现。例如(没测试过) :-      使用 -I 规则。可能是速度最快的但是它只能阻止区域网路里的机器,防火墙本   身仍然可以存取"禁止"的节点。当然你可能想允许这样的组合。   ... start of -I rules ...# 拒绝并记录本地界面,区域网路里的机器通往 204.50.10.13ipfwadm -I -a reject -V 192.168.255.1 -S 192.168.0.0/16 -D 204.50.10.13/32 -o# 本地界面,区域网路里的机器,允许通往任何地方ipfwadm -I -a accept -V 192.168.255.1 -S 192.168.0.0/16 -D 0.0.0.0/0... end of -I rules ...   使用 -O 规则。最慢,因为封包首先经过伪装但这个规则阻止防火墙存取禁止的   节点。   ... start of -O rules ...# 拒绝并记录送出至 204.50.10.13 的资料ipfwadm -O -a reject -V your.static.PPP.address -S your.static.PPP.address/32 -D 204.50.10.13/32 -o# 允许任何其它远端界面送出的东西ipfwadm -O -a accept -V your.static.PPP.address -S your.static.PPP.address/32 -D 0.0.0.0/0... end of -O rules ...   使用 -F 规则。可能比 -I 慢而这仍然只能阻止伪装的机器(例如内部的机器),   防火墙仍然可以取得禁止的节点。   ... start of -F rules ...# 拒绝并记录 PPP  界面送出从区域网路到 204.50.10.13 的资料。ipfwadm -F -a reject -W ppp0 -S 192.168.0.0/16 -D 204.50.10.13/32 -o# 伪装本地界面从区域网路送出至任何地方的资料。ipfwadm -F -a masquerade -W ppp0 -S 192.168.0.0/16 -D 0.0.0.0/0... end of -F rules ...   不需要有个特定的规则来允许 192.168.0.0/16 通往 204.50.11.0, 这涵盖於全   域规则中。      有一种以上的方法可以对界面设定上述规则。例如可以使用 -W eth0 来取代 -V   192.168.255.1,可以使用 -W ppp0 来取代 -V your.static.PPP.address。个人   的选择最重要。   4.5 IP 防火墙链 (ipchains)   这个主要是给 2.2.x 核心使用的防火墙规则管理工具(加上一个修补档後也可在   2.0.x 上运作)。      我们会尽快更新此节,给一些使用 ipchains 的□例。      细节请参考 [51]Linux IP Firewalling Chains page 以及 [52]Linux   IPCHAINS HOWTO。   4.6 IP Masquerade 以及需求式拨接(Demand-Dial-Up)    1. 如果你想把网路设定成自动拨接上网际网路,那麽 diald demand 拨接套件       将会是很棒的工具。    2. 要设定 diald, 请查看 [53]Setting Up Diald for Linux Page 网页    3. 一旦 diald 以及 IP masq 设定完成,你可以在任何客户端机器上启动       web, telnet 或是 ftp 连线。    4. Diald 将会侦测到进入系统的请求,然後拨接到你的 ISP 并建立连线。    5. 第一次连线将会发生逾时(timeout) 的情形。如果你使用类比式的数据机那       这是无可避免的。 建立数据机连结以及 PPP 连线所花费的时间将会使你的       客户端软体不耐。 如果你使用 ISDN 连线那这是可以避免的。你得做的只是       结束客户端软体现行的程序再重新启动即可。       4.7 IPautofw 封包转送程式   [54]IPautofw 是一个给 Linux masquerading 使用的一般性 TCP 及 UDP 转送程   式。一般使用需要 UDP 的套件的时候,需要载入特定的 ip_masq 模组   ;ip_masq_raudio, ip_masq_cuseeme,... Ipautofw 以更一般化的方式运作,它   将会转送包含这些应用程式特定模组都不会转送的任何资料流型态。如果没有正   确地管理这可能造成安全上的漏洞。   4.8 CU-SeeMe 与 Linux IP-Masquerade 的简短说明   由 [55]Michael Owings 所提供。     简介       本节解释让 CU-SeeMe (包括 Cornell 及 White Pine 版本) 与 Linux 的     IP 伪装功能一起运作的方法。        CU-SeeMe 是一个桌上视讯会议的软体,有 Windows 及 Macintosh 两种客户端。   一个免费的版本可从 [56]Cornell University 取得。商业的加强版可从   [57]White Pine Software 取得。      IP 伪装允许一部或更多部在区域网路上的工作站"伪装"在一部连接到网际网路的   Linux 主机之後。 区域网路内的工作站可以几乎透通地取用网际网路,即使它没   有合法的 IP 地址。 Linux 主机重写从内部网路到网际网路的外送封包,使它们   看起来就像是从这部 Linux 机器发出的一样。 送进来的回应封包也被改写并转   送至内部网路的正确工作站上。 这项安排使得许多网际网路的应用程式可以透通   地从内部网路的工作站上执行。 然而,对某些应用程式来说(像 CU-SeeMe),   Linux 的伪装程式需要一些小技巧的辅助才能使得封包转送得以正确运作。 这些   辅助技巧通常来自於某些特殊的核心可载入模组。 关於 IP-Masquerading 的更   多资讯,请参考 [58]The Linux IP Masquerading Website。     让它运作     首先你需要适当地配置核心。你应该加入 IP-Masquerading 及 IP   AutoForwarding 的完整支援。IP Autoforwarding 出现在 2.0.30 及其後的核心   选项 -- 更早的核心你需要修补档。 参见 [59]Linux IP Masquerade Resource   关於 IP-Autoforwarding 的资讯指引。      接下来,你要取得最新版本的 ip_masq_cuseeme.c。 这可经由匿名 FTP 从   [60]ftp://ftp.swampgas.com/pub/cuseeme/ip_masq_cuseeme.c 取得。 这个新   的模组也已经加入 2.0.31 的核心之中。你可以用新的版本来取代核心中的版本   。 ip_masq_cuseeme.c 通常位於 Linux 核心原始码的 net/ipv4 目录中。 你必   须编译并安装此模组。      接下来,你必须建立 UDP 埠号 7648-7649 的自动转送如下:   ipautofw -A -r udp 7648 7649 -c udp 7648 -u   ipautofw -A -r udp 7648 7649 -h www.xxx.yyy.zzz   第一个形式允许呼叫利用埠号 7648 (主要的 cu-seeme 埠号)进出工作站。 第二   个使用 ipautofw 的方式仅允计 cu-seeme 进出 www.xxx.yyy.zzz。 我较喜欢前   面这种形式,因为它更有弹性而且没有必要指定一个特别的工作站 IP。 然而,   这个方式会要求一工作站能收到呼叫前先送出呼叫。      注意这两种方式都将客户端机器的 UDP 埠号 7648-7649 开放给外界 -- 虽然这   不至於有严重的安全危险,你还是应特别小心。      最後,以下法载入新的 ip_masq_cuseeme 模组:   modprobe ip_masq_cuseeme   现在你可以从你区域网路上一部被伪装的机器上执行 CU-SeeMe 并连接到远端的   回应器(reflector)上,或另一个 CU-SeeMe 的使用者。 你应该也可以收到呼叫   。注意外界的呼叫者必须使用你 Linux 匣道器的 IP, 而不是被伪装工作站的   IP。     限制/警告    密码保护的回应器     目前没有任何办法使用。 White Pine 使用来源 IP (由客户端程式计算)在传送   前将密码编码保护。 因为我们改写了位址,回应器使用错误的来源 IP 来解码,   因此得到不正确的密码。 除非 White Pine 改变他们密码编码的策略(我已经建   议过了),或是他们愿意开放他们密码编码的公式以便让我能加到   ip_masq_cuseeme。 由於後面一个办法的可能性很小,因此我非常鼓励看到这份   文件的人与 White Pine 联络并建议他们采用前一种作法。 因为本页的流量相当   满高的,我怀疑我们能否产生足够的电子邮件以使此问题能进入 White Pine 的   优先处理名单中。      感谢 Thomas Griwenka 提醒我这件事。     执行回应器     你不能尝试在你跑 ip_masq_cuseeme 及 ipautoforwarding 埠号 7648 的相同机   器上执行回应器(reflector)。 这没有用,因为两者都需要配置埠号 7648。 或   者用另一部可直达网际网路的主机来执行,或是在执行回应器前卸下 CU-SeeMe   的客户端支援。     多 CU-SeeMe 使用者     你不能一次有多位 CU-SeeMe 使用者同时在一个区域网路上面。 这是由於   CU-SeeMe 顽固地坚持使用埠号 7648, 使得在区域网路内一次仅能有一台工作站   能(容易地)被重导向。      使用 -c (control port) 来呼叫 ipautofw, 你可以避免指定一固定的工作站位   址去使用 CU-SeeMe -- 第一部使用控制埠号 7648 送出任何东西的工作站会被指   定为接收来自埠号 7648-7649 的流量。 如果经过五分钟左右这部工作站不再使   用埠号 7648, 另一部工作站就可接著使用。     协助设定 CU-SeeMe     若有任何评论或问题请写信到 [61]mikey@swampgas.com。 或者如果你愿意的话   ,你可以 [62]透过 CU-SeeMe 来呼叫我。   4.9 其它相关工具   我们会尽快更新此节加上更多其它伪装相关的工具如 ipportfw 以及 masqadmin   5. 常见问题解答   如果你想到任何有用的常见问题与解答,请写信到 [63]ambrose@writeme.com 及   [64]dranch@trinnet.net。 请清楚地说明问题并附上适当的解答。谢谢!   5.1 IP Masquerade 能否和动态配置的 IP 共同运作?   是的,它能和你 ISP 动态配置的 IP, 通常是由一部 DHCP 伺服器分配的位址一   起运作。 只要你有一个合法的网际网路位址,它就能运作。当然,固定的 IP 一   样没问题。   5.2 我能使用数据机,DSL, 卫星连线等来连接网际网路并使用 IP Masquerade 吗?   当然,只要 Linux 支援该网路界面,它就能运作。   5.3 IP Masquerade 支援什麽应用程式?   要保持一份"能用的应用程式"列表是相当困难的。 不过,大部分正常的网际网路   应用程式都被支援,例如浏□器(Netscape, MSIE 等), ftp (像 WS_FTP), Real   Audio, telnet, SSH, POP3 (收信程式 - Pine, Outlook 等), SMTP(送信程   式), 等等。      使用复杂协定或特殊连线方式的应用程式,例如视讯会议软体就需要特别的辅助   工具。      进一步的细节,请参考 Lee Nevo 维护的 [65]applications that work thru   Linux IP masquerading。   5.4 我如何在 Redhat, Debian, Slackware 等使用 IP Masquerade 呢?   不论你使用何种发行套件,本文件中

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -