SSH - Rochelug

Transcription

SSH - Rochelug
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
SSH
Rochelug
Philippe Harrand
18 mars 2016
Rochelug (Rochelug)
18 mars 2016
1 / 15
SSH
SCP
Rochelug (Rochelug)
SFTP
SSHFS
Tunnel et rebond
18 mars 2016
2 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Secure SHell
I
I
I
I
I
I
Secure SHell
implémentation libre ⇒ OpenSSH
développée pour openBsd
paquets openssh-client (avec un "s" pour fedora) et
openssh-server
permet de se connecter à une machine distante en
sécurité pour obtenir une console :
peut exporter des applications graphiques
Rochelug (Rochelug)
18 mars 2016
3 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
SSH
Rochelug (Rochelug)
18 mars 2016
4 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Client / Serveur
I
l’utilisateur invoque le client
I
le client ssh demande une connexion à un serveur
I
le serveur établit une connexion chiffrée par TLS
I
le serveur sshd identifie/authentifie l’utilisateur
I
l’utilisateur doit avoir|connaître un compte sur le système
du serveur
I
le serveur fournit un interpréteur de commande (shell) à
l’utilisateur
Rochelug (Rochelug)
18 mars 2016
5 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Identification
I
du serveur
I
I
identité stockée par le client à la première connexion dans
∼/.ssh/known_hosts..
une ligne par serveur connu
I
I
I
I
si l’empreinte reçue diffère de celle stockée ⇒
du client
I
I
adresse IP ou nom de domaine du serveur en clair
ou empreinte d’icelui
empreinte de la clef publique du serveur rsa par défaut
aucune
de l’utilisateur
I
par défaut c’est l’utilisateur connecté
pharrand@torvalds:~$ ssh 192.168.122.129
[email protected]’s password:
I
sinon indiquer le login
pharrand@torvalds:~$ ssh [email protected]
[email protected]’s password:
Rochelug (Rochelug)
18 mars 2016
6 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Authentification
3 méthodes d’authentification
I login / mot de passe
I
I
I
I
clef publique
I
I
mot de passe d’un utilisateur enregistré sur le système
envoyés dans une connexion chiffrée TLS
ssh <serveur distant> ou ssh <user>@<serveur
distant>
nécessite une préparation
κρβρoς
I
nécessite une infrastructure κρβρoς
I
inenvisageable pour servir uniquement à ssh
Rochelug (Rochelug)
18 mars 2016
7 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Authentification par clef publique
l’utilisateur distant doit :
1. générer une paire de clefs publique/privée
ssh-keygen
2. envoyer la clef publique au serveur
ssh-copy-id <user>@<serveur distant>
authentification par mot de passe
3. connexion sans mot de passe
ssh <user>@<serveur distant>
4. les clefs publiques sont dans le fichiers
∼/.ssh/authorized_keys
pharrand@torvalds:~/.ssh$ cat authorized_keys
ssh-dss AAAAB3NzaC1kc3MAAACBAOZ[...]+on pharrand@philippe
Rochelug (Rochelug)
18 mars 2016
8 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Le serveur
I
nommé sshd
I
configuré dans /etc/ssh/sshd_config
I
quelques lignes :
PermitRootLogin without-password
StrictModes yes
PubkeyAuthentication yes
X11Forwarding yes
Rochelug (Rochelug)
18 mars 2016
9 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Secure CoPy
I
permet de copier un ou plusieurs fichiers
I
I
I
I
depuis un serveur distant vers un client local
depuis un client local vers un serveur distant
depuis un serveur distant vers un serveur distant
à travers une connexion chiffrée et sécurisée
scp [email protected]:/home/pharrand/tmp/testBash \
[email protected]:/home/tpuser/
[email protected]’s password:
en cas de rebond, utiliser une authentification sans mot de passe pour le
destinataire
Rochelug (Rochelug)
18 mars 2016
10 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Secure File Transfert Protocol
I
FTP sur connexion chiffrée et authentifiée
I
même syntaxe que FTP
I
les clients comme filezilla l’implémentent
I
pas de serveur spécifique (sshd)
pharrand@torvalds:~$ sftp [email protected]
[email protected]’s password:
Connected to 192.168.122.129.
sftp> lcd ..
sftp> put tmp/testBash Documents/
Uploading tmp/testBash to /home/tpuser/Documents/testBash
tmp/testBash
100%
94
0.1KB/s
00:00
sftp> ls Documents/
Documents/testBash
sftp> bye
pharrand@torvalds:~/$
Rochelug (Rochelug)
18 mars 2016
11 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
SSH File System
I
Pseudo montage de dossier distant
I
en espace utilisateur (pas besoin d’être root)
I
nécessite le paquet fuse
I
sécurisé, fiable, simple
I
mais gérer les droits d’accès selon les login des utilisateurs
pharrand@torvalds:~$ mkdir tmp/distant
pharrand@torvalds:~$ sshfs [email protected]:/home/tpuser/Documents tmp/distant/
[email protected]’s password:
pharrand@torvalds:~$ ls tmp/distant/
testBash
Rochelug (Rochelug)
18 mars 2016
12 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
tunnel et rebond
I
redirection de port
pharrand@torvalds:~/$ ssh -L 1234:localhost:80 \
[email protected]
[email protected]’s password:
I
rebond
ssh -t [email protected] ssh 192.168.122.120
[email protected]’s password:
[email protected]’s password:
I
spécial JJ : https ://doc.ubuntu-fr.org/tutoriel/reverse_ssh
Rochelug (Rochelug)
18 mars 2016
13 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
environnement
1. connexion au réseau WIFI Rochelug
2. ajout d’une route pour accéder aux machines virtuelles :
sudo route add -net 192.168.122.0/24 gw 192.168.43.1
Machine
vm1
vm2
vm3
Machines virtuelles
Adresse IP
Utilisateur
192.168.122.1 tpuser/tpuser
192.168.122.2 tpuser/tpuser
192.168.122.3 tpuser/tpuser
Rochelug (Rochelug)
MDP root
clublr
clublr
clublr
18 mars 2016
14 / 15
SSH
SCP
SFTP
SSHFS
Tunnel et rebond
Démo et Exo
I
Démo
I
I
I
I
connexion à un serveur dont l’empreinte a changé
connexion à un serveur avec export X11
redirection du port local 1234 vers le port 80 d’un serveur
Exercices
I
I
I
connectez-vous aux différentes VM puis déconnectez-vous
copiez un fichier de votre machine à une des VM dans le
dossier /home/tpuser/Documents
créez le dossier testSsh sur votre machine locale et montez
dedans le dossier
Rochelug (Rochelug)
18 mars 2016
15 / 15