教你建立socks5代理服務(wù)器
經(jīng)常有網(wǎng)管詢問如何有效的管理員工計(jì)算機(jī)的網(wǎng)絡(luò)訪問權(quán)限,例如屏蔽使用QQ,MSN等聊天工具,禁止BT下載電影等。然而對于一般的交換式網(wǎng)絡(luò)來說,通過簡單的管理工具是不可能實(shí)現(xiàn)上面提到的方法的。就好比水流一樣,只有從源頭截?cái)嗖拍苡行Ч?,在中游和下游采取攔截措施只會(huì)造成洪災(zāi)的爆發(fā)。
所以說網(wǎng)絡(luò)出口才是最有效的管理網(wǎng)絡(luò)的地點(diǎn),我們通過在網(wǎng)絡(luò)出口配置一臺(tái)雙網(wǎng)卡的代理服務(wù)器來部署網(wǎng)絡(luò)管理的全部。今天就由我手把手的教會(huì)你如何建立SOCKS5代理服務(wù)器。
一、Windows平臺(tái)下SOCKS5代理服務(wù)器的實(shí)現(xiàn)思路
首先我要為IT168的讀者介紹大名鼎鼎的nec版socks5服務(wù)器,用過xNIX系統(tǒng)的讀者可能都熟悉,NEC的SOCKS5版軟件既開源又免費(fèi)。不過不經(jīng)過處理它只能在UNIX及Linux下使用,作為Windows的用戶,在Win平臺(tái)下選擇代理服務(wù)器比較麻煩,專業(yè)的代理軟件如ISA系列,體積龐大而且配置相對復(fù)雜。好用點(diǎn)的如CCproxy是商業(yè)軟件,免費(fèi)使用時(shí)不能超過三用戶。而免費(fèi)的軟件有的功能能夠?qū)崿F(xiàn)但沒有用戶控制功能,不能使用密碼認(rèn)證。
難道我們就沒有辦法在Windows平臺(tái)下找到滿意的代理軟件嗎?今天就由我告訴大家如何將NEC Socks5 UNIX版編譯成WIN32版。這樣通過使用編譯后的版本就可以輕松的在Windows上建立SOCKS5代理服務(wù)器了。
二、編譯nec的socks5代理軟件WIN32版
第一步:從 http://www.socks.permeo.com下載socks5軟件包。當(dāng)然我們也可以在網(wǎng)上搜索,最新版本是socks5-v1.0r11.tar.gz。
第二步:從http://www.cygwin.com下載并安裝cygwin軟件,用于稍后編譯工作。我們也可以從網(wǎng)上搜索。
第三步:將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("/");在前面添加"http://"屏蔽掉此句,使之成為//chdir("/")。
小提示:如果不添加“//”屏蔽該句,則運(yùn)行socks5會(huì)提示"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;
}*/
這段代碼將其刪除。
小提示:我們也可以不刪除這段代碼,不過不刪除的話運(yùn)行代理的機(jī)器就不可以使用UDP代理了。
第七步:運(yùn)行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后回車。
第十步:這樣你會(huì)發(fā)現(xiàn)socks5-v1.0r11\server\Socks5.exe編譯出來了,這就是我們所說的WIN32平臺(tái)的Socks5代理工具的主程序了。
第十一步:加上cygwin\bin\cygwin1.dll(庫文件),以及手工編輯的socks5.passwd(存放用戶名和密碼的文件),socks5.conf(配置文件),就是WIN32版的SOCKS5代理服務(wù)器軟件的全部了。正常運(yùn)行時(shí)只需要保留這四個(gè)文件在同一個(gè)目錄即可。
第十二步:最后我們測試下制作的程序是否可以使用,進(jìn)入socks5.exe所在目錄,運(yùn)行“socks5 -s -f”如果出現(xiàn)01904: Socks5 starting at Thu Oct 21 16:07:32 2004 in normal mode則表示軟件編譯成功。
三、啟用代理功能
我們需要在一臺(tái)服務(wù)器上通過剛剛編譯好的socks5.exe程序開啟代理功能。方法很簡單,具體步驟如下:
第一步:雙擊剛剛編譯的socks5.exe運(yùn)行,出現(xiàn)一個(gè)黑乎乎的控制臺(tái)窗口,將其最小化。
第二步:客戶機(jī)就可以通過服務(wù)器的IP地址和默認(rèn)端口1080來使用SOCKS5代理服務(wù)器了。
第三步:默認(rèn)端口是1080,可能有的讀者覺得比較難記或者公司對該端口進(jìn)行了封閉,那么可以通過如下方法修改默認(rèn)的代理端口,方法是加參數(shù)-b port。例如想改變代理端口為8088使用“socks5.exe -b 8088”來修改。
小提示:如果我們希望為使用代理的用戶分配用戶名和密碼,阻止非法用戶使用代理服務(wù)器的話可以使用以下方法。
編輯socks5.conf將#auth - - u前面的“#"符號(hào)去掉,再編輯 socks5.passwd,按照 “用戶名 密碼”的格式一行一回車添加用戶名和密碼,保存后運(yùn)行socks5.exe,客戶機(jī)就必須添加相應(yīng)的用戶名和密碼才能正常使用代理服務(wù)器了。
總結(jié):其實(shí)編譯過程雖然復(fù)雜但我們只需要配置一次即可,以后啟用代理服務(wù)器通過運(yùn)行socks5.exe就可以輕松實(shí)現(xiàn)了。
您正在閱讀:教你建立socks5代理服務(wù)器
【編輯推薦】