Partage de fichiers  avec ssh sshfs sftp

Pour partager des fichiers autrement qu'avec Samba, il existe les tunnels sécurisés. L'idée est d'installer un programme sur le serveur, ouvrir des droits dans le parefeu sur le port 22 et d'utiliser le navigateur de fichier sur le client pour accéder au serveur qui deviendra comme une clé USB.

 

Sur le serveur

sudo apt-get install openssh-server

le serveur sera activé par défaut

 

Activer

sudo service ssh start

Arrêter

sudo service ssh stop

Relancer

sudo service ssh restart

ouvrir le port 22 sur le serveur

 

sur les postes qui ne seront que clients

sudo apt-get install ssh

on peut installer comme le serveur

sudo apt-get install openssh-server

Pour se connecter depuis un client

ssh [-option] nom_utilisateur@ipaddress [-p num_port] ['application']

les options les plus courantes

rien : lignes de commandes uniquement

-X (en majuscule) pour lancer des interfaces graphiques

-t pour lancer des commandes sudoers

exemples

ssh Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.

ou en interface graphique

ssh -X Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.

firefox

qui revient à

ssh -X Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. 'firefox'

Utilisation de clés sous SSH

comme ça semblait hardu, j'ai mis du temps à m'y mettre

mais finalement voici comment je résume la procédure

1. créer une clé sur le poste client

ssh-keygen -t rsa

il sera demandé où mettre la clé

/home/nom_utilisateur/.ssh/id_rsa_XXX

puis il faudra taper 2 fois une passphrase dite mot de passe VNC

la clé publique sera un fichier .pub du même nom que id_rsa_XXX

2. copier la clé sur le serveur

ssh-copy-id -i ~/.ssh/id_rsa_XXX.pub utilisateur_distant@IPserveur

3. se connecter une première fois pour valider et vérifier

ssh utilisateur_distant@IPserveur

 

si tout fonctionne plus besoin de mot de passe pour se connecter

PARTAGE DE DOSSIERS

Installer le paquet sshfs

sudo apt-get install sshfs

Avec nautilus :

Sous 12.04

fichier / se connecter à un serveur...

mettre ssh puis remplir les cases

mettre l'adresse IP en nom du serveur 192.168.X.X ou 10.0.X.X

le port doit être 22 si vous êtes en mode découverte

le répertoire à partager peut être / ou /home, /media ...

nom et mot de passe sont ceux de l'utilisateur à ouvrir

(pas besoin que ce soit le sudoer)

Sous 14.04

lien "se connecter à un serveur"

sftp://nom@adresseIPserveur/dossier

exemple

sftp://Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser./home/macopro

pour ne plus rentrer ces infos cochez "se souvenir de ce mot de passe"

une fois le dossier monté, un petit Ctrl + D pour ajouter aux favoris ;°)

En mode console :

on doit créer un dossier qui servira de 'lien symbolique'

mkdir ~/partagessh

mkdir ~/partagessh/dossier_local

puis on associe le dossier distant au local (ici c'est la racine /)

sshfs utilisateur_distant@IPserveur:/ ~/partagessh/dossier_local

quand on a terminé, on démonte le répertoire

fusermount -u ~/partagessh/dossier_local

et, éventuellement on le supprime

rm -rf ~/partagessh/dossier_local

ATTENTION A CETTE COMMANDE

en effet, si le répertoire est encore monté,

tout le contenu du dossier distant sera supprimé

(et je n'ai rien trouvé pour récupérer que la solution lourde)

Pour aller plus loin,

une fois les dossiers montés, on peut partager les profiles mozilla

(en utilisant le mode profile par firefox -p, mais seulement un à la fois;

en cas d'utilisation multiple, un message d'erreur est renvoyé)

On peut aussi faire de la synchro de dossiers distants et / ou locaux