近日想利用家中的舊LAPTOP, 學習在家中建一個家用VPN伺服器。舊LAPTOP是WINDOWS 10, 所以一切都以WINDOWS建立。
現在進度是Windows中安裝了OPENVPN的VPN伺服器軟件, 也用了EASYRSA建了KEY。 因為不想直接使用IP, 在duckdns.org建了一個網址。
測試主要是在三星手機。 三星手機在GOOGLE PLAY已下載及安裝OPENVPN CONNECT。LAPTOP運行後, 於手機的OPENVPN CONNECT中載入ovpn檔並連到家中VPN伺服器(舊LAPTOP)。在VPN伺服器LOG中也看到已連上。
測試時, 當手機使用whatmyip檢查。 卻發現手機IP, 是電信公司提供的IP, 並非經VPN伺服器後出來的IP。
想請教一下, 當中出現了什麼問題, 要如何才能使手機連上網是通過VPN呢?
以下是SERVER.OVPN內容
port 443
proto udp
dev tun
ca "C:\\EasyRSA\\pki\\ca.crt"
cert "C:\\EasyRSA\\pki\\issued\\server.crt"
key "C:\\EasyRSA\\pki\\private\\server.key"
dh "C:\\EasyRSA\\pki\\dh.pem"
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
cipher AES-256-CBC
auth SHA256
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
以下是CLIENT.OVPN內容
client
dev tun
proto udp
remote myhome.duckdns.org 443
resolv-retry infinite
nobind
user nobody
group nobody
persist-key
persist-tun
remote-cert-tls server
cipher AES-256-CBC
auth SHA256
verb 3
<ca>
-----BEGIN CERTIFICATE-----
MIIDNjCCAh6gAwIBAgIULv9XJoc2eldnnLJlSaxyPLIdGr0wDQYJKoZIhvcNAQEL
BQAwDzENMAsGA1UEAwwEV2F2ZTAeFw0yNDEyMTIxMDMxMTRaFw0zNDEyMTAxMDMx
PI5dITbShROYlk10V92pfvCGL+JpMDKKmeIM7wkkrLbtt2Qxfzsi19X6sL6lVonr
xxxxxxxxxxxxxxxxxxxx
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
MIIDRzCCAi+gAwIBAgIQTTIBaNv8qB3DXlonVPt+tDANBgkqhkiG9w0BAQsFADAP
MQ0wCwYDVQQDDARXYXZlMB4XDTI0MTIxMjEwMzMyM1oXDTI3MDMxNzEwMzMyM1ow
EjEQMA4GA1UEAwwHY2xpZW50MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
xxxxxxxxxxxx
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCxQvruMFYA/g3R
RmPKDD+414aY1YPHg4mYBCHv0Wk/fgNhyjefrDDPxvgbxo4O9Wv//ptCchX6/Vjf
eVsyQzxT8whxyOPhqUcLqBfjaBnKmYQWBQuHtn2DgkkIysbZytURqonoc0iZAZVf
xxxxxxxxxxxxx
-----END PRIVATE KEY-----
</key>
謝謝
有幾件事要做.
1.要修改 OpenVPN server 的 config file, 在OpenVPN client撥上server時,下參數叫client把所有網路流量都導進tunnel, 在 server config file 加入這一行:
push "redirect-gateway def1"
2.Windows要啟動路由功能的相關設定, 才能讓OpenVPN client透過OpenVPN Server翻牆.
(1)啟動 RRAS (Routing and Remote Access)服務
用Windows圖示+R, 輸入 service.msc 打開Windows服務,在清單中找到 Routing and Remote Access 服務,將服務啟動.
(2)修改 registry 打開 TCPIP 的路由功能
在 Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
將機碼 IPEnableRouter 的值改為 1
(3)將 "區域網路" 介面的網際網路共用功能打開, 讓OpenVPN介面可以透過 "區域網路" 介面翻牆出去.
用Windows圖示+R, 輸入 ncpa.cpl 打開網路介面清單.
在要提供翻牆出去的那個介面上(假設是 "區域網路" 這個介面), 按右鍵 > 內容 > 共用.
選取 [允許其他網路使用者透過這台電腦的網際網路連線來連線]
在「家用網路連線」的選項,選擇 OpenVPN-TAP Windows 介面.