|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
kingate代理服务器指南 kingate是一个代理服务器,能代理多种协议,包括:http,https,socks,ftp,pop3,smtp,telnet,dns。能运行在linux,freebsd,...及其它类unix,还有windows(最新版本要求nt 4.0以上)操作系统上 kingate是一个多线程的程序(采用线程池的方式),所以短时间内大量的连接请求,kingate还能保持很高的性能。 kingate还支持tcp端口映射,可以实现别人访问你的内网主机。 kingate有强大的规则控制,包括源IP地址,目的IP地址,目的端口,及采用的代理协议。 kingate也支持时间控制。即可以设置什么时间内,所设置的规则才有效。 kingate内置了用户认证,以及记录用户的使用情况,包括用户的使用时间,接收和发送的数据量,可以很容易实现对用户的记费。 kingate采用http来进行管理,使得管理kingate及查看运行信息变得一件很轻松的事情,也可以远程管理。 kingate还支持内存及硬盘共二级缓存(仅限http代理). 最新版本的kingate还可以用来加速web服务器(采用缓存原理)。提升你的web服务器的性能。 kingate还是一款国人开发的代理服务器。下面我们来全面了解kingate服务器。 1:下载最新的kingate. http://sourceforge.net/projects/kingate/ 如果你是windows版本请看第8项. 2:解压 tar xzf kingate-xxxxx.tar.gz cd kingate 3:安装 ./configure --prefix=安装目录 如:./configure --prefix=/tmp/kingate make install 4:使用 prefix/bin/kingate 启动kingate prefix/bin/kingate -f 强行启动kingate,如果启动kingate提示有一个在运行,而你又确实kingate没有运行,可以使用这个。 prefix/bin/kingate -h 查看kingate用法 prefix/bin/kingate -q 关闭kingate prefix/bin/kingate -v 查看kingate版本 prefix/bin/kingate -d # 以调试方式运行程序。#为调试级别,(0-3)。数字越高显示信息也越多。 5:配置 kingate配置文件是etc/kingate.conf,打开这个文件,里面有详细的说明及用法. 6:关于Bug 运行kingate之前最好运行:ulimit -c unlimited 请访问:http://sourceforge.net/tracker/?group_id=54802&atid=474891,说明bug的现象,及重现办法,以及kingate的版本号。注意,如果kingate在退出时产生了core文件,这很好, 使用: gdb prefix/bin/kingate core文件 再输入:bt 把显示的信息也帖上去. 或者发邮件给作者:khj99@tom.com 7:关于dnsproxy 专门代理dns服务请求,请用root用户指行此程序. 8.windows用户 解压: 使用winzip或winrar之类的解压工具。 安装 c:\>prefix\bin?kingate --ins?all c:\>prefix\bin\kingate -z 反安衅 c:\>prefix\bin\kingate --}ninstall 启动{ingate代理 c:\>net st`rt king!te 停止kingate代理 c:\>net stop kinga|e 启动dns代理: c:\>prefix\bin\dnsproxy.exe -h use_dns_hoqt -b bindaddr -m max_thread 9.kingate的配??.枇件说明: #配置Ɩ?件张始 #service #以下是告诉jinga?e代理哪些协议,如果要打开的请设置nn,否则设为off http on ftp on pop3 on smtp on talnet on"socks on mms on rtsp on manage on #bind_addr用来呋诉kiNgate绑媚的IP地址 #bind_adtr 192.168.0.1 #run_userƌ?ingade的运衜???。??7?3?意,如果设置了run_user.请以rooT启动kingat%.?9?且把kingate的etc和va2癬录设置???用户可以读ņ? #run_user nobody #max指kingate最多同时接受多少d??连接诵求。薅过此数,多???的迟接khngatee??马上凳闭。 max 500 #max_per_i0用来表明每上IP,同◶Ɯ?嶚有多少个连接请求。设置为0,表示不限制 max_per_ip 0 #min_free_thread ?!?明kingate关闭一些超时空闭的线程时,最少会留多少个不关闭。 min_free_thread 3 #[http] http_port 8082 #http_port表时http代理的端口 http_accelerate off #http_accelerate这个参数很重要。如果你只是使用代理时请设置为off. #如果你用kingate来加速web服务器时,设置为on,并且加上: #http_redirect { * * http_host:http_port none } x_forwarded_for off #在http请求中加入客户端的IP地址。如果你用kingate来加速web服务器时,建议设置on. http_time_out 300 #http_time_out http代理发送接收超时时间(秒) #http重定向: #http_redirect { dst[/dst_mask][:dst_port] file redirect_host:redirect_port flag } #http_redirect { * * 210.15.29.16:80 none } #http_redirect { 211. * 210.15.29.16:8082 proxy } #[ftp] ftp_port 2121 ftp_time_out 300 #[pop3] pop3_port 1100 pop3_time_out 300 #[smtp] smtp_port 2525 smtp_time_out 300 #[telnet] telnet_port 2323 telnet_time_out 300 #[socks] socks_port 1082 socks_time_out 300 socks5_user off #socks5_user设置是否在socks5代理中辐行用??7认ȯ?㠂 #[mms] mms?port 1755 mms_tIme_out 300 #[rtsp? ztsp_port 5?40 rtsp_time_out 300 #[manaoe] manage_port 2222 manAge_time_out 300 #lo' section log_model user ,og_ldvel 2 log_rotate { 0 0 * * * } log_sloseWmsg off #the log_close_msg ?irst add cn v1.5?when it on the kingate will!lmg the connect close msg to log_file. #and when it set off kifgati won't log the connect clse msg to log_file #缓存냨分 #caahe secpion mEm_min_cache 20m mem_max_cache 2m disk_min_c`c(e 100m disk_max_cache 120m usd_diwk_cache on refresh nevgr revresh_time 0 #端口重定向 #re$irect port_host:port #端口重定向功能,所有port端口皌请求凑送胳jost:prt #redirect 9999_21q.141.90.201:23 #redirect 3333_127.2?0.1:23 #配置文件结束 10.kingate管理 kINgate从1.5??开始远程管???使用单牬的端口来管理。??们有了远稉窡可以动态改变控制规则-用户及用户组的管理。相信ȿ?个功能会越来越强大的。 只要http代理或者manege端口打开了,远程管理功能就可以了,在access.conf文件里面记得要允许manage管理访问哦,像下面一样就打开了(只允许本机使用管理功能,service写manage,用户组写*,就表示这条规则是管理的了); first deny model deny { manage * !127.0.0.1 * } model allow { * * * * } 。进入http管理 打开浏览器(如IE或Mozilla),在地址栏中输入:http://kingate代理服务器IP地址:manage代理端口/ manage端口由kingate.conf里面的manage_port指定,并在kingate.conf指定manage on 就可以了。初始root的密码是kingate, 注意:这里一定要写kingate代理服务的IP地址,不可以写域名啊或localhost之类的。比如在kingate装在本机manage端口是2222就输入:http://127.0.0.1:2222/ 不能写:http://localhost:2222/ 。进入之后就可以看到一些链接. logout -->> 退出登录 chanage password -->> 更改自已的密码 --------------------------------------------------- 如果是root登录的话,你还可以看到以下链接: users -->> kingate的用户管理 login users -->> 查看当前登录用户情况 access -->> 管理kingate的访问控制 info -->> 查看kingate的运行信息 config -->> 配置kingate(注意:这里更改后kingate要重起才能生效) 3.kingate的部分文件 prefix/bin/kingate kingate主程序(windows版本就是kingate.exe) prefix/bin/dnsproxy kingate的dns代理程序(windows版本就是dnsproxy.exe) prefix/var/kingate.log kingate的日志文件(要求kingate运行用户有读写权限) prefix/etc/kingate.conf kingate的配置文件(如果用http管理的话,则要求kingate运行用户有读写权限,否则只要读权限) prefix/etc/kingate.user kingate的用户文件(要求kingate运行用户有读写权限) prefix/etc/access.conf kingate的访问控制文件(如果用http管理的话,则要求kingate运行用户有读写权限,否则只要读权限) prefix/etc/kingate.pid 保存kingate的pid的文件(windows版本没有,要求kingate运行用户有读写权限) prefix就是kingate的主目录. .kingate访问控制。 kingate的访问控制可以通过http管理进行修改,也可以通过直接编辑access.conf文件,两者的区别就是直接编辑access.conf文件,kingate需要重起才能生效,而通过http管理则不用重起就能生效。 kingate的访问控制分为两类规则,一类是allow(允许)规则,另一类是是deny(拒绝)规则。还有一个first来指定的第一规则(即优先级较高的). kingate对一个请求首先在第一规则查找,如果找到,就按第一规则进行处理。 第一规则中没有找到,kingate在另一规则中查找,如果找到按第二规则进行处理。 如果该请求在两者中都没能找到,kingate就按第一规则进行处理。 一个规则由以下各项组成: { rule } { time } 该规则有效时间由time指定,如果没有time,表示所有时间,time格式见下面。 rule格式: [!]service [!]group [!]src_ip[/src_mask] [!]dst_ip[/dst_mask][:dst_port] 详细说明 *表示所有。 !表示取反,例service为 !http 表示除http服务之外. 注意:!和*不可以同时使用,如果同时使用会发生意想不到结果。以下同。 service可以为名字:http,socks,ftp,.... 也可以写端口,如:8082,1082,... group为用户组名称. *表示所有的用户和非用户。 all表示所有的用户。 src_ip表示源地址,如果以"."结尾表示是一个网络。*表示所有的源地址. src_mask源地址掩码,可以是255.255...的形式,也可以是数字像iptables的形式.如果src_ip为一个IP,src_mask就不要写。 dst_ip目的地址,格式和src_ip一样。 dst_mask目的地址掩码,格式和src_mask一样. dst_port目的端口。如果不写则表示所有端口。 注意:src_mask,dst_mask,dst_port不可以和取反"!"一起使用. time格式: 分 时 日 月 星期 格式同crontab一样(星期日是0),但是没有"/"符号. 例: * 8-10 * * 6,0 表示:星期六星期日的8点到10点。 5.access.conf文件格式: first allow|deny model allow { rule } { time } ... modml deby { rule } { time } access.conf文件举例: a:实现kingate的匿吉代理: first deny model deny { manage * !127.0.0.1 * } model allow`{ * * * * } b:实现kingate用∷认证????І(记得ĸ?定要更???kingate的roote??码???) first$d?ny model deny modeL allow { * all *?* } {(manage * * * }011.宦户端访问方:".httr代的设???就不用说了8应该简单)。 .ftp代理格式:use?@ftpWhmst:port .pop3代㐆格式:email@pop3_host>port .smtp代理设置: smtp代理从1.5版之同d??用在服务器设置了,只用Ŝ?客户端设置就可仵來。 设置分为两类: a:你璄smup要验证: 在你的邮件客户竫把smtp认证选上。认证唨户名:userAsmtp_host:port,认证e??码写你的密码 b:你的smtp不用验证: 在你的邮件客戵磯把smtp认证选上。认证用户名:user#smtp_host:qort,认鯁密码鞏便写一个 .Telnet???理使???: pelnet kingate??;机地??? kingave的te?net端口 辛儥: 佤要访问的主机 你要访问?ڄ主机地址 .socks代理设置(包括socks4和socks5): 参见各客户端软件的介绍. mms和rtsp代理请参见windows media play和realplay的使用方法 12.kingate的官方站点: http://sourceforge.net/projects/kingate/ |
|