konfigurera säkert skal på Routrar och växlar som kör Cisco IOS

introduktion

Secure Shell (SSH) är ett protokoll som ger en säker fjärråtkomst anslutning till nätverksenheter. Kommunikationen mellan klienten och servern krypteras i både SSH version 1 och SSH version 2. Implementera SSH version 2 när det är möjligt eftersom det använder en mer förbättrad säkerhet krypteringsalgoritm.,

det här dokumentet beskriver hur du konfigurerar och felsöker SSH på Cisco-routrar eller växlar som kör en version av Cisco IOS® – programvara som stöder SSH. Detta dokument innehåller mer information om specifika versioner och programvarubilder.

förutsättningar

krav

komponenter som används

informationen i detta dokument är baserad på Cisco IOS 3600 programvara (C3640-IK9S-M), Release 12.2(2) T1.

SSH introducerades i dessa Cisco IOS-plattformar och bilder:

  • SSH Version 1.,0 (SSH v1) server infördes i vissa Cisco IOS plattformar och bilder som startar i Cisco IOS Software Release 12.0.5.S.

  • SSH-klienten introducerades i vissa Cisco IOS-plattformar och bilder som börjar i Cisco IOS Software Release 12.1.3.T.

  • SSH terminal-line access (även känd som reverse-Telnet) infördes i vissa Cisco IOS-plattformar och bilder som börjar i Cisco IOS Software Release 12.2.2.T.

  • SSH version 2.0 (SSH v2) stöd infördes i vissa Cisco IOS plattformar och bilder som börjar i Cisco IOS Software Release 12.1(19)E.,

  • se hur du konfigurerar SSH på Katalysatorbrytare som kör CatOS för mer information om SSH-stöd i omkopplarna.

se Software Advisor (endast registrerade kunder) för en komplett lista över funktioner som stöds i olika Cisco IOS-programversioner och på olika plattformar.

informationen som presenteras i detta dokument skapades från enheter i en specifik labbmiljö. Alla enheter som används i det här dokumentet började med en rensad (standard) konfiguration., Om du är i ett live-nätverk, se till att du förstår den potentiella effekten av något kommando innan du använder det.

konventioner

se Cisco Technical Tips Conventions för mer information om dokumentkonventioner.

SSH v1 vs. SSH v2

använd Cisco Software Advisor (endast registrerade kunder) för att hjälpa dig att hitta den version av koden med lämpligt stöd för antingen SSH v1 eller SSH v2.,

nätverksdiagram

Testautentisering

Autentiseringstest utan SSH

testa först autentiseringen utan SSH för att se till att autentiseringen fungerar med routern Carter innan du lägger till SSH. Autentisering kan vara med ett lokalt användarnamn och lösenord eller med en autentisering, auktorisering och accounting (AAA) server som kör TACACS+ eller RADIUS. (Autentisering via linjelösenordet är inte möjligt med ssh.,) Detta exempel visar lokal autentisering, som låter dig Telnet i routern med användarnamn ” cisco ”och Lösenord” cisco.”

!--- The aaa new-model command causes the local username and password on the router !--- to be used in the absence of other AAA statements.aaa new-modelusername cisco password 0 ciscoline vty 0 4transport input telnet!--- Instead of aaa new-model, you can use the login local command.

Autentiseringstest med ssh

för att testa autentisering med SSH måste du lägga till de tidigare uttalandena för att aktivera SSH på Carter och testa SSH från PC-och UNIX-stationerna.

ip domain-name rtp.cisco.com!--- Generate an SSH key to be used with SSH.crypto key generate rsaip ssh time-out 60ip ssh authentication-retries 2

vid denna tidpunkt måste kommandot show crypto key mypubkey RSA visa den genererade nyckeln., När du har lagt till SSH-konfigurationen, testa din förmåga att komma åt routern från datorn och UNIX-stationen. Om detta inte fungerar, se avsnittet Felsökning i det här dokumentet.

valfria konfigurationsinställningar

förhindra icke-SSH-anslutningar

om du vill förhindra icke-SSH-anslutningar, Lägg till kommandot transport input SSH under raderna för att begränsa routern till endast SSH-anslutningar. Straight (icke-SSH) Telnets nekas.,

line vty 0 4!--- Prevent non-SSH Telnets.transport input ssh

Testa för att se till att icke-SSH-användare inte kan Telnet till routern Carter.

konfigurera en iOS-Router eller växla som SSH-klient

det finns fyra steg som krävs för att aktivera SSH-stöd på en Cisco IOS-router:

  1. konfigurera kommandot värdnamn.

  2. konfigurera DNS-domänen.

  3. generera SSH-nyckeln som ska användas.

  4. Aktivera SSH transportstöd för Virtual type terminal (vtys).,

om du vill att en enhet ska fungera som en SSH-klient till den andra kan du lägga till ssh till en andra enhet som heter Reed. Dessa enheter är sedan i en klient-server arrangemang, där Carter fungerar som servern, och Reed fungerar som klienten. Cisco IOS SSH-klientkonfigurationen på Reed är densamma som krävs för SSH-serverkonfigurationen på Carter.,

ge kommandot till SSH från Cisco IOS SSH-klienten (Reed) till Cisco IOS SSH-servern (Carter) för att testa detta:

  • SSH v1:

    ssh -l cisco -c 3des 10.13.1.99
  • SSH v2: SSH-klienten (Reed) till Cisco IOS SSH-servern (Carter) för att testa detta:

    • ssh -v 2 -c aes256-cbc -m hmac-sha1-160 -l cisco 10.31.1.99

    konfigurera en iOS-router som en ssh-server som utför RSA-baserad användarautentisering

    slutför dessa steg för att konfigurera SSH-servern för att utföra RSA-baserad autentisering.,

    Lägg till SSH-Terminal-Line Access

    Om du behöver utgående SSH-terminal-line autentisering, kan du konfigurera och testa SSH för utgående omvänd Telnets genom Carter, som fungerar som en comm server till Philly.,GH Carter från Reed med hjälp av detta kommando:

    • SSH v1:

      ssh -c 3des -p 2002 10.13.1.99
    • SSH v2:

      ssh -v 2 -c aes256-cbc -m hmac-sha1-160 -p 2002 10.31.1.99

    Du kan använda det här kommandot från Solaris:

    ssh -c 3des -p 2002 -x -v 10.13.1.99

    begränsa SSH-åtkomst till ett delnät

    Du måste begränsa ssh-anslutning till ett specifikt subnätverk där alla andra ssh-försök från iPS utanför SUBNÄTVERKET ska släppas.,

    Du kan använda dessa steg för att åstadkomma samma sak:

    1. definiera en åtkomstlista som tillåter trafiken från det specifika delnätet.

    2. begränsa åtkomsten till VTY-linjegränssnittet med en åtkomstklass.

    detta är ett exempel konfiguration. I det här exemplet är endast SSH-åtkomst till delnätet 10.10.10.0 255.255.255.0 tillåtet, alla andra nekas åtkomst.

    Obs! samma procedur för att låsa SSH-åtkomst är också tillämplig på switchplattformar.,Configure the SSH Version

    Configure SSH v1:

    carter(config)#ip ssh version 1

    Configure SSH v2:

    carter(config)#ip ssh version 2

    Configure SSH v1 and v2:

    carter(config)#no ip ssh version

    Note: You receive this error message when you use SSHv1:

    %SCHED-3-THRASHING: Process thrashing on watched message event.

    Note: Cisco bug ID CSCsu51740 (registered customers only) is filed for this issue., Lösning är att konfigurera sshv2.

    variationer på Bannerkommandoutmatning

    bannerkommandoutmatningen varierar mellan Telnet och olika versioner av SSH-anslutningar. Denna tabell visar hur olika alternativ för bannerkommandon fungerar med olika typer av anslutningar.,

    Kommando Alternativ för Banner Telnet endast SSH v1 SSH V1 och v2 ssh v2 endast
    banner inloggning visas innan du loggar in på enheten. visas inte. visas innan du loggar in på enheten., visas innan du loggar in på enheten.
    banner motd visas innan du loggar in på enheten. visas efter inloggning på enheten. visas efter inloggning på enheten. visas efter inloggning på enheten.
    banner exec visas efter inloggning på enheten., visas efter inloggning på enheten. visas efter inloggning på enheten. visas efter inloggning på enheten.

    Det går inte att visa Inloggningsbannern

    SSH version 2 stöder inloggningsbannern. Inloggningsbannern visas om SSH-klienten skickar användarnamnet när den initierar SSH-sessionen med Cisco-routern. Till exempel, när Secure Shell SSH-klienten används, visas inloggningsbannern., När PuTTY SSH-klienten används visas inte inloggningsbannern. Detta beror på att Secure Shell skickar användarnamnet som standard och PuTTY skickar inte användarnamnet som standard.

    Secure Shell-klienten behöver användarnamnet för att initiera anslutningen till den SSH-aktiverade enheten. Knappen Anslut är inte aktiverad om du inte anger värdnamnet och användarnamnet. Denna skärmdump visar att inloggningsbannern visas när Secure Shell ansluter till routern. Sedan visas lösenordsprompten för inloggningsbanner.,

    PuTTY-klienten kräver inte användarnamnet för att initiera SSH-anslutningen till routern. Denna skärmdump visar att PuTTY-klienten ansluter till routern och frågar efter användarnamn och lösenord. Det visar inte inloggningsbannern.

    denna skärmbild visar att inloggningsbannern visas när PuTTY är konfigurerad för att skicka användarnamnet till routern.,

    felsöka och visa kommandon

    innan du utfärdar felsökningskommandona som beskrivs och illustreras här, se viktig Information om Felsökningskommandon. Vissa show-kommandon stöds av Output Interpreter-verktyget (endast registrerade kunder) , vilket gör att du kan visa en analys av Visa kommandoutmatning.

    • debug ip ssh—visar felsökningsmeddelanden för SSH.

    • visa ssh—visar status för SSH-serveranslutningar.,

      carter#show ssh Connection Version Encryption State Username 0 1.5 DES Session started cisco
    • visa ip ssh—visar version och konfigurationsdata för SSH.,

    • Version 1 Connection and no Version 2

      carter#show ip ssh SSH Enabled - version 1.5 Authentication timeout: 60 secs; Authentication retries: 2
    • Version 2 Connection and no Version 1

      carter#show ip ssh SSH Enabled - version 2.0 Authentication timeout: 120 secs; Authentication retries: 3
    • Version 1 and Version 2 Connections

      carter#show ip ssh SSH Enabled - version 1.99 Authentication timeout: 120 secs; Authentication retries: 3

Sample Debug Output

Router Debug

Note: Some of this good debug output is wrapped to multiple lines because of spatial considerations.,

Server Debug

Obs: Denna utgång fångades på en Solaris-maskin.

vad kan gå fel

dessa avsnitt har prov felsökningsutmatning från flera felaktiga konfigurationer.,

SSH från en SSH-klient som inte kompileras med Data Encryption Standard (DES)

Solaris Debug

Router Debug

dåligt lösenord

Router Debug

SSH-klienten skickar kryptering som inte stöds (Blowfish)

Router Debug

Geting ”%SSH-3-privatekey: det går inte att hämta RSA privat nyckel för” fel

om du får det här felmeddelandet kan det bero på någon förändring i domännamnet eller värdnamnet. För att lösa detta, prova dessa lösningar.

  • nollställa RSA-tangenterna och återskapa nycklarna.,

    crypto key zeroize rsa label key_namecrypto key generate rsa label key_name modulus key_size
  • om den tidigare lösningen inte fungerar, prova dessa steg:

    1. nollställa alla RSA-nycklar.

    2. ladda om enheten.

    3. skapa nya märkta nycklar för SSH.

Cisco bug ID CSCsa83601 (endast registrerade kunder) har lämnats in för att hantera detta beteende.

felsökningstips

  • om dina konfigurationskommandon för SSH avvisas som olagliga kommandon har du inte lyckats skapa ett RSA-nyckelpar för routern., Se till att du har angett ett värdnamn och en domän. Använd sedan crypto key generate RSA-kommandot för att generera ett RSA-nyckelpar och aktivera SSH-servern.

  • När du konfigurerar RSA-nyckelparet kan du stöta på följande felmeddelanden:

    1. inget värdnamn specificerat

      Du måste konfigurera ett värdnamn för routern med kommandot hostname global configuration.

    2. ingen domän specificerad

      Du måste konfigurera en värddomän för routern med hjälp av det globala konfigurationskommandot IP domain-name.,

  • antalet tillåtna SSH-anslutningar är begränsat till det maximala antalet vtys som konfigurerats för routern. Varje SSH-anslutning använder en vty resurs.

  • SSH använder antingen lokal säkerhet eller säkerhetsprotokollet som är konfigurerat via AAA på routern för användarautentisering. När du konfigurerar AAA måste du se till att konsolen inte körs under AAA genom att använda ett sökord i det globala konfigurationsläget för att inaktivera AAA på konsolen.

  • inga SSH-serveranslutningar körs.,

    carter#show ssh%No SSHv2 server connections running.%No SSHv1 server connections running.

    den här utmatningen tyder på att SSH-servern är inaktiverad eller inte aktiverad korrekt. Om du redan har konfigurerat SSH rekommenderas att du konfigurerar om SSH-servern i enheten. Slutför dessa steg för att konfigurera om SSH-servern på enheten.

    1. Ta bort RSA-nyckelparet. När RSA-nyckelparet har tagits bort inaktiveras SSH-servern automatiskt.,

      carter(config)#crypto key zeroize rsa

      Obs! Det är viktigt att skapa ett nyckelpar med minst 768 som bitstorlek när du aktiverar SSH v2.

      Varning: Det här kommandot kan inte ångras efter att du har sparat konfigurationen, och efter att RSA-tangenterna har tagits bort kan du inte använda certifikat eller CERTIFIKATUTBYTEN eller delta i certifikatutbyten med andra IP Security (IPSec) – kamrater om du inte konfigurerar CA-interoperabilitet genom att regenerera RSA-nycklar, få CA-certifikatet och begära ditt eget certifikat igen.,Se crypto viktiga zeroize rsa – Cisco IOS Security Command Reference, Release 12.3 för mer information om detta kommando.

    2. konfigurera om enhetens värdnamn och domännamn.

      carter(config)#hostname hostnamecarter(config)#ip domain-name domainname
    3. skapa ett RSA-nyckelpar för din router, vilket automatiskt möjliggör SSH.

      carter(config)#crypto key generate rsa

      se crypto key generate RSA – Cisco IOS Security Command Reference, släpp 12.3 för mer information om användningen av detta kommando.,

      Obs! Du kan få felmeddelandet SSH2 0: oväntad mesg-typ på grund av ett paket som inte är förståeligt av routern. Öka nyckellängden medan du genererar RSA-nycklar för SSH för att lösa problemet.

    4. konfigurera SSH-server. För att aktivera och konfigurera en Cisco-router/switch för SSH-server kan du konfigurera SSH parametrar. Om du inte konfigurerar SSH-parametrar används standardvärdena.,ip ssh {/}

      carter(config)# ip ssh

      se IP SSH – Cisco IOS Security Command Reference, släpp 12.3 för mer information om användningen av det här kommandot.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *