VPN IKEv2 avec certificat Let's Encrypt

Bonjour,

J’essaie de configurer un serveur VPN IKEv2 pour permettre aux utilisateurs de se connecter à distance à mon LAN, mais j’ai des problèmes avec les clients qui n’acceptent pas les certificats.

J’ai réussi à mettre en place un VPN en utilisant des certificats auto-signés, en installant manuellement la CA racine sur chaque client, mais je souhaite utiliser des certificats Let’s Encrypt pour pouvoir me connecter sans avoir à distribuer le certificat à chaque client. J’ai essayé de générer le certificat directement dans RouterOS en utilisant la commande

/certificate enable-ssl-certificate dns-name=vpn.xxxxxxx.it

mais le certificat n’est pas reconnu par le client. J’ai aussi essayé de le générer sur une autre machine avec le client acme.sh (https://github.com/acmesh-official/acme.sh), mais sans succès non plus.

./acme.sh --issue --standalone -d vpn.xxxxxx.it --keylength ec-384 --server letsencrypt

En essayant de me connecter avec un client Windows, je reçois simplement une erreur “les identifiants IKE sont inacceptables”, tandis qu’en utilisant un client Ubuntu avec Strongswan, j’ai les journaux suivants:

2024-07-12T18:04:48.423503+02:00 xxxxxxx charon-nm: 03[ENC] analysé la réponse IKE_AUTH 1 [ IDr AUTH CERT EAP/REQ/ID ]
2024-07-12T18:04:48.423549+02:00 xxxxxxx charon-nm: 03[IKE] certificat de fin d’entité reçu “CN=vpn.xxxxxxx.it”
2024-07-12T18:04:48.479695+02:00 xxxxxxx charon-nm: 03[CFG] utilisation du certificat “CN=vpn.xxxxxxx.it”
2024-07-12T18:04:48.514531+02:00 xxxxxxx charon-nm: 03[CFG] certificat de l’émetteur introuvable pour “CN=vpn.xxxxxxx.it”
2024-07-12T18:04:48.514745+02:00 xxxxxxx charon-nm: 03[CFG] l’émetteur est “C=US, O=Let’s Encrypt, CN=R11”
2024-07-12T18:04:48.518575+02:00 xxxxxxx charon-nm: 03[IKE] aucune clé publique RSA de confiance trouvée pour ‘CN=vpn.xxxxxxx.it’
2024-07-12T18:04:48.518644+02:00 xxxxxxx charon-nm: 03[ENC] génération d’une requête INFORMATIONAL 2 [ N(AUTH_FAILED) ]

Voici ma configuration IPSec

/ip ipsec mode-config
add address-pool=IKEv2_pool address-prefix-length=32 nom=ike2
/ip ipsec policy group
add nom=ike2-group
/ip ipsec profile
add enc-algorithm=aes-256,3des hash-algorithm=sha256 nom=ike2
/ip ipsec peer
add exchange-mode=ike2 nom=ike2-peer passive=yes profile=ike2
/ip ipsec proposal
add auth-algorithms=sha256,sha1 enc-algorithms=aes-256-cbc nom=ike2-prop \
pfs-group=none
/ip ipsec identity
add auth-method=eap-radius certificat=\
letsencrypt-autogen_2024-07-12T03:09:26Z generate-policy=port-strict \
mode-config=ike2 peer=ike2-peer policy-template-group=ike2-group
/ip ipsec policy
add group=ike2-group proposal=ike2-prop template=yes

Quelqu’un a-t-il déjà rencontré des expériences similaires ? Des conseils pour résoudre ce problème ?

Merci

L’entrée d’identification peut contenir plusieurs certificats
Téléchargez le certificat intermédiaire de Let’s Encrypt sur le tik et ajoutez-le à l’entrée d’identification
Je ne me souviens pas si c’était avant ou après le certificat LE du tik, mais essayez ça.

J’espère que cela aidera