返回列表 發帖

[VPN] 讓iOS/Android 用戶透過OpenVPN翻網

本帖最後由 gfx86674 於 2015-1-9 11:26 編輯

相信各位都知道RouterOS很早就支援OpenVPN(OVPN),
但設定iOS/Android可能不是清楚...
所以小弟整理一篇大家都看得懂的,讓各位不用懂腦筋去猜想該怎麼動手.

使用OVPN最基礎的是要建立憑證 ,
不過小弟不再提憑證是如何製做,而是直接開放給有緣人下載使用.
ca.crt  /ca.key  /client.crt /client.key

先把下載的ca.crt 與ca.key 拉放至winbox的files檔案夾 ,
再至/system certificates 用Import進行匯入.
先匯入ca.crt ,再匯入ca.key ,

匯入完成Certificate會標示KT
要使用OVPN  Server ,當然得先開啟它

iOS/Android要指定使用OVPN的ip-mode ,
而Port可以自訂,小弟將原本預設Port:1194 變成現在的1195

修改/PPP Profile的default-encryption設定檔 ,將DNS-Server變更成您的Gateway
確保路由是經您的RouterOS主機查尋遞出的.


建立用戶的OVPN帳號


因ip-mode遮罩被固定為255.255.255.252不能變更 ,設DHCP-Pool意義不大.
所以直接在帳號指定Local/Remote Address .

也因遮罩限定255.255.255.252 ,所以不同帳號請用不同網段區分.
如範例的10.0.1.0/30 ,10.0.2.0/30 ,10.0.3.0/30 如此類推 ,
更禁用戶同帳號重覆登入Server.

若您是使用小弟所提供的憑證,接下只要打開電腦的記事本,
將下面的文字存為client.ovpn即可.
  1. client
  2. dev tun
  3. remote 1.23.123.123 1195
  4. proto tcp
  5. auth-user-pass pw.txt
  6. redirect-gateway
  7. mute-replay-warnings

  8. ;ca.crt
  9. ;client.crt
  10. ;client.key

  11. <ca>
  12. -----BEGIN CERTIFICATE-----
  13. MIIDBDCCAm2gAwIBAgIJAM8oNFlxL3rSMA0GCSqGSIb3DQEBBAUAMGAxCzAJBgNV
  14. BAYTAlRXMQswCQYDVQQIEwJUVzEPMA0GA1UEBxMGVGFpcGVpMQ0wCwYDVQQKEwRo
  15. b21lMSQwIgYJKoZIhvcNAQkBFhV4eHh4eHh4eEB5YWhvby5jb20udHcwHhcNMTIx
  16. MjExMTYyNDIzWhcNMjIxMjA5MTYyNDIzWjBgMQswCQYDVQQGEwJUVzELMAkGA1UE
  17. CBMCVFcxDzANBgNVBAcTBlRhaXBlaTENMAsGA1UEChMEaG9tZTEkMCIGCSqGSIb3
  18. DQEJARYVeHh4eHh4eHhAeWFob28uY29tLnR3MIGfMA0GCSqGSIb3DQEBAQUAA4GN
  19. ADCBiQKBgQDTIffwLYBebqwQBSGb8K9wIF4b5HRVoTqfS8ZTc07TB07DZkGcTOX4
  20. HhEnW093KggwVfzRLXk+xzw2uK6iQjJo+9DJqsVviw8sQivs+ZtxAgiZSEeMfsY+
  21. 03YRXgYm6N684qt25ge/EyhuO6peWNRIcS3nW1FXPJ736e1+l/yVQQIDAQABo4HF
  22. MIHCMB0GA1UdDgQWBBQAirU2p0HRWb6DBzGl+UpFzghiAzCBkgYDVR0jBIGKMIGH
  23. gBQAirU2p0HRWb6DBzGl+UpFzghiA6FkpGIwYDELMAkGA1UEBhMCVFcxCzAJBgNV
  24. BAgTAlRXMQ8wDQYDVQQHEwZUYWlwZWkxDTALBgNVBAoTBGhvbWUxJDAiBgkqhkiG
  25. 9w0BCQEWFXh4eHh4eHh4QHlhaG9vLmNvbS50d4IJAM8oNFlxL3rSMAwGA1UdEwQF
  26. MAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAP/rusq6/L1Ju0F8yJPUtvqq7i2WevRUW
  27. b0s0uy076XX/njvY16QnGeqZSw7mi59TSa2kEkO/nDPcCE88y6Q2yCl+CHx3hZLe
  28. 2zBuxZ4kCaVlAVks8XI2PbqYxASAH8INzDrqfY0ISsGiIVACGnIS9O3DmUtV93De
  29. NLzt4kDBET0=
  30. -----END CERTIFICATE-----
  31. </ca>

  32. <cert>
  33. -----BEGIN CERTIFICATE-----
  34. MIIDJzCCApCgAwIBAgIBAjANBgkqhkiG9w0BAQQFADBgMQswCQYDVQQGEwJUVzEL
  35. MAkGA1UECBMCVFcxDzANBgNVBAcTBlRhaXBlaTENMAsGA1UEChMEaG9tZTEkMCIG
  36. CSqGSIb3DQEJARYVeHh4eHh4eHhAeWFob28uY29tLnR3MB4XDTEyMTIxMjAxMzA1
  37. OFoXDTIyMTIxMDAxMzA1OFowYDELMAkGA1UEBhMCVFcxCzAJBgNVBAgTAlRXMQ0w
  38. CwYDVQQKEwRob21lMQ8wDQYDVQQDEwZjbGllbnQxJDAiBgkqhkiG9w0BCQEWFXh4
  39. eHh4eHh4QHlhaG9vLmNvbS50dzCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
  40. wUOdzSIu/vGFAoYo8nTzjVzwSftSwxRF9qlMsfFZfE/aVWhUpxFdWFio7qV+oo6j
  41. lSvYsEFGC49rmjs0gpc8eoZo65doMzDwwkN4lxu30Jjqah9HtY5EcZX9R1Gl6t3Q
  42. lhD9nUDEjSDH8SWY81uG60/yvV2V/7WW0eWI2iw4/D0CAwEAAaOB8DCB7TAJBgNV
  43. HRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZp
  44. Y2F0ZTAdBgNVHQ4EFgQUk6pp88OQjLIFQ+v9UAm6UHC3od4wgZIGA1UdIwSBijCB
  45. h4AUAIq1NqdB0Vm+gwcxpflKRc4IYgOhZKRiMGAxCzAJBgNVBAYTAlRXMQswCQYD
  46. VQQIEwJUVzEPMA0GA1UEBxMGVGFpcGVpMQ0wCwYDVQQKEwRob21lMSQwIgYJKoZI
  47. hvcNAQkBFhV4eHh4eHh4eEB5YWhvby5jb20udHeCCQDPKDRZcS960jANBgkqhkiG
  48. 9w0BAQQFAAOBgQBE2ATIoN2IBunjlIeSz+eXDd4D8du3Si807i/9knICweBY4Wsv
  49. P/9lpozqcklyRdEFG9UjAfYoz54ULEspiPS7oHKd4bIZsabMLBSAxKq4MvEiIto4
  50. EjKCMSt8WTaSAvES63Hva1kqHhWK50eRAg5llS1awdegu2P5nNxxhB9Knw==
  51. -----END CERTIFICATE-----
  52. </cert>

  53. <key>
  54. -----BEGIN RSA PRIVATE KEY-----
  55. MIICXAIBAAKBgQDBQ53NIi7+8YUChijydPONXPBJ+1LDFEX2qUyx8Vl8T9pVaFSn
  56. EV1YWKjupX6ijqOVK9iwQUYLj2uaOzSClzx6hmjrl2gzMPDCQ3iXG7fQmOpqH0e1
  57. jkRxlf1HUaXq3dCWEP2dQMSNIMfxJZjzW4brT/K9XZX/tZbR5YjaLDj8PQIDAQAB
  58. AoGAYhEUdq3c2QLm8mPvTTBpEZdSWsgLs++KnOJFh5mnRbwjVulM40WdbyH1/rq9
  59. anEksqIAH1fP2jfZavaV65ogVk1q8sSZ1JfY6m0SDlvlMryPmEHnuWbUIJsvmKRB
  60. nN/BwAkbbOB1s2uRHntgs+ktxVTATnre0iI+P5PVfmluKkECQQDx71mcrEvDSL6t
  61. MYPgmm99OoaCC0JuqNMbh1Qw2hMSzreCJFDeghPOwfYDcj235egXjuLdWJCNdsLk
  62. oTx72P+tAkEAzH/perm9Rq1M7UUhw+nKIJqFRyf+VtR1Wk3j4xQmbRfvBns2YjGR
  63. 4BB7FlVNyP94z/H1X6TZrrNHPMmjQVlA0QJAU2V9T2t5Bk0KJWt/GSpDKjjFawh0
  64. ku6xLrkchWZ20rHdQghAtCLEry3fHtr/eWfP9Gb1vvUrhwgcMHGABvULVQJAD67X
  65. lwPbkioENkYQ+tdZGvr+saBNjxcoEM7cZTPMZp1pRVP5rbojd82LwwCzwHBnMXta
  66. 2ATqdM1m7zB/hqlzoQJBAOM89P0LVPQrcKlp/fN+lIJQQli3jOsUwLNFYbWlqTr8
  67. sa3O2zc8OFj/aPlcSgvmm64H3z5Aa4Pld6lz58ic8bU=
  68. -----END RSA PRIVATE KEY-----
  69. </key>
複製代碼
注意remote 1.23.123.123 1195 是您的地址與port ,要修正成您的.

另外還得存pw.txt ,是存放用戶帳號/密碼用的.
第一行為用戶帳號 ,第二行則為密碼.
  1. bfs
  2. 123456
複製代碼
iOS/Android裝置安裝OpenVPN Connect ,並將client.ovpn/pw.txt上傳並進行匯入

先關閉OpenVPN Connect的Force AES-CBC ciphersuites
若沒意外 ,iOS/Android接下來即順利與OVPN-Server連線.
  

主要是翻网。
找到Network EOF 的问题,是我打错Userid。
现在Windows/IPhone/Android 都能上OPenVPN了。
谢谢

TOP

用了新的easy-rsa, 现在在Windows 7, Android能连到RB962.
yiucsw 發表於 2016-12-8 12:09

您是指有連線到rb962 ,但內網連接不到是嗎?

若是這個問題,請將vpn/dhcp pool網段分開.
如:
gateway=192.168.1.1/24時 ,切192.168.1.0/24 與 192.168.2.0/24
gateway=192.168.1.1/25時 ,切192.168.1.0/25 與 192.168.1.128/25

切勿:
gateway=192.168.1.1/24時 ,
pool切 192.168.1.101-192.168.1.150 與 192.168.1.151-192.168.1.200
這樣兩個pool還是共用同網段, 父/子路由關聯會建立不起來.

TOP

用了新的easy-rsa, 现在在Windows 7, Android能连到RB962.

TOP

是我加错了client.crt, 所以有Parsing Error.

TOP

我刚重新regenerate Client.crt 同 Client.key.  windows 7 能连,
https://community.openvpn.net/openvpn/wiki/Easy_Windows_Guide
但Android OpenVPN core error: PolarSSL: erro parsing cert certifcation: X509 - the CRT/CRL/CSR format is invalid...
是否不能用Client.CRT/Client.Key? 直接放到ovpn設定擋內的<cert>.....</cert> 和 <key>.....</key> 内

TOP

本帖最後由 gfx86674 於 2016-12-7 22:21 編輯
最近IOS 的 PPTP 没有了。要重新用Openvpn, APPLe IOS, android 都能连接,只是Windows 有问题,看LOG 是有 ...
yiucsw 發表於 2016-12-7 19:53

windows和手機的ovpn設定檔的差別在於,windows不需client.crtclient.key憑證.
所以把連線用的ovpn設定擋內的<cert>.....</cert><key>.....</key> 文字全刪除 ,
windows就能連線了

TOP

最近IOS 的 PPTP 没有了。要重新用Openvpn, APPLe IOS, android 都能连接,只是Windows 有问题,看LOG 是有以下的问题,是 不有关系的?

Wed Dec 07 19:47:27 2016 us=217239 VERIFY ERROR: could not extract CN from X509 subject string ('C=TW, ST=TW, L=Taipei, O=home, emailAddress=xxxxxxxx@yahoo.com.tw') -- note that the username length is limited to 64 characters
Wed Dec 07 19:47:27 2016 us=217239 OpenSSL: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

TOP

可不可以張Windows的Config setup 都發出來。在Windows 7 不懂如何建立Config。

TOP

主要是用大陆的(中國移動)台灣數據漫遊包,所有的Route 到中國中轉。OVPN是沒有辦法建立VPN的。

TOP

最近重做OVPN 發現 要加Firewall rule - Input, TCP, dst port, 1195. action: accept.
不知道auth 同 Cipe ...
yiucsw 發表於 2016-8-3 09:31

有可能是您換新手機,忘了把新安裝OpenVPN Connect Force AES-CBC ciphersuites關閉.
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

TOP

本帖最後由 gfx86674 於 2016-8-3 13:56 編輯

回復 17# yiucsw
不清楚您說的狀況,小弟OS版本是最新的v6.36 ,沒您說的問題.
  1. /ip pool
  2. add name=ovpn-pool ranges=192.168.88.137-192.168.88.139

  3. /ppp profile
  4. add dns-server=192.168.88.1 local-address=192.168.88.136 \
  5.   name=ovpn-profile remote-address=ovpn-pool \
  6.   use-compression=yes use-encryption=no use-mpls=yes

  7. /ppp secret
  8. add name=bfs password=??? remote-address=192.168.88.137 service=ovpn
複製代碼


附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

TOP

在台灣,Android手機上,中國移動的4G流量包不能上Google,不能用Google Map。 嘗試用OVPN,在酒店沒有問題,但在中國移動的4G流量包上OVPN斷線。除了OVPN還有什麼Android上的VPN能試試?

TOP

最近重做OVPN 發現 要加Firewall rule - Input, TCP, dst port, 1195. action: accept.
不知道auth 同 Ciper 加什麼,所以全加,才沒有Network-EOF-error, 可以知道應用那個AUTH/CIPER。 你以前的圖不能用
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

TOP

在OVPN server 端加了Firewall filter port。已成功Mikrotik -》Mikrotik 的OVPN 连接。谢谢。

TOP

返回列表