Dans ce petit tuto nous allons voir comment accèder en SSH à son routeur CISCO la procédure est la même pour un switch 🙂 .
Dans ce tuto on, accède à une machine Debian via notre PC en SSH. Cette mahine Debian nous sert de rebond pour accèder à notre routeur Cisco (en ssh aussi) sur son interface de management par exemple.
Voici le schémas avec les 2 sous réseaux pour mieux comprendre.
192.168.1.0/24 : réseau de ma machine à la machine de rebond.
10.50.50.0/16 : réseau de Management du router connecté à la machine de rebond.
Nous allons tout d’abord configurer les IPs sur le routeur CISCO et sur notre machine de rebond Linux.
1. Configuration des interfaces
Configuration R1 :
R1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#interface gigabitEthernet 2/0
R1(config-if)#ip address 10.50.50.1 255.255.0.0
R1(config-if)#no shutdown
On verifie et on enregistre :
R1#show running-config interface gigabitEthernet 2/0
Building configuration...
Current configuration : 89 bytes
!
interface GigabitEthernet2/0
ip address 10.50.50.1 255.255.0.0
negotiation auto
end
R1#write memory
Warning: Attempting to overwrite an NVRAM configuration previously written
by a different version of the system image.
Overwrite the previous NVRAM configuration?[confirm]
Building configuration...
[OK]
Configuration de la Machine Debian Rebond :
root@debianrouteur:~# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug ens33
iface ens33 inet static
address 10.50.50.11
netmask 255.255.0.0
auto ens36
iface ens36 inet dhcp
# This is an autoconfigured IPv6 interface
iface ens33 inet6 auto
On redémarre le service networking :
systemctl restart networking.service
Puis on active l’interface :
root@debianrouteur:~# ifup ens33
On vérifie la conf sur la machine de rebond :
root@debianrouteur:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:3a:4f:9a brd ff:ff:ff:ff:ff:ff
inet 10.50.50.11/16 brd 10.50.255.255 scope global ens33
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe3a:4f9a/64 scope link
valid_lft forever preferred_lft forever
3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:3a:4f:a4 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.196/24 brd 192.168.1.255 scope global dynamic ens36
valid_lft 86369sec preferred_lft 86369sec
inet6 2a01:cb00:10e5:6200:20c:29ff:fe3a:4fa4/64 scope global dynamic mngtmpaddr
valid_lft 1768sec preferred_lft 568sec
inet6 fe80::20c:29ff:fe3a:4fa4/64 scope link
valid_lft forever preferred_lft forever
On vérifie la connectivité avec R1 :
root@debianrouteur:~# ping 10.50.50.1
PING 10.50.50.1 (10.50.50.1) 56(84) bytes of data.
64 bytes from 10.50.50.1: icmp_seq=1 ttl=255 time=27.1 ms
64 bytes from 10.50.50.1: icmp_seq=2 ttl=255 time=1.49 ms
64 bytes from 10.50.50.1: icmp_seq=3 ttl=255 time=7.80 ms
2. Configuration SSH sur R1
On configure le mot de passe enable pour accèder en mode privilégié :
R1(config)#enable secret azerty
On configure le domaine (obligatoire sur CISCO pour activer ssh) :
R1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#ip domain-name labssh.cisco
R1(config)#crypto key generate rsa
The name for the keys will be: R1.labssh.cisco
Choose the size of the key modulus in the range of 360 to 4096 for your
General Purpose Keys. Choosing a key modulus greater than 512 may take
a few minutes.
How many bits in the modulus [512]: 2048
% Generating 2048 bit RSA keys, keys will be non-exportable...
[OK] (elapsed time was 8 seconds)
R1(config)#
*Feb 21 14:53:33.703: %SSH-5-ENABLED: SSH 1.99 has been enabled
On choisit la version 2 de ssh :
ip ssh version 2
On créé un utilisateur :
username deianrebond secret azerty
On chiffre le mot de passe (afin de ne pas l’afficher en clair dans le show run) :
service password-encryption
On configure la console d’accès à distance (vty) :
R1(config)#line vty 0 4
R1(config-line)#login local
R1(config-line)#exit
J’essais de me connecter en SSH sur R1 depuis la machine rebond :
root@debianrouteur:~# ssh debianrebond@10.50.50.1
Unable to negotiate with 10.50.50.1 port 22: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
Je n’y parvient pas. Mais que veut dire ce message ? En gros, il me dit qu’il n’a pas réussit à négocier d’algorithme de chiffrement avec R1.
Pour palier à ce problème, il faut créer un dossier caché « .ssh » s’il n’est pas déja créer et créer un fichier config où vous insérerez cela :
root@debianrouteur:~# cat .ssh/config
Ciphers aes256-ctr,aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
Après cela, je parviens à y accèder 🙂 :
root@debianrouteur:~# ssh deianrebond@10.50.50.1
The authenticity of host '10.50.50.1 (10.50.50.1)' can't be established.
RSA key fingerprint is SHA256:n4X9omC/8yTjlPs6nGI9k09xPK+JeTtFEoN7yqij/bk.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.50.50.1' (RSA) to the list of known hosts.
Password:
R1>enable
Password:
R1#
Terminé ! A bientôt pour la suite 😀 .