Passer au contenu principal

Documentation Index

Fetch the complete documentation index at: https://docs.replit.com/llms.txt

Use this file to discover all available pages before exploring further.

Qu’est-ce que SSH ?

SSH, qui signifie Secure Shell (shell sécurisé), est un protocole sécurisé qui facilite l’accès distant à l’interface en ligne de commande de votre application Replit. Avec SSH, vous pouvez transférer des fichiers de manière transparente et utiliser votre environnement de développement intégré (IDE) local préféré pour modifier du code sur Replit, améliorant ainsi la collaboration et la productivité dans votre flux de travail de développement. La fonctionnalité SSH est disponible pour les abonnements Core, Pro et tous les autres abonnements payants. Voici un aperçu du processus :
  • Générez une paire de clés SSH sur votre machine locale
  • Ajoutez cette clé SSH dans le panneau SSH de n’importe quelle application Replit
  • Connectez-vous à l’aide d’un client SSH ou d’un éditeur capable de fonctionner via SSH (comme VSCode ou Cursor)
Les clés SSH sont associées à votre compte, et non à une application Replit particulière. Cela signifie que vous n’avez besoin d’ajouter une clé publique qu’une seule fois, après quoi vous pouvez vous connecter à n’importe quelle application Replit à laquelle vous avez accès.

Pourquoi utiliser SSH ?

  • Mises à jour automatiques entre l’application Replit et l’éditeur : Toutes les modifications apportées dans l’application Replit sont immédiatement reflétées dans votre éditeur, et toutes les modifications dans l’éditeur sont mises à jour dans l’application Replit. Cette synchronisation transparente garantit que votre base de code est toujours à jour sur toutes les plateformes.
  • Synchronisation de la gestion des fichiers : Que vous ajoutiez, supprimiez ou mettiez à jour des fichiers, ces modifications sont synchronisées en temps réel entre votre éditeur et l’application Replit. Cette fonctionnalité garantit que la structure de votre projet reste cohérente, quel que soit l’endroit où les modifications sont initiées.
  • Gestion des dossiers et déplacement des fichiers : Le déplacement de fichiers entre les dossiers est également synchronisé entre vos éditeurs et l’application Replit. Cela garantit que les modifications organisationnelles effectuées dans un environnement sont fidèlement reflétées dans l’autre, maintenant l’intégrité et la structure de votre projet.

Trouver ou créer une paire de clés

Pour configurer SSH pour votre compte, vous aurez besoin de votre clé publique SSH.

Vérifier si vous avez déjà une paire de clés

Vous pouvez vérifier si vous avez déjà une clé publique en exécutant la commande suivante dans un Terminal sur votre ordinateur local :
ls -l ~/.ssh
Si vous obtenez une erreur, pas de problème, passez à Générer une nouvelle paire de clés. Si vous voyez un fichier appelé replit.pub, passez à Obtenir le contenu de votre clé publique.

Générer une nouvelle paire de clés

Sur votre machine, ouvrez une fenêtre de Terminal (ou Invite de commandes) et collez la commande suivante :
ssh-keygen -t ed25519 -f ~/.ssh/replit -q -N ""
Cette commande vérifie si un fichier de clé publique SSH spécifique existe déjà. Si ce n’est pas le cas, elle crée une nouvelle clé SSH avec des paramètres sensibles.

Obtenir le contenu de votre clé publique

Une fois que vous avez confirmé que vous avez une paire de clés ou que vous en avez créé une, affichez le contenu de la clé publique (l’un des deux fichiers de nom similaire, avec le suffixe .pub), car nous en aurons besoin plus tard.
cat ~/.ssh/replit.pub
Sauvegardez le contenu de replit.pub pour l’utiliser plus tard dans cet article et passez à ajouter la clé SSH à votre compte.

Ajouter la clé SSH à votre compte

Ajouter la clé publique directement dans une application Replit, via le panneau SSH

  1. Dans votre application Replit sur n’importe quelle fenêtre, sélectionnez le bouton +, puis recherchez SSH.
Bouton de l'outil SSH dans l'interface Replit
  1. Accédez à l’onglet Clés et sélectionnez Nouvelle clé SSH.
  2. Dans la fenêtre contextuelle, entrez un Libellé pour votre clé (par exemple, ma-cle-ssh) et collez la clé publique que vous avez copiée dans la section Clé. Sélectionnez le bouton Ajouter une clé SSH. Votre clé a été ajoutée et autorisée.
Boîte de dialogue Ajouter une clé SSH avec les champs libellé et clé remplis

Ajouter la clé publique directement dans les Paramètres

Vous pouvez également ajouter une clé SSH en ouvrant Paramètres et, sous Compte, en sélectionnant Avancé (ou l’option Clés SSH). Sélectionnez Ajouter une clé SSH et collez le contenu de replit.pub de la section précédente, Trouver ou créer une paire de clés.
Lorsque vous avez plusieurs clés publiques sur votre machine, il est important de vous assurer que vous utilisez la bonne combinaison de clés privée et publique pour votre configuration SSH.

Connexion à votre application Replit

Configurer votre fichier de configuration SSH

  1. Dans un terminal, assurez-vous que le répertoire ~/.ssh et le fichier ~/.ssh/config existent :
mkdir -p ~/.ssh && chmod 700 ~/.ssh && touch ~/.ssh/config && chmod 600 ~/.ssh/config
open -a 'TextEdit' ~/.ssh/config || nano ~/.ssh/config
  1. Ajoutez un bloc de configuration pour utiliser la paire de clés replit pour tous les domaines *.replit.dev :
Host *.replit.dev
    Port 22
    IdentityFile ~/.ssh/replit
    StrictHostKeyChecking accept-new

Se connecter depuis VSCode ou Cursor

  1. Depuis une application Replit, ouvrez le panneau SSH
  2. Dans le panneau SSH, accédez à l’onglet Connexion et sélectionnez Lancer VS Code.
Onglet de connexion SSH affichant l'option Lancer VS Code
  1. Si vous êtes invité à remplir ~/.ssh/config, entrez ce qui suit :
    Host *.replit.dev
        Port 22
        IdentityFile ~/.ssh/replit
        StrictHostKeyChecking accept-new
    
    L’ajout de la configuration SSH n’est demandé que la première fois que vous essayez de vous connecter à VS Code ou à un autre éditeur. Pour revenir au fichier de configuration, vous devrez sélectionner Configurer les hôtes SSH….
  2. Si une fenêtre d’avertissement d’application externe apparaît, sélectionnez Oui pour confirmer que vous souhaitez ouvrir votre projet dans votre éditeur préféré ou dans VS Code.
  3. Il peut vous être demandé d’installer ou de mettre à jour des extensions SSH périodiquement. Replit s’efforcera d’être compatible avec les dernières versions de ces IDE, et vous pourrez également recevoir d’importantes mises à jour de sécurité.

Se connecter manuellement

En bas de l’onglet « Connexion » du panneau SSH, vous trouverez « Se connecter manuellement ». Copiez cette commande, collez-la dans un Terminal local (Mac ou Linux) ou une Invite de commandes locale (Windows) pour vous connecter directement. C’est également un bon moyen de déboguer les problèmes de connexion avec les IDE, ainsi que pour collecter des informations de connexion « verbeux » précieuses lors du signalement de bugs au support Replit. Une erreur indiquant que nous essayons de nous connecter avec une clé privée inexistante :
$ ssh -i ~/.ssh/replit -p 22 c96b6ade-d5e4-4f7a-bc5b-52334509b2a3@c96b6ade-d5e4-4f7a-bc5b-52334509b2a3-00-16nh2hskw3ql8.riker.replit.dev
Warning: Identity file /Users/user/.ssh/replit not accessible: No such file or directory.
Journaux de débogage complets d’une tentative de connexion SSH, à inclure dans un rapport de bug :
$ ssh -vvv -i ~/.ssh/replit -p 22 c96b6ade-d5e4-4f7a-bc5b-52334509b2a3@c96b6ade-d5e4-4f7a-bc5b-52334509b2a3-00-16nh2hskw3ql8.riker.replit.dev
OpenSSH_9.6p1, LibreSSL 3.3.6
debug1: Reading configuration data /Users/.../.ssh/config
debug1: /Users/.../.ssh/config line 1: Applying options for *
debug1: /Users/.../.ssh/config line 4: Applying options for *.replit.dev
debug3: channel_clear_timeouts: clearing
debug1: Connecting to c96b6ade-d5e4-4f7a-bc5b-52334509b2a3-00-16nh2hskw3ql8.riker.replit.dev port 22.
debug1: Connection established.
debug1: identity file /Users/dstewart/.ssh/replit type 3
debug1: Local version string SSH-2.0-OpenSSH_9.6
debug1: Remote protocol version 2.0, remote software version Replit-SSH-Proxy
debug1: compat_banner: no match: Replit-SSH-Proxy
debug3: fd 5 is O_NONBLOCK
...
Welcome to the Replit SSH Proxy.

Visit https:/.replit.com/replit-workspace/ssh to learn more about SSH on Replit.
debug3: receive packet: type 51
debug1: Authentications that can continue: password,publickey
debug3: start over, passed a different list password,publickey
debug3: preferred publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
...
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password

Se connecter via un outil non listé ici

Il existe de nombreux clients SSH disponibles pour différentes plateformes et systèmes d’exploitation, offrant souvent différentes fonctionnalités ou intégrations. Vous pouvez toujours décomposer la commande affichée dans « Se connecter manuellement » en ses composants constitutifs pour déterminer comment configurer chaque client :
ssh -i ~/.ssh/replit -p 22  c96b6ade-d5e4-4f7a-bc5b-52334509b2a3@c96b6ade-d5e4-4f7a-bc5b-52334509b2a3-00-16nh2hskw3ql8.riker.replit.dev
       ^-----v-----^    ^^  ^-----------------v----------------^ ^------------------------------v-------------------------------------^
        Clé privée   Port                Utilisateur             @                           Nom d'hôte
Nom d’hôte : <votre_nom_dhote>.<cluster>.replit.dev Port : <numéro_de_port> Utilisateur : Nom d'utilisateur Clé privée : Chemin vers le fichier de clé privée sur votre ordinateur. Généralement à côté de replit.pub.