Configuration du tunnel https

Installation et configuration du mode tunnel HTTPS pour WisperConnect

Cette documentation décrit l'installation et la configuration du mode tunnel HTTPS pour WisperConnect.

Ce mode permet la tunnelisation WireGuard par TCP. Il est utilisé comme une connexion de secours dans le cas où le poste de travail n'arrive pas à établir une connexion UDP.

Modes de configuration

Il existe deux modes de configuration du mode HTTPS :

  1. Configuration automatique avec domaine Wisper (recommandé)
  2. Configuration manuelle avec un domaine personnalisé

Configuration automatique avec domaine Wisper

Prérequis

  • Ports requis :

    • Le port 80/tcp doit être ouvert à destination du serveur WisperConnect pour permettre la configuration du certificat HTTPS via Let's Encrypt.
    • Le port 443/udp doit être ouvert à destination du serveur WisperConnect pour permettre la connexion du tunnel via HTTPS.
  • Version de WisperConnect :

    • La version doit être égale ou supérieur à V2.1.0.
  • Paquets nécessaires :

    • nginx (serveur HTTP)
    • certbot (gestion du certificat HTTPS via Let's Encrypt)

Étapes de configuration

  1. Installation des paquets nécessaires :

    apt install -y letsencrypt nginx
  2. Lancement de la configuration automatique :
    Exécutez la commande suivante :

    wisperconnect.sh configure-https

    Puis, suivez les indications affichées à l'écran.


  3. Création du sous-domaine :
    Le script configure automatiquement un sous-domaine Nginx composé de l'ID du site, du nom de la passerelle et du domaine de gestion Wisper. Le certificat Let's Encrypt est généré et associé à ce sous-domaine.

    ⚠️

    Le certificat Let's Encrypt est valide pendant 3 mois et sera automatiquement renouvelé par Certbot.

  4. Vérification :

    • Ouvrez un navigateur internet et accédez à l'URL indiquée dans les instructions (Creating a nginx subdomain)


📘

Pour plus d'informations sur Let's Encrypt, visitez leur site officiel : https://letsencrypt.org/


Configuration manuelle avec un domaine personnalisé (mode avancé)

Prérequis

  • Ports requis :

    • Le port 443/udp doit être ouvert à destination du serveur WisperConnect.
  • Version de WisperConnect :

    • La version doit être égale ou supérieur à V2.1.0.
  • Paquets nécessaires :

    • nginx (serveur HTTP)
  • Nom de domaine :

    • Un domaine personnalisé doit pointer vers l'IP du serveur WisperConnect. Exemple d'entrée DNS :
      wisperconnect-rouen.wisper.io      A      13.25.25.47

Étapes de configuration

  1. Installation de Nginx :

    apt install -y nginx
  2. Gestion des certificats SSL :

    • Obtenez un certificat SSL signé par une autorité de certification reconnue.
    • Déposez les fichiers du certificat (clé publique et clé privée) dans un dossier de votre choix, par exemple :
      /etc/nginx/ssl

  1. Création du fichier de configuration Nginx :

    • Créez un fichier de configuration pour le sous-domaine. Par exemple :
      vi /etc/nginx/sites-available/wisperconnect-rouen.wisper.io.conf

    Exemple de contenu :

    server {
        listen 443 ssl;
        server_tokens off;
        server_name wisperconnect-rouen.wisper.io;
        access_log /var/log/nginx/wisperconnect-rouen.wisper.io.log;
        error_log /var/log/nginx/wisperconnect-rouen.wisper.io.error.log;
    
        location / {
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $host;
            proxy_pass http://127.0.0.1:8099;
        }
    
        ssl_certificate /etc/nginx/ssl/wisperconnect-rouen.wisper.io.cert;
        ssl_certificate_key /etc/nginx/ssl/wisperconnect-rouen.wisper.io.key;
    }

    Options du fichier de configuration :

    OptionDescription
    server_nameSous-domaine d'accès au serveur HTTPS
    access_logChemin d'accès aux logs Nginx
    error_logChemin des logs d'erreurs Nginx
    ssl_certificateChemin vers le certificat SSL (clé publique)
    ssl_certificate_keyChemin vers la clé privée du certificat SSL
    proxy_passhttp://127.0.0.1:8099 : Proxy vers le service R1R2
  2. Activation de la configuration Nginx :

    ln -s /etc/nginx/sites-available/wisperconnect-rouen.wisper.io.conf /etc/nginx/sites-enabled/
  3. Redémarrage de Nginx :

    systemctl restart nginx
  4. Vérification du service :

    • Assurez-vous que Nginx est bien démarré :

      systemctl status nginx

    • Activez le démarrage automatique de Nginx au lancement du serveur :

      systemctl enable nginx
  5. Vérification de l'accès :

    • Ouvrez un navigateur et accédez à votre domaine (exemple : https://wisperconnect-rouen.wisper.io).

  6. Communication à Wisper :

    • Fournissez à votre interlocuteur Wisper le domaine configuré et une capture d'écran de la commande suivante :

      wisperconnect.sh get-info


Cette documentation couvre les deux modes de configuration du mode tunnel HTTPS pour WisperConnect. Si vous rencontrez des difficultés, n'hésitez pas à contacter le support Wisper.