剛好這時候Synology將介面改版到3.2版(DSM 3.2),原本套件的安裝更簡單了,直接在【套件中心】點選安裝就完成各項套件支援,Synology VPN支援包含了PPTP和OpenVPN的Server端支援,對於中小企業來說,已經相當足夠。
這次VPN測試會先分享PPTP開始,再分享可高度客製化的OpenVPN,這部分我們有一些實務上的經驗可以分享給大家,DS712+的網路支援相當完整,使用者可以使用內建支援的PPPOE,或是設定DMZ或是IP轉址直接連上網路之後,直接使用NAS內建的防火牆和各項功能對於中小企業來說都有相當足夠的穩定性穩定性,這次也發現DS712的用料相當下功夫,不只硬體規格夠高,全固態電容也加分不少,算是市面上非常超值的強大NAS機種。先來看一下簡單化的網路示意圖:
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-aa8df19db9e00ff0d47fb5830f04ad33.jpg)
PPTP and OpenVPN
PPTP和OpenVPN都是VPN常用的方式。PPTP主要是利用埠號TCP 1723,因此對於對於防火牆的穿越經常會造成困難,但是因為設定簡單,所以也是目前三大主流作業系統內建支援的VPN協議(Windows, MAC和Linux),現在的智慧型手機也大多都是內建支援PPTP的,但也因為PPTP設定選擇太少,所以這次公司將採用OpenVPN的解決方案,所以PPTP的部分就點到為止。
OpenVPN使用了OpenSSL函式庫來加密,也提供多種身分驗證方式,Synology已經設定好很多基礎,預設OpenVPN是透過UDP 1194。如果沒有特殊Port的需求,其實使用PPTP即可,既然要使用到OpenVPN,基本的修改通訊協定和埠號,是必須的,可惜的是,這次Synology並未幫大家把OpenVPN的細節設定放到介面上,所以我們將會透過SSH進入修改一些設定。這也是我們把這次經驗放到網路上和大家分享的原因,也希望透過大家的使用向Synology表達希望把這部分功能再加強一點,哈哈~~
Synology VPN伺服端配置
1. 首先,先安裝好Synology VPN Server套件吧,點選主目錄的功能表之後,就會看到套件中心了。這是3.2版的DSM的更新之一,終於再也不用畫面跳來跳去的安裝套件了。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-1b63ff77d317f979f7c535d9046fa52c.jpg)
2. 安裝好VPN Server套件,記得點選「啟用」,當中包括了接下來要介紹的PPTP和OpenVPN。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-eb37f9c4673e3d067a5ec40e51951897.jpg)
3. 主目錄功能表已經可以看到多出VPN Server的按鈕了。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-03cf6839fec87385747b91753bbb958e.jpg)
4. VPN Server設定視窗,可以看到目前Synology支援最常使用的PPTP和可高度制定化的OpenVPN,我們還沒開始設定,所以是停用狀態。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-95be2d1b1399585e5e72d1eb257a8cf2.jpg)
5. 先到一般設定去確認網路介面,因為這次要安裝的主機有兩張網路卡(支援Link Aggregation),選定一個網卡作為我們的VPN路徑。自動封鎖部分,不得不稱讚一下Synology公司的防火牆,從CS407骨董使用到現在都很穩定,對於中小型企業來說已經足夠,所以也在這邊一併啟用了自動封鎖和電子郵件通知,來加強安全性的互動,這部分Synology也貼心地幫我們把功能介面都放在一起了。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-5fb1be55b6a82ceeae5e19ad22d157c5.jpg)
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-3aa36a43c05b28c62d02ccb53a1e89f0.jpg)
6. VPN使用者的授權整合,使用者可以依照自身需求設置,相當方便明瞭。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-5bc510b50ab4b5ad9096f4a385eb5d42.jpg)
7. PPTP的部分,直接按照預設值啟動即可,或是使用安全性更高的128bit加密,也都可以,唯一要注意的是PPTP的專利目前因為屬於微軟,所以要在Windows系統上使用PPTP,那就必須選擇認證使用MS-CHAP v2和加密MPPE的項目,否則會無法使用PPTP連線,而MTU使用預設1440即可。點選確認之後,系統會跳出訊息,告訴你使用TCP 1723。就這樣,PPTP伺服端設定完成。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-7f2a56dbc21067d63ceb5bd4af9eea5f.jpg)
8. 接下來介紹重頭戲,由於目前Synology在介面上還未提供可以自訂Port的功能,原本筆者還期望會推出和Tomato等級一樣的OpenVPN解決方案,看來是我想太多了….orz
如果沒有指定Port需求的,可以跳過接下來的幾個步驟,但是其實會使用到OpenVPN的都一定不只限於使用這樣陽春的設定提供的功能吧…….(Synology,你聽到了嗎?? XDDD
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-9f76ff8ed1df82e541e389fa08d8d7dd.jpg)
記得要點選【匯出設定檔】,我們會在之後的步驟告訴大家怎麼使用和安裝Windows和Linux平台的Client端,手上沒有Mac,我也好想有一台Macbook Pro~
9. 這邊我們要開始改造Synology提供的OpenVPN了,記得打開【控制台】->【終端機】的【啟動SSH功能】,使用root帳號的話,密碼是admin帳號一樣的密碼。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-12063e647b436ffd5927baa19f8c3b45.jpg)
10. 依下列步驟在指令模式輸入:
注意這邊,Port:1195和已經啟用的其他服務的Port,都是不能夠衝突到的。
# 進入Synology OpenVPN的設定目錄。 DS712> cd /usr/syno/etc/synovpn/openvpn/ # 備份一份Synology原本的設定檔。不過廠商建議另外建立設定檔 cp openvpn.conf openvpn.conf.user,之後設定.user檔案即可。不過筆者實際測試之後,是比較推薦大家直接修改openvpn.conf,怕會改爛掉的人,也可以在修改之前先複製一份原始的設定檔比較妥當。 DS712> cp openvpn.conf openvpn.conf.org # 使用openvpn.conf.user的設定的人,DSM畫面上的下載設定檔按鈕會被失去作用,這邊可以複製到samba可以存取的到的資料夾,就可以取得ca.crt囉。直接修改使用openvpn.conf的人就不要產生openvpn.conf.user檔案,匯出設定檔按鈕也不會失效,也就可以省略這一個複製到Samba的步驟了。 DS712> cd keys DS712> cp ca.crt /volume1/download # Samba路徑在/volume1/。 DS712> chown admin:users ca.crt # 記得修改成適當的權限。 # TCP和UDP請擇一選擇設定即可。 # [使用TCP和自訂Port],如果複製.user檔案的,只要設定.user檔案即可,筆者是直接編輯.conf檔案。 DS712> vi openvpn.conf # ….最後面增加這三行 port 443 # 使用443Port,比較不容易被防火牆封鎖和越獄。 proto tcp-server push "dhcp-option DNS 8.8.8.8" # 這部分是Synology沒有加入的部分,如果不加入這行,就要自己針對NAS主機做NAT。或是從客戶端的設定檔下手,等等會加以說明。 # [使用UDP自訂Port],如果複製.user檔案的,只要設定.user檔案即可,筆者是直接編輯.conf檔案。 DS712> vi openvpn.conf # ….最後面增加這三行 port 1199 # 使用443Port,比較不容易被防火牆封鎖和越獄。 proto udp push "dhcp-option DNS 8.8.8.8" # 這部分是Synology沒有加入的部分,如果不加入這行,就要自己針對NAS主機做NAT。或是從客戶端的設定檔下手,等等會加以說明。 |
設定完成之後,記得輸入:qw存檔離開。
# 直接使用openvpn.conf的使用者注意,有時候自訂的設定檔會很笨的被官方修改掉,這時候可以把修改的權限給取消掉,就OK啦。 DS712> chmod u-w openvpn.conf |
11. 重新啟動OpenVPN之後,訊息視窗並未正確顯示我們已經修改的Port,所以這邊是使用罐頭訊息… XDDD
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-0ce3714ef607ba092c12187d1524eb86.jpg)
補上使用openvpn.conf.user設定之後的介面,使用這個方式自訂OpenVPN會產生幾個問題,包括目前線上User無法正確顯示等等,ca.crt認證檔和Client設定檔下載按鈕也會失去作用,但是是Synology原廠建議的,筆者實際使用後,不是很喜歡Synology提出的方案,這裡一併寫出來讓大家自由選擇。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-c8f783312f94a03d9919846ce6465cab.jpg)
12. 伺服端的設定就這樣大功告成了,比起當初我們自己裝Linux,自己搞設定簡單很多~
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-aed446d38f91f8eb726214d823a3b803.jpg)
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-c645486784d2045186fc4bd1a6098411.jpg)
[Windows PPTP Client端]
1. 使用Windows 7當作介紹好了,進入【控制台】的【網路和共用中心】,點選「設定新的連線或網路」。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-8954b1c8dfa14187d0ae3431a477958a.jpg)
2. 連線到工作地點。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-f4cb53bc5806754d78af646713eae5a9.jpg)
3. 使用我的網際網路連線。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-9cfb6b5d24bd0b62b436b107c604f13f.jpg)
4. 輸入伺服器的網址或是IP。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-4fe5a8c2af0799377aa1fe316416d4d2.jpg)
5. 輸入帳號和密碼。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-3b9e4f5acd0502a3c30e377cb74cf3ea.jpg)
6. PPTP連線成功。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-9e2c5a5ceda674c4d77713b54b13d3bc.jpg)
[Windows OpenVPN客戶端]
1. 其實這邊應該建議Synology公司,也一併在設定頁面提供固定版本的Client程式,一定會方便許多~~
2. 先到Openvpn官方下載專用的OpenVPN的Client端程式。下載頁[http://openvpn.net/index.php/open-source/downloads.html。
撰文的時候最新版本是2.2.1,release on 2011.07.06。下載網址[http://swupdate.openvpn.org/community/releases/openvpn-2.2.1-install.exe]
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-9c79e5bcee5079a51342a278e276be25.jpg)
下載完成後,直接下一步到最後完成。
3. 記得要點取『匯出設定檔』從伺服器端下載VPN連線會用到的資訊。Openvpn.zip內容有ca.crt, openvpn.ovpn, README.txt,三個檔案,我們會用到前兩個。
解壓縮之後放到OpenVPN安裝路徑,預設的話是[C:\Program Files (x86)\OpenVPN\config]
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-720e4def9f21b9e53900c93d780429ae.jpg)
4. 直接按兩下點選編輯openvpn.ovpn,內容如下:粗體字是需要注意的部分。
dev tun tls-client remote 192.168.0.198 443 # 這邊的改成你自己的伺服器網址或是IP,還有Port。系統預設是1194。有越獄需求的請改成80或是443會相對穩定。 # If redirect-gateway is enabled, the client will redirect it’s # default network gateway through the VPN. # It means the VPN connection will firstly connect to the VPN Server # and then to the internet. # (Please refer to the manual of OpenVPN for more information.) redirect-gateway # 把最前面的註解刪掉。 dhcp-option DNS 8.8.8.8 # 如果沒有SSH步驟10.的話,請加入這行指定DNS。8.8.8.8是Google公司提供的免費DNS,台灣用戶可以使用”種花電信”的168.95.192.1 pull proto tcp-client # UDP的話把tcp-client改成udp即可。Udp是系統預設。 Script-security 2 ca ca.crt comp-lzo reneg-sec 0 auth-user-pass |
5. 執行桌面上的捷徑(OpenVPN GUI),啟動後畫面右下角常駐功能列會多一個OpenVPN GUI圖案,右鍵點選Connect。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-4c1e87cda3082ba861b1a869ff5015d5.jpg)
6. 連線後輸入密碼,就完成越獄囉。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-587dd107ba6288efb9193be690bec424.jpg)
[Ubuntu客戶端]
1. 先安裝OpenVPN。
user@ubuntu:~$ sudo apt-get install openvpn
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-b6e793b1a960198ffe8d77882bd1db36.jpg)
2. 將下載的ca.crt和openvpn.ovpn設定好之後放在同一個資料夾。
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-1382258b5abb7f09f92320b696fbdc76.jpg)
3. 開始啟動OpenVPN連線。完成畫面。
user@ubuntu:~$ sudo openvpn openvpn.ovpn
![[分享] Synology NAS DSM 3.2 and VPN Support [PPTP and OpenVPN on Windows and Linux]](http://attach.mobile01.com/attach/201109/mobile01-dd0bf3992bb4316c7797d39863525c9f.jpg)
[總結Synology OpenVPN 優缺]
寫了這麼多,稍微評論一下...
這次介紹的Synology OpenVPN已經推出一段時間囉,加入已經被廣為使用和穩定度很高的OpenVPN,是大加分,不過如果可以把介面設計得更詳細一點會更好,
像是Tomato的VPN設定就很完整,但是Synology幫大家把複雜的OpenSSL底層包裝起來,和本身帳號整合,也算是達成目標。
優點:
介面的親和度很高,一鍵點選安裝,和簡化過的設定都是用心的地方。
一次支援最被廣為使用的PPTP和OpenVPN,相信已經解決大部分VPN越獄需求的客戶。
其實Synology已經調整過OpenVPN的設定,像是主機帳號同步的機制和NAT的部分等等都讓MIS有更多的時間認真玩FB上班,也省去一堆帳號的麻煩,這算是優點。
缺點:
TCP/UDP和Port的客製化要在介面上做出來變成可以選,不然每次要SSH切換會影響MIS專注在玩FB工作上的心情。
Client的客戶端安裝程式要能夠直接下載exe,或是提供點選的導引網址頁。