Po pierwsze, sprawdź czy w ogóle posiadasz w swoim IOSie funkcjonalność SSH. Pojawiła się ona w linii 12.0 i jest obecna tylko w feature-setach posiadających funkcjonalność "IPsec" (routery), "Service Provider SSH" (większe routery, od 7xxx) oraz "Crypto" (przełączniki Catalyst). Od wersji IOS 12.3 dostępna jest na routerach w każdym IOSie (za wyjątkiem tych oznaczonych 'W/O CRYPTO') oraz od linii 12.2(x) na przełącznikach Catalyst w nowych wersjach pakowania IOSa (również za wyjątkiem tych oznaczonych 'W/O CRYPTO').
Pierwszym krokiem jest nadanie routerowi nazwy własnej i domenowej. Informacje te będą wymagane do wygenerowania kluczy: prywatnego i publicznego.
router# conf t router(config)# hostname c1760 c1760(config)# ip domain name test.pl
Teraz generujemy klucze:
c1760(config)# crypto key generate rsa The name for the keys will be: c1760.test.pl Choose the size of the key modulus in the range of 360 to 2048 for your General Purpose Keys. Choosing a key modulus greater than 512 may take a few minutes. How many bits in the modulus [512]: 1024 ! Wybraliśmy klucze o długości 1024 bitów % Generating 1024 bit RSA keys ...[OK]
W tym momencie serwer SSH zostaje włączony. Uwierzytelnianie odbywa się w oparciu o skonfigurowane, zewnętrzne bazy danych (RADIUS itp.), lub domyślnie - w oparciu o lokalną bazę użytkowników (poleceniami `username X [...]').
Dodatkowo, można ograniczyć dostęp do routera tylko do protokołu SSH, wydając na liniach wirtualnych terminali polecenie:
c1760(config)# line vty 0 15 c1760(config-vty)# transport input ssh
Poleceniem `show ip ssh':
router# show ip ssh SSH Enabled - version 1.99 Authentication timeout: 120 secs; Authentication retries: 3