本人想写一个socks5代理服务器的程序,请问哪里有这方面的资料?

解决方案 »

  1.   

    我有详细的资料(RFC)和代码(完成端口或者SELEC都有)
      

  2.   

    看一下RFC1928(SOCKS5.0代理协议)
      

  3.   

    Socks5代理服务器安装及配置文件 
    http://www.chinaunix.net 作者:sw_yp  发表于:2003-05-15 15:57:21 由于公司在代理服务器上绑定了IP和Mac地址,并且对相应的IP地址作了相应的限制,使得受限制的IP只能上网、收发邮件,不能用QQ(好严重的问题哦,不能上QQ,那不是不能泡小MM的吗),不过本人由于工作原因有两台机器一台为Linux另一台为Win,是属于不受限制的,我的同事就叫我他做个代理。 
    另外在QQ上遇到了版主,他叫我写一下配置的过程,于是就有了这篇,请大家多指教 ---------------------------- 
    1.找到socks5-v1.0r11.tar.gz这个软件包,我找这个软件包找了有一会,建议在北大天网中搜索,很快的 
    2.传到服务器上  
    3.开始编译,安装 
    #tar xvfz socks5-v1.0r11.tar.gz 
    #cd socks5-v1.0r11 
    #./configure --with-threads 
    #make 
    #make install 
    4.开始配置 
    一般来说安装完后,会在/etc目录下生成socks5.conf(配置文件)和socks5.passwd(用于验证的文件)这两个文件, 
    下面我把我的配置文件帖出来 
    [code:1:35a0f9418b]#/etc/socks5.conf 
    #指定SOCKS v5绑定的ip地址和监听的端口。如果不指定绑定的IP将使用0.0.0.0 
    set SOCKS5_BINDINFC 192.168.0.8:1080 #忽略ident请求。当客户机没有运行identd时,使用SOCKS5_NOIDENT将降低超时值 
    set SOCKS5_NOIDENT #指定连接停顿最长时间。超过最大值后,socks5断开连接 
    set SOCKS5_TIMEOUT 15 #socks5将接受SOCKS V4 协议的请求,默认不接受 
    set SOCKS5_V4SUPPORT #指定同时存在的最大子进程数,Socks5预设为64 
    set SOCKS5_MAXCHILD 4 #指定密码文件 
    set SOCKS5_PWDFILE /etc/socks5.passwd #对所有的客户连接都使用username/password用户认证方法 
    auth - - u #允许来自192.168.0.X的任何经过用户认证的连接 
    permit u - 192.168.0.X - - - 
    permit u - 192.168.0.X - - - 
    permit u - 192.168.0.X - - - 
    permit u - 192.168.0.X - - -[/code:1:35a0f9418b] 
    [code:1:35a0f9418b]#/etc/socks5.passwd 
    #用户  密码 
    userA passwdA 
    userB passwdB 
    userC passwdC[/code:1:35a0f9418b] 前面的一些设置由于我在配置文件里都写了相关的内容,就不在说明了 
    如果不需要用户验证只需要把 
    [code:1:35a0f9418b]auth - - u 
    改成 auth - - - permit u - 192.168.0.X - - - 
    改成 
    permit - - - - - - 
    [/code:1:35a0f9418b] 
    大家注意上面permit - - - - - -这一句,是使任何人都可以使用你的socks5 server,非常不安全(让你作跳板),最好是有点限制 
    如 
    [code:1:35a0f9418b]permit - - clientIP - - - [/code:1:35a0f9418b]