当前位置:  技术问答>linux和unix

透明代理问题请教!搞了有几天了----

    来源: 互联网  发布时间:2015-09-04

    本文导语:  闲着没事,在学校局域网中装了一台redhat 9.0.并想尝试配置一下透明代理. redhat 9.0: IP:192.168.30.178 掩码:255.255.255.0 网关:192.168.30.1 DNS:221.228.255.1 winXP: IP:192.168.30.118 掩码:255.255.255.0 网关:192.168.30.1 DNS:221.228.255.1 两台机在...

闲着没事,在学校局域网中装了一台redhat 9.0.并想尝试配置一下透明代理.
redhat 9.0:
IP:192.168.30.178
掩码:255.255.255.0
网关:192.168.30.1
DNS:221.228.255.1

winXP:
IP:192.168.30.118
掩码:255.255.255.0
网关:192.168.30.1
DNS:221.228.255.1

两台机在同一子网内,现想实现winxp通过以linux为透明代理服务器的形式连接网络.
按照nbxmedia兄的这贴
http://www.linuxsir.org/bbs/showthr...FA+%B4%FA%C0%ED
已实现squid代理上网,即在ie中设置linux为代理.现在就是不能实现透明代理.
我在/etc/rc.local下加入如下几行:
#加载iptables的相关模块:
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
#把80端口的包全部转向3128端口
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
#ip转向,192.168.30.0/24为内网网段
iptables -t nat -A POSTROUTING -s 192.168.30.0/24 -o eth0 -j SNAT --to 192.168.30.178

运行/etc/rc.d/rc.local后提示:
[root@blue root]# /etc/rc.d/rc.local
iptables v1.2.7a: Need TCP or UDP with port specification
不知错在哪儿,也不知:
#把80端口的包全部转向3128端口
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
#ip转向,192.168.30.0/24为内网网段
iptables -t nat -A POSTROUTING -s 192.168.30.0/24 -o eth0 -j SNAT --to 192.168.30.178
这两个规则写的对否.不理解

|
#! /bin/sh 

UPLINK="eth0" 
UPIP="61.185.xxx.xxx" 
LANLINK="eth1" 
ROUTER="yes" 
#NAT="UPIP/dynamic" 
NAT="UPIP" 
INTERFACES="lo eth0 eth1" 
SERVICES="80 22 25 110 8000 23 20 21 3306 " 
deny="" 
case "$@" in 
start) 
    echo -n "Starting firewall..." 
    modprobe ip_nat_ftp 
    modprobe ip_conntrack_ftp 
    iptables -P INPUT DROP 
    iptables -A INPUT -i ! ${UPLINK} -j ACCEPT 
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 
#    iptables -A FORWARD DROP 
    iptables -A FORWARD -p tcp -m multiport --dport 25  -j ACCEPT 
    iptables -A FORWARD -p tcp -m multiport --dport 110 -j ACCEPT
    iptables -A FORWARD -p tcp -m multiport --dport 80 -j ACCEPT
    
#    iptables -A FORWARD -d !202.108.36.196 -p tcp -m multiport --dport 25 110 -j DROP ##09、只允许收发邮件(所有域名邮件 
    iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT #(smtp,pop3))和只能收某域名收发某域名邮件 
    #iptables -P OUTPUT DROP 
    #enable public access to certain services 
    for x in ${SERVICES} 
    do 
    iptables -A INPUT -p tcp --dport ${x} -m state --state NEW -j ACCEPT 
    done 

    for y in ${deny} 
    do 
iptables -A OUTPUT -p tcp --dport ${y} -j DROP 
        iptables -A OUTPUT -p udp --dport ${y} -j DROP 
    done 

#enable system-log 
#iptables -A INPUT -j LOG --log-prefix "bad input:" 

iptables -A INPUT -p tcp -i ${UPLINK} -j REJECT --reject-with tcp-reset 
#iptables -A INPUT -p udp -i ${UPLINK} -j REJECT --reject-with icmp-port-unreachable 

#explicitly disable ECN 
if [ -e /proc/sys/net/ipv4/tcp_ecn ] 
then 
echo 0 > /proc/sys/net/ipv4/tcp_ecn 
fi 

#disable spoofing on all interfaces 
for x in ${INTERFACES} 
do 
echo 1 > /proc/sys/net/ipv4/conf/${x}/rp_filter 
done 

if [ "$ROUTER" = "yes" ] 
then 
#we're a router of some kind, enable IP forwarding 
echo 1 > /proc/sys/net/ipv4/ip_forward 
if [ "$NAT" = "dynamic" ] 
then 
#dynamic IP address, use masquerading 
    iptables -t nat -A POSTROUTING -o ${UPLINK} -j MASQUERADE 
elif [ "$NAT" != "" ] 
then 
#static IP, use SNAT 
#    iptables -t nat -A PREROUTING -i ${LANLINK} -d !${UPIP} -j DNAT --to-ports 3128 
    iptables -t nat -A POSTROUTING -o ${UPLINK} -j SNAT --to ${UPIP} 
fi 
fi 
echo "OK!" 
exit 0 
;; 
stop) 
echo -n "Stopping firewall..." 
iptables -F INPUT 
iptables -P INPUT ACCEPT 
iptables -F OUTPUT 
iptables -P OUTPUT ACCEPT 
#turn off NAT/masquerading, if any 
#iptables -t nat -F POSTROUTING 
echo "OK!" 
exit 0 
;; 
restart) 
$0 stop 
$0 start 
;; 
show) 
clear 
echo ">-------------------------------------------------------------------" 
iptables -L 
echo ">-------------------------------------------------------------------" 
iptables -t nat -L POSTROUTING 
exit 0 
;; 
*) 
echo "Usage: $0 {start|stop|restart|show}" 
exit 1 
esac


    
 
 

您可能感兴趣的文章:

  • 请教一个linux下通过代理上网的问题!
  • 有写过http代理程序的吗,有问题请教
  • 请教linux用代理服务器上网
  • DNS代理的问题请教高手
  • 请教关于,linux的vpn,socket代理问题..
  • 请教高手 Linux下代理服务器的问题
  • 虚心请教! redhat 9下的squid3做Proxy代理服务器.怎么配置身份验证?
  • 高分请教linux最为网关(代理),使内网用户可以访问外网的设置,谢谢!
  • 高分请教:可以在局网中跨代理发送email是什么意思?
  • squid+nat做透明代理无法控制代理的问题
  • Linux怎么设置代理的问题
  • 代理服务器的问题(急)
  • 关于linux下QQ和代理服务器使用的问题(2个问题)
  • Tor 关于网络代理的问题
  • 代理服务器问题
  • 关于透明代理和路由问题
  • 代理上网问题!
  • 添加代理的问题
  • 关于(二次)代理的问题
  • Wget 设置代理服务器的密码问题----真正的人品问题
  • iptables 做代理上网问题?
  • 发邮件时遇到,代理服务器的问题....
  • URL类的代理问题
  • 代理服务器的设置问题
  • Linux通过代理服务器上网的问题?
  • 关于在rethat-linux下的代理问题
  • 用rh9配置代理上网的服务器问题
  • 提问,关于配合银行代理收费的问题?
  • ubuntu10.04 apache2和tomcat6整合 代理问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 正向代理与反向代理概念及其区别
  • *** Linux下装Kingate软件做代理,如何能实现同时代理两个网段?
  • 代理服务器原理,功能及作用详细介绍
  • sql server 代理(已禁用代理xp)的解决方法
  • 上网代理goagent 3.1.18 正式版下载及简易安装部署教程
  • 代理、反向代理究竟是什么意思?
  • Spring 2.0 AOP概念及AOP代理,功能和目标
  • 如何通过http代理实现socks代理?
  • 用 Linux 做的代理服务器,不能通过代理看外网的电影
  • Linux作透明代理服务器,双网卡,要求使用该代理的用户绑定ip,如何实现?
  • 在linux(redhat) 下如何设置代理,我们上网都要用代理的!谢谢了!
  • linux下对于不支持代理的http或是ftp软件有办法使用代理吗
  • java 静态代理 动态代理深入学习
  • java代理 jdk动态代理应用案列
  • linux机如何设置代理
  • 救命!Mozilla不能通过代理上网了!!!
  • 代理角色java设计模式之静态代理详细介绍
  • 代理工具 ProxyChains
  • 如何使用代理访问CVS?
  • linux怎么访问windows2000的代理?
  • Linux系统下如何使用windows主机的代理服务器上网?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3