openwrt_openvpn
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
openwrt_openvpn [2017/04/07 09:01] – jean-kiki | openwrt_openvpn [2019/09/25 19:54] – thatoo | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
cette page a pour but de présenter l' | cette page a pour but de présenter l' | ||
- | créé par jkiwi le 30 mars 2017 en cours de rédaction... | ||
- | pour modifier les dns et ne pas prendre ceux de la box : | + | 01) brancher |
- | attention de prendre des dns ouverts car sinon si le vpn se relance il ne pourra pas résoudre les noms de domaine si dns fermé | + | |
+ | 02) dans la section "mise à jour" uploader le fichier openwrt trouvé sur le site et correspondant à votre routeur : https:// | ||
+ | |||
+ | 03) installer openvpn via l' | ||
+ | |||
+ | 04) se connecter en ssh au routeur : ssh root@ip_local_du_routeur | ||
+ | |||
+ | 05) dans / | ||
+ | < | ||
+ | # ########################################################################### | ||
+ | # FAImaison | ||
+ | # Fichier de configuration du client OpenVPN | ||
+ | # fma_client.ovpn | ||
+ | # ########################################################################### | ||
+ | |||
+ | ## Type de configuration | ||
+ | client | ||
+ | |||
+ | ## Interface | ||
+ | dev tun | ||
+ | |||
+ | ## Protocole utilisé (tcp/udp) | ||
+ | proto udp | ||
+ | |||
+ | ## en UDP, décommentez cette ligne, le serveur sera alors notifié quand vous vous déconnecterez, | ||
+ | ## explicit-exit-notify | ||
+ | |||
+ | ## Serveur (adresse et port) | ||
+ | remote vpn.faimaison.net 1194 | ||
+ | |||
+ | ## Verification du certificat du serveur | ||
+ | ns-cert-type server | ||
+ | |||
+ | ## le Common Name du certificat doit être " | ||
+ | verify-x509-name vpn.faimaison.net name | ||
+ | |||
+ | ## Essayer de se connecter à l' | ||
+ | resolv-retry infinite | ||
+ | |||
+ | ## Pas besoin de se lier a un port local | ||
+ | nobind | ||
+ | |||
+ | ## Configuration persistante au redemarrage | ||
+ | persist-key | ||
+ | # | ||
+ | |||
+ | ## MTU du lien (?) | ||
+ | link-mtu 1541 | ||
+ | |||
+ | ## Verbosité des logs | ||
+ | verb 3 | ||
+ | |||
+ | ## redirige tout le trafic vers ce vpn | ||
+ | redirect-gateway def1 | ||
+ | |||
+ | ## on ne stock pas les identifiants de l' | ||
+ | # | ||
+ | |||
+ | ## Les identifiants de l' | ||
+ | ## la premiere ligne sera le login, et la deuxieme le mot de passe | ||
+ | ## Il est aussi possible de passer l' | ||
+ | ## la commande openvpn, pour se voir demander ces informations | ||
+ | auth-user-pass / | ||
+ | |||
+ | ## compatibilité windows | ||
+ | route-method exe | ||
+ | |||
+ | ## on attend un peut avant d' | ||
+ | route-delay 2 | ||
+ | |||
+ | ## options rajoutés en s' | ||
+ | #ping crée du traffic pour que le serveur soit actif toute les 10s envoie un paquet | ||
+ | ping 10 | ||
+ | # | ||
+ | ping-restart 30 | ||
+ | |||
+ | ## avoir des logs | ||
+ | log-append / | ||
+ | status / | ||
+ | |||
+ | ## Certificat de la CA de FAImaison | ||
+ | <ca> | ||
+ | -----BEGIN CERTIFICATE----- | ||
+ | MIIFBjCCA+6gAwIBAgIJAIY1ylYTFFj0MA0GCSqGSIb3DQEBCwUAMIGyMQswCQYD | ||
+ | VQQGEwJGUjEZMBcGA1UECBMQUGF5cyBkZSBsYSBMb2lyZTEPMA0GA1UEBxMGTmFu | ||
+ | dGVzMRIwEAYDVQQKEwlGQUltYWlzb24xEDAOBgNVBAsTB09wZW5WUE4xCzAJBgNV | ||
+ | BAMTAkNBMR0wGwYDVQQpExRGQUltYWlzb24gT3BlblZQTiBDQTElMCMGCSqGSIb3 | ||
+ | DQEJARYWYWRtaW5zeXNAZmFpbWFpc29uLm5ldDAeFw0xNjA2MzAyMjQ2MTFaFw0y | ||
+ | NjA2MjgyMjQ2MTFaMIGyMQswCQYDVQQGEwJGUjEZMBcGA1UECBMQUGF5cyBkZSBs | ||
+ | YSBMb2lyZTEPMA0GA1UEBxMGTmFudGVzMRIwEAYDVQQKEwlGQUltYWlzb24xEDAO | ||
+ | BgNVBAsTB09wZW5WUE4xCzAJBgNVBAMTAkNBMR0wGwYDVQQpExRGQUltYWlzb24g | ||
+ | T3BlblZQTiBDQTElMCMGCSqGSIb3DQEJARYWYWRtaW5zeXNAZmFpbWFpc29uLm5l | ||
+ | dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMKRZm+K1SEnvS6fNoSX | ||
+ | eHGjGl6CyTaQvC4NEMEEVA4bLSBoFnfPjmvFa9gVSN3l757id+KtIBjjJpsTjSSL | ||
+ | JT+uTv4w0ApS6JZssBIltSg1FGzIh0WAJbOBjlC1if8mHnAVRaFM7YzZGy/ | ||
+ | 6dl6rvJW2zf+bLxHpFZV5mxHkAkmiHweEEv8BXcXbQK9UkTpWN4icU8IQpnkSnFV | ||
+ | JAb6308DRqmwz+5sSuAyqDtjmJx/ | ||
+ | KUJ+GKLne3Z3yHI1WWIvUxLSfPtciOz2EGAuJWQ9WSJNu/ | ||
+ | qIMCAwEAAaOCARswggEXMB0GA1UdDgQWBBSp+ECuBVx9WGgao9xy+H6jgvWj2zCB | ||
+ | 5wYDVR0jBIHfMIHcgBSp+ECuBVx9WGgao9xy+H6jgvWj26GBuKSBtTCBsjELMAkG | ||
+ | A1UEBhMCRlIxGTAXBgNVBAgTEFBheXMgZGUgbGEgTG9pcmUxDzANBgNVBAcTBk5h | ||
+ | bnRlczESMBAGA1UEChMJRkFJbWFpc29uMRAwDgYDVQQLEwdPcGVuVlBOMQswCQYD | ||
+ | VQQDEwJDQTEdMBsGA1UEKRMURkFJbWFpc29uIE9wZW5WUE4gQ0ExJTAjBgkqhkiG | ||
+ | 9w0BCQEWFmFkbWluc3lzQGZhaW1haXNvbi5uZXSCCQCGNcpWExRY9DAMBgNVHRME | ||
+ | BTADAQH/ | ||
+ | D/ | ||
+ | u84nNxiesaKALH84TJZtBf7zOjNsOX2b6b5FXP5Z0WtCrOwNbMhrWF9v4O9siuNj | ||
+ | aRFeEexeIyk3QNO5AmkjKQfA0h3BAd5ySLc2tbezTSyHTS0CSCNOsbArL8xU70oS | ||
+ | BWAJQPTFoCD/ | ||
+ | OixgAbQgwlZPLGOKci04jcPMMdOhesY46oyp5Gjy7+lNyAUqbXi/ | ||
+ | -----END CERTIFICATE----- | ||
+ | </ca> | ||
+ | </ | ||
+ | |||
+ | 06) puis créer un fichier « passFMA » également dans / | ||
+ | < | ||
+ | pseudo | ||
+ | mot-de-passe | ||
+ | </ | ||
+ | |||
+ | 07) pour modifier les DNS et ne pas prendre ceux de la box : | ||
+ | |||
+ | [attention de prendre des DNS ouverts car sinon si le VPN se relance il ne pourra pas résoudre les noms de domaine si le DNS est fermé et on se coupe les pattes sur la branche sur laquelle on est assise]. | ||
+ | < | ||
uci set network.wan.peerdns=' | uci set network.wan.peerdns=' | ||
- | uci del network.wan.dns | + | |
+ | uci delete | ||
uci add_list network.wan.dns=' | uci add_list network.wan.dns=' | ||
+ | |||
uci add_list network.wan.dns=' | uci add_list network.wan.dns=' | ||
- | uci commit | ||
+ | uci commit | ||
+ | </ | ||
https:// | https:// | ||
+ | fin de conf et historique extrait d' | ||
+ | |||
+ | 8) Alors que ça avait bien roulé dans mon setup similaire (VPN pour une salle de formation, qui a tourné pendant trois mois), j'ai eu quelques petites déconvenues : | ||
+ | |||
+ | - si le tunnel crashait, il ne remontait pas tout seul (probablement dû au changement d'IP de SFR ?) | ||
+ | - aucun log pour savoir ce qu'il se passe | ||
+ | |||
+ | Du coup j'ai amélioré un peu la chose : | ||
+ | |||
+ | Au lieu de la ligne dans / | ||
+ | propre. Pour utiliser le service openvpn (/ | ||
+ | |||
+ | Effectuer les commandes suivantes : | ||
+ | < | ||
+ | uci set openvpn.fma_client=openvpn | ||
+ | |||
+ | uci set openvpn.fma_client.enabled=' | ||
+ | |||
+ | uci set openvpn.fma_client.config='/ | ||
+ | |||
+ | uci commit | ||
+ | </ | ||
+ | (le nom fma_client est arbitraire et peut être changé pour ce que | ||
+ | vous voulez, le fichier / | ||
+ | remplacer par le bon chemin de fichier de conf openvpn). | ||
+ | < | ||
+ | / | ||
+ | </ | ||
+ | Un reboot plus tard, ça fonctionnait | ||
+ | |||
+ | 9) De retour dans l' | ||
+ | |||
+ | Dans Network/ | ||
+ | |||
+ | 10) Dans l' | ||
+ | |||
+ | " | ||
+ | |||
+ | " | ||
+ | |||
+ | Dans "Cover the folowing interface" | ||
+ | |||
+ | cliquez sur " | ||
+ | |||
+ | 11) Dans l' | ||
+ | |||
+ | wanvpn doit être à input : reject ; outpout : accept ; forward : reject | ||
+ | |||
+ | cocher masquerading | ||
+ | cocher mssclamping | ||
+ | |||
+ | si vous " | ||
+ | |||
+ | si vous " | ||
+ | |||
+ | --- | ||
+ | |||
+ | [déjà intégré dans les étapes ci-dessus] | ||
+ | |||
+ | *Des logs !* | ||
+ | |||
+ | Pour suivre un peu ce qui se trame, j'ai ajouté des logs (et un | ||
+ | fichier de statut). J'ai ajouté les fichiers suivants | ||
+ | |||
+ | > log-append / | ||
+ | > status / | ||
+ | |||
+ | à mon fichier .ovpn, il faut ensuite relancer openvpn / | ||
+ | |||
+ | Ces logs m'ont permis de constater que le processus de | ||
+ | redémarrage automatique du tunnel en cas de changement d'IP (ou | ||
+ | tout autre problème réseau) fonctionnait, | ||
+ | 10h, les logs ont dit : | ||
+ | |||
+ | > […] | ||
+ | > Tue Mar 28 10:07:34 2017 [vpn.faimaison.net] Inactivity timeout (--ping-restart | ||
+ | ), restarting | ||
+ | > Tue Mar 28 10:07:34 2017 SIGUSR1[soft, | ||
+ | > […] | ||
+ | |||
+ | … Et la connexion est remontée toute seule | ||
+ | |||
+ | Restent deux souci avec ce setup : | ||
+ | |||
+ | 1) je pense que les requêtes DNS passent toujours par le DNS SFR. | ||
+ | À vérifier et améliorer le cas échéant… | ||
+ | |||
+ | 2) Même si ça fonctionne, j'ai toujours une erreur au redémarrage | ||
+ | du tunnel : | ||
+ | |||
+ | Enter Auth Username: | ||
+ | read Auth username from stdin. En tombant sur ce sujet : | ||
+ | https:// | ||
+ | tenté de commenter l' | ||
+ | faisait le job. Réponse demain au changement d' | ||
+ | |||
+ | Cette doc m'a beaucoup aidé : | ||
+ | |||
+ | https:// | ||
+ | |||
+ | … La doc sur le wiki opewrt n' | ||
+ | --- |
openwrt_openvpn.txt · Dernière modification : 2022/01/21 15:01 de jean-kiki