SOCKS5 是一個代理協議,通過將前端發來的請求轉寄給真正的目標伺服器, 類比了一個前端的行為。在這裡,前端和SOCKS5之間也是通過TCP/IP協議進行通訊,前端將原本要發送給真正伺服器的請求發送給SOCKS5伺服器,然後SOCKS5伺服器將請求轉寄給真正的伺服器。
下面我們將用SS5在Linux上搭建一個Socks5 Proxy Server,具體過程如下:
首先,編譯安裝SS5需要先安裝一些相依元件
yum -y install gcc gcc-c++ automake make pam-devel openldap-devel cyrus-sasl-devel
接下來,我們從 http://ss5.sourceforge.net/ 下載SS5最新版本的原始碼後,開始編譯安裝:
tar zxvf ./ss5-3.8.9-8.tar.gz
cd ss5-3.8.9
./configure
make
make install
讓SS5隨系統一起啟動
chmod +x /etc/init.d/ss5
chkconfig --add ss5
chkconfig --level 345 ss5 on
開啟使用者名稱密碼驗證機制
vi /etc/opt/ss5/ss5.conf
在ss5.conf中找到auth和permit兩行,按照下面的格式進行修改
auth 0.0.0.0/0 - u
permit u 0.0.0.0/0 - 0.0.0.0/0 - - - - -
設定使用者名稱和密碼
vi /etc/opt/ss5/ss5.passwd
一行一個帳號,使用者名稱和密碼之間用空格間隔,例如:
user1 123
user2 234
設定連接埠
vi /etc/sysconfig/ss5
在/etc/sysconfig/ss5這個檔案中,添加下面這一行命令,-b後面的參數代表監聽的ip地址和連接埠號碼
# Add startup option here
SS5_OPTS=" -u root -b 0.0.0.0:8080"
啟動
service ss5 start