4.4.9 Lab – Configure Network Devices with SSH Answers
Lab – Configure Network Devices with SSH (Answers Version)
Answers Note: Red font color or gray highlights indicate text that appears in the instructor copy only.
Topology
Addressing Table
Device |
Interface |
IP Address |
Subnet Mask |
Default Gateway |
R1 |
G0/0/1 |
192.168.1.1 |
255.255.255.0 |
N/A |
S1 |
VLAN 1 |
192.168.1.11 |
255.255.255.0 |
192.168.1.1 |
PC-A |
NIC |
192.168.1.254 |
255.255.255.0 |
192.168.1.1 |
Blank Line, No additional information
Objectives
Part 1: Configure Basic Device Settings
Part 2: Configure the Router for SSH Access
Part 3: Configure the Switch for SSH Access
Part 4: SSH from the CLI on the Switch
Background / Scenario
In the past, Telnet was the most common network protocol used to remotely configure network devices. Telnet does not encrypt the information between the client and server. This allows a network sniffer to intercept passwords and configuration information.
Secure Shell (SSH) is a network protocol that establishes a secure terminal emulation connection to a router or other networking device. SSH encrypts all information that passes over the network link and provides authentication of the remote computer. SSH is rapidly replacing Telnet as the remote login tool of choice for network professionals. SSH is most often used to log in to a remote device and execute commands. However, it can also transfer files using the associated Secure FTP (SFTP) or Secure Copy (SCP) protocols.
The network devices that are communicating must be configured to support SSH in order for SSH to function. In this lab, you will enable the SSH server on a router and then connect to that router using a PC with an SSH client installed. On a local network, the connection is normally made using Ethernet and IP.
Note: The routers used with hands-on labs are Cisco 4221 with Cisco IOS XE Release 16.9.6 (universalk9 image). The switches used in the labs are Cisco Catalyst 2960s with Cisco IOS Release 15.2(7) (lanbasek9 image). Other routers, switches, and Cisco IOS versions can be used. Depending on the model and Cisco IOS version, the commands available and the output produced might vary from what is shown in the labs. Refer to the Router Interface Summary Table at the end of the lab for the correct interface identifiers.
Note: Make sure that the routers and switches have been erased and have no startup configurations. If you are unsure, contact your instructor.
Required Resources
1 Router (Cisco 4221 with Cisco XE Release 16.9.6 universal image or comparable with a Security Technology Package license)
1 Switch (Cisco 2960+ with Cisco IOS Release 15.2(7) lanbasek9 image or comparable)
1 PC (Windows OS with a terminal emulation program, such as Tera Term or PuTTy installed)
Console cables to configure the Cisco IOS devices
Ethernet cables as shown in the topology
Instructions
Part 1:Configure Basic Device Settings
In Part 1, you will set up the network topology and configure basic settings, such as the interface IP addresses, device access, and passwords on the router.
Step 1:Cable the network as shown in the topology.
Step 2:Initialize and reload the router and switch.
Step 3:Configure the router.
Open configuration window
- Console into the router and enable privileged EXEC mode.
Router> enable
- Enter configuration mode.
Router# configure terminal
- Disable DNS lookup to prevent the router from attempting to translate incorrectly entered commands as though they were host names.
Router(config)# no ip domain lookup
- Assign class as the privileged EXEC encrypted password using the type 8 (PBKDF2) hashing algorithm.
Router(config)# enable algorithm-type sha256 secret class
- Assign cisco as the console password and enable login.
Router(config)# line console 0
Router(config-line)# password cisco
Router(config-line)# login
- Assign cisco as the VTY password and enable login.
Router(config)# line vty 0 4
Router(config-line)# password cisco
Router(config-line)# login
- Encrypt the plaintext passwords.
Router(config)# service password-encryption
- Create a banner that will warn anyone accessing the device that unauthorized access is prohibited.
Router(config)# banner motd $ Authorized Users Only! $
- Configure and activate the G0/0/1 interface on the router using the information contained in the Addressing Table.
Router(config)# interface g0/0/1
Router(config-if)# ip address 192.168.1.1 255.255.255.0
Router(config-if)# no shutdown
- Save the running configuration to the startup configuration file.
Router# copy running-config startup-config
Step 4:Configure PC-A.
- Configure PC-A with an IP address and subnet mask.
- Configure a default gateway for PC-A.
Step 5:Verify network connectivity.
Ping R1 from PC-A. If the ping fails, troubleshoot the connection.
Close configuration window
Part 2:Configure the Router for SSH Access
Using Telnet to connect to a network device is a security risk because all the information is transmitted in a clear text format. SSH encrypts the session data and provides device authentication; therefore, SSH is recommended for remote connections. In Part 2, you will configure the router to accept SSH connections over the VTY lines.
Step 1:Configure device authentication.
The device name and domain are used as part of the crypto key when it is generated. Therefore, these names must be entered prior to issuing the crypto key command.
Open configuration window
- Configure device name.
Router(config)# hostname R1
- Configure the domain for the device.
R1(config)# ip domain-name netsec.com
Step 2:Configure the encryption key method.
R1(config)# crypto key generate rsa modulus 1024
The name for the keys will be: R1.netsec.com
% The key modulus size is 1024 bits
% Generating 1024 bit RSA keys, keys will be non-exportable…
[OK] (elapsed time was 0 seconds)
R1(config)#
*Jan 28 18:01:25.900: %CRYPTO_ENGINE-5-KEY_ADDITION: A key named R1.netsec.com has been generated or imported by crypto-engine
Step 3:Configure a local database username.
- Configure a username using admin as the username and Adm1nP@55 as the password using the type 8 (PBKDF2) hashing algorithm.
R1(config)# username admin algorithm-type sha256 secret Adm1nP@55
Step 4:Enable SSH on the VTY lines.
- Enable SSH on the inbound VTY lines using the transport input command.
R1(config)# line vty 0 4
R1(config-line)# transport input ssh
- Change the login method to use the local database for user verification.
R1(config-line)# login local
R1(config-line)# end
Step 5:Save the running configuration to the startup configuration file.
R1# copy running-config startup-config
Destination filename [startup-config]?
Building configuration…
[OK]
R1#
Step 6:Establish an SSH connection to the router.
- Start Tera Term from PC-A.
- Establish an SSH session to R1. Use the username admin and password Adm1nP@55. You should be able to establish an SSH session with R1.
Close configuration window
Part 3:Configure the Switch for SSH Access
In Part 3, you will configure the switch to accept SSH connections. After the switch has been configured, establish an SSH session using Tera Term.
Step 1:Configure the basic settings on the switch.
Open configuration window
- Console into the switch and enable privileged EXEC mode.
Switch> enable
- Enter configuration mode.
Switch# configure terminal
- Disable DNS lookup to prevent the router from attempting to translate incorrectly entered commands as though they were host names.
Switch(config)# no ip domain–lookup
- Assign class as the privileged EXEC encrypted password using the type 8 (PBKDF2) hashing algorithm.
Switch(config)# enable algorithm-type sha256 secret class
- Assign cisco as the console password and enable login.
Switch(config)# line console 0
Switch(config-line)# password cisco
Switch(config-line)# login
- Assign cisco as the VTY password and enable login.
Switch(config)# line vty 0 15
Switch(config-line)# password cisco
Switch(config-line)# login
- Encrypt the plain text passwords.
Switch(config)# service password-encryption
- Create a banner that will warn anyone accessing the device that unauthorized access is prohibited.
Switch(config)# banner motd $ Authorized Users Only! $
- Configure and activate the VLAN 1 interface on the switch according to the Addressing Table.
Switch(config)# interface vlan 1
Switch(config-if)# ip address 192.168.1.11 255.255.255.0
Switch(config-if)# no shutdown
- Save the running configuration to the startup configuration file.
Switch# copy running-config startup-config
Step 2:Configure the switch for SSH connectivity.
Use the same commands that you used to configure SSH on the router in Part 2 to configure SSH for the switch.
- Configure the device name as listed in the Addressing Table.
- Configure the domain for the device.
S1(config)# ip domain-name netsec.com
- Configure the encryption key method.
S1(config)# crypto key generate rsa modulus 1024
- Configure a local database username using the type 8 (PBKDF2) hashing algorithm.
S1(config)# username admin algorithm-type sha256 secret Adm1nP@55
- Enable Telnet and SSH on the VTY lines.
S1(config)# line vty 0 15
S1(config-line)# transport input ssh
- Change the login method to use the local database for user verification.
S1(config-line)# login local
S1(config-line)# end
Step 3:Establish an SSH connection to the switch.
Start Tera Term from PC-A, and then SSH to the SVI interface on S1.
Question:
Are you able to establish an SSH session with the switch?
Type your answers here.
Yes. SSH can be configured on a switch using the same commands that were used on the router.
Close configuration window
Part 4:SSH From the CLI on the Switch
The SSH client is built into the Cisco IOS and can be run from the CLI. In Part 4, you will SSH to the router from the CLI on the switch.
Step 1:View the parameters available for the Cisco IOS SSH client.
Open configuration window
Use the question mark (?) to display the parameter options available with the ssh command.
S1# ssh ?
-cSelect encryption algorithm
-lLog in using this user name
-mSelect HMAC algorithm
-oSpecify options
-pConnect to this port
-vSpecify SSH Protocol Version
-vrfSpecify vrf name
WORDIP address or hostname of a remote system
Step 2:SSH to R1 from S1.
- You must use the –l admin option when you SSH to R1. This allows you to log in as user admin. When prompted, enter Adm1nP@55 for the password.
S1# ssh -l admin 192.168.1.1
Password:
Authorized Users Only!
R1>
- You can return to S1 without closing the SSH session to R1 by pressing Ctrl+Shift+6. Release the Ctrl+Shift+6 keys and press x. The switch privileged EXEC prompt displays.
R1>
S1#
- To return to the SSH session on R1, press Enter on a blank CLI line. You may need to press Enter a second time to see the router CLI prompt.
S1#
[Resuming connection 1 to 192.168.1.1 … ]
R1>
- To end the SSH session on R1, type exit at the router prompt.
R1# exit
[Connection to 192.168.1.1 closed by foreign host]
S1#
Question:
What versions of SSH are supported from the CLI?
Type your answers here.
Answers may vary. This can be determined by using the ssh –v ? on the command line. The 2960 switch running IOS version 15.0(2) supports SSH v1 and V2.
S1# ssh -v ?
1Protocol Version 1
2Protocol Version 2
Close configuration window
Reflection Question
How would you provide multiple users, each with their own username, access to a network device?
Type your answers here.
Answers may vary. You would add each user’s username and password to the local database using the username command. It is also possible to use a RADIUS or TACACS server, but this has not been covered yet.
Router Interface Summary Table
Router Model |
Ethernet Interface #1 |
Ethernet Interface #2 |
Serial Interface #1 |
Serial Interface #2 |
1900 |
Gigabit Ethernet 0/0 (G0/0) |
Gigabit Ethernet 0/1 (G0/1) |
Serial 0/0/0 (S0/0/0) |
Serial 0/0/1 (S0/0/1) |
2900 |
Gigabit Ethernet 0/0 (G0/0) |
Gigabit Ethernet 0/1 (G0/1) |
Serial 0/0/0 (S0/0/0) |
Serial 0/0/1 (S0/0/1) |
4221 |
Gigabit Ethernet 0/0/0 (G0/0/0) |
Gigabit Ethernet 0/0/1 (G0/0/1) |
Serial 0/1/0 (S0/1/0) |
Serial 0/1/1 (S0/1/1) |
4300 |
Gigabit Ethernet 0/0/0 (G0/0/0) |
Gigabit Ethernet 0/0/1 (G0/0/1) |
Serial 0/1/0 (S0/1/0) |
Serial 0/1/1 (S0/1/1) |
Blank Line, No additional information
Note: To find out how the router is configured, look at the interfaces to identify the type of router and how many interfaces the router has. There is no way to effectively list all the combinations of configurations for each router class. This table includes identifiers for the possible combinations of Ethernet and Serial interfaces in the device. The table does not include any other type of interface, even though a specific router may contain one. An example of this might be an ISDN BRI interface. The string in parenthesis is the legal abbreviation that can be used in Cisco IOS commands to represent the interface.
Device Configs – Final
Router R1
service timestamps debug datetime msec
service timestamps log datetime msec
service password-encryption
platform qfp utilization monitor load 80
no platform punt-keepalive disable-kernel-core
!
hostname R1
!
boot-start-marker
boot-end-marker
!
enable secret 8 $8$vVzanSruiWpTWi$20q6ZsSG9qftpqLBpmlm/ilx97egFQFX4vjcITCVoXY
!
no aaa new-model
!
no ip domain lookup
ip domain name netsec.com
!
login on-success log
!
subscriber templating
!
multilink bundle-name authenticated
!
no license smart enable
diagnostic bootup level minimal
!
spanning-tree extend system-id
!
username admin secret 8 $8$EPI1PC8kQmf.JW$yTRCDbjNHtfUNOc8BPurK9MeTDcK4iDCN2AYp9ojAbE
!
redundancy
mode none
!
interface GigabitEthernet0/0/0
no ip address
negotiation auto
!
interface GigabitEthernet0/0/1
ip address 192.168.1.1 255.255.255.0
negotiation auto
!
ip forward-protocol nd
no ip http server
ip http secure-server
!
control-plane
!
banner motd ^C Authorized Users Only ^C
!
line con 0
password 7 094F471A1A0A
logging synchronous
login
transport input none
stopbits 1
line aux 0
stopbits 1
line vty 0 4
password 7 01100F175804
login local
transport input ssh
!
end
Switch S1
service timestamps debug datetime msec
service timestamps log datetime msec
service password-encryption
!
hostname S1
!
boot-start-marker
boot-end-marker
!
enable secret 8 $8$WJyj0VlZBFBC3p$qpdibBZA6h0c8Wf2V.BAxHlRNh/8KzehUwLYjzOah0M
!
username admin secret 8 $8$9c/w9Ex7eg6C/X$Ti824i1X0KFnTTBiO9OKw7dkA8wRnmjnsE40Dw.6jpo
!
no aaa new-model
system mtu routing 1500
no ip domain-lookup
ip domain-name netsec.com
!
spanning-tree mode pvst
spanning-tree extend system-id
!
vlan internal allocation policy ascending
!
interface FastEthernet0/1
!
interface FastEthernet0/2
!
interface FastEthernet0/3
!
interface FastEthernet0/4
!
interface FastEthernet0/5
!
interface FastEthernet0/6
!
interface FastEthernet0/7
!
interface FastEthernet0/8
!
interface FastEthernet0/9
!
interface FastEthernet0/10
!
interface FastEthernet0/11
!
interface FastEthernet0/12
!
interface FastEthernet0/13
!
interface FastEthernet0/14
!
interface FastEthernet0/15
!
interface FastEthernet0/16
!
interface FastEthernet0/17
!
interface FastEthernet0/18
!
interface FastEthernet0/19
!
interface FastEthernet0/20
!
interface FastEthernet0/21
!
interface FastEthernet0/22
!
interface FastEthernet0/23
!
interface FastEthernet0/24
!
interface GigabitEthernet0/1
!
interface GigabitEthernet0/2
!
interface Vlan1
ip address 192.168.1.11 255.255.255.0
!
ip classless
ip http server
ip http secure-server
!
banner motd ^C Authorized Users Only ^C
!
line con 0
password 7 00071A150754
logging synchronous
login
line vty 0 4
password 7 00071A150754
login local
transport input ssh
line vty 5 15
password 7 00071A150754
login local
transport input ssh
!
end