Skip to content

Signal Tools

Info

Prérequis

  • Configurer Signal

    Intérêts de la mesure et menaces qu'elle permet de tempérer

    Simplifier l'installation de Signal sur son ordinateur et sur sa clé Tails, lier plusieurs comptes sur le même appareil,

    Difficulté

    intermediaire

    Temps requis 20-30min

    Matériel requis

  • ordinateur sous Linux ou sur clef Tails

    Inconvénients

    Ce qu'on va faire dans ce tutoriel

  • installer l'outil Signal Tools pour automatiser la gestion de Signal

  • installer les outils Signal selon tes besoins
Attention

L'interface graphique n'est pas encore viable, donc il sera nécessaire d'utiliser un terminal

Signal Tools sur Debian, Ubuntu et Tails#

Signal Tools est un outil qui regroupe l'installation et la configuration de plusieurs outils autour de Signal pour faciliter son utilisation dans de nombreux cas d'usage

Lien Onion : http://wmj5kiic7b6kjplpbvwadnht2nh2qnkbnqtcv3dyvpqtz7ssbssftxid.onion/TheCodesUprising/signal-tools ).

Les outils pris en charge par cet utilitaire sont les suivants :

  • Signal Desktop : Application pour accéder à ses messages Signal sur son ordinateur
  • Signal CLI : Outil pour installer Signal sans avoir de smartphones
  • Additional Signal instances : Créer plusieurs instances de Signal sur le même ordi
  • Signal Captchas Handler : Pouvoir résoudre des captchas quand on a plusieurs instances de Signal sur son ordi

Les systèmes d'exploitation suivants sont actuellement compatibles avec le script :

Installation de Signal Tools#

Pré-requis sur Tails#

Mise à jour manuelle requise

Si tu as installé signal-tool avant le 17/12/2024, tu n'auras pas les prochaines mises à jour de l'outil ; écris la commande suivante dans un terminal avant de le réinstaller :

Bash
rm -rf /home/amnesia/Applications/signal-tools /live/persistence/TailsData_unlocked/dotfiles/Applications/signal-tools
Inconvénients de Signal sur Tails

Installer Signal Desktop sur Tails a plusieurs inconvénients :

  • Les appels audio et vidéo ne fonctionnent pas avec cette méthode (à cause de Tor)
  • La sécurité de Tails sera abaissée étant donné que le code de signal-cli et Signal Desktop n'est pas vérifié avec la même rigueur que le reste du code de Tails et Debian. Néanmoins, c'est du code open-source, lu et vérifié par de nombreuses personnes compétentes à travers le monde.
  1. Si l'ordinateur est allumé, le redémarrer
  2. Quand l'écran d'accueil apparaît, choisir la langue, déverrouiller la persistance, puis cliquer sur paramètres supplémentaires et définir un Mot de passe d'administration
  3. Cliquer sur démarrer Tails
  4. Se connecter à un réseau Wifi ou filaire
  5. Quand la fenêtre Connexion à Tor apparaît, se connecter à Tor
  6. (Optionnel) Pour plus de facilité, ouvrir ces instructions dans le navigateur Tor : https://tinyurl.com/signal-installation ou signal-tools.vado.li
  7. Ouvrir Applications→Tails→Stockage Persistent et vérifier que les options Dotfiles et Logiciels supplémentaires sont bien activées

Installation de l'application#

  1. Télécharge le script d'installation en cliquant ici (version Tor )
  2. Ouvrir le dossier 'Téléchargements' (sur Ubuntu/Debian) ou 'Tor Browser' (sur Tails)
  3. Faire un clique-droit 'dans le vide' dans ce dossier ( pas directement sur le script que tu viens de télécharger) et cliquer sur Ouvrir dans un terminal
  4. Écrire la commande suivante et taper sur la touche "entrée" :
Bash
bash install.sh
  1. Quand demandé dans le terminal, rentrer le mot de passe d'administration

(spécifique Tails : celui qui a été défini au point 2) 6. Attendre jusqu'à ce que tout en bas du terminal s'affiche : Signal Tools installé 7. Les différents outils autour de Signal peuvent maintenant être gérés : * avec l'application Applications > Autre > Signal Tools ; EN COURS DE DÉVELOPPEMENT * dans le terminal : l'outil signal-tools est accessible après avoir fermé/ouvert le terminal ou en tappant la ligne suivante :

Text Only
 ```bash
 source ~/.bashrc
 ```

Pour chaque installation de paquet, clique sur "Install Every Time" lorsque tu vois cette popup pour que ce soit fonctionnel au prochain redémarrage.

Utilisation de Signal-Tools en ligne de commande#

Installation de Signal Desktop#

Attention

Signal Desktop s'installe depuis les paquets APT comme préconisé sur leur site et non pas avec Flatpak, qui affecterait l'anonymat de Tor Browserhttps://0xacab.org/about.privacy/messengers-on-tails-os/-/wikis/Signal/Install-Signal-desktop

Afin d'installer une version récente de Signal Desktop comme préconisé sur leur site, copie la commande suivante dans le terminal et tape sur la touche 'Entrée' :

Bash
signal-tools -i desktop
Info

Si tu as déjà Signal Desktop installé en ayant suivi un ancien tutoriel, tes différentes instances seront toujours accessibles.

Mise à jour de Signal Desktop#

Si tu l'as installé depuis signal-tools, tu peux mettre à jour l'outil avec

Bash
signal-tools --update

Créer un compte Signal sans smartphone#

Tu vas avoir besoin de Signal CLI pour simuler Signal sur un smartphone :

Bash
signal-tools -i signal-cli

Une fois que tu as de quoi recevoir un SMS sur le numéro NUMERO_TELEPHONE, tu peux exécuter la commande suivante :

Bash
signal-tools -vv --cli-register NUMERO_TELEPHONE

Plusieurs fenêtres vont apparaitre :

  • Un navigateur s'ouvre pour générer un captcha. ("I am human")

Résout-le et clique-droit sur Open Signal> Copier le lien * Une popup s'ouvre avec trois champ à remplir : le lien du captcha (que tu viens de copier), ton code NIP (que tu dois définir) et le nom de ton profil Signal (que tu dois définir) * Une popup s'ouvre : rentre le code que tu viens de recevoir par SMS

Si une erreur apparaît, tu peux relancer la commande, elle va reprendre à la bonne étape.

Attention

Si tu ne reçois pas de SMS au bout de 2 minutes, c'est sûrement parce que le serveur de Signal bloque ton IP ; change de localisation VPN et retente ta chance. Si tu es sur Tor (par exemple dans Tails), il y a de fortes chances pour que le processus n'aboutisse pas

Les options d'import et d'export permettent d'y remédier ! 💫

Si les serveurs de Signal t'empêchent de te créer un compte sur Tails, tu peux te créer un compte signal-cli sur un appareil Ubuntu/Debian puis créer un export de cette configuration :

Bash
signal-tools -vv --cli-export

Un navigateur de fichiers s'ouvrira et il faudra transférer l'archive signal-cli-DATE.tar.gz vers la clef Tails. Ensuite, tu pourras l'importer avec la commande :

Bash
# Remplacer '$HOME/Documents/signal-cli-DATE.tar.gz' par le chemin où l'archive a été copiée
signal-tools -vv --cli-import $HOME/Documents/signal-cli-DATE.tar.gz

⚠ Cette solution ne fonctionne que pour un seul compte signal-cli

Info

Si la procédure n'aboutit pas automatiquement, tu peux suivre le chapitre "Installer Signal sans smartphone avec signal-cli" de Configurer Signal

La documentation pour utiliser les commandes signal-CLI directement pour lier un nouvel appareil secondaire (Molly sur téléphone, Signal Desktop sur ordi) se trouvent ici : https://github.com/AsamK/signal-cli/wiki/Linking-other-devices-(Provisioning)

Relier un compte signal-cli à une instance Signal Desktop#

Une fois que tu as créé ou importé un compte signal-cli, tu peux le lier à une instance Signal avec la commande suivante :

Bash
signal-tools -vv --cli-link-device NomDeLInstance

⚠ Il faut que NomDeLInstance n'existe pas encore et que tu n'aies qu'un seul compte signal-cli configuré.

Avoir plusieurs instances Signal#

Tu peux créer de nouvelles instances Signal, afin d'avoir plusieurs comptes synchronisés sur ton ordinateur.

Bash
signal-tools --add-instance NomDeLInstance

Si tu as modifié par erreur ou supprimé ton fichier Desktop, tu peux le regénérer avec la commande :

Bash
signal-tools --update-instance NomDeLInstance

Renommer une instance Signal#

Voici la commande pour renommer l'instance X en Y :

Bash
signal-tools --edit-instance X/Y

Foire aux questions#

Que faire pour passer de Tails v6.xx** à **v7.yy ?#

Passer à la version 7 n'aura aucune incidence sur tes instances Signal déjà configurées, elles resteront fonctionnelles.

La première étape est de mettre à jour la clef. Depuis une autre clef USB installée avec Tails v7.yy, ouvre Apps > Tails > Tails cloner et brancher la clef USB à mettre à jour. Il faut garder par défaut "Clone the current Tails" sans cloner "the current Persistent Storage", et appuie sur le bouton Upgrade.

Une fois que c'est fait, redémarre sur ta clef USB. Au premier lancement, il y a des chances pour que tu aies un message d'erreur comme quoi des paquets additionnels ne se sont pas installés (comme par exemple : wmctrl imagemagick openjdk-17-jre).

Si c'est le cas, ouvre Apps > Tails > Additional Software et pour chaque application qui porte le message "Package not available", note son nom et appuie sur la croix pour la supprimer.

Enfin, ouvre le terminal (Ctrl+Alt+T) et réinstalle ces applications avec la commande suivante, bien sûr à adapter depuis la liste des applications que tu as dû supprimer. Signal Desktop est fonctionnel sans aucune autre application, Signal CLI nécessite imagemagick pour lier automatiquement un nouveau compte avec le QR code d'une instance.

Paquets à supprimer

Les paquets suivants ne sont plus nécessaires :

  • openjdk
  • wmctrl
Bash
sudo apt install -y imagemagick

Au prochain redémarrage, toutes les applications s'installeront sans soucis à présent 🥳

Mes instances Signal apparaissent dans les applications disponibles mais sans le logo Signal#

Ceci est le signe que l'exécutable de Signal Desktop n'est pas installé sur l'appareil.

  • Est-ce que tu as bien cliqué sur "Install every time" lorsque ça t'était demandé lors de l'installation ?
  • Est-ce que tu vois des logs d'erreur au démarrage de Tails qui auraient leur résolution ci-dessous ?
  • Que donne la commande signal-tools -vv -i signal-desktop (qui va essayer d'installer Signal Desktop) ?
  • Tu peux regénérer le fichier Desktop de ton instance avec signal-tools --update-instance
  • Tu peux demander à l'équipe support de l'aide si rien d'autre n'est fonctionnel

Splitting up /var/lib/apt/lists/.../InRelease... data and signature failed#

Si tu vois cette ligne dans les logs de Tails lors de l'installation des paquets supplémentaires, tu peux taper les lignes suivantes dans un terminal :

Bash
sudo rm -rf /var/lib/apt/lists/* /live/persistence/TailsData_unlocked/apt/lists/*
sudo bash -c "apt clean; apt update && apt install --upgrade signal-desktop"

Les logiciels supplémentaires ne s'installent plus au redémarrage#

C'est sûrement dû à une suppression du cache de APT à cause de la commande apt clean.

Pour que Tails stocke les paquets en mémoire pour les réinstaller au prochain redémarrage, voici la démarche à suivre :

Bash
sudo bash -c "rm -rf /var/lib/apt/lists/* /live/persistence/TailsData_unlocked/apt/lists/* && mkdir -p /var/lib/apt/lists/partial /live/persistence/TailsData_unlocked/apt/lists/partial && apt clean && apt update && apt install -y $(tr '

' ' ' < /live/persistence/TailsData_unlocked/live-additional-software.conf)"
  • ouvrir Applications > Tails > Logiciels supplémentaires
  • écrire la liste des logiciels installés automatiquement qui ne sont pas disponibles, par exemple signal-desktop
Paquets à supprimer

Les paquets suivants ne sont plus nécessaires : * openjdk-* * wmctrl

  • cliquer sur la croix à droite de chaque paquet pour les supprimer de la liste et renseigner son mot de passe pour valider (la liste ne se met pas à jour automatiquement, il faut relancer l'utilitaire pour s'assurer que les logiciels ont été retirés)
  • dans un terminal, écrire la commande suivante en l'adaptant suivant la liste des logiciels à installer automatiquement :
Bash
sudo bash -c "apt update && apt install -y signal-desktop"
  • cliquer sur Install every time lorsqu'une popup le demande

J'ai une connexion Internet toute pourrie et j'ai une erreur APT systématique#

Si tu perds beaucoup trop de temps à chaque démarrage à cause d'erreurs du système Tails dues à une très mauvaise connection Internet, la méthode suivante te permets de télécharger une version de Signal fixée sur Tails. L'avantage est que l'exécutable sera accessible instantanément, mais il n'y aura pas de mise à jour automatique grâce à signal-tools (donc c'est une méthode de dernier recours).

  • si tu as le dossier ~/Persistent/bin/Signal présent sur ta machine (installé depuis la version signal-tools du 30/12/2024), tout est bon
  • si tu arrives à installer Signal Desktop grâce à la résolution du problème précédent, utilise la commande cp -r /opt/Signal/ /home/amnesia/Persistent/bin
  • sinon, voici la commande pour télécharger et mettre à jour Signal Desktop :
Bash
apt download signal-desktop
DIR="$HOME/Persistent/bin/signal-desktop"
[ -d "$DIR" ] && rm -rf "$DIR.bak" && mv "$DIR{,.bak}"
mkdir -p "$DIR"dpkg-deb -xv $(ls signal-desktop*.deb) "$DIR"

Enfin, tu peux changer la manière dont tes instances Signal sont lancées pour utiliser Signal Desktop que tu viens de télécharger :

Bash
for DIR in $HOME/.local/share/applications /live/persistence/TailsData_unlocked/dotfiles/.local/share/applications; do
  mkdir -p "/tmp/$DIR/backup" && cp "$DIR"/signal-tails*.desktop "/tmp/$DIR/backup/"
  find "$DIR" -name "signal-tails*.desktop" -exec sed -i -e "s#/opt/#/home/amnesia/Persistent/bin/signal-desktop/opt/#" -e "s#/usr/bin/#/home/amnesia/Persistent/bin/signal-desktop/opt/Signal/#" {} \;
done

Ressources#