Documentation de Shellvana
Shellvana est un client SSH pour téléphone. Il se connecte à vos propres serveurs en SSH standard et affiche la sortie sous forme de texte lisible. Cette page couvre l'installation et l'usage au quotidien.
Ce qu'il vous faut
- Un téléphone. Un iPhone sous iOS 15 ou plus récent, ou un téléphone Android.
- Un hôte qui exécute un
sshdstandard. Toute machine Linux, BSD ou macOS que vous pouvez déjà joindre avecsshconvient. Il n'y a rien à installer sur le serveur : ni agent, ni démon, ni plugin. - Un chemin réseau jusqu'à cet hôte. Shellvana se connecte directement depuis votre téléphone à l'adresse que vous saisissez. Si l'hôte n'est joignable que depuis votre réseau local, passez d'abord par votre propre VPN (WireGuard, Tailscale ou équivalent). Shellvana n'a ni relais ni service cloud entre vous et le serveur.
Installation
Récupérez Shellvana sur l'App Store ou sur Google Play. L'app est gratuite. Il n'y a aucun compte à créer et rien à quoi se connecter.
Ajouter un hôte
- Dans la liste des hôtes, touchez + pour ouvrir Add host (ajouter un hôte).
- Renseignez Name (nom, au choix), Host (adresse ou nom d'hôte), Port (en général 22) et User (utilisateur).
- Sous Auth (authentification), choisissez Password (mot de passe) ou l'une de vos clés SSH. Si vous n'avez pas encore de clé, la liste ne propose que Password. Voir Clés SSH.
- Sous Grid (grille), choisissez la taille de terminal que Shellvana demande au serveur. Console fait 132 colonnes sur 40 lignes et convient au travail ordinaire dans un shell. AI agent (agent IA) fait 60 colonnes sur 40 lignes et convient aux assistants plein écran qui dessinent une barre latérale. Custom (personnalisé) vous laisse fixer vous-même Cols (colonnes) et Rows (lignes).
- Touchez Save (enregistrer), puis touchez l'hôte pour vous connecter.
Première connexion et clés d'hôte
À la première connexion, Shellvana affiche l'algorithme de clé d'hôte et l'empreinte du serveur, puis demande Trust this host? (faire confiance à cet hôte ?). Comparez l'empreinte avec celle du serveur, par exemple avec ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub, puis touchez Trust (faire confiance).
Shellvana retient cette clé. Si le serveur présente un jour une clé différente, vous voyez l'avertissement HOST KEY CHANGED (clé d'hôte modifiée) avec l'ancienne et la nouvelle empreinte, et la session ne s'ouvre pas tant que vous n'avez pas saisi le nom de l'hôte pour accepter la nouvelle clé. Si vous n'avez pas réinstallé le serveur ni changé ses clés, ne l'acceptez pas.
Les algorithmes de clé d'hôte faibles ou obsolètes sont refusés. Si vous voyez « Host key algorithm ... is not allowed », activez sur le serveur une clé d'hôte moderne, comme Ed25519.
Lire une session
- Vue de lecture. Toute session s'ouvre dans la vue de lecture. Le texte rédigé et le Markdown sont remis en page en caractères proportionnels adaptés à un téléphone. Les tableaux, les diffs, les arborescences et tout ce qui est aligné en colonnes restent en chasse fixe, avec leur espacement exact.
- Vue terminal. Touchez l'icône du terminal dans la barre du haut pour voir la grille exacte envoyée par le serveur. Touchez l'icône de lecture pour revenir. Les deux vues montrent la même session, donc vous ne perdez rien en changeant de vue.
- Police et taille de lecture. Touchez l'icône Reading font (police de lecture) dans la barre du haut pour changer la police et la taille de lecture.
- Programmes plein écran. Des programmes comme
vim,htopettmuxfonctionnent normalement. Quand l'un d'eux prend tout l'écran, Shellvana vous indique que son affichage a besoin de la grille et propose un bouton Grid (grille). - Liens. Un lien dans la sortie ne s'ouvre qu'après votre confirmation de sa destination, et il s'ouvre dans votre propre navigateur, hors de l'app.
Saisir des commandes
- Tapez dans la zone de saisie en bas (Type a command, saisir une commande) et touchez le bouton d'envoi.
- La rangée de touches au-dessus de la zone de saisie envoie les touches qui manquent à un clavier de téléphone, comme Ctrl-C, Tab, Échap, les flèches, Ctrl-D et Ctrl-Z.
- Quand la sortie ressemble à une invite de mot de passe, Shellvana propose Secure input (saisie sécurisée). Le texte saisi ainsi est envoyé au serveur, mais il n'est pas stocké et n'entre pas dans la transcription.
Clés SSH
Ouvrez le menu (trois points) de la liste des hôtes et choisissez SSH keys (clés SSH).
- Importer une clé. Touchez Import (importer), collez une clé privée OpenSSH et saisissez sa phrase secrète si elle en a une. La clé est stockée chiffrée sur l'appareil.
- Générer une clé matérielle (Pro). Generate secure key (générer une clé sécurisée) crée une clé à l'intérieur du matériel sécurisé du téléphone : le Secure Enclave sur iPhone, ou le StrongBox ou le Keystore adossé au matériel sur Android. La moitié privée ne peut pas quitter l'appareil. Ces clés sont de type ECDSA P-256, ce qui apparaît côté serveur sous la forme
ecdsa-sha2-nistp256. - Installer la clé publique sur le serveur. Ouvrez le menu de la clé, choisissez Copy public key (copier la clé publique) et ajoutez cette ligne à
~/.ssh/authorized_keyspour votre utilisateur sur le serveur. La première fois, connectez-vous avec un mot de passe pour le faire. - Utiliser la clé. Modifiez l'hôte et, sous Auth, choisissez la clé à la place de Password.
Garder vos tâches en vie malgré les déconnexions
Un téléphone coupe les connexions : l'écran se verrouille, le réseau change, l'app passe en arrière-plan. Quand Shellvana se reconnecte, le serveur vous donne un nouveau shell. Tout ce qui tournait dans l'ancien shell a disparu, sauf si cela tournait sous un multiplexeur de terminal.
Pour tout ce qui dure longtemps, lancez-le dans tmux ou screen sur le serveur. Par exemple, exécutez tmux new -A -s main après la connexion. Si la connexion tombe, reconnectez-vous et relancez la même commande pour reprendre où vous en étiez.
Réglages de sécurité par hôte
- Exiger le déverrouillage pour se connecter. Désactivé par défaut. Quand vous l'activez pour un hôte, Shellvana demande votre empreinte digitale, votre visage ou le verrouillage d'écran avant d'y ouvrir une session.
- Bloquer les captures d'écran. Activé par défaut. Les captures d'écran et l'aperçu d'une session dans le sélecteur d'applications sont bloqués. Vous pouvez le désactiver hôte par hôte.
- Se connecter en incognito (Pro). Dans le menu d'un hôte, cette option ouvre une session qui n'écrit aucune transcription.
Historique et vos données
- Les transcriptions de session sont enregistrées uniquement sur le téléphone, chiffrées avec SQLCipher. Les transcriptions de plus de 30 jours se suppriment d'elles-mêmes.
- Pour supprimer les transcriptions enregistrées d'un hôte, ouvrez le menu de cet hôte et choisissez Clear this host's history (effacer l'historique de cet hôte). Pour tout supprimer, ouvrez le menu principal et choisissez Clear all history (tout effacer).
- Supprimer un hôte le retire de la liste, mais conserve ses transcriptions enregistrées et sa clé d'hôte approuvée. Effacez d'abord l'historique si vous voulez aussi les supprimer.
- Shellvana n'a ni compte, ni analyse d'usage, ni rapport de plantage. La politique de confidentialité liste chaque connexion réseau que l'app établit.
Gratuit et Pro
- Gratuit. Une session active, l'authentification par mot de passe et par clé, les profils d'hôte et le rendu lisible complet. La lisibilité n'est pas la partie payante.
- Pro. Un seul achat, une fois pour toutes, sans abonnement. Il ajoute jusqu'à quatre sessions simultanées, l'authentification par clé matérielle, toutes les polices de lecture et les sessions incognito.
- Acheter ou restaurer. Ouvrez le menu de la liste des hôtes et choisissez Shellvana Pro. Sur un nouveau téléphone, touchez Restore purchase (restaurer l'achat) sur cette feuille.
Dépannage
- La connexion expire. Vérifiez que le téléphone peut joindre l'hôte. Si l'hôte est sur un réseau privé, activez d'abord votre VPN et vérifiez que le port correspond à celui sur lequel
sshdécoute. - La clé est refusée. Vérifiez que la clé publique obtenue avec Copy public key tient sur une seule ligne dans
~/.ssh/authorized_keys, pour le même utilisateur que celui du profil d'hôte, et que le serveur accepte ce type de clé. - L'affichage d'un programme est de travers dans la vue de lecture. Passez à la vue terminal. Les programmes plein écran sont dessinés pour une grille, et la grille est toujours la sortie exacte.
- Un assistant plein écran est coupé. Modifiez l'hôte, réglez Grid sur AI agent, puis reconnectez-vous.
- Le message « No previous purchase found. » (aucun achat antérieur trouvé). Vérifiez que le téléphone est connecté au même compte App Store ou Google Play que celui qui a servi à acheter Pro, puis réessayez Restore purchase.
Obtenir de l'aide
Écrivez à [email protected] en indiquant le modèle de votre appareil et votre version d'iOS ou d'Android, ou consultez la page d'assistance.