Bonjour
Pour ces tests,
la machine
serveur ssh est sur un système ubuntu 20.04
budgie dont l'adresse IP est
192.168.122.84
la machine
client ssh est sur un système
Xubuntu 20.04 dont l'adresse IP est
192.168.122.70
Tout d'abord, j'ai fait une
mise à jour des systèmes installés
en lançant, sur chacune des machines, la ligne de commandes suivante :
sudo apt update && sudo apt upgrade
=======
Sur la machine
client ssh (
xubu)
j'ai installé le paquetage
sshfs
en lançant la ligne de commande suivante :
michel@xubu:~$ sudo apt install sshfs
j'ai créé le compte
utilisateur_b
en lançant la ligne de commande suivante :
michel@xubu:~$ sudo adduser utilisateur_b
J'ai vérifié que l'
ID de ce compte utilisateur est bien
1001michel@xubu:~$ sudo id utilisateur_b
uid=1001(utilisateur_b) gid=1001(utilisateur_b) groupes=1001(utilisateur_b)
michel@xubu:~$
je me suis connecté sous le compte
utilisateur_b
en lançant la ligne de commande suivante :
michel@xubu:~$ su -l utilisateur_b
Mot de passe :
utilisateur_b@xubu:~$
puis, en utilisant le compte
utilisateur_b
j'ai créé, le répertoire qui va me servir plus tard de point de montage par
sshfs
en lançant la ligne de commande suivante :
utilisateur_b@xubu:~$ mkdir ~/DATA_G
=======
Sur la machine
serveur ssh (
budgie)
j'ai installé
openssh-server
en lançant la ligne de commandes suivante :
michel@budgie:~$ sudo apt install openssh-server
j'ai créé le compte
utilisateur_b
en lançant la ligne de commande suivante :
michel@budgie:~$ sudo adduser utilisateur_b
J'ai vérifié que l'ID de ce compte utilisateur est bien
1001
je me suis connecté sous le compte
utilisateur_b
en lançant la ligne de commande suivante :
michel@budgie:~$ sudo id utilisateur_b
uid=1001(utilisateur_b) gid=1001(utilisateur_b) groupes=1001(utilisateur_b)
michel@budgie:~$
je me suis connecté sous le compte
utilisateur_b
en lançant la ligne de commande suivante :
michel@budgie:~$ su -l utilisateur_b
Mot de passe :
utilisateur_b@budgie:~$
puis j'ai créé un répertoire
en lançant la ligne de commande suivante :
utilisateur_b@budgie:~$ mkdir ~/mesDatasB
et j'ai créé un fichier dans ce répertoire
en lançant la ligne de commande suivante :
utilisateur_b@budgie:~$ > ~/mesDatasB/fichServeurSSH.txt
Je vérifie que ce fichier a bien été créé :
en lançant la ligne de commande suivante :
utilisateur_b@budgie:~$ ls -l mesDatasB/
total 0
-rw-rw-r-- 1 utilisateur_b utilisateur_b 0 janv. 14 14:12 fichServeurSSH.txt
utilisateur_b@budgie:~$
=======
Je suis revenu sur la machine
client ssh (
xubu)
et, en utilisant le compte
utilisateur_b
j'ai créé une
clef ssh en lançant la ligne de commande suivante
(mais sans donner de
passphrase => je tape simplement sur la touche Entrée) :
utilisateur_b@xubu:~$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/utilisateur_b/.ssh/id_rsa):
Created directory '/home/utilisateur_b/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/utilisateur_b/.ssh/id_rsa
Your public key has been saved in /home/utilisateur_b/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:d8lRDEIDeEUsruLcXyeFIMPOyokly+3N60jjOASzxes utilisateur_b@xubu
The key's randomart image is:
+---[RSA 3072]----+
| ..** .o. |
| .. o .o .. |
| . +o.. . |
|o o o o.. o o |
| =... o.S o = |
|..oB.o. . o |
| o+oBo o . |
| E=o=. . o |
| ..+.=o. |
+----[SHA256]-----+
utilisateur_b@xubu:~$
Puis en utilisant le compte
utilisateur_b de la machine
client ssh (
xubu)
j'ai utilisé la commande
ssh-copy-id pour copier la clef générée
vers le compte
utilisateur_b de la machine
serveur ssh (
budgie)
en lançant la ligne de commande suivante :
utilisateur_b@xubu:~$ ssh-copy-id utilisateur_b@192.168.122.84
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/utilisateur_b/.ssh/id_rsa.pub"
The authenticity of host '192.168.122.84 (192.168.122.84)' can't be established.
ECDSA key fingerprint is SHA256:Cg+gOB9aR8OnC8J25wBsN/ecPU22078pYfVxqWAtRtQ.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
utilisateur_b@192.168.122.84's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'utilisateur_b@192.168.122.84'"
and check to make sure that only the key(s) you wanted were added.
utilisateur_b@xubu:~$
Je peux maintenant tester la connexion
ssh qui se fera sans mot de passe
en entrant la ligne de commande proposée dans le retour de commande précédent :
utilisateur_b@xubu:~$ ssh utilisateur_b@192.168.122.84
Welcome to Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-60-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
0 mise à jour peut être installée immédiatement.
0 de ces mises à jour est une mise à jour de sécurité.
*** System restart required ***
Last login: Thu Jan 14 14:11:49 2021 from 192.168.122.1
utilisateur_b@budgie:~$
=======
Je suis revenu sur la machine
serveur ssh (
bugdie)
et, avec les privilèges du compte utilisateur
root
j'ai ajouté dans le fichier
/etc/ssh/sshd_config
la directive suivante :
PasswordAuthentication no
Puis, afin qu'il puisse prendre en compte la modification que je viens de faire,
j'ai relancé le serveur ssh en lançant la ligne de commande suivante :
michel@budgie:~$ sudo systemctl restart sshd.service
[sudo] Mot de passe de michel :
michel@budgie:~$
=======
Je suis revenu sur la machine
client ssh (
xubu)
et, en utilisant le compte
utilisateur_b j'ai testé le montage
sshfs
en lançant la ligne de commande suivante :
utilisateur_b@xubu:~$ sshfs utilisateur_b@192.168.122.84:/home/utilisateur_b/mesDatasB/ ~/DATAS_B
utilisateur_b@xubu:~$
Puis j'ai vérifié que je pouvais lister le contenu de ce point de montage
en lançant la ligne de commande suivante :
utilisateur_b@xubu:~$ ls -l ~/DATAS_B
total 0
-rw-rw-r-- 1 utilisateur_b utilisateur_b 0 janv. 14 14:12 fichServeurSSH.txt
utilisateur_b@xubu:~$
Pour que la commande de montage par
sshfs soit automatiquement lancée dès que le compte
utilisateur_b ouvre sa session,
j'ai cliqué sur le menu
Paramètres ->
Session et démarrage -> Onglet :
Démarrage automatique d'applications
j'ai cliqué sur
+ Ajouter
et dans le champ de saisie
Commande
j'ai collé la ligne de commande
sshfs (en spécifiant les chemins absolus) :
/usr/bin/sshfs utilisateur_b@192.168.122.84:/home/utilisateur_b/mesDatasB/ /home/utilisateur_b/DATAS_B
et j'ai remplis le champ
Nom avec le nom de mon choix :
Montage sshfs
et dans la liste déroulante du champ
Déclencher j'ai laissé le choix par défaut :
on login
=======
Voilà.