RetroShare
RetroShare est un logiciel de F2F privé, décentralisé, basé sur l'authentification par clef publique/privée PGP. Tous les échanges s'effectuent sous cryptographie SSL (RSA 2048 bits), et uniquement entre des personnes ayant explicitement échangé leurs clefs. Il s'agit donc d'une méthode extrêmement sûre pour partager des fichiers, puisqu'il est impossible aux personnes qui ne sont pas déclarées comme étant de confiance de savoir ce qui circule ou est mis à disposition sur le réseau.
Les caractéristiques et services offerts par ce logiciels sont:
- Transferts multiples, multi-sources et simultanés en F2F multi-hop
- Chat, messagerie, forums internes et channels.
- Recherche/tri de fichiers en F2F multi-hop avec une profondeur de 6.
- Gestion par répertoire de la visibilité des fichiers
- Propagation optionnelle des IP des amis.
- Utilise le DHT bittorrent pour synchroniser les connexions et trouver les IPs de vos amis.
- Interface graphique en Qt4
- UPnP / NAT-PMP pour traverser les routeurs
- Intégration dans la barre des taches
- Fonctionne sous MacOSX, Windows et Ubuntu (Jaunty/Karmic/Lucid/Maverick).
Installation
Il existe un ppa qui permet d'installer RetroShare :
- Ajouter le PPA ppa:retroshare/stable1) dans vos sources de logiciels;
Avec Ubuntu 20.04 , il faut effectuer les commandes suivantes :
source /etc/os-release
wget -qO - https://download.opensuse.org/repositories/network:/retroshare/xUbuntu_${VERSION_ID}/Release.key | sudo apt-key add - sudo sh -c "echo 'deb https://download.opensuse.org/repositories/network:/retroshare/xUbuntu_${VERSION_ID}/ /' > /etc/apt/sources.list.d/retroshare_OBS.list"
sudo apt-get update
puis installer les paquets retroshare-common-unstable , retroshare-gui-unstable , retroshare-service-unstable.
Utilisation
RetroShare base son système d'authentification sur PGP. Au premier lancement, RetroShare vous propose de choisir une clef PGP dans votre trousseau (ou d'en créer une) pour représenter votre identité. La même clef peut être utilisée pour chacun de vos nœuds RetroShare (par exemple si vous avez plusieurs PC). C'est pourquoi, "Location/lieu" vous demande sur quel ordinateur vous opérez. Les clefs PGP sont utilisées pour signer les certificats SSL qui servent à chiffrer les communications entre deux nœuds RetroShare. Tout couple de personnes ayant mutuellement accepté la connexion des clefs PGP correspondantes sont alors capables de se connecter entre elles. Sur le plan pratique, les certificats SSL sont générés à la volée. Seules les clef PGP sont montrées à l'utilisateur.
Une fois votre identité créée, le logiciel se lance et vous voilà à la tête d'un réseau de… une personne: vous. Il vous faut donc recruter des amis.
Attention: si vous utilisez une clef PGP qui n'a pas été créée par RetroShare, vérifiez que le paramètre Owner Trust est sur Ultimate, en utilisant le logiciel Seahorse. Dans le cas contraire, elle ne sera pas acceptée par RetroShare.
Les services
RetroShare propose plusieurs services en plus du partage de fichiers:
- Le chat permet de discuter avec vos contacts. Il supporte le drag-and-drop de fichiers. Le group chat permet une discussion plus commune: tous les gens connectes recoivent vos messages. Attention, cela ne signifie pas qu'ils puissent s'echanger des messages entre eux, a moins qu'ils soient amis.
- Les forums internes permettent des discussions suivies avec vos amis, mais aussi avec les amis de vos amis. Chaque personne qui souscrit a un forum propage automatiquement son contenu a ses propres amis. La popularité des forums indique le nombre de personnes abonnées parmi vos amis:
0 = icône 0 |
1-7 = icône 1 |
8-15 = icône 2 |
16-24 = icône 3 |
25-34 = icône 4 |
>34 = icône 5 |
Il existe des forums "anonymes", qui sont vraiment anonymes, et des forums "autentifies" ou les messages sont signes par la clef PGP de la personne qui y ecrit. Cela permet d'eviter le spamming.
- Les channels sont un type de forum particulier: quand on s'abonne a un channel, on recois automatiquement les fichiers qui sont postes dessus. Pour augmenter la securite de ce service, poster sur un channel necessite une clef. Le createur du channel a la clef, et peut eventuellement la partager avec ses amis pour leur permettre de poster dessus. Il existe egalement des channels prives, ou une seconde clef est necessaire pour lire le contenu du channel.
- un systeme de messagerie privée, fonctionne un peu comme une boite au lettres de mails. Il permet également de recommander un fichier ou un ami, à un de vos amis.
Conseils
- Soyez patient lorsque vous connectez quelqu'un pour la premiere fois. A cause des routeurs et autres firewalls, ca peut prendre quelques minutes pour se connecter. En general, des que les clefs sont signees, la connexion est instantanee.
- Il est assez facile de recruter des peers. Proposez le a vos amis. En revanche il y a peu de chance qu'une personne que vous avez rencontrée sur le Net accepte de signer votre clef. C'est la base de la sécurité.
- Si l'on partage ses fichiers de maniere anonyme (le flag browsable by friends est desactive), meme vos amis ne peuvent savoir ce que vous partagez.
- RetroShare effectue un hash SHA1 des fichiers que vous partagez. Il faut compter 30 min de hash pour 250Go environ.
- RetroShare utilise une technologie (upnp) qui permet de traverser les routeurs et certains firewalls. Votre connectivité sera cependant meilleure si vous routez le port d'ecoute de RetroShare en UDP+TCP sur votre PC. Pour eviter le tracking des ports par les FAI, le port par defaut change d'une location a l'autre. Le port utilise est indique dans config→server. Vous pouvez vous meme lui donner la valeur que vous voulez entre 1024 et 65535.
Sauvegarde et importation
En cas de changement de système, vous n'aurez besoin que de sauvegarder votre clef PGP (votre identité), ainsi que les clefs de vos amis. Toutes ces clefs sont dans votre keyring PGP, qui est géré par votre distribution ubuntu préférée. Il se trouve dans le répertoire ~/.gnupg.
Pour exporter une seule clef publique+privée, on peut également utiliser la commande suivante dans un terminal:
gpg --homedir ./.retroshare/pgp --keyring ./.retroshare/pgp/retroshare_public_keyring.gpg --secret-keyring ./.retroshare/pgp/retroshare_secret_keyring.gpg -a --export KeyID > key.asc ; gpg --homedir ./.retroshare/pgp --keyring ./.retroshare/pgp/retroshare_public_keyring.gpg --secret-keyring ./.retroshare/pgp/retroshare_secret_keyring.gpg -a --export-secret-keys KeyID >> key.asc
… en remplaçant "KeyID" par l'ID ou le nom de votre clef. On peut ensuite importer cette clef sur une autre machine en faisant:
gpg --homedir ./.retroshare/pgp --keyring ./.retroshare/pgp/retroshare_public_keyring.gpg --secret-keyring ./.retroshare/pgp/retroshare_secret_keyring.gpg --import key.asc
Vous pourrez créer une nouvelle location sur la nouvelle machine sans perdre vos amis. Il suffira de faire ami dans le tab Network avec les clefs de vos amis qui doivent s'y trouver, et qui sont déjà signées par votre clef.
Voir aussi
- (en) Le site officiel