扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在本页阅读全文(共5页)
三、代理服务器软件的安装
squid的安装
freebsd本身的ports程序带有squid的稳定版本。目前squid的最新版本是2.4.STABLE6。在freebsd的/usr/ports/www/squid 目录下执行make;make install就会将最新版本的squid代码下载、编译并最终安装到/usr中的相应路径中。
Squid本身会被安装到/usr/local/sbin下
Squid的cache目录默认为/usr/local/squid/cache
Squid的log目录默认为/usr/local/squid/logs
squid的配置文件目录默认为/usr/local/etc/squid
这样的安装方式比直接使用二进制的package安装要好。因为二进制的package不能保证在自定义的系统上稳定运行。下载源代码代码在本地进行编译之前,首先会校验源代码的MD5 checksum,这样能保证我得到的源代码是未经修改过的版本。然后再在本地进行编译。最后安装到相应目录。
Squid的配置
Squid的配置文件是squid.conf
部分参数的配置如下:(为保证代理服务器安全,部分参数用*代替)
http_port 8080 设置http代理端口为8080
cache_peer pa.us.ircache.net sibling 3128 3130 login=*:*
cache_peer sj.us.ircache.net sibling 3128 3130 login=*:*
cache_peer * parent 13280 4827 htcp *:*
这几行是使用squid可以和其他几台机器进行协同工作的特性,同几台组成cache_peer。具体设置在后面的优化部分会解释。
cache_peer_domain * .edu.cn设置.edu.cn的域名使用某个cache_peer访问
cache_mem 400 MB设定内存cache的大小为400M
cache_swap_low 80
cache_swap_high 97这两行是设置cache进行替换的闸值。当占用到97%的cache后,cache中的内容将被清空20%。
maximum_object_size 20000 KB 最大对象大小为20M.
maximum_object_size_in_memory 10000 KB 内存中最大的对象大小为10M
ipcache_size 4096 ip对应cache的大小为4096
fqdncache_size 4096 域名全称cache的大小为4096
cache_replacement_policy heap LFUDA cache替换策略
memory_replacement_policy heap LRU 内存替换策略
cache_dir ufs /usr/local/squid/cache 25000 16 256 cache存放的路径大小及具体配置
dns_nameservers * * * * * 内部指定dns服务器
authenticate_program * * 身份认证程序
authenticate_children 32 身份认证程序启动的进程数目
request_body_max_size 5 MB 最大请求的body大小
reply_body_max_size 20 MB 最大回应的body大小
acl all src 0.0.0.0/0.0.0.0
acl dorm proxy_auth 192.168.0.0/255.255.0.0 REQUIRED
acl bjpu proxy_auth 202.112.64.0/255.255.240.0 REQUIRED
acl bjpu2 proxy_auth 211.71.80.0/255.255.240.0 REQUIRED
访问控制列表
acl banned_sites {过滤的关键字}
http_access deny banned_sites
deny_info ERR_BANNED_SITE banned_sites
禁止访问违禁站点的设置
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
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 dorm
http_access allow bjpu
http_access allow bjpu2
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny all
允许http访问
icp_access allow *允许cache_peer使用ICP协议访问
proxy_auth_realm BJPU proxy-caching web server 验证框提示的banner
cache_mgr liukange@netease.com cache管理员的电子邮件地址
cache_effective_user *
cache_effective_group * 执行cache程序的用户uid和gid
visible_hostname cnproxy.bjpu.edu.cn cache服务的机器名
memory_pools on 内存池设置为打开。
memory_pools_limit 50 MB 内存池的大小
Socks5代理的安装
出国代理上选用的socks5代理软件是NEC公司制作的软件。它实际上是一个商业版软件。但是根据它的license文件所述,在非商业用途上使用这个软件是免费的。在RFC-1928对socks5如何运行做了详细的描述。这个标准就是NEC公司的“Ying-Da Lee”和HP及IBM公司制定的。在相应的测试中,NEC公司的这个socks5代理软件的性能是较好的。虽然它有一些安全上的漏洞,但是使用freebsd的ports方式安装,将会自动对源代码打补丁,修正安全隐患。
在/usr/ports/net/socks5下执行make;make install就能安装好该程序。相应的文件将被安装在下列目录:
socks5可执行文件被放在/usr/local/bin
socks5.conf文件被放在/usr/local/etc下
bugtraq上曾经提到socks5的密码验证部分有安全隐患,因此没有使用该功能。
Socks5代理的配置
Socks5代理的配置文件是socks5.conf,内容如下:
set SOCKS5_MAXCHILD 8000
permit - - 192.168. - (1024,65535) -
permit - - 202.112.64.0/255.255.240.0 - (1024,65535) -
permit - - 211.71.80.0/255.255.240.0 - (1024,65535) ?C
限制工大可以使用该socks5代理,限制目标端口为1024-65535。设置最多可以有8000个进程运行。
配置文件的切换
为了避免带宽的浪费,出国代理设置为夜间取消最大下载对象限制。这是是使用crontab来做到的。每天夜间23:30将配置文件切换为没有最大下载对象限制的。每天上午7:30切换回有最大下载对象限制的。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者