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, 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 façon transparente et utiliser votre environnement de développement intégré (IDE) local préféré pour modifier du code sur Replit, améliorant la collaboration et la productivité dans votre flux de développement. La fonctionnalité SSH est disponible pour les plans Core, Pro et tous les autres plans payants. Voici un aperçu du processus :
  • Générer une paire de clés SSH sur votre machine locale
  • Ajouter cette clé SSH au panneau SSH dans toute application Replit
  • Se connecter via un client SSH ou un éditeur pouvant fonctionner via SSH (comme VSCode ou Cursor)
Les clés SSH sont associées à votre compte, pas à 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 à toute application Replit à laquelle vous avez accès.

Pourquoi utiliser SSH ?

  • Mises à jour automatiques entre l’application Replit et l’éditeur : Toute modification apportée dans l’application Replit est immédiatement reflétée dans votre éditeur, et toute modification dans l’éditeur est mise à 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, quelle que soit l’origine des modifications.
  • Gestion des dossiers et déplacement de fichiers : Le déplacement de fichiers entre dossiers est également synchronisé entre vos éditeurs et l’application Replit. Cela garantit que les changements organisationnels effectués dans un environnement sont reflétés avec précision 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, c’est normal, 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 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à. Sinon, elle crée une nouvelle clé SSH avec des paramètres raisonnables.

Obtenir le contenu de votre clé publique

Une fois que vous avez confirmé avoir une paire de clés ou en avoir créé une, affichez le contenu de la clé publique (l’un des deux fichiers portant des noms similaires, 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 popup, entrez un Libellé pour votre clé (par ex. ma-clé-ssh) et collez la clé publique que vous avez copiée dans la section Clé. Sélectionnez le bouton Ajouter la clé SSH. Votre clé a été ajoutée et autorisée.
Boîte de dialogue d'ajout de 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 les 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ées et publiques pour votre configuration SSH.

Se connecter à votre application Replit

Configurer votre config 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 montrant 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 vous êtes invité par un avertissement d’application externe, sélectionnez Oui pour confirmer que vous souhaitez ouvrir votre projet dans votre éditeur préféré ou VS Code.
  3. Vous pourriez être invité à installer ou mettre à jour des extensions SSH périodiquement. Replit s’efforcera d’être compatible avec les dernières versions de ces IDE, et vous pourriez également recevoir des mises à jour de sécurité importantes.

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 de collecter des informations de connexion « détaillées » 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_hôte>.<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.