Contenu | Rechercher | Menus

Annonce

L'équipe des administrateurs et modérateurs du forum vous invite à prendre connaissance des nouvelles règles.
En cas de besoin, vous pouvez intervenir dans cette discussion.

Ubuntu 18.04 LTS
Ubuntu-fr propose des clés USB de Ubuntu et toutes ses « saveurs » ainsi qu'un magnifique t-shirt pour cette toute nouvelle version d'Ubuntu !

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 18/02/2018, à 22:38

yMD

[RESOLU]Connexion à mon serveur openvpn échouée avec client ubuntu

Bonjour,

Voilà, j'ai installé un serveur VPN chez moi sur un raspberry pi, pour cela j'ai utilisé le script pivpn, d'une simplicité redoutable !
Après toute la configuration, je génère les clés pour les différents clients avec succès : iphone, téléphone android, macbook, pc sous window 10, pc sous ubuntu 16.04.

Toutes les connexions fonctionnent, sauf celles pour mon pc sous ubuntu ! Quelle frustration... Dès que je tente de lancer la connexion VPN j'obtiens ce message : La connexion VPN a échoué, le délai de connexion est dépassé.

Voici ma version d'openvpn :

OpenVPN 2.3.10 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Jun 22 2017
library versions: OpenSSL 1.0.2g  1 Mar 2016, LZO 2.08
Originally developed by James Yonan
Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net>
Compile time defines: enable_crypto=yes enable_crypto_ofb_cfb=yes enable_debug=yes enable_def_auth=yes enable_dependency_tracking=no enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown enable_fast_install=yes enable_fragment=yes enable_http_proxy=yes enable_iproute2=yes enable_libtool_lock=yes enable_lzo=yes enable_lzo_stub=no enable_maintainer_mode=no enable_management=yes enable_multi=yes enable_multihome=yes enable_pam_dlopen=no enable_password_save=yes enable_pedantic=no enable_pf=yes enable_pkcs11=yes enable_plugin_auth_pam=yes enable_plugin_down_root=yes enable_plugins=yes enable_port_share=yes enable_selinux=no enable_server=yes enable_shared=yes enable_shared_with_static_runtimes=no enable_silent_rules=no enable_small=no enable_socks=yes enable_ssl=yes enable_static=yes enable_strict=no enable_strict_options=no enable_systemd=yes enable_win32_dll=yes enable_x509_alt_username=yes with_crypto_library=openssl with_gnu_ld=yes with_mem_check=no with_plugindir='${prefix}/lib/openvpn' with_sysroot=no

Les certificats et clés du client :

yvan@yvan-Lenovo:~/.cert/nm-openvpn$ ls -l
total 48
-rw------- 1 yvan yvan 1854 fév 18 19:46 yvanPC-ca.pem
-rw------- 1 yvan yvan 1866 fév 18 19:46 yvanPC-cert.pem
-rw------- 1 yvan yvan 3311 fév 18 19:46 yvanPC-key.pem
-rw------- 1 yvan yvan  636 fév 18 19:46 yvanPC-tls-auth.pem

Puis le fichier ovpn généré par pivpn (les 'x' sont volontaires ici) :

client
dev tun
proto udp
remote 176.XXX.XX.XXX 11194
resolv-retry infinite
nobind
persist-key
persist-tun
key-direction 1
remote-cert-tls server
tls-version-min 1.2
verify-x509-name server_XXXXXXXXXXXXXXXXXXX name
cipher AES-256-CBC
auth SHA256
comp-lzo
verb 1

Et voici le contenu de server.conf (là aussi les 'X' sont volontaires) :

dev tun
proto udp
port 11194
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server_XXXXXXXXXXXXXXXXXXX.crt
key /etc/openvpn/easy-rsa/pki/private/server_XXXXXXXXXXXXXXXXXXX.key
dh /etc/openvpn/easy-rsa/pki/dh4096.pem
topology subnet
server 10.8.0.0 255.255.255.0
# server and remote endpoints
ifconfig 10.8.0.1 10.8.0.2
# Add route to Client routing table for the OpenVPN Server
push "route 10.8.0.1 255.255.255.255"
# Add route to Client routing table for the OPenVPN Subnet
push "route 10.8.0.0 255.255.255.0"
# your local subnet
push "route 0.0.0.0 "
# Set your primary domain name server address for clients
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
# Override the Client default gateway by using 0.0.0.0/1 and
# 128.0.0.0/1 rather than 0.0.0.0/0. This has the benefit of
# overriding but not wiping out the original default gateway.
push "redirect-gateway def1"
client-to-client
keepalive 10 120
remote-cert-tls client
tls-version-min 1.2
tls-auth /etc/openvpn/easy-rsa/pki/ta.key 0
cipher AES-256-CBC
auth SHA256
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
crl-verify /etc/openvpn/crl.pem
status /var/log/openvpn-status.log 20
status-version 3
log /var/log/openvpn.log
verb 1
# Generated for use by PiVPN.io

Voilà, j'ai essayé pas mal de choses sur tes tutos trouvés ici et là, mais je n'arrive à rien. J'ai bien vu ce poste, mais je ne vois pas trop comment faire en pratique.

Si quelqu'un à des pistes, je suis preneur.

Dernière modification par yMD (Le 20/02/2018, à 19:32)


L'essentiel est invisible pour les yeux

Hors ligne

#2 Le 19/02/2018, à 10:37

LukePerp

Re : [RESOLU]Connexion à mon serveur openvpn échouée avec client ubuntu

Bonjour,

Si tu utilises le service openvpn d'un fournisseur VPN, alors il a dù normalement t'envoyé un fichier *.opvn

Voici la procédure :

Configurer un openvpn

> Préparatifs
. Télécharger le fichier de config du fournisseur.
. Placer le fichier de config *.ovpn dans le dossier /etc/openvpn/
. Enlever les espaces du fichier.
. Si absence de certificat, alors ouvrir le fichier de config et exporter la zone du certif, situé entre BEGIN et END de <ca>, vers un nouveau fichier. Renommer ce fichier : ca.crt

> Configuration du vpn
. Ouvrir connexions réseaux
. Importer une config VPN...
. Sélectionner le fichier de config *.ovpn
. Type : Mot de passe
. Saisir login et MdP
. Certif : sélectionner le fichier ca.crt

Source : démarrer à l'étape 11 : https://www.ipvanish.com/visualguides/OpenVPN/Ubuntu/


Desktop : Ubuntu Mate 18.04 - Intel i5 - 8 Go - Dual boot Windows 7 pour jouer
Laptop ASUS : Ubuntu Mate 16.04 - Intel i3 - 4 Go
Vieux laptop de 1993 : Bodhi Linux - Pentium M - 432 Mo

Hors ligne

#3 Le 19/02/2018, à 18:08

yMD

Re : [RESOLU]Connexion à mon serveur openvpn échouée avec client ubuntu

Merci pour la réponse LukePerp,

J'ai généré moi-même le fichier *.ovpn par le script pivpn. J'ai également un provider VPN, ipvanish d'ailleurs et j'arrive à me connecter sans soucis à tous leurs serveurs.
Je n'ai le problème qu'avec mon serveur vpn local et uniquement sur la machine Linux.

Le fichier *.ovpn ainsi que le ca.crt sont bien présents dans /etc/openvpn

Par contre j'ai aussi un fichier update-resolv-conf dans ce répertoire. En voici le contenu :

#!/bin/bash
# 
# Parses DHCP options from openvpn to update resolv.conf
# To use set as 'up' and 'down' script in your openvpn *.conf:
# up /etc/openvpn/update-resolv-conf
# down /etc/openvpn/update-resolv-conf
#
# Used snippets of resolvconf script by Thomas Hood and Chris Hanson.
# Licensed under the GNU GPL.  See /usr/share/common-licenses/GPL. 
# 
# Example envs set from openvpn:
#
#     foreign_option_1='dhcp-option DNS 193.43.27.132'
#     foreign_option_2='dhcp-option DNS 193.43.27.133'
#     foreign_option_3='dhcp-option DOMAIN be.bnc.ch'
#

[ -x /sbin/resolvconf ] || exit 0
[ "$script_type" ] || exit 0
[ "$dev" ] || exit 0

split_into_parts()
{
	part1="$1"
	part2="$2"
	part3="$3"
}

case "$script_type" in
  up)
	NMSRVRS=""
	SRCHS=""
	for optionvarname in ${!foreign_option_*} ; do
		option="${!optionvarname}"
		echo "$option"
		split_into_parts $option
		if [ "$part1" = "dhcp-option" ] ; then
			if [ "$part2" = "DNS" ] ; then
				NMSRVRS="${NMSRVRS:+$NMSRVRS }$part3"
			elif [ "$part2" = "DOMAIN" ] ; then
				SRCHS="${SRCHS:+$SRCHS }$part3"
			fi
		fi
	done
	R=""
	[ "$SRCHS" ] && R="search $SRCHS
"
	for NS in $NMSRVRS ; do
        	R="${R}nameserver $NS
"
	done
	echo -n "$R" | /sbin/resolvconf -a "${dev}.openvpn"
	;;
  down)
	/sbin/resolvconf -d "${dev}.openvpn"
	;;
esac

Est-ce une piste ? Je comprends pas grand chose à ce script pour être honnête.


L'essentiel est invisible pour les yeux

Hors ligne

#4 Le 20/02/2018, à 19:05

yMD

Re : [RESOLU]Connexion à mon serveur openvpn échouée avec client ubuntu

Je ne baisse pas les bras. En essayant de me connecter en mode console, j'ai un message d'erreur qui sera je l'espère compréhensible par l'un de vous...

yvan@yvan-Lenovo:~$ sudo openvpn --config /home/yvan/Documents/OpenVPN/yvanPC.ovpn
Tue Feb 20 18:03:25 2018 OpenVPN 2.3.10 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Jun 22 2017
Tue Feb 20 18:03:25 2018 library versions: OpenSSL 1.0.2g  1 Mar 2016, LZO 2.08
Enter Private Key Password: *************
Tue Feb 20 18:03:32 2018 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Tue Feb 20 18:03:32 2018 Control Channel Authentication: tls-auth using INLINE static key file
Tue Feb 20 18:03:32 2018 UDPv4 link local: [undef]
Tue Feb 20 18:03:32 2018 UDPv4 link remote: [AF_INET]176.127.75.225:11194
Tue Feb 20 18:03:32 2018 write UDPv4: Operation not permitted (code=1)
Tue Feb 20 18:03:34 2018 write UDPv4: Operation not permitted (code=1)
^CTue Feb 20 18:03:37 2018 event_wait : Interrupted system call (code=4)
Tue Feb 20 18:03:37 2018 SIGINT[hard,] received, process exiting

L'essentiel est invisible pour les yeux

Hors ligne

#5 Le 20/02/2018, à 19:31

yMD

Re : [RESOLU]Connexion à mon serveur openvpn échouée avec client ubuntu

Bon quand on a la tête dans le guidon, il faut prendre un peu de hauteur et la solution apparaît d'elle-même smile

En postant mon dernier message, une illumination grâce au début du message d'erreur write UDPv4.....
En gros je me souviens que j'ai configuré un iptables et que j'avais bien ouverts les ports tcp pour openvpn. Mais pas les ports udp. Voilà, voilà, une semaine que je cherche. Au moins celle-là je m'en souviendrai lol


L'essentiel est invisible pour les yeux

Hors ligne