只讓瀏覽器連上 VPN 教學-使用樹梅派 raspberry pi 中繼


前情提要


最近在工作上常常有使用 VPN 連線到遠端的需求,在使用時經常會覺得網路的環境變得很不舒適,光是查個資料就會覺得網頁開啟的速度都變慢了;邊做邊看 youtube 時的觀影體驗也實在是不佳⊙﹏⊙∥。

於是我開始在網路上搜尋解決方案,希望可以只讓特定的瀏覽器連上 vpn,如此一來就可以在原本的網路環境作業了!

架構












在自己的私人網域中加入一台樹梅派安裝 privoxy 以及 openvpn 作為 proxy server 再由樹梅派使用 vpn 連線至遠端電腦,在火狐瀏覽器中設定 proxy 連線至樹梅派(其他主流瀏覽器似乎把 proxy 功能跟 windows 合併了。我沒有測試,不過猜測是會影響整台電腦)。

這樣打開火狐的時候就可以只用火狐連上遠端的電腦了!ヾ(•ω•`)o

只要設定好自動連線,甚至不用任何設定開機就可以用啦!!

需要準備

實作

  1. 請先在樹梅派上安裝 Ubuntu 作業系統,我使用的是 20.04.2 LTS server 版
    • 不會裝了話可以參考這裡
  2. 預設的帳號密碼是 ubuntu,進去之後會要求你重新設定密碼(使用 putty 以 ssh 連)
  3. 照慣例先使用更新一下packages 
    • sudo apt-get upgrade
    • sudo apt-get upgrade
    1. 接者安裝 privoxy
      • sudo apt-get install privoxy
    2. 編輯設定檔
      • 輸入 sudo nano /ect/privoxy/config
    3. 請移動到 4.2 的部分並再 listen-address 的前面輸入 # 號,將其註解掉
    4. 然後輸入:
      • listen-address :8118
    5. 移動到最後一行,輸入:
      • enable-edit-actions 1
    6. 按下 ^+O, enter 以儲存、^X 以離開
    7. 重新啟動 privoxy:
      • sudo systemctl restart privoxy
    8. 檢查 privoxy 的狀態
      • sudo systemctl status privoxy
    9. 設定讓 pi 開機就啟動:
      • sudo systemctl enable privoxy
    10. 接下來就可以再 firefox 設定 proxy 了!
    11. 請打開火狐,然後開啟選項,搜尋「prxoy」
    12. 點選「設定」,選擇「手動設定 Proxy」
    13. 在 「HTTP Proxy」 中輸入樹梅派的 ip (建議在分享器中給予樹梅派固定的 ip,以免每次重開樹梅派都會被指派別的 ip),以及連接埠口
    14. 將「也針對 FTP 與 HTTPS 連線使用此代理伺服器」打勾

    15. 點選「確定」結束 proxy 部分的設定  (.;゚;:益:;゚;.)
    16. 回到 putty,安裝 openvpn 輸入:
      • sudo apt-get install openvpn
    17. 輸入: cd /etc/openvpn 接著請將 ovpn 檔案移動到這個資料夾 (我用自己的電腦當成網頁主機,將檔案放入網頁目錄,再使用 wget 指令下載至樹梅派)
    18. 新增一個記錄登入帳號密碼的文件:
      • sudo nano vpnlogin
    19. 在第一行輸入帳號,第二行密碼,然後一樣輸入^O, enter 以及 ^X 儲存離開
    20. 打開剛剛下載的 ovpn 檔案
      • sudo nano your_file_name.ovpn
    21. 在 auth-user-pass 的那行的最後面加上 vpnlogin (變成 auth-user-pass vpnlogin)
      • 輸入^O, enter 以及 ^X 儲存離開
    22. 接著請將 your_file_name.ovpn 檔案更名為 your_file_name.conf :
      • sudo mv your_file_name.ovpn your_file_name.conf
    23. 將 ovpn 註冊為開機啟動的服務
    24. sudo systemctl enable openvpn@your_file_name.service
    25. 使用sudo shutdown -h now 關機,拔掉電源重新插入
    26. 開機之後檢查連線狀態
      • sudo systemctl status openvpn
      • sudo systemctl status privoxy

    完畢~

    接下來只要每次幫樹梅派插上電源然後小等一下,10~20 秒之後就瀏覽器就可以自動連上遠端的 VPN 了!

    如果有參考 vpn 原文的人應該會發現文中並沒有更名的程序,但是我在實作時發現這樣確實可以手動連線,但是在變成 service 時會一直出現找不到 .conf 的錯誤,於是乾脆將檔案改了一下附檔名然後就可行了~

    參考

    https://www.tomshardware.com/reviews/raspberry-pi-vpn-gateway,6103.html
    https://www.howtogeek.com/683971/how-to-use-a-raspberry-pi-as-a-proxy-server-with-privoxy/


        

    留言

    熱門文章