Windows系統Stunnel客戶端的配置


Stunnel官方就有Windows版本,到下面的地址下載:
https://www.stunnel.org/downloads.html

選擇”stunnel-X.XX-installer.exe“並且安裝到一個“可寫”的位置,因為Windows Vista/7/8系統里如果安裝到C:\Program Files或者C:\Program Files (x86),會無法寫入配置、日志或者不方便放置用戶的證書,因此本着偷懶和“綠化”的原則,建議安裝到其他地方。其實你也可以安裝了以后,把整個程序目錄復制出來,然后將原始安裝卸載。Stunnel就成了一個綠色程序。

這里假設新建一個目錄:C:\local,然后把Stunnel軟件安裝到這里:

C:\local\stunnel

然后,去你的Linux服務器上獲取證書文件:/etc/stunnel/stunnel.pem。傳輸的方法建議是用SCP的方式。Windows上免費的PuTTY系列工具里有一個PSCP程序,就可以用來安全地傳輸文件。

下載“putty.zip”工具包:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html(開頭幾個是單獨文件下載,這里直接下載整個ZIP包,就是標示了“A .ZIP file containing all the binaries (except PuTTYtel), and also the help files”的地方)。

同理解壓縮到C:\usr\local\putty。打開一個命令行窗口,CD到該目錄。

C:\usr\local\putty> pscp root@12.34.56.78:/etc/stunnel/stunnel.pem .


如果你的SSH服務器端口不是默認的22端口,那么用-P PORT來指定端口(P是大寫):

C:\usr\local\putty> pscp -P 12345 root@12.34.56.78:/etc/stunnel/stunnel.pem .

命令運行后,一般是會要求你確認服務器的指紋是否正確,按“y”回車確認。然后會提示輸入密碼。密碼輸入以后就會把文件拷貝到當前目錄下。

如果你配置了SSH服務器不接受密碼登陸,而只能用密鑰登陸,那么你要先把你的SSH密鑰通過PuTTY提供的PUTTYGEN.exe程序導入,然后導出為.ppk格式,接着運行PAGENT.exe,加載這個導出的PuTTY私有格式的密鑰。這時運行上述的PSCP命令即可,不需要輸入密碼。

扯了半天傳輸證書的問題,下面就是配置Stunnel了。配置文件是C:\usr\local\stunnel\stunnel.conf

一上來我們先配置一下調試日志的選項:

; Debugging stuff (may useful for troubleshooting)
debug = 7
output = .\stunnel.log

同理,初次使用建議debug level設置為7,調試正常后,可以修改為默認的5或更小的數字。“output”指定的日志文件設定為“.\stunnel.log”。意思就是在軟件安裝目錄(和stunnel.exe在同一個位置)。

接下來指定證書文件。就是前面從Linux服務器上傳輸過來的”stunnel.pem”文件,將這個文件也放在Stunnel安裝目錄下,然后配置文件里這樣寫:

; Certificate/key is needed in server mode and optional in client mode
cert = .\stunnel.pem
key = .\stunnel.pem

請注意這里也是用了相對路徑。這個證書文件就是客戶端Stunnel和服務端Stunnel互相驗證的“密碼”,請務必妥善保存。只有有這個證書的雙方才可以通過SSL加密通信,第三方將無法看到任何信息。

最后是配置服務項:

; Example SSL front-end to a web server
[https]
client = yes
accept  = 8080
connect = 12.34.56.78:443
; "TIMEOUTclose = 0" is a workaround for a design flaw in Microsoft SSL
; Microsoft implementations do not use SSL close-notify alert and thus
; they are vulnerable to truncation attacks
; TIMEOUTclose = 0
TIMEOUTclose = 0

這里假設你的服務器端IP地址是12.34.56.78,服務端Stunnel監聽端口為443。而Windows上客戶端監聽端口為8080,也就是其他程序可以看到你的本地機器上有一個監聽在8080端口的HTTP代理服務器。同時注意要指定“client = yes”來打開Stunnel的客戶端模式。

同時遵照注釋里的說明,在Windows平台我們將“TIMEOUTclose”設置為0。

至於其他的服務,則全部用行首添加';’的方式注釋掉,或者直接刪除即可:

; Example SSL server mode services

;[pop3s]
;accept  = 995
;connect = 110

;[imaps]
;accept  = 993
;connect = 143

;[ssmtp]
;accept  = 465
;connect = 25

; Example SSL client mode services

;[gmail-pop3]
;client = yes
;accept = 127.0.0.1:110
;connect = pop.gmail.com:995

;[gmail-imap]
;client = yes
;accept = 127.0.0.1:143
;connect = imap.gmail.com:993

;[gmail-smtp]
;client = yes
;accept = 127.0.0.1:25
;connect = smtp.gmail.com:465

保存配置文件后。雙擊安裝目錄里的stunnel.exe就開始運行了,如果一切正常,雙擊運行后不會有窗口出現,而是 在系統托盤欄出現一個stunnel的圖標。右鍵點擊這個圖標可以查看程序日志、重啟服務、退出等操作。如果出現錯誤,可以查看日志文件排查問題。測試正 常后,就可以配置Windows啟動后自動運行“C:\usr\local\stunnel\stunnel.exe”,這樣就不用去管它了。

最后就是在你的瀏覽器里配置使用這個代理即可,即代理地址為:127.0.0.1:8080。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM