服务器 频道

资深网管教你建立socks5代理服务器

二、编译nec的socks5代理软件WIN32版

    第一步:http://www.socks.permeo.com下载socks5软件包。当然我们也可以在网上搜索,最新版本是socks5-v1.0r11.tar.gz。

    第二步:http://www.cygwin.com下载并安装cygwin软件,用于稍后编译工作。我们也可以从网上搜索。

    第三步:将socks5-v1.0r11.tar.gz解压到cygwin的tmp目录下,即cygwin\tmp\socks5-v1.0r11,解压工具使用最常见的WINRAR即可。

    第四步:修改cygwin\usr\include\cygwin\if.h文件,在#define IFF_LOOPBACK    0x8后添加#define IFF_POINTOPOINT 0x10。

    第五步:修改socks5-v1.0r11\server\daemon.c,查找chdir("/");在前面添加"//"屏蔽掉此句,使之成为//chdir("/")。

    小提示:如果不添加“//”屏蔽该句,则运行socks5会提示"Config: Error opening config file (socks5.conf): No such file or directory"。

    第六步:修改socks5-v1.0r11\server\udp.c,找到
/*
    if (Authorize(pri, 0) != AUTH_OK) {
 S5LogUpdate(S5LogDefaultHandle, S5_LOG_ERROR, 0, "UDP Setup: Setup failed: permission denied");
 s5err = SOCKS5_AUTHORIZE;
 rval  = EXIT_AUTH;
 goto cleanup;
    }*/
    这段代码将其删除。

    小提示:我们也可以不删除这段代码,不过不删除的话运行代理的机器就不可以使用UDP代理了。

    第七步:运行cygwin,在cygwin中切换到socks5-v1.0r11目录。

    第八步:一次性输入以下命令
./configure --with-threads --with-libconffile=libsocks5.conf --with-srvconffile=socks5.conf --with-srvpidfile=socks5.pid --with-srvpwdfile=socks5.passwd --with-srvidtfile=socks5.ident

    第九步:输入make后回车。

    第十步:这样你会发现socks5-v1.0r11\server\Socks5.exe编译出来了,这就是我们所说的WIN32平台的Socks5代理工具的主程序了。

    第十一步:加上cygwin\bin\cygwin1.dll(库文件),以及手工编辑的socks5.passwd(存放用户名和密码的文件),socks5.conf(配置文件),就是WIN32版的SOCKS5代理服务器软件的全部了。正常运行时只需要保留这四个文件在同一个目录即可。

    第十二步:最后我们测试下制作的程序是否可以使用,进入socks5.exe所在目录,运行“socks5 -s -f”如果出现01904: Socks5 starting at Thu Oct 21 16:07:32 2004 in normal mode则表示软件编译成功。


0
相关文章