Envoyer un fichier à quelqu'un à travers les réseaux avec la CLI Relayium
Dernière mise à jour: 2026-08-07
Parfois l'autre machine n'est pas la vôtre et vous ne pouvez pas vous y connecter en SSH — un fichier pour un collègue dans un autre bureau, un build pour un client, une archive pour un ami à l'autre bout du pays. relayium send et receive le déplacent directement entre vous deux à travers les réseaux, en utilisant seulement un court code d'appairage que votre CLI génère au moment de l'envoi.
La connexion est pair-à-pair et chiffrée de bout en bout. Seule une minuscule poignée de main de rendez-vous passe par Relayium pour présenter les deux extrémités ; les octets du fichier, eux, jamais.
Avant de commencer
Tout ci-dessous passe par la CLI relayium, alors installez-la d'abord si ce n'est pas fait. Sous macOS ou Linux, une commande place un binaire précompilé dans votre PATH :
curl -fsSL https://relayium.com/install.sh | sh
- Vous préférez choisir le fichier vous-même, ou sous Windows ? Récupérez un binaire depuis la page des releases — relayium.com/cli liste toutes les options (avec Go, go build -o relayium ./cmd/relayium).
- relayium --version confirme l'installation. Sans cela, les commandes ci-dessous affichent seulement « command not found ».
Faire send, puis transmettre le code affiché
Ce qu'il vous faut
- La CLI sur les deux machines. relayium version affiche un numéro de version sur chacune. Si le shell répond « command not found », elle n'y est pas encore installée.
- Un expéditeur connecté. relayium whoami affiche l'adresse e-mail du compte, et générer un code d'appairage exige d'abord relayium login. La machine réceptrice ne se connecte jamais.
- Vous deux devant un terminal au même moment. Le code vit cinq minutes, alors convenez de l'instant avant d'en générer un.
- Un moyen de dicter six chiffres hors bande — un appel, une fenêtre de chat, ou la pièce où vous vous trouvez tous les deux.
Connectez-vous une fois avec relayium login, puis contentez-vous de faire send. La CLI génère un code d'appairage, l'affiche avec la commande exacte que l'autre extrémité doit exécuter, et attend. Transmettez ce code hors bande — dites-le au téléphone, glissez-le dans un chat :
Sur la machine émettrice, connectez-vous une seule fois. Passez cette étape si relayium whoami affiche déjà l'adresse de votre compte.
relayium loginDepuis le répertoire qui contient le fichier, lancez l'envoi. La CLI génère le code, affiche la commande destinée à l'autre extrémité, puis attend.
relayium send ./release.zipDictez hors bande les six chiffres affichés. Ils cessent de fonctionner cinq minutes après leur génération.
Sur la machine réceptrice, dans le répertoire où les fichiers doivent arriver, lancez la commande affichée à l'expéditeur. Ajoutez un répertoire pour les déposer ailleurs.
relayium receive 483920relayium receive 483920 ./downloadsLaissez les deux terminaux ouverts jusqu'à ce que le shell récepteur revienne à son invite. C'est une seule session en direct, et fermer une extrémité arrête le transfert.
À quoi ressemble une exécution réussie
L'expéditeur affiche d'abord le bloc de passation et attend, puis un code de vérification et le chemin obtenu. Les deux terminaux montrent le même code de vérification, et tous deux se terminent par 0.
# côté EXPÉDITEUR
Code: 483920 (valid 5 minutes)
On the other machine: relayium receive 483920
not installed there? curl -fsSL https://relayium.com/install.sh | sh
waiting for the receiver…
verification code (SAS): 271044 — not the pairing code; compare it on both ends to rule out a substituted endpoint
path: direct- Le code fait 6 chiffres décimaux — n'importe lequel de 0 à 9, zéros initiaux compris — et il expire 5 minutes après sa génération.
- Le code n'est qu'un secret partagé pour se retrouver ; il n'est envoyé à personne d'autre qu'au point de rendez-vous, et il ne sert qu'à présenter les deux extrémités.
- Les deux extrémités doivent être la CLI — un navigateur ne peut pas rejoindre un code d'appairage CLI. Vous envoyez à quelqu'un qui n'a qu'un navigateur ? Utilisez plutôt relayium up, qui vous donne un lien de téléchargement.
Vérifier avec le code SAS
Quand les deux extrémités se connectent, les deux terminaux affichent le même SAS (short authentication string) à 6 chiffres, dérivé des empreintes des certificats TLS épinglés. Comparez-le hors bande — lisez-le à voix haute pendant l'appel — pour confirmer que les empreintes n'ont pas été substituées et que le service de rendez-vous n'a usurpé aucune extrémité. Le SAS authentifie les extrémités ; il ne prouve pas chaque saut réseau.
Pour la protection la plus forte, ajoutez --verify : le transfert attend alors que vous confirmiez que les codes correspondent avant qu'un seul octet ne bouge.
relayium send --verify ./release.zip
Direct uniquement — gratuit, sinon ça échoue
Le transfert tente d'établir en priorité une connexion directe entre les deux extrémités. Quand elle peut être établie — le cas courant dès qu'au moins un côté a une adresse joignable —, le fichier passe tout droit, chiffré, à pleine vitesse et sans frais.
Les commandes send/receive et text du CLI Relayium sont P2P et direct-only : aucun octet de fichier ou de message ne transite par TURN ni par un autre serveur Relayium. Si les deux extrémités ne peuvent pas établir de connexion directe, la session échoue au lieu de se rabattre sur un relais.
Si cela vous arrive, la réponse fiable est le daemon-direct entre deux serveurs joignables, le push via SSH ou un lien stocké créé avec relayium up.
- Connexion directe réussie → gratuit, pleine vitesse, chiffré de bout en bout.
- Les deux extrémités peuvent être n'importe où géographiquement — l'expéditeur lance simplement send, et le destinataire lance receive avec le code affiché.
Quand ça ne marche pas
Quatre pannes couvrent presque toutes les tentatives ratées. Chacune a une ligne à lire ou une commande à lancer qui la tranche, donc vous n'avez jamais à deviner quelle extrémité est en cause.
Symptôme, vérification, correction
- L'expéditeur refuse de démarrer : « minting a pairing code needs an account ».
relayium whoami # not logged in (run `relayium login`)Cette machine n'a aucune information d'identification enregistrée. Lancez relayium login et approuvez dans le navigateur. Ensuite whoami affiche l'adresse du compte et l'envoi passe. Rien n'avait été généré, donc aucun code n'a été gaspillé.
- Le destinataire saisit le code et le point de rendez-vous le refuse.
# côté EXPÉDITEUR — le bloc de passation indique la durée de vie exacte relayium send ./release.zip Code: 483920 (valid 5 minutes)Le code a expiré. Faites Ctrl-C côté expéditeur, relancez relayium send ./release.zip, puis dictez les six nouveaux chiffres dans les cinq minutes qu'annonce le nouveau bloc de passation.
- Les deux terminaux affichent des codes de vérification différents.
relayium send --verify ./release.zipArrêtez-vous et n'envoyez pas le fichier. Des codes différents signifient que les empreintes des certificats épinglées par les deux extrémités ne concordent pas, donc que l'autre bout n'est pas la machine que vous croyez. Relancez avec --verify, qui bloque le transfert à cette comparaison jusqu'à votre confirmation, et vérifiez avec la personne en face sur quelle machine elle se trouve.
- « no direct connection to the peer (both ends behind strict NAT?) ».
relayium send ./release.zip # no direct connection to the peer (both ends behind strict NAT?): …Aucune des deux extrémités n'a pu atteindre l'autre, et la CLI n'a, par conception, aucune voie de relais pour les octets d'un fichier. Déplacez une extrémité vers un réseau doté d'une adresse joignable — un serveur, ou un partage de connexion mobile — ou téléversez le fichier avec relayium up et transmettez plutôt le lien de téléchargement.
Questions fréquentes
D'où vient le code d'appairage ?
C'est Relayium qui le génère. Lancez relayium send ./release.zip (après relayium login) et la CLI affiche un code de 6 chiffres valable cinq minutes, ainsi que la commande exacte que l'autre extrémité doit exécuter. Vous ne pouvez pas le choisir vous-même — le serveur n'accepte que les codes qu'il a émis.
Le fichier est-il envoyé quelque part ?
Non. Le fichier circule directement entre vous deux, chiffré de bout en bout. Seule une petite poignée de main de rendez-vous passe par Relayium pour présenter les extrémités — jamais le fichier.
Que se passe-t-il si nous ne pouvons pas nous connecter ?
Si les deux extrémités sont derrière un NAT strict sans adresse joignable, la connexion directe ne peut pas être établie et le transfert échoue — la CLI n'a volontairement aucun repli par relais. Utilisez le daemon-direct entre deux serveurs joignables, ou le push via SSH, quand aucun chemin direct n'est disponible.
Comment savoir que c'est vraiment la bonne personne en face ?
Les deux terminaux affichent un code SAS identique à 6 chiffres dérivé des empreintes des certificats TLS épinglés. Comparez-le hors bande ; une concordance confirme que les empreintes n'ont pas été substituées et que le service de rendez-vous n'a usurpé aucune extrémité. Il authentifie les extrémités, pas chaque saut réseau. Ajoutez --verify pour exiger cette confirmation avant qu'aucun octet ne bouge.
Envoyez votre prochain fichier directement à quelqu'un sur un autre réseau — chiffré de bout en bout, et gratuit.
Obtenir la CLI