LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1176|回复: 8

suse 下架设squid遇见问题,请求解决方法

[复制链接]
发表于 2005-6-1 11:49:27 | 显示全部楼层 |阅读模式
我在windows上安装的虚拟机下安装的suse linux多国语言版,安装前添加的2块网卡
之后安装了它自带的squid。

一开始修改配置文件如下:
http_port 8080
cache_mem 32 MB
cache_swap_low 90
cache_swap_high 95
maximum_object_size 4096 KB  
cache_dir /var/spool/squid 100 16 256
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
cache_dns_program /usr/lib/squid/dnsserver
dns_nameservers 192.168.2.32
unlinkd_program /usr/lib/squid/unlinkd
acl all src 0.0.0.0/0.0.0.0

acl allow_ip 192.168.222.1/255.255.255.0
http_access allow allow_ip
其它的就采用的默认设置;

之后通过YAST启动了squid服务

我的内网设置了一台机器为192.168.222.107作为实验机器,没有使用透明代理,所以没有设置网关地址,在浏览器里面设置了代理地址为192.168.222.1端口为8080,DNS设置为
202.102.227.68

前面提到过我的suse安装在虚拟机上,它的两个网卡(实际的机器只有一个网卡。但是我在同样虚拟机安装的windows+ISA的代理工作很好),一个地址我设置为内网:192.168.222.1
还有一个设置为外网地址192.168.0.89;(因为我是在局域网内部做实验,所以用的还是这样一个地址,默认网关为192。168。0。1)

以上无法成功
之后我几乎没有修改配置文件,仅仅只是将http_access deny all改为了http_access allow all

我觉得很奇怪。是不是要解决关于dns的问题?
希望能有朋友给予帮助!!
谢谢
发表于 2005-6-1 12:19:10 | 显示全部楼层
应该在yast里面把网卡转发打开!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-6-1 15:36:17 | 显示全部楼层
就是把YAST里面的配置项    启用IP转发   吗?
我启用了,没有什么效果的。

在以前windows下设置的时候,两个网卡中,外网正常设定,内网网卡的设置中不设置默认网关,这里在linux下,好象除了IP地址以外,其它的都是共用一种设置?!会有影响吗?
还有,在windows下面是要设置NAT,linux下不用另外设置吗?

不明白到底是什么问题。以上是点猜测,问题还是没有解决。
回复 支持 反对

使用道具 举报

发表于 2005-6-1 18:28:15 | 显示全部楼层
我把以前做的帖上来,你参考一下吧!

squid.conf

http_port 192.168.0.1:3128
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 8 MB
cache_dir ufs /var/cache/squid 5000 16 256
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
ftp_user Squid@
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
refresh_pattern ^ftp:                1440        20%        10080
refresh_pattern ^gopher:        1440        0%        1440
refresh_pattern .                0        20%        4320
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563
acl Safe_ports port 80                # http
acl Safe_ports port 21                # ftp
acl Safe_ports port 443 563        # https, snews
acl Safe_ports port 70                # gopher
acl Safe_ports port 210                # wais
acl Safe_ports port 1025-65535        # unregistered ports
acl Safe_ports port 280                # http-mgmt
acl Safe_ports port 488                # gss-http
acl Safe_ports port 591                # filemaker
acl Safe_ports port 777                # multiling http
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl test src 192.168.0.0
http_access allow test
http_access allow localhost
http_access deny all
http_reply_access allow all
icp_access allow all
cache_mgr
#coredump_dir /var/spool/squid
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

#squid -z
#chmod 777 /var/cache/squid
#chmod 777 /var/log/squid


iptables
ÔÚ/etc/init.dĿ¼Ï½¨Á¢ÁËfirewallÎļþ£¬È»ºóÔÚ/etc/init.d/boot.localÖмÓÈëÄÚÈÝÈçÏ£º
#!/bin/sh

echo "Enabling IP Forwarding..."
echo 1 > /proc/sys/net/ipv4/ip_forward

echo "Starting iptables rules..."

#Refresh all chains

/usr/sbin/iptables -F -t filter
/usr/sbin/iptables -F -t nat

#############Define packets from Internet server to Intranet#######################
iptables -A FORWARD -p tcp -s 0/0 --sport ftp-data -d 198.168.0.1/24 -i eth0 -j ACCEPT
iptables -A FORWARD -p udp -d 198.168.0.1/24 -i eth0 -j ACCEPT

#############Define packets from Intranet to Internet###############
iptables -A FORWARD -s 198.168.0.1/24 -i eth0 -j ACCEPT

#################################Define Proxy rule##################################
iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o ppp0 -j MASQUERADE


#################################Define fregment rule##############################
iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT

#################################Define icmp rule##################################
iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-6-1 23:16:08 | 显示全部楼层
谢谢兄长的帮助!小生先表示感谢!
还有下面的疑问:
iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o ppp0 -j MASQUERADE

这个语句中的ppp0指的是拨号吗?关键是我的服务器是在内网中运行的,应该怎么改一下吧?

还有eth0和eth1这两个参数,我的配置信息里面没有这样的指明
只是有eth ID:mac地址 这样的形式,是不是要替换进去?
回复 支持 反对

使用道具 举报

发表于 2005-6-2 08:41:47 | 显示全部楼层
一定是需要替换的,这就视你具体的硬件而定了。
good luck!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-6-2 11:00:51 | 显示全部楼层
谢谢!唉,真是郁闷,我真想咂了机器。。。。。抓狂了。。。

按照你的提示我在/etc/init.d/boot.local文件下做了以下语句:
#!/bin/sh

echo "Enabling IP Forwarding..."
echo 1 > /proc/sys/net/ipv4/ip_forward

echo "Starting iptables rules..."

#Refresh all chains

/usr/sbin/iptables -F -t filter
/usr/sbin/iptables -F -t nat

#############Define packets from Internet server to Intranet#######################
iptables -A FORWARD -p tcp -s 0/0 --sport ftp-data -d 192.168.222.1/24 -i eth1 -j ACCEPT
iptables -A FORWARD -p udp -d 198.168.222.1/24 -i eth1 -j ACCEPT

#############Define packets from Intranet to Internet###############
iptables -A FORWARD -s 198.168.222.1/24 -i eth1 -j ACCEPT

#################################Define Proxy rule##################################
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -t nat -A POSTROUTING -s 192.168.222.1/24 -o eth1 -j SNAT --to 192.168.0.89
然后,我重启了机器。启动项里面没有报错。

基本上是按照你给我的配置方法来改动的,之后我自己也修改了好几次来实验,无奈结果都不行
修改成以上的样子后,我觉得应该是可以,但还是不行~~~啊,我怎么这么蠢啊~~~
以上的eth0是我的内网网卡,IP地址为192.168.222.1 同样内网网段为192.168.222.0/255.255.255.0
eth1是我的外网的网卡,ip地址为192.168.0.89。
希望实现的目的是:
   eth0(192.168.222.1/24)<-------------->eth1(192.168.0.89)之间的转化。

到这一步,总感觉应该快出来了,我对iptables一点不熟,linux也是3天前开始弄(因为需要要配置一个这样的代理服务器做实验)。自己也在看,不过很多,暂时也没有什么头绪。

再次麻烦兄长能给予指导!小生不胜感激!
回复 支持 反对

使用道具 举报

发表于 2005-6-2 11:49:18 | 显示全部楼层
你看看这个吧!对你或许有些帮助!
http://www.linuxsir.cn/bbs/showthread.php?t=148034
回复 支持 反对

使用道具 举报

发表于 2005-6-2 22:42:40 | 显示全部楼层
我觉得你的rule有问题
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表