iptable做的代理,但不能用MSN的语音

由 zoes 在 04-09-2004 18:55 发表:

iptable做的代理,但不能用MSN的语音

在另一个帖子里看到有人问,但没有得到答案。偶今天也遇到相同的问题;)

用iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MQUERADE

一句话让内部机器上网了,但MSN无法使用语音,偶记得使用ipchains时,可以加载一个语音模块,但在iptable里找不到相应的模块(或者模块名称变化较大,不认识了^_^),哪位朋友搞定过类似的问题?


[img][/img]


由 小毅 在 04-09-2004 19:18 发表:


按错了.看下帖


由 小毅 在 04-09-2004 19:19 发表:


你想用MSN主音...要安装下面的代理...

在iptables加入下面规则 :

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5190 -j REDIRECT --to-ports 5190

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 1863 -j REDIRECT --to-ports 1863

代理的安装方法:

先修改包内的firewall.sh文件,按你的网络情况修改下面的网络接口:

> PHP源码: > > * * * > >
>
> # -------------------------
>
> # User configurable section
>
> # -------------------------
>
> #
>
> # The user must uncomment the INSIDE_IF and OUTSIDE_IF
>
> # lines, and select the appropriate network interfaces
>
> # for this script to use to configure networking.
>
> #
>
> # Example ethernet-connected cable / corporate firewall:
>
> # INSIDE_IF=eth0
>
> # OUTSIDE_IF=eth1
>
> #
>
> # Example home LAN with dialup:
>
> # INSIDE_IF=eth0
>
> # OUTSIDE_IF=ppp0
>
>
> > > * * * > >

改完后..按下面步骤安装

> quote: > > * * * > > 1. Build reaim, and copy the executable to /usr/sbin
>
> 2. Copy the etc/init.d/reaim and etc/logrotate.d/reaim files to the appropriate
>
> directories on your disk.
>
> 3. Run chkconfig --add reaim
>
> 4. Run adduser -c "ReAim Proxy Server" -d / -s /sbin/nologin reaim
>
> 5. Setup your firewall redirections.
>
> 6. Touch /var/log/reaim.log, and chown it to the reaim user.
>
> 7. Run /etc/init.d/reaim start > > * * *

这样你就可以MSN语音了~~


由 小毅 在 04-09-2004 19:21 发表:


晕.忘记帖附件了..

现在附上..


由 小山山 在 04-12-2004 13:04 发表:


为什么MSN要这么费事?透明代理为什么这个不行啊?


本子:

M100


由 hgkrt 在 04-12-2004 13:23 发表:


我没这么做,也可以MSN的语音了。。。视频也行。。

MSN6.0以上好像解决了upnp的问题。。


欢迎访问我的个人主页!!!

主机:

http://hgkrt.minidns.net/

网上空间:

http://www.paw.hi-ho.ne.jp/hgkrt


由 小毅 在 04-13-2004 11:28 发表:


> quote: > > * * * > > 最初由 hgkrt 发表
>
> **我没这么做,也可以MSN的语音了。。。视频也行。。
>
>
>
> MSN6.0以上好像解决了upnp的问题。。 ** > > * * *

兄弟是怎么做的。。。??


由 zoes 在 04-14-2004 08:54 发表:


感谢“小毅”朋友,偶试试,如果有更方便的做法,请赐教。

MSN:zues_[email protected]

QQ:119249486


[img][/img]


由 zoes 在 04-14-2004 08:57 发表:


> quote: > > * * * > > 最初由 hgkrt 发表
>
> **我没这么做,也可以MSN的语音了。。。视频也行。。
>
>
>
> MSN6.0以上好像解决了upnp的问题。。 ** > > * * *

请这位朋友说说具体如何做?


[img][/img]


由 尘飞扬 在 04-14-2004 12:34 发表:


我没视过语音,不过视频可以,squid + iptables透明代理


清风徐来尘飞扬


由 尘飞扬 在 04-14-2004 12:35 发表:


我没试过语音,不过视频可以,squid + iptables透明代理


清风徐来尘飞扬


由 ruochen 在 04-15-2004 20:35 发表:


> quote: > > * * * > > 最初由 hgkrt 发表
>
> **我没这么做,也可以MSN的语音了。。。视频也行。。
>
>
>
> MSN6.0以上好像解决了upnp的问题。。 ** > > * * *

你是怎么解决的呢?说下经验!


samaung753dfx+msikt333+duron1.2+128ram+GF2 400+st60G+ecom+samsung52cdrom

+rt8139

winxp+2000server+freebsd5.1+fedora1.0+debian3.0


由 zoes 在 04-17-2004 16:13 发表:


顶上去


[img][/img]


由 hgkrt 在 04-18-2004 03:17 发表:


这是我的iptable...

没作啥,就可以msn了...

> > 源码: >
> * * * >
>
> > > #!/bin/sh
> > > #
> > > # firewall starting firewall
> > > #
> > > # chkconfig: 2345 98 01
> > > # description: setting firewall
> > > ##########################################################################
> > > # 设定参数
> > > ##########################################################################
> > > INNER_NET=192.168.1.0/24 # LAN 局域网 自由设定
> > > FWALL_IP=192.168.1.1 # 防火墙的IP 你的机器的真实IP
> > > INNER_PORT=eth1 # 局域网端IP
> > > OUTER_PORT=ppp0 # Wan端IP
> > > IPTABLES="/sbin/iptables" # iptables 命令
> > > MODPROBE="/sbin/modprobe" # modprobe 命令
> > > ##########################################################################
> > > # 模块的加载和设定为内核工作
> > > ##########################################################################
> > > $MODPROBE ip_tables
> > > $MODPROBE iptable_filter
> > > $MODPROBE ip_conntrack
> > > $MODPROBE iptable_nat
> > > $MODPROBE ip_nat_ftp
> > > $MODPROBE ip_conntrack_ftp
> > > $MODPROBE ipt_state
> > > $MODPROBE ipt_MASQUERADE
> > > $MODPROBE ipt_LOG
> > > $MODPROBE ipt_REJECT
> > > $MODPROBE ipt_limit
> > > # 允许IP masquerade(变换)
> > > echo 1 > /proc/sys/net/ipv4/ip_forward
> > > # 忽视ping的broadcast
> > > echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
> > > # 检查源IP
> > > for f in /proc/sys/net/ipv4/conf//rp_filter; do echo 1 > $f; done
> > > # 记录不可能的(虚假)IP
> > > for f in /proc/sys/net/ipv4/conf/
/log_martians; do echo "1" > $f; done
> > > # 忽视ICMP redirect message
> > > for f in /proc/sys/net/ipv4/conf/*/accept_redirects; do echo 1 > $f; done
> > > ##########################################################################
> > > # 初始化规则
> > > ##########################################################################
> > > $IPTABLES -P INPUT DROP # 清空INPUT原始定义
> > > $IPTABLES -P OUTPUT DROP # 清空OUPUT原始定义
> > > $IPTABLES -P FORWARD DROP # 清空FORWARD原始定义
> > > $IPTABLES -F # flash chain
> > > $IPTABLES -F -t nat
> > > $IPTABLES -X # 删除用户定义的Chain
> > > ##########################################################################
> > > # 用户定义的chain
> > > ##########################################################################
> > > #
> > > # 记录并丢弃非法的包
> > > #
> > > $IPTABLES -N DROPPACKET # DROPPACKT chain的生成
> > > $IPTABLES -A DROPPACKET -j LOG --log-prefix "INVALID_PACKET: " \
> > > --log-level=3 -m limit --limit 1/s --limit-burst 10
> > > $IPTABLES -A DROPPACKET -j DROP
> > > #
> > > # 检查SYNFlood攻击的chain
> > > #
> > > $IPTABLES -N SYNFLOOD # SYNFLOOD chain的生成
> > > # 没有超过限定值的话返回
> > > $IPTABLES -A SYNFLOOD -m limit --limit 10/s --limit-burst 20 -j RETURN
> > > # 超过限定值,就视为SYNFLOOD攻击,记录并丢弃
> > > $IPTABLES -A SYNFLOOD -m limit --limit 1/s --limit-burst 10 -j LOG \
> > > --log-level=1 --log-prefix "SYNFLOOD: "
> > > $IPTABLES -A SYNFLOOD -j DROP
> > > #
> > > # 记录非法的Flag TCP,并丢弃
> > > #
> > > $IPTABLES -N DROPFLAGS # DROPFLAGS chain的生成
> > > $IPTABLES -A DROPFLAGS -j LOG --log-prefix "INVALID_FLAGS: " \
> > > --log-level=3 -m limit --limit 1/s --limit-burst 10
> > > $IPTABLES -A DROPFLAGS -j DROP
> > > #
> > > # 检查TCP Flag的非法组合
> > > #
> > > $IPTABLES -N CHKFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ACK,FIN FIN -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ACK,PSH PSH -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ACK,URG URG -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags FIN,RST FIN,RST -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags SYN,RST SYN,RST -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL ALL -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL NONE -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL FIN,PSH,URG -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL SYN,FIN,PSH,URG -j DROPFLAGS
> > > $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROPFLAGS
> > > #
> > > # 拒绝 Microsoft 网络相关的FORWARD
> > > #
> > > $IPTABLES -N CHKMSNET
> > > $IPTABLES -A CHKMSNET -p tcp --dport 42 -j DROP # wins dup
> > > $IPTABLES -A CHKMSNET -p tcp --dport 135 -j DROP # MS-RPC
> > > $IPTABLES -A CHKMSNET -p udp --dport 135 -j DROP # MS-RPC
> > > $IPTABLES -A CHKMSNET -p udp --dport 137:138 -j DROP # MS browse
> > > $IPTABLES -A CHKMSNET -p udp --dport 137:138 -j DROP # MS browse
> > > $IPTABLES -A CHKMSNET -p tcp --dport 139 -j DROP # SMB
> > > $IPTABLES -A CHKMSNET -p tcp --dport 445 -j DROP # DHSMB
> > >
> > > ##########################################################################
> > > # INPUT Chain
> > > ##########################################################################
> > > # Localhost的话,全部许可
> > > $IPTABLES -A INPUT -i lo -j ACCEPT
> > > # 检查包的正确性
> > > $IPTABLES -A INPUT -m state --state INVALID -j DROPPACKET
> > > # 检查包是否是SYN攻击
> > > $IPTABLES -A INPUT -p tcp --syn -j SYNFLOOD
> > > # TCP FLAG的检查
> > > $IPTABLES -A INPUT -p tcp -j CHKFLAGS
> > > # 许可LAN内的连接
> > > $IPTABLES -A INPUT -i $INNER_PORT -s $INNER_NET -j ACCEPT
> > > # 许可已经建立的连接
> > > $IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
> > > # 检查是否是IP伪装
> > > $IPTABLES -A INPUT -i $OUTER_PORT -s $INNER_NET -j DROP
> > > #
> > > # 许可的服务(对外部公开的服务,在下面记述)
> > > #
> > > $IPTABLES -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT # SSH
> > > $IPTABLES -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT # HTTP
> > > $IPTABL

Published At
Categories with 服务器类
Tagged with
comments powered by Disqus