Bài viết chuyên đề

Hướng Dẫn Khôi Phục Mật Khẩu Router Cisco (Chuyên Đề IP Services)

08/04/2021 12:35:51

Các thiết bị mạng của Cisco như router, switch, firewall thường không chỉ thực hiện những nhiệm vụ chính của chúng như định tuyến, chuyển mạch, kiểm soát truy nhập,… mà còn có thể kiêm nhiệm thêm nhiều công năng khác. Ví dụ, ta có thể cấu hình để biến một router Cisco thành một DHCP server cấp IP xuống cho các end – user trong mạng, hay cấu hình router này thành một TFTP server phục vụ việc lưu trữ các thông tin nào đó như file cấu hình hay hệ điều hành của các thiết bị mạng khác,.v.v… Các sản phẩm của Cisco nhìn chung thường là các dòng thiết bị đa dịch vụ (integrated services). Ngoài ra, ta cũng thấy rằng hệ điều hành của các thiết bị Cisco cũng được tích hợp rất nhiều các tính năng phục vụ cho công việc quản lý, giám sát hệ thống mạng, hỗ trợ rất tốt cho các hệ thống quản trị hạ tầng của mạng doanh nghiệp. Bắt đầu từ bài viết này, chúng ta sẽ cùng nhau điểm qua các tính năng “đa dịch vụ” cũng như các tính năng hỗ trợ quản lý hạ tầng trên các thiết bị Cisco. Chúng ta cũng cùng nhau điểm lại các kỹ năng cơ bản trên thiết bị mà một người kỹ sư vận hành sản phẩm của Cisco cần phải nắm. Tập hợp các tính năng và kỹ năng cơ bản này tạo thành một nhóm các tính năng được gọi là IP Services. Bài đầu tiên của chuyên đề IP Services này sẽ giới thiệu một vấn đề cơ bản mà chúng ta cần phải nắm vững khi quản trị một router Cisco: khôi phục mật khẩu cho router.

Sơ đồ:

Sơ đồ bài lab

Mô tả:

Như ta biết, để thực hiện bảo mật cho thiết bị, người quản trị thường cài đặt các password như enable password, console password hay telnet password để ngăn chặn việc truy nhập không hợp lệ vào thiết bị. Tuy nhiên, vì một số lý do nào đó, người quản trị có thể quên mất các password này hoặc cấu hình sai một vài ký tự nào đó khi thiết lập các password dẫn đến không thể đăng nhập được vào thiết bị.

Chúng ta cùng nhau điểm qua cách thức khôi phục lại mật khẩu của Router trong những trường hợp như trên, giúp người quản trị có thể truy nhập lại được thiết bị của mình khi gặp sự cố.

Thực hiện:

Đầu tiên, giả sử rằng, ta có dự định đặt password enable cho Router là “cisco”, tuy nhiên, vì thao tác gõ bàn phím không cẩn thận, ta lại gõ thành “ciscowrong” và lưu password sai này vào file cấu hình:

R1(config)#enable password ciscowrong

R1(config)#exit

*Feb 25 03:03:39.603: %SYS-5-CONFIG_I: Configured from console by console

R1#copy running-config startup-config

Destination filename [startup-config]?

Building configuration...

[OK]

R1#

Sau một thời gian, khi từ mode User đi vào mode Privilege, ta được hỏi về enable password, vì đã ghi chú lại trong tài liệu về thiết bị rằng enable password là “cisco” nên ta đăng nhập bằng password này. Tuy nhiên, như đã đề cập ở trên, trước đó ta cấu hình sai nên Router không chấp nhận password đúng mà ta nhập:

R1>enable

Password:

Password:

Password:

% Bad passwords

 

R1>

Ta đã không thể đăng nhập được vào Router do mình quản lý. Vì vậy, ta phải thực hiện thao tác khôi phục mật khẩu cho Router.

Quy trình khôi phục mật khẩu cho Router được thực hiện dựa trên việc thay đổi giá trị của thanh ghi cấu hình để tác động đến bước thứ 4 trong tiến trình khởi động của Router. Thanh ghi cấu hình (Configuration Register) là một thanh ghi mềm 16 bit lưu trên bộ nhớ NVRAM của Router, thay đổi giá trị thanh ghi này sẽ ảnh hưởng đến một số hoạt động của Router. Một số giá trị tiêu biểu của thanh ghi cấu hình thường được sử dụng: 0x2102, 0x2142,… (kí hiệu “0x” chỉ ra rằng đây là giá trị Hexa).

Tiến trình khởi động của Router gồm các bước như sau:

  1. Bước 1 – P.O.S.T (Power On Self Test): Tại bước đầu tiên này, khi Router mới được bật lên, nó chạy một chương trình kiểm tra phần cứng (Hardware Diagnostic) kiểm tra tình trạng của mọi module phần cứng của Router. Khi mọi module đều qua được kỳ kiểm tra này, Router mới tiến hành chuyển sang bước thứ 2.
  2. Bước 2 – Load chương trình Bootstraps từ bộ nhớ ROM vào RAM: Chương trình này chịu trách nhiệm tìm kiếm và load IOS để vận hành Router.
  3. Bước 3 – Load IOS cho Router:

Chương trình bootstraps sẽ thực hiện load IOS cho Router.

  1. Bước 4 – Load file cấu hình cho Router:

Tùy thuộc vào giá trị của bit thứ 6 của thanh ghi cấu hình mà Router sẽ thực hiện các phương thức load cấu hình khác nhau.

·      Nếu bit 6 = 0 (vd: 0x2102): load file startup-config trong NVRAM vào RAM thành running-config để chạy.

·      Nếu bit 6 =1 (vd: 0x2142): bỏ qua file startup-config trong NVRAM, load vào một cấu hình trắng.

  1. Bước 1 – P.O.S.T (Power On Self Test): Tại bước đầu tiên này, khi Router mới được bật lên, nó chạy một chương trình kiểm tra phần cứng (Hardware Diagnostic) kiểm tra tình trạng của mọi module phần cứng của Router. Khi mọi module đều qua được kỳ kiểm tra này, Router mới tiến hành chuyển sang bước thứ 2.
  2. Bước 2 – Load chương trình Bootstraps từ bộ nhớ ROM vào RAM: Chương trình này chịu trách nhiệm tìm kiếm và load IOS để vận hành Router.
  3. Bước 3 – Load IOS cho Router: Chương trình bootstraps sẽ thực hiện load IOS cho Router.
  4. Bước 4 – Load file cấu hình cho Router:
  • Tùy thuộc vào giá trị của bit thứ 6 của thanh ghi cấu hình mà Router sẽ thực hiện các phương thức load cấu hình khác nhau.
  • Nếu bit 6 = 0 (vd: 0x2102): load file startup-config trong NVRAM vào RAM thành running-config để chạy.
  • Nếu bit 6 =1 (vd: 0x2142): bỏ qua file startup-config trong NVRAM, load vào một cấu hình trắng.

Nguyên tắc khôi phục mật khẩu cho Router là đổi bit 6 của thanh ghi cấu hình thành 1 (sử dụng giá trị thanh ghi là 0x2142) từ đó bỏ qua file cấu hình của Router khi khởi động. Vì file cấu hình lưu password nên nếu ta bỏ qua file cấu hình thì ta cũng bỏ qua được password trong quá trình đăng nhập Router.

Các bước thực hiện như sau:

Bước 1: Tắt/mở Router.

Ta thực hiện tắt cứng Router bằng công tắc nguồn rồi bật lại công tắc nguồn để khởi động lại Router. Chú ý rằng, để đảm bảo an toàn điện cho Router, sau khi tắt xong, ta chờ một khoảng thời gian từ 15 đến 30 giây rồi hãy mở lại Router.

Bước 2: Sử dụng tổ hợp phím ngắt để đưa Router vào mode ROMMON

Trong khi Router đang khởi động, ta nhấn tổ hợp phím ngắt “Ctrl – Break” để đưa Router vào mode ROMMON. Ta không nên nhấn ngắt quá sớm vì điều này có thể gây treo Router mà nên chờ khi màn hình Console hiện ra kích thước bộ nhớ chính thì hãy thực hiện ngắt.

System Bootstrap, Version 12.4(13r)T11, RELEASE SOFTWARE (fc1)

Technical Support: http://www.cisco.com/techsupport

Copyright (c) 2009 by cisco Systems, Inc.

 

Initializing memory for ECC

....

 

This platform does not support 1 GB Memory

Total Memory is Restricted to 768 MB

 

c2811 platform with 786432 Kbytes of main memory

Main memory is configured to 64 bit mode with ECC enabled

 

(Nhấn “Ctrl – Break” tại đây)

 

Upgrade ROMMON initialized

PC = 0xbfcd0d54, Cause = 0x2000, Status Reg = 0x3040a803

rommon 1 >

Bước 3: Thay đổi giá trị thanh ghi cấu hình

Tại mode ROMMON, ta thực hiện thay đổi giá trị của thanh ghi cấu hình từ giá trị mặc định là 0x2102 thành giá trị mới là 0x2142 để đảm bảo bit 6 được chuyển thành giá trị 1. Câu lệnh để thiết lập giá trị thanh ghi cấu hình ở ROMMON làconfreg”. Sau khi thay đổi xong, ta phải thực hiện khởi động lại Router để giá trị mới được áp dụng. Câu lệnh  để khởi động lại Router ở ROMMON làreset”.

rommon 1 > confreg 0x2142 <-Đổi giá trị thanh ghi thành 0x2142

 

You must reset or power cycle for new config to take effect

rommon 2 > reset <-Khởi động lại Router

c2811 platform with 786432 Kbytes of main memory

Main memory is configured to 64 bit mode with ECC enabled

(…)

 

Bước 4: Chỉnh sửa password.

Sau khi khởi động lại, vì giá trị thanh ghi cấu hình đã được đổi thành 0x2142 với bit số 6 = 1 nên ở bước thứ 4, Router sẽ bỏ qua file startup-config và đưa ra câu hỏi để chọn setup mode hoặc load vào một cấu hình trắng, ta chọn “no” như thường lệ để load vào một cấu hình trắng:

--- System Configuration Dialog ---

Would you like to enter the initial configuration dialog? [yes/no]: no

Press RETURN to get started!

*Feb 25 04:04:04.663: %VPN_HW-6-INFO_LOC: Crypto engine: onboard 0  State changed to: Initialized

*Feb 25 04:04:04.667: %VPN_HW-6-INFO_LOC: Crypto engine: onboard 0  State changed to: Enabled

*Feb 25 04:04:06.075: %LINEPROTO-5-UPDOWN: Line protocol on Interface VoIP-Null0, changed state to up

*Feb 25 04:04:06.075: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up

*Feb 25 04:04:06.075: %LINK-3-UPDOWN: Interface FastEthernet0/1, changed state to up

 

(Đã bỏ bớt một số dòng trong kết quả hiển thị)

 

Router>

Router>enable

Router# <- Đi được vào mode Privilege mà không bị hỏi password

Như trên ta thấy, ta đã bỏ qua được file cấu hình cũ có lưu password và đi được vào mode Privilege của Router khi sử dụng cấu hình trắng. Để thực hiện sửa lại password cũ cho đúng, chúng ta thực hiện load file cấu hình cũ vào Router bằng lệnhcopy startup-config running-config”:

Router#copy startup-config running-config

Destination filename [running-config]?

1527 bytes copied in 0.552 secs (2766 bytes/sec)

R1#

Ta thấy, cấu hình cũ đã được load lại vào thành running-config (kết quả chỉ rõ có bao nhiêu byte cấu hình đã được copy và tên của Router đổi lại từ tên mặc định là “Router” thành tên đã lưu từ trước ở file cấu hình là “R1”).

Ta tiến hành sửa lại password cho đúng, sau khi sửa xong, nhớ thực hiện lưu password mới này lại:

R1#configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

R1(config)#enable password cisco

R1(config)#exit

R1#

*Feb 25 04:23:54.031: %SYS-5-CONFIG_I: Configured from console by console

R1#write memory

Building configuration...

[OK]

R1#

Bước 5: Trả lại giá trị thanh ghi cấu hình về mặc định.

Sau khi hoàn tất xong việc chỉnh sửa password, ta thực hiện trả lại giá trị thanh ghi cấu hình về mặc định (0x2102). Câu lệnh để thay đổi lại giá trị thanh ghi cấu hình là config-registerở mode Global Configuration.

R1(config)#config-register 0x2102

Ta có thể kiểm tra sự thay đổi này bằng lệnhshow versionở mode Privilege:

R1#show version

(Đã bỏ bớt một số dòng trong kết quả hiển thị)

 

Cisco 2811 (revision 53.50) with 774144K/12288K bytes of memory.

Processor board ID FTX1412AKYT

2 FastEthernet interfaces

8 Low-speed serial(sync/async) interfaces

1 Virtual Private Network (VPN) Module

DRAM configuration is 64 bits wide with parity enabled.

239K bytes of non-volatile configuration memory.

253008K bytes of ATA CompactFlash (Read/Write)

 

Configuration register is 0x2142 (will be 0x2102 at next reload)

Ta thấy rằng giá trị của thanh ghi cấu hình vẫn là 0x2142, nhưng sẽ được đổi thành 0x2102 ở lần khởi động kế tiếp. Vì vậy, để hoàn tất tiến trình khôi phục mật khẩu cho Router, ta cần thực hiện lưu cấu hình rồi khởi động lại Router.

Bài lab trên đây được thực hiện trên dòng Router được sử dụng rất phổ biến hiện nay là dòng 2800. Cách khôi phục mật khẩu trên các dòng Router khác có thể có một vài khác biệt nhưng nguyên tắc cơ bản thì vẫn giống như đã trình bày.

Cảm ơn các bạn!

Hẹn gặp lại các bạn trong các bài viết tiếp theo!