User Tools

Site Tools


start:cursos:cisco

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
start:cursos:cisco [2026/03/18 23:06] – IPv6 192.168.10.1start:cursos:cisco [2026/03/31 14:43] (current) – [Niveles de acceso privilegiado] 192.168.10.1
Line 1176: Line 1176:
  
 |Tipo de Dirección |Prefijo / Rango |Enrutable|Alcance |Uso principal| |Tipo de Dirección |Prefijo / Rango |Enrutable|Alcance |Uso principal|
-|Global Unicast |2000::/(2000: - 3FFF:) |Sí|Internet global |Comunicación pública en Internet| +|Global Unicast |2000::/3 - 3FFF::/3 |Sí|Internet global |Comunicación pública en Internet| 
-|Unique Local |FC00::/7 (FD00::/8 común) |Sólo red privada|Organización privada |Similar a IPv4 privadas (192.168.x.x)| +|Unique Local |FC00::/7 (FD00::/8 común) |Sólo red privada|Organización privada |Similar a IPv4  (192.168.x.x) con /64
-|Link-Local |FE80::/10 (FE80::/64 real) |No |Misma red física |Comunicación local, vecinos, routing|+|Link-Local |FE80::/10 - FEB0::/10 |No |Un segmento red|Comunicación local, vecinos, routing con /64|
 |Multicast |FF00::/8 |NO (depende)|Variable (global, local, etc.) |Envío a múltiples destinos| |Multicast |FF00::/8 |NO (depende)|Variable (global, local, etc.) |Envío a múltiples destinos|
 |Anycast |(asignado del rango unicast) | |Variable |Múltiples nodos comparten misma IP, responde el más cercano| |Anycast |(asignado del rango unicast) | |Variable |Múltiples nodos comparten misma IP, responde el más cercano|
  
 +  * Al habilitar IPv6 en una interfaz de un router Cisco, además de la que pueda tener de otro tipo (normalmente Global Unicast), se genera automáticamente una dirección Link-Local con base EUI-64 (Extended Unique Identifier-64). Las direcciones EUI-64 generan automáticamente una dirección IPv6 única basándose en los 48 bits de la mac de la interfaz, produciendo un resultado parecido al de usar DHCP. También se puede configurar manualmente una dirección Link-Local diferente. Es obligatorio tener una IPv6 de tipo Link-Local en una interfaz con IPv6, mientras que el resto son opcionales.
 +  * Se pueden tener múltiples direcciones IPv6 en un mismo interfaz (IPv4 sólo admite 2).
 +  * Para generar la dirección Link-Local con EUI-64 en una interfaz con una dirección MAC `00:1A:2B:3C:4D:5E`, el proceso sería:
 +    * Se divide en dos mitades, `00:1A:28` y `3C:4D:5E`.
 +    * Se inserta `FF:FE` en medio: `00:1A:2B:FF:FE:3C:4D:5E`
 +    * Se invierte el séptimo bit del primer byte (de universal a local): `00000000`=> `00000010` = `02` en hexadecimal.
 +    * Tras insertar el prefijo, la dirección final es `FE80::021A:2BFF:FE3C:4D5E`.
 +  * Se puede usar la misma ip Link-Local en varias interfaces del mismo dispositivo.
 +
 +
 +===== Seguridad =====
 +
 +Por defecto, los switches y routers vienen sin seguridad. Esto quiere decir que se puede conectar a través de la consola sin una contraseña. 
 +
 +==== Acceso por consola ====
 +
 +
 +Tenemos varias "líneas" (`line`), y para la consola usamos `console`. Como sólo hay una línea física, el número es 0.
 +
 +
 +
 +```
 +R1(config)#line console 0
 +R1(config-line)#password secretpass
 +R1(config-line)#login
 +```
 +
 +Es importante tener en cuenta que hay que poner `login` después, porque si no, no surtirá efecto. Podemos probarlo usando `exit`:
 +
 +```
 +User Access Verification
 +
 +Password: 
 +
 +R1>
 +
 +```
 +
 +==== Acceso via telnet ====
 +El acceso via telnet no está activado por defecto. Además, hay que configurar una dirección ip para el dispositivo. Para usar telnet usamos la línea `vty`. Hay 16 líneas, de 0 a 15. Por defecto, configuramos todas, de forma similar a como hicimos con la consola.
 +
 +En un switch capa 2, que no tiene ip, tenemos que poner una ip de gestión en la vlan 1. Después, configuramos la contraseña en las líneas.
 +
 +```
 +
 +Switch>enable
 +Switch#conf t
 +Enter configuration commands, one per line.  End with CNTL/Z.
 +Switch(config)#int vlan 1
 +Switch(config-if)#ip address 192.168.0.10 255.255.255.0
 +Switch(config-if)#no shutdown 
 +
 +
 +Switch(config)#line vty 0 15
 +Switch(config-line)#password 1234
 +Switch(config-line)#login
 +
 +```
 +
 +Luego, desde un pc de la misma red, podemos conectarnos por telnet usando esa contraseña:
 +
 +
 +```
 +C:\>telnet 192.168.0.10
 +Trying 192.168.0.10 ...Open
 +
 +
 +User Access Verification
 +
 +Password: 
 +Switch>
 +
 +```
 +
 +==== Logout automático ====
 +
 +Por defecto, hay un tiempo de 10 minutos de inactividad (timeout) tras el cual la sesión expirará. Esto se puede cambiar con `exec-timeout`, y se puede hacer de forma independiente para el tipo de línea:
 +
 +```
 +R1(config)#line con 0
 +R1(config-line)#exec-timeout 15
 +R1(config)#line vty 0 15
 +R1(config-line)#exec-timeout 5 30
 +
 +```
 +
 +Hemos puesto que para la consola, el timeout sea de 15 minutos, y para telnet, de 5 minutos y 30 segundos.
 +
 +Si se pone `0` como parámetro, será tiempo indefinido. Esto tiene el problema de que si no se finaliza correctamente una sesión, nadie podrá usar esa línea.
 +
 +
 +==== Listas de acceso ====
 +
 +Se pueden crear listas de acceso para limitar quién puede acceder remotamente.
 +
 +```
 +R1(config)#access-list 1 permit host 10.0.0.10
 +R1(config)#line vty 0 15
 +R1(config-line)#login
 +R1(config-line)#password 1234
 +R1(config-line)#access-class 1 in
 +
 +```
 +
 +Esto hace que sólo la ip `10.0.0.10` pueda acceder remotamente por telnet.
 +
 +```
 +C:\> telnet 10.0.0.1
 +Trying 10.0.0.1 …
 +% Connection refused by remote host
 +```
 +
 +==== Cifrado de contraseñas ====
 +
 +Hasta el momento, hemos limitado el acceso al dispositivo, pero una vez puesta esa contraseña, se accede desde el modo de usuario al modo de administrador sin contraseña. Esto se puede modificar estableciendo una contraseña desde el modo de configuración del administrador:
 +
 +```
 +R1(config)#enable password secretpass
 +```
 +
 +De esta forma, es necesario introducir esta contraseña para pasar de usuario a administrador. Sin embargo, esta contraseña es visible al mostrar la configuración:
 +
 +```
 +R1#show run
 +Building configuration...
 +!
 +enable password secretpass
 +!
 +
 +```
 +
 +La primer forma de evitar esto es usando `enable secret` en lugar de `enable password` al crear las contraseñas. En caso de haber puesto una, si se usa después `enable secret`, se usará ésta en lugar de la anterior a la hora de acceder como administrador. Al mostrar la configuración, se muestran ambas:
 +
 +```
 +!
 +!
 +enable secret 5 $1$mERr$/Q/mbs3O9oHsKR7rNG4e81
 +enable password secretpass
 +!
 +```
 +
 +Sin embargo, otras contraseñas se siguen viendo en claro. Para evitar esto del todo, se utiliza `service password-encryption` en modo de configuración.
 +
 +```
 +R1(config)#service password-encryption
 +```
 +
 +De esta forma, ya no se muestra ninguna contraseña en claro.
 +
 +==== Usuarios ====
 +
 +Lo visto hasta ahora era seguridad a nivel de línea, donde todos los administradores usan la misma contraseña, pero también se puede usar seguridad basada en usuarios.
 +
 +```
 +R1(config)#username admin1 secret pass1
 +R1(config)#username admin2 secret pass2
 +R1(config)#line console 0
 +R1(config-line)#login local
 +R1(config)#line vty 0 15
 +R1(config-line)#login local
 +```
 +
 +De eesta forma, usando `login local` en las líneas, ahora forzamos a que se usen usuarios
 +
 +```
 +C:\>telnet 10.0.0.1
 +Trying 10.0.0.1 ...Open
 +User Access Verification
 +Username: admin1
 +Password: <pass1>
 +R1>
 +```
 +
 +==== Niveles de acceso privilegiado ====
 +
 +Hay 16 niveles de acceso privilegiado, del 0 al 15. Por defecto, se accede al nivel 1, que es el nivel de usuario. Se pueden asignar niveles de acceso a los usuarios, y también se pueden definir qué comandos se pueden usar según el nivel de acceso.
 +
 +Por defecto, hay 3 niveles: 0 (que apenas tiene 5 comandos: `logout`, `enable`, `disable`,
 +`help`, y `exit`); el 1, que es el de usuario, y el 15, que es el de administrador.
 +
 +
 +```
 +R1(config)#username admin1 secret secret1
 +R1(config)#username admin2 privilege 15 secret secret2
 +R1(config)#username admin3 privilege 5 secret secret3
 +R1(config)#line console 0
 +R1(config-line)#login local
 +R1(config)#line vty 0 15
 +R1(config-line)#login local
 +```
 +
 +
 +```
 +C:\>telnet 10.0.0.1
 +Trying 10.0.0.1 ...Open
 +User Access Verification
 +Username: admin1
 +Password: <secret1>
 +R1>
 +R1>show privilege
 +Current privilege level is 1
 +
 +R1>show ip interface brief
 +Interface IP-Address OK? Method Status Protocol
 +GigabitEthernet0/0 10.0.0.1 YES manual up up
 +GigabitEthernet0/1 10.0.1.1 YES manual up up
 +GigabitEthernet0/2 unassigned YES unset administratively down down
 +Vlan1 unassigned YES unset administratively down down
 +R1>show run
 +^
 +% Invalid input detected at '^' marker.
 +
 +```
 +
 +```
 +C:\>telnet 10.0.0.1
 +Trying 10.0.0.1 ...Open
 +User Access Verification
 +Username: admin3
 +Password: <secret3>
 +R1>show ip interface brief
 +Interface IP-Address OK? Method Status Protocol
 +GigabitEthernet0/0 10.0.0.1 YES manual up up
 +GigabitEthernet0/1 10.0.1.1 YES manual up up
 +GigabitEthernet0/2 unassigned YES unset administratively down down
 +Vlan1 unassigned YES unset administratively down down
 +R1>show run
 +^
 +% Invalid input detected at '^' marker.
 +
 +```
 +
 +
 +
 +```
 +C:\>telnet 10.0.0.1
 +Trying 10.0.0.1 ...Open
 +User Access Verification
 +Username: admin2
 +Password: <secret2>
 +R1#
 +R1#show privilege
 +Current privilege level is 15
 +
 +R1#sh run
 +Building configuration...
 +Current configuration : 1380 bytes
 +version 15.1
 +!
 +R1#configure terminal
 +R1(config)#
 +```
 +
 +Si añadimos un privilegio al nivel 5:
 +
 +```
 +R1(config)#privilege exec level 5 show running-config
 +```
 +
 +
 +```
 +C:\>telnet 10.0.0.1
 +Trying 10.0.0.1 ...Open
 +User Access Verification
 +Username: admin3
 +Password: <secret3>
 +R1#sh run
 +Building configuration...
 +Current configuration : 1380 bytes
 +version 15.1
 +!
 +R1#configure terminal
 +^
 +% Invalid input detected at '^' marker.
 +```
 +
 +También se pueden establecer contraseñas para los niveles. Si no se especifica nivel, es el 15:
 +
 +```
 +R1(config)#enable secret secret1
 +R1(config)#enable secret level 5 secret2
 +```
 +
 +```
 +C:\>telnet 10.0.0.1
 +Trying 10.0.0.1 ...Open
 +User Access Verification
 +Username: admin1
 +Password: <secret1>
 +R1>show run
 +^
 +% Invalid input detected at '^' marker.
 +R1>enable 5
 +Password: <secret2>
 +R1#show run
 +Building configuration...
 +Current configuration : 1380 bytes
 +!
 +version 15.1
 +no service timestamps log datetime msec
 +no service timestamps debug datetime msec
 +no service password-encryption
 +!
 +hostname R1
 +```
 +
 +==== Acceso SSH ====
 +
 +Para configurar el acceso por SSH, primero hay que generar una clave RSA en el servidor de al menos 768 bits. Esto se hace con `ip domain-name <dominio>` y `crypto key generate rsa`, donde se nos pregunta por la longitud:
 +
 +
 +```
 +R1(config)#ip domain-name flackbox.com
 +R1(config)#crypto key generate rsa
 +The name for the keys will be: R1.flackbox.com
 +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]: 768
 +% Generating 768 bit RSA keys, keys will be non-
 +exportable...[OK]
 +```
 +
 +SSh usa la misma línea que Telnet, pero con la directiva `transport input <protocolo>`, se puede elegir `ssh`, `telnet`, `all` o `none`. También conviene especificar que se use la versión 2.
 +
 +
 +```
 +R1(config)#username admin secret secret1
 +R1(config)#line vty 0 15
 +R1(config-line)#transport input ssh
 +R1(config-line)#login local
 +R1(config-line)#exit
 +R1(config)#ip ssh version 2
 +
 +```
 +
 +Luego, desde cualquier cliente ssh:
 +
 +```
 +C:\> ssh –l admin 10.0.0.1
 +Open
 +Password: <secret1>
 +R1>
 +```
start/cursos/cisco.1773875192.txt.gz · Last modified: 2026/03/18 23:06 by 192.168.10.1