使用Squid搭建医联服务器在办公网段中的代理服务和反向代理服务
使用Squid搭建医联服务器在办公网段中的代理服务和反向代理服务
随着医联项目的深入进行,越来越多的应用需要使用到医联网络和服务。但是原来是只将医联和内部业务网络连接,而现在办公网络也急需医联应用。为了解决此问题,同时也考虑到安全和使用方便的问题,参照申康的建议,提出了使用代理服务的解决方案。
两块网卡,一块连接业务网络,能访问医联服务器,IP:190.1.57.13。另一块,连接办公网,因为要代理两台医联服务器,为了能做到反向代理,绑定了两个IP:10.10.70.33;10.10.70.34。同时设置了必要的路由,具体配置文件如下:
[zarra@localhost sysconfig]$ cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=localhost.localdomain
GATEWAY=190.1.57.240
[zarra@localhost network-scripts]$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:50:56:A1:2A:5A
ONBOOT=yes
IPADDR=190.1.57.13
NETMASK=255.255.255.0
TYPE=Enternet
GATEWAY=190.1.57.240
[zarra@localhost network-scripts]$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth1
BOOTPROTO=static
HWADDR=00:50:56:A1:74:EB
ONBOOT=yes
IPADDR=10.10.70.33
NETMASK=255.255.255.0
TYPE=Ethernet
#GATEWAY=10.10.70.240
[zarra@localhost network-scripts]$ cat /etc/sysconfig/network-scripts/ifcfg-eth1:0
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE="eth1:0"
BOOTPROTO=static
HWADDR=00:50:56:A1:74:EB
ONBOOT=yes
IPADDR=10.10.70.34
NETMASK=255.255.255.0
TYPE=Ethernet
#GATEWAY=10.10.70.240
[zarra@localhost network-scripts]$ cat /etc/sysconfig/network-scripts/route-eth1
10.10.71.0/24 via 10.10.70.240 dev eth1
10.10.74.0/24 via 10.10.70.240 dev eth1
203.95.1.1/32 via 10.10.70.240 dev eth1
202.96.199.133/32 via 10.10.70.240 dev eth1
208.67.222.222/32 via 10.10.70.240 dev eth1
208.67.220.220/32 via 10.10.70.240 dev eth1
Squid是*nix系统下强大的http缓存工具,一般用来提供代理和反向代理。本应用的配置文件如下:
[zarra@localhost ~]$ sudo cat /etc/squid/squid.conf
#反向代理端口80,代理端口3128
http_port 80 vhost
visible_hostname 10.10.70.33
http_port 3128
cache_peer 10.141.222.10 parent 7001 0 no-query originserver weight=1 name=a
cache_peer 10.141.222.19 parent 7001 0 no-query originserver weight=1 name=b
#将对10.10.70.33的请求 accel到下一个cache_peer “a”
#即可理解为将对10.10.70.33的url请求重定向到10.141.222.10
#通过以下两行设置达到,访问10.10.70.33或10.10.70.34,如同访问10.141.222.10或10.141.222.19的效果
cache_peer_domain a 10.10.70.33
cache_peer_domain b 10.10.70.34
#设置cache 256MB空间,一级目录16个,二级目录256个
cache_dir ufs /var/spool/squid 256 16 256
#定义网络环境
acl all src 0.0.0.0/0.0.0.0
acl localhost src 127.0.0.1/255.255.255.255
acl manager proto cache_object
acl to_localhost dst 127.0.0.0/8
acl out_networks src 10.10.71.0/24 10.10.74.0/24
acl out_dest dst 10.141.222.0/24 10.10.70.0/24
#允许的端口
acl Safe_ports port 80
acl Safe_ports port 7001
#允许本地管理
http_access allow manager localhost
http_access deny manager
#不允许为定义的端口
http_access deny !Safe_ports
#为了防止被用做通用Proxy,只允许代理医联网段
http_access deny !out_dest
#允许使用代理的策略
http_access allow localhost
http_access allow out_networks
http_access deny all
#允许使用反向代理的策略
cache_peer_access a allow out_networks
cache_peer_access b allow out_networks
posted on 2009-08-14 12:15
zarra 阅读(224)
评论(1) 编辑 收藏