這裡我整理了其設定方法,文字檔的設定還真有些複雜
整理起來備忘
參考自http://www.kerobbs.net/thread-9082-1-1.html
--------------------------------------------------------------------------------
所需工具
- OpenVPN GUI for Windows
- Notepad++ 或是其他非內建記事本文字編輯器
- Cmd Here PowerToy
請先到這裡下載OpenVPN GUI for Windows
http://openvpn.se/download.html
找Installation Package安裝
我用的版本openvpn-2.0.9-gui-1.0.3-install.exe
請將之安裝,請記得安裝路徑
我是裝在D:\Program Files\OpenVPN
NotePad++請到這裡下載安裝
http://notepad-plus.sourceforge.net/tw/download.php?lang=tw
因為用Windows內建的記事本開設定檔無法正確換行
Cmd Here PowerToy載點在這
http://download.microsoft.com/download/whistler/Install/2/WXP/EN-US/CmdHerePowertoySetup.exe
目的是方便開啟某目錄的命令提示字元而不用一直用cd切換資料夾
--------------------------------------------------------------------------------
到安裝OpenVPN的目錄 (我是裝在 D:\Program Files\OpenVPN 目錄)
先備份easy-rsa和sample-config子目錄 (包成二個7z壓縮檔丟在旁邊)
用cmd切到easy-rsa目錄
編輯vars.bat.sample,修改以下資料
(rem那整行是註解)
------------------------------------------------------------
rem 改目錄成正確的
set HOME=D:\Program Files\OpenVPN\easy-rsa
rem 視情況選擇金鑰長度要1024或2048(但2048編碼時要等很久,之後的設定值要跟它一樣)
set KEY_SIZE=1024
rem 下面設定值一需要改一改
set KEY_COUNTRY=TW
set KEY_PROVINCE=TW
set KEY_CITY=Taipei
set KEY_ORG=home
set KEY_EMAIL=j796160836@yahoo.com.tw
------------------------------------------------------------
執行init-config.bat,建置設定檔
正常來說會沒有錯誤訊息,它會copy二個檔案出來。
執行vars.bat,初始環境變數
然後再執行clean-all.bat,清空keys資料夾
在這邊要注意,當你執行這個時,keys目錄裡的東西將會被刪
這邊也要注意是否有錯誤訊息發生。如無意外,就會copy二個檔案出來。
再執行build-dh.bat,製作亂數 (要稍等電腦一段時間)
執行build-ca.bat,要作伺服器的認証 (產生keys\ca.key檔)
這邊如果在[]之間有資料,(也就是之前你改的vars.bat.sample值),可以直接按「enter」表示與左邊的預設值相同。
我覺得用戶端的資料若沒有合乎的話,可能會產生不出來!
多以下這二個參數,請務必抄下來
Organizational Unit Name (eg, section) []:user
Common Name (eg, your name or your server's hostname) []:johnny
請執行build-key-server.bat server指令,製作伺服器端的秘鑰 (產生keys\server.key檔)keys\server.key
請注意有加入「 server」參數(請務必空一格,代表它帶有參數)
資料一定要統一,例如section跟host name等等。
密碼請變更成難猜的密碼。
後面是告訴你是否要認証,當然是輸入「y」,後面也是輸入「y」。
到此步驟已經將伺服器所有認証的部份全建立好了。
以下是執行時的重點部份
Organizational Unit Name (eg, section) []:user
Common Name (eg, your name or your server's hostname) []:johnny
A challenge password []:12341234
An optional company name []:user
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
---------------------------------------------------------------------------------
接下來製作用戶端的秘鑰
請執行build-key.bat client1
請注意有加入「 client1」參數(請務必空一格,代表它帶有參數,本參數可以隨意變換,例如:「build-key jack」,或「build-key john」)
在這邊你有多少台電腦需連到伺服器就建立幾個,名字可以取自己容易記的。
這裡請注意,當製作client端連線資料時,主機名稱不可重覆。
否則會出現.old的錯誤訊息,只能再重作一次囉!
Organizational Unit Name (eg, section) []:user
Common Name (eg, your name or your server's hostname) []:clinet1
A challenge password []:12341234
An optional company name []:user
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
---------------------------------------------------------------------------------
將伺服器端所需要的檔案(ca.crt、ca.key、dh2048.pem、server.crt、server.key)
複製一份到 config 資料夾。
然後將sample-config的server.ovpn
複製一份到 config 資料夾。
然後修改config的server.ovpn檔
以下是設定重點,全部都要看
---------------------------------------------------------------------------------
# 若你有多組ip,可以在local中輸入你要指定的ip,記得前面的分號要拿掉。
local 192.168.1.2
# 要連線的連接埠,請確認防火牆有正確的開啟且導向該連接埠
port 1194
# 使用TCP連線或UDP連線
proto udp
# 看是要走tun模式還是tap模式(這邊我是用預設,其它都改為自己能用的)。
# "dev tun" will create a routed IP tunnel,
# "dev tap" will create an ethernet tunnel.
# tap模式是要建一張虛擬網卡,用它來橋接網路
# tun模式是直接現有用IP做通道
dev tun
# dh這邊是密鑰長度,如果你改了預設數字1024,就要改成符合你之前設定的數字!
dh dh1024.pem
# server這邊的參數是指定你的vpn的網段,我是使用192.168.2.0 255.255.255.0
server 192.168.23.0 255.255.255.0
ifconfig-pool-persist ipp.txt
# 開啟push "route 192.168.2.0 255.255.255.0"後可以使用戶端電腦知道要走vpn。
push "route 192.168.23.0 255.255.255.0"
# 開啟client-to-client後可以使用戶端電腦連往別台用戶端電腦。
client-to-client
# 開啟duplicate-cn是怕用戶端電腦名稱可能會取一樣的情況發生。
# (這個用途在於,若你想要分享給大家使用,
# 又不想每個人都建一個連線檔案的話,就必須設定,
# 設定之後每個人的ip連上來就不會被固定下來!)
duplicate-cn
---------------------------------------------------------------------------------
到此就作好伺服器端電腦的設定了,記得要存檔(Ctrl+S),開始執行看看是否有誤。
右點在OpenGUI的小圖示,選「connect」
會另開一視窗,如果沒問題,該視窗會自行關閉。
若正確執行無誤的話,此時OpenGUI的小圖示會由紅燈轉綠燈,並且告知ip為何。
查看一下網路連線資料,果然多了一個網路卡,並且多了一個ip。
---------------------------------------------------------------------------------
以下為用戶端的設定:
用戶端也是要安裝OpenVPN GUI才能使用,詳情不再敘述。
安裝完後,在config子目錄中,將用戶端認証需要的檔案置放其中,
複製伺服器端easy-rsa\keys的ca.crt、client1.crt、client1.key 到用戶端的config資料夾
從「sample-config」目錄中複製「client.ovpn」 到用戶端的config資料夾
修改client.ovpn設定檔
------------------------------------------------------------
# 看伺服器是走tap還是tun,需跟server端設定一致。
dev tun
# 看伺服器是走tcp還是udp,需跟server端設定一致。
proto udp
# remote的參數,如果你架的伺服器有DNS,可以在此設定,
# 例如:remote john.dyndns.org 1194
# 1194指的是port,這也要看伺服器是設成哪一port。
remote my-server-2 1194
# ca ca.crt是不動它的,要動的是用戶端,如果你的用戶端名稱為john,
# 則cert跟key後面接的檔名一定要改為john,否則會找不到檔案。改完後就存檔(Ctrl+S)。
ca ca.crt
cert client1.crt
key client1.key
------------------------------------------------------------
右點在右下角找OpenVPN GUI小圖示,選「Connect」
執行後,會跳出視窗,若連線成功,此視窗會自動消失。
瞧,我們就得到ip了!耶!萬歲!我們成功了!

Dear Sir: 請問我如果只是想要藉由 VPN 當跳板, 連外. 照您的教學設定即可, 或者要注意什麼呢? 因為我常常出差大陸, 想在台灣住家架設跳板. 並 share 給同事使用. 感謝 March
跟你說聲拍謝,這部分我還沒有整理完畢 且在Windows下無法做你所說的跳板,因為XP下沒有完整的防火牆及封包管理 (除非有找到另一套防火牆軟體,能處理NAT連線) 只能做基本的對連(網芳分享連線,但要設定WINS) 同樣的方法你可能要換到LINUX下做(例如Fedora) 一樣照該方法建立起來連線 iptables下做封包轉送,藉由該電腦NAT出去 請參考 http://j796160836.pixnet.net/blog/post/25721059 http://j796160836.pixnet.net/blog/post/25721078 設定VPN連線就用此篇 http://j796160836.pixnet.net/blog/post/25271623#comment-28255123 融合一下 目前敝人有測試成功做到跳板 但網芳分享的部分還要再研究,跟你說聲不好意思 因為要牽扯到Samba下設定WINS等概念 linux還要另外做學習,推薦去看鳥哥的文章 http://linux.vbird.org/ 至少要會網路的處理,vi 的使用,yum安裝套件 防火牆管理,路由 祝您成功
受教了,感謝您~!
希望這些文章能對你有所幫助
很棒的文章 我實作過是OK的 但希望這行各位記得修改一下 remote my-server-2 1194 ^^^^^^^^ 改成VPN Server的IP即可 ^.^
恭喜你呀,要用VPN的全功能還是要換到linux底下運作 方便私下流一下聯絡方式交流一下嗎
想請教一下大大 由於小弟我住校使用學術網路..因學術網路會封鎖特定的網站.. 導致無法連結開啟如大陸、香港以及遊戲等特殊網頁(導致查資料很麻煩甚至連育樂消遣都沒有了).. 我是想從學校連回我家裡的桌電在藉由我家的有線電視cable去上網.. 想確認使用這兩個產品的其中一種就可以自行在家架設SSL VPN嗎?? 我不是只要連到內網喔..我是要透過家裡當中繼站在連外的~~ 目前本學校只能走SSL VPN途徑..昨天我已經有透過網路朋友測試過了 (但那大大堅持不透露要,透露要$$).. 之前也有看我朋友試過用fortigate 60來架設SSL VPN..效果很好..只可惜我太晚問他了.. 他人已經畢業出國去了~~暫時沒法請教.. 因為學校把PPTP、ISP、VPN、proxy等等遠端連線方式、爬牆的方式都封鎖..只剩下SSL VPN途徑 懇請善心人士來教我一下吧~~用openVPN軟體來完成SSL VPN伺服器!! 或者使用USG 50-H與NBG-510S這兩個產品來輔助..另外我家的桌電作業系統是windows~ 重點我是要從學校連回我家裡電腦,再由家裡連上網路~~
SSL VPN.....= = 另請高明,話說你學校也太會鎖了= = 我有空研究看看linux上的設定 至於用分享器的方式,你要贊助我機器嗎XD
*****
*****
我是原作者, 如果要架OpenVpn Server, 我的建議是如果可以的話,用舊電腦安裝免費版pfsense防火牆, (我試過,使用Intel® Pentium® 處理器E5300雙核也能跑) 它有套件是OpenVPN VPN, 很好操作。 要架跳板也可以, 而且可以跟管理界面共用443埠, (IPv4 Only,試過不支援IPv6如果要防中國長城的話) (設定TCP模式,雖然會降低效率,但為了要混淆長城, 有請中國人試過,是可以在中國跳板後使用禁止APP傳訊息)