19
0
Fork 0

Déplacement des sections valables pour les 2 méthodes

This commit is contained in:
jdubois 2020-05-14 16:24:29 +02:00
parent 2479908c37
commit 9bb22f6073
1 changed files with 100 additions and 106 deletions

View File

@ -5,7 +5,9 @@ title: Howto ISAKMPD
# Howto VPN IPsec sous OpenBSD
Il existe deux méthodes pour mettre en place un VPN IPsec sous OpenBSD. La première est de créer un fichier de configuration /etc/isakmpd/isakmpd.conf. La seconde est d'utiliser /etc/ipsec.conf et sa syntaxe "pf-like" et de laisser ipsecctl s'occuper des politiques de flux et de l'établissement de la SA (Security association).
Il existe deux méthodes pour mettre en place un VPN IPsec sous OpenBSD. La première est de créer un fichier de configuration /etc/isakmpd/isakmpd.conf. La seconde est d'utiliser /etc/ipsec.conf avec sa syntaxe "pf-like" et de laisser ipsecctl s'occuper des politiques de flux et de l'établissement de la SA (Security association).
Nous utilisons principalement la deuxième.
## Méthode isakmpd via isakmpd.conf
@ -31,110 +33,6 @@ pkill isakmpd
isakmpd -v
~~~
### Consulter les logs
~~~
tail -f /var/log/messages | grep isakmpd
~~~
### Voir les routes
~~~
route -n show
~~~
Si isakmpd est bien lancé, une section Encap: doit apparaître.
### Voir les associations VPN
~~~
ipsecctl -s a
~~~
### Envoyer des commandes au daemon
Cela se fait en écrivant dans le fichier fifo /var/run/isakmpd.fifo.
La liste des commandes est disponible dans la page de man.
Exemple pour obtenir un rapport de l'état interne du daemon :
~~~
# echo r >/var/run/isakmpd.fifo
# cat /var/run/isakmpd.result
~~~
Pour avoir l'état de tous les VPNs :
~~~
# echo S >/var/run/isakmpd.fifo
# cat /var/run/isakmpd.result
~~~
Pour recharger les VPNs (équivalent au pkill -HUP) :
~~~
# echo R >/var/run/isakmpd.fifo
~~~
Pour stopper proprement le démon :
~~~
# echo Q >/var/run/isakmpd.fifo
~~~
Pour stopper un VPN (phase 1 ou 2) :
~~~
# echo "t main peer-XXXX" >/var/run/isakmpd.fifo
# echo "t quick XXXX" >/var/run/isakmpd.fifo
~~~
Pour relance un VPN (phase 1 ou 2... ce n'est pas clair. cela semble fonctionner pour la phase 1... à voir pour la phase 2).
~~~
# echo "c XXXX" >/var/run/isakmpd.fifo
~~~
ou
~~~
# echo "c main peer-XXXX" >/var/run/isakmpd.fifo
# echo "c qucik XXXX" >/var/run/isakmpd.fifo
~~~
*Note générale : attention, il peut un avoir un délai dans l'exécution des commandes*
### FAQ
Que veulent dire les messages suivants ?
~~~
isakmpd[7864]: dpd_handle_notify: bad R_U_THERE seqno 551411465 <= 2374875689
~~~
C'est un message relatif au DPD (Dead peer detection) qui est un mécanisme pour détecter des éventuels soucis avec VPN.
Voir <http://www.juniper.net/techpubs/software/erx/junose61/swconfig-routing-vol1/html/ipsec-config4.html#1329479>
~~~
isakmpd[7864]: attribute_unacceptable: AUTHENTICATION_METHOD: got PRE_SHARED, expected RSA_SIG
isakmpd[7864]: message_negotiate_sa: no compatible proposal found
isakmpd[7864]: dropped message from 192.0.2.1 port 500 due to notification type NO_PROPOSAL_CHOSEN
~~~
Il s'agit d'un routeur VPN distant qui essaye de se connecter, mais n'a pas de configuration correspondante.
Cela peut se produire typiquement si son adresse IP change, et qu'elle n'est plus présente dans la configuration d'ISAKMPD.
~~~
isakmpd[10418]: isakmpd: phase 1 done (as responder): initiator id 192.0.2.1, responder id 1.2.3.4, src: 1.2.3.4 dst: 192.0.2.1
isakmpd[10418]: dropped message from 192.0.2.1 port 500 due to notification type INVALID_ID_INFORMATION
isakmpd[10418]: message_validate_notify: protocol not supported
~~~
Cela signifie a priori que la configuration en face à un réseau "remote" incorrect (soit complètement faux, soit pas sous la forme ADRESSE RÉSEAU / MASQUE)
Voir <http://www.thegreenbow.com/support_flow.html?page=12105C&lang=fr>
### Debuger
~~~
@ -264,4 +162,100 @@ isakmpd_flags="-K -v -DA=90"
# ipsecctl -f /etc/ipsec.conf
~~~
L'option `-DA=90` indique à isakmpd de logger tout ce qui se passe sur le VPN. Les logs seront alors très dense.
L'option `-DA=90` indique à isakmpd de logger tout ce qui se passe sur le VPN. Les logs seront alors très dense.
## Consulter les logs
~~~
# tail -f /var/log/messages | grep isakmpd
~~~
## Voir les associations VPN
~~~
ipsecctl -sa
~~~
## Envoyer des commandes au daemon
Cela est valable pour les 2 méthodes et se fait en écrivant dans le fichier fifo /var/run/isakmpd.fifo.
La liste des commandes est disponible dans la page de man.
Exemple pour obtenir un rapport de l'état interne du daemon :
~~~
# echo r >/var/run/isakmpd.fifo
# cat /var/run/isakmpd.result
~~~
Pour avoir l'état de tous les VPNs :
~~~
# echo S >/var/run/isakmpd.fifo
# cat /var/run/isakmpd.result
~~~
Pour recharger les VPNs (équivalent au pkill -HUP, rechargement de toutes les phases 2) :
~~~
# echo R >/var/run/isakmpd.fifo
~~~
Pour stopper proprement le daemon :
~~~
# echo Q >/var/run/isakmpd.fifo
~~~
Pour stopper un VPN (phase 1 ou 2) :
~~~
# echo "t main peer-XXXX" >/var/run/isakmpd.fifo
# echo "t quick XXXX" >/var/run/isakmpd.fifo
~~~
Pour relancer un VPN (phase 1 ou 2… ce n'est pas clair. cela semble fonctionner pour la phase 1… à voir pour la phase 2).
~~~
# echo "c XXXX" >/var/run/isakmpd.fifo
~~~
ou
~~~
# echo "c main peer-XXXX" >/var/run/isakmpd.fifo
# echo "c qucik XXXX" >/var/run/isakmpd.fifo
~~~
*Note générale : attention, il peut y avoir un délai dans l'exécution des commandes.*
## FAQ
Que veulent dire les messages suivants ?
~~~
isakmpd[7864]: dpd_handle_notify: bad R_U_THERE seqno 551411465 <= 2374875689
~~~
C'est un message relatif au DPD (Dead peer detection) qui est un mécanisme pour détecter des éventuels soucis avec VPN.
Voir <http://www.juniper.net/techpubs/software/erx/junose61/swconfig-routing-vol1/html/ipsec-config4.html#1329479>
~~~
isakmpd[7864]: attribute_unacceptable: AUTHENTICATION_METHOD: got PRE_SHARED, expected RSA_SIG
isakmpd[7864]: message_negotiate_sa: no compatible proposal found
isakmpd[7864]: dropped message from 192.0.2.1 port 500 due to notification type NO_PROPOSAL_CHOSEN
~~~
Il s'agit d'un routeur VPN distant qui essaye de se connecter, mais n'a pas de configuration correspondante.
Cela peut se produire typiquement si son adresse IP change, et qu'elle n'est plus présente dans la configuration d'ISAKMPD.
~~~
isakmpd[10418]: isakmpd: phase 1 done (as responder): initiator id 192.0.2.1, responder id 1.2.3.4, src: 1.2.3.4 dst: 192.0.2.1
isakmpd[10418]: dropped message from 192.0.2.1 port 500 due to notification type INVALID_ID_INFORMATION
isakmpd[10418]: message_validate_notify: protocol not supported
~~~
Cela signifie a priori que la configuration en face à un réseau "remote" incorrect (soit complètement faux, soit pas sous la forme ADRESSE RÉSEAU / MASQUE)
Voir <http://www.thegreenbow.com/support_flow.html?page=12105C&lang=fr>