免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 4356 | 回复: 27
打印 上一主题 下一主题

[proxy] 求教::关于Squid做透明代理的问题! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-06-17 16:21 |只看该作者 |倒序浏览
环境是这样的,一台trustix-2.0Linux服务器,用来拨号上网,一个HUB,一台Windowd2000系统,很简单的一个局限网,Linux服务器的IP地址为192.168.20.1,Windows2000系统IP地址为192.168.20.2,我想让Linux做透明代理服务器,2000通过这台代理服务器上网.
我的Squid2.5版本配置如下:

http_port 8080
cache_mem 8 MB
cache_swap_low 90
cache_swap_high 95
maximum_object_size 4096 KB
cache_dir ufs /opt/cache 100 16 256
cache_access_log /usr/local/squid/var/logs/access.log
cache_log /usr/local/squid/var/logs/cache.log
dns_nameservers 219.234.32.254
unlinkd_program /usr/local/squid/libexec/unlinkd
acl allwed_hosts src 192.168.20.0/255.255.255.0
http_access allow all
cache_effective_user sjweb
cache_effective_group sjweb
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
visible_hostname www.sina.com.cn


Iptalbes脚本如下:
#begin

echo 1 >; /proc/sys/net/ipv4/ip_forward

modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp

iptables -F INPUT

iptables -F FORWARD

iptables -F POSTROUTING -t nat

iptables -t nat -F

iptables -P FORWARD DROP

iptables -A FORWARD -s 192.168.20.0/24 -j ACCEPT

iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.20.0/24 -j MASQUERADE

#end


现在的问题是,在2000系统上可以ping通192.168.20.1,把网关设置成为192.168.20.1,然后用Linux拨号上网,但2000却打开不了网页,直接输入IP地址也不行,能否让大家帮帮忙,谢谢!

论坛徽章:
0
2 [报告]
发表于 2004-06-17 17:29 |只看该作者

求教::关于Squid做透明代理的问题!

首先,請確認你能否通過squid非透明代理上網,如果不行的話,則可能是你的squid.conf腳本中的用戶sjweb以及用戶組sjweb的權限不夠(請設置用戶sjweb與組sjweb對squid的cache與log有權限)。如果行的話,則你還必須是你的iptable腳本中增加如下語句:
iptables -t nat -A PREROUTING -i eth0(內網網卡接口) -p tcp -s 192.168.20.0/24 --dport 80 -j REDIRECT --to-port 8080

论坛徽章:
0
3 [报告]
发表于 2004-06-17 21:03 |只看该作者

求教::关于Squid做透明代理的问题!

同意楼上的

iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
这条不要,你再试试。
最好最后一条修改为:

iptables -t nat -A POSTROUTING -s 192.168.20.0/24 -j MASQUERADE

论坛徽章:
0
4 [报告]
发表于 2004-06-17 21:12 |只看该作者

求教::关于Squid做透明代理的问题!

我按照2楼兄弟的方法做了尝试,原来squid也不支持非透明代理,并且我已经把logs和var目录给予了sjweb用户,我在2000系统下IE页面做出设置后,打开网页出现以下提示:
ERROR
The requested URL could not be retrieved

--------------------------------------------------------------------------------

While trying to retrieve the URL: http://219.234.32.251/

The following error was encountered:

Access Denied.
Access control configuration prevents your request from being allowed at this time. Please contact your service provider if you feel this is incorrect.

Your cache administrator is webmaster.

--------------------------------------------------------------------------------

Generated Fri, 18 Jun 2004 01:04:54 GMT by www.lztvnet.com (squid/2.5.STABLE5)

我想请问一个问题,是不是只有sjweb用户支持squid程序才行,而root不行呢?

论坛徽章:
0
5 [报告]
发表于 2004-06-17 21:23 |只看该作者

求教::关于Squid做透明代理的问题!

这是你squid设置也错了.你可以先不要设置
cache_effective_user sjweb
cache_effective_group sjweb

论坛徽章:
0
6 [报告]
发表于 2004-06-17 22:22 |只看该作者

求教::关于Squid做透明代理的问题!

我按照楼上几位兄弟的方法一一试过,还是不行,老样子,真是郁闷,还有什么办法吗?

论坛徽章:
0
7 [报告]
发表于 2004-06-17 22:28 |只看该作者

求教::关于Squid做透明代理的问题!

我按照楼上几位兄弟的方法一一试过,还是不行,老样子,真是郁闷,还有什么办法吗?

论坛徽章:
0
8 [报告]
发表于 2004-06-17 22:29 |只看该作者

求教::关于Squid做透明代理的问题!

我按照楼上几位兄弟的方法一一试过,还是不行,老样子,真是郁闷,还有什么办法吗?

论坛徽章:
0
9 [报告]
发表于 2004-06-18 07:46 |只看该作者

求教::关于Squid做透明代理的问题!

你将squid停了,直接走NAT代理出去,看能否上网?

论坛徽章:
0
10 [报告]
发表于 2004-06-18 20:33 |只看该作者

求教::关于Squid做透明代理的问题!

如果是做NAT代理的话,是可以上网的.只用加入:

iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.20.0/24 -j MASQUERADE

就可以上网.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP