« Ssh - cisco » : différence entre les versions

De Wiki doc

(Page créée avec « Category:cisco L'administration d'un équipement ''Cisco'' se fait généralement via le protocole [https://fr.wikipedia.org/wiki/Secure_Shell Secure SHell] (''SSH'')... »)
 
Ligne 48 : Ligne 48 :
Afin de réceptionner des transferts initiés par un hôte distant, ''Cisco IOS'' intègre un module serveur [https://fr.wikipedia.org/wiki/Secure_copy Secure Copy] (''SCP''). Pour l'activer, rien de plus simple:
Afin de réceptionner des transferts initiés par un hôte distant, ''Cisco IOS'' intègre un module serveur [https://fr.wikipedia.org/wiki/Secure_copy Secure Copy] (''SCP''). Pour l'activer, rien de plus simple:
  ip scp server enable
  ip scp server enable
{{Astuce|Depuis un client ''OpenSSH'', il faudra user de la syntaxe suivante: <source lang="bash" inline>scp c3560cx-universalk9-mz.152-7.E2.bin toto@192.168.1.53:c3560cx-universalk9-mz.152-7.E2/c3560cx-universalk9-mz.152-7.E2.bin</source>. Notez bien que le nom final du fichier doit être précisé en destination, sous peine d'avoir un avortement de la connexion avec le message '''''ETAlost connection'''''. Aucun '''''/''''' ne doit être précisé au début du chemin.}}


=Connexion depuis OpenSSH=
=Connexion depuis OpenSSH=

Version du 2 octobre 2020 à 18:52


L'administration d'un équipement Cisco se fait généralement via le protocole Secure SHell (SSH). Il est nécessaire d'appliquer quelques paramètre pour l'activer.

Session SSH

L'activation de SSH sous Cisco IOS passe par quelques commandes comprenants nottament, la création d'un utilisateur, d'une clé ainsi que des critaires de sessions.

configure terminal
# Création de l'utilisateur
username <utilisateur> privilege 15 secret <motdepasse>
# Création de la clé
crypto key generate rsa modulus 4096 label <FQDN>
# Activation de la version 2 du protocole SSH (normalement c'est automatique)
ip ssh version 2
# Paramétrage des sessions SSH sur les consoles virtuelles
line vty 0 4
# Activation des connexions en utilisant la base utilisateur locale
login local
# Modification de la durée de la session (définie à 3 minutes)
exec-timeout 0 3
# Activation des connexions entrantes
transport input ssh
# Activation des connexions sortantes
transport output ssh

# Il est également possible de journaliser les évènements en rapport avec SSH lorsque l'on est connecté via ce protocole (sinon cela se fait uniquement via le port série)
configure terminal
ip ssh logging events

Bien que ce protocole serve principalement à établir une sessions distante à un équipements, elle ne se limite pas à ça et certaines autres fonctions peuvent êtres utilisées avec les matériels réseau de cette marque.

Transferts de fichiers via SSH

Les transferts de fichiers au travers d'SSH permettent un échange chiffré de données. IOS gère Secure Copy (SCP), un protocole se basant sur UNIX BSD RCP et utilisant SSH pour le chiffrement. Il faut au préalable avoir activé ce dernier pour que SCP fonctionne.

Une petite précision qui a son importance. L'implémentation d'SCP dans IOS ne gère pas la récursivité (-r) contrairement à son homologue UNIX/Linux. Si vous avez un répertoire à transférer, baaah, bon courage...

En tant que client

L'utilitaire copy permet d'initier des transferts avec un serveur. En voici la syntaxe:

copy <fichier_source> scp://<utilisateur>@<adresse>:<destination>

ATTENTION

La <destination> doit être précédée de deux / dans le cas d'un chemin partant de la racine distante.
copy flash:/c3560cx-universalk9-mz.152-4.E5/c3560cx-universalk9-mz.152-4.E5.bin scp://toto@192.168.1.10://tmp/

En tant que serveur

Afin de réceptionner des transferts initiés par un hôte distant, Cisco IOS intègre un module serveur Secure Copy (SCP). Pour l'activer, rien de plus simple:

ip scp server enable

ASTUCE

Depuis un client OpenSSH, il faudra user de la syntaxe suivante: scp c3560cx-universalk9-mz.152-7.E2.bin toto@192.168.1.53:c3560cx-universalk9-mz.152-7.E2/c3560cx-universalk9-mz.152-7.E2.bin. Notez bien que le nom final du fichier doit être précisé en destination, sous peine d'avoir un avortement de la connexion avec le message ETAlost connection. Aucun / ne doit être précisé au début du chemin.

Connexion depuis OpenSSH

Avec des version d'OpenSSH récentes, les suites cryptographiques utilisées par IOS ne correspondent pas à celles définies dans la configuration par défaut du célèbre client libre (du moins sous Linux Debian >= Jessie). Il est possible de fixer manuellement ce paramètre sur l'équipement réseau et de préciser au client quel algorithme utiliser pour la connexion.

Sur IOS

Afin de définir la suite cryptographique que l'on souhaite utiliser lors des sessions SSH, on peut utiliser la commande suivante en mode "configuration":

ip ssh server algorithm encryption aes256-cbc aes192-cbc aes128-cbc

Note: les algorithmes sont visibles avec le traditionnel ?.

Sur OpenSSH

Dans la commande

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -c aes128-cbc <utilisateur>@<adresse>

Dans la configuration

Il est également possible de préciser au client d'utiliser cette configuration directement dans son fichier. Ainsi, la commande standard pourra être utilisée de façon transparente.

vim ~/.ssh/config
Host 10.0.0.1
	KexAlgorithms +diffie-hellman-group1-sha1