Google Cloud Platform 搭建個人VPN

Google Cloud Platform 搭建個人VPN

手把手教你用 Google Cloud Platform 搭建個人VPN
Teach you to build a personal VPN with Google Cloud Platform

*Google Cloud PlatformGoogle 提供的雲端服務,目前提供365天免費的300美金優惠試用,並且超過365天之後,沒有你的允許他也不會繼續扣款,以下是我在上面搭建個人VPN的過程,歡迎參考 :D*

Google Cloud Platform 首頁.jpgGoogle Cloud Platform 首頁.jpg

1. 先註冊帳號

選擇國家.jpg選擇國家.jpg

  • 並且填入信用卡資訊驗證之後即可開始!

2. 開啟一個新的專案

  • 這邊範例名稱使用 personal VPN

新增專案名稱.jpg新增專案名稱.jpg

  • 選取剛剛建立好的專案

選取資訊主頁.jpg選取資訊主頁.jpg

3. 建立VM執行個體

  • 從左側開啟選單,尋找Compute Engine,找到 VM執行個體

選擇VM執行個體.png選擇VM執行個體.png

  • 等待 VM執行個體初始化完成

等待VM執行個體啟用.jpg等待VM執行個體啟用.jpg

  • 選擇建立

選擇建立.jpg選擇建立.jpg

  • 設定 VM 名稱以及位置與配備

建立執行個體-1.jpg建立執行個體-1.jpg

  • 選擇作業系統與磁碟大小

  • 這邊選擇 Ubuntu 16.04 LTS 版本 與 10 GB標準儲存空間

  • p.s.如果有需要可以自行選擇作業系統與磁碟大小

  • 請勾選允許流量

建立執行個體-2.jpg建立執行個體-2.jpg

  • 範例使用 Ubuntu 16.04 LTS

Ubuntu 16.04 LTS

選擇Ubuntu 16.04 LTS.jpg

  • 完成建立

建立執行個體-3.jpg建立執行個體-3.jpg

執行個體建立中.jpg執行個體建立中.jpg

執行個體建立完成.jpg執行個體建立完成.jpg

4. 設定防火牆

  • 從選單中找到 網路 — VPC網路 — 防火牆規則

從選單中找到網路-VPC網路-防火牆規則.png從選單中找到網路-VPC網路-防火牆規則.png

  • 選擇建立防火牆規則

選擇建立防火牆規則.jpg選擇建立防火牆規則.jpg

  • 輸入名稱

建立防火牆規則-1.jpg建立防火牆規則-1.jpg

  • 選擇目標

  • ip範圍輸入 0.0.0.0/0

  • 設定指定通訊 udp:500;udp:4500;esp

建立防火牆規則-2.jpg建立防火牆規則-2.jpg

  • 建立完畢可以看到剛剛建立的規則

防火牆規則建立完畢.jpg防火牆規則建立完畢.jpg

5. 設定VPC ip forwarding

  • 打開選單,找到網路,選擇vpc網路

設定VPC.png設定VPC.png

  • 看到畫面之後,按下default

選擇default.png選擇default.png

  • 按下編輯

按下編輯.jpg按下編輯.jpg

  • 將動態傳送改成全域,並且儲存

將動態傳送模式改成全域並儲存.jpg將動態傳送模式改成全域並儲存.jpg

  • 再次打開菜單找到網路-選擇網路服務-按下負載平衡

打開菜單找到網路-選擇網路服務-按下負載平衡.png打開菜單找到網路-選擇網路服務-按下負載平衡.png

  • 建立附載平衡

建立負載平衡.jpg建立負載平衡.jpg

  • 選擇UDP 負載平衡

選擇UDP 負載平衡.jpg選擇UDP 負載平衡.jpg

  • 選擇網際網路到我的VM

選擇網際網路到我的VM.jpg選擇網際網路到我的VM.jpg

  • 進入後端設定-選擇剛剛VM執行個體的區域-按下建立

進入後端設定-選擇剛剛VM執行個體的區域-按下建立.jpg進入後端設定-選擇剛剛VM執行個體的區域-按下建立.jpg

前端設定輸入連接阜.jpg前端設定輸入連接阜.jpg

檢查並完成.jpg檢查並完成.jpg

  • 完成之後可以看到剛剛建立的負載平衡器

完成之後可以看到剛剛建立的負載平衡器.jpg完成之後可以看到剛剛建立的負載平衡器.jpg

6. 設定 VM VPN伺服器

  • 這邊使用 **setup-ipsec-vpn** 實作一個IPsec VPN伺服器

  • 打開菜單-回到VM執行個體-按下SSH

打開菜單-回到VM執行個體-按下SSH

打開菜單-回到VM執行個體-按下SSH.jpg

  • 等待連接後可以看到畫面

等待連接後可以看到畫面

可以看到SSH連接畫面.jpg

  • 輸入指令更新 sudo apt-get update && apt-get dist-upgrade

  • 按下Enter執行

按下Enter執行

輸入指令更新.jpg

  • 等待更新完畢後,修改整段下列指令後貼上,按下Enter執行

    1
    2
    3
    4
    wget https://git.io/vpnsetup -O vpnsetup.sh && sudo \
    VPN_IPSEC_PSK='你的IPsec预共享密钥' \
    VPN_USER='你的VPN用户名' \
    VPN_PASSWORD='你的VPN密码' sh vpnsetup.sh
  • 筆者這邊測試使用以下

    1
    2
    3
    4
    wget https://git.io/vpnsetup -O vpnsetup.sh && sudo \
    VPN_IPSEC_PSK='[email protected]' \
    VPN_USER='yasuoyuhaoForTestVpn' \
    VPN_PASSWORD='yasuoyuhaoForTestVpnPassword' sh vpnsetup.sh
  • p.s.筆者設定僅供測試使用,測試完畢之後伺服器處於關閉狀態,平時是連不到的。

貼上編輯好的整段指令

  • 等待執行完畢你會看到以下畫面

VPN安裝成功.jpg

  • 可以進行VPN連接了!

7. 使用 iPhone 進行VPN

  • 到設定,選擇VPN,加入VPN。

  • 設定您伺服器設定好的資料

  • 不知道怎麼設定可以參考搜尋 iPhone 設定 VPN

iPhoneVPN設定.jpg

  • 成功連接之後就會出現 VPN 的圖示

VPN成功.PNG

8. 後記與測試

如果想 VPN 到其他地方,理論上只要把區域設置在那個地方就好了,筆者測試的這個地區剛好也在台灣,所以速度還蠻穩定的。

雲計算發展了好幾年,現在每個人都擁有一台雲計算伺服器,已經不是困難的事情了,科技帶來便利與進步,所以我說,現在就是最好的時代。

想了解更多區域請參考 Cloud 據點

附上測試紀錄

  • Speedtest測試紀錄

yasuoyuhao 2018/03/27
如果喜歡我的文章,可以按下喜歡或追隨讓我知道呦,更歡迎許多大神指點討論。感謝您的閱讀。

團隊部落格:yasuoyuhao’s Area