Loading...

Hướng dẫn Disable TLS 1.1/1.0 trên dòng Switch Catalyst 9000.

Trong một số môi trường yêu cầu bảo mật cao, việc vô hiệu hóa TLS 1.0 và 1.1 là một bước quan trọng để tăng cường bảo mật qua giao thức HTTPS của Switch Catalyst 9000 (chạy IOS-XE). Hai phiên bản này đã bị IETF chính thức khai tử (RFC 8996) và thường bị các công cụ quét lỗ hổng cảnh báo là "weak TLS version" trên thiết bị mạng.

Mặc định switch hỗ trợ nhiều phiên bản TLS chạy đồng thời:

Switch hỗ trợ nhiều version TLS

Các phiên bản TLS 1.1/1.0 cũ có một số điểm yếu và lỗ hổng bảo mật, do đó TLS 1.2 và cao hơn ra đời để xử lý các vấn đề đó.

⚡ Điểm nhanh

  • Mục tiêu: chỉ cho phép TLS 1.2 trở lên cho HTTPS trên switch Catalyst 9000 (IOS-XE).
  • Hai chiều cần xử lý: HTTP server (người dùng truy cập web GUI/RESTCONF vào switch) và HTTP client (switch chủ động kết nối ra ngoài, ví dụ tới Cisco DNA Center hoặc server tải file).
  • Lệnh server: ip http tls-version TLSv1.2 hoặc no ip http tls-version TLSv1.1
  • Lệnh client: ip http client tls-version TLSv1.2 hoặc no ip http client tls-version TLSv1.1
  • Kiểm tra: show ip http server secure status và show ip http client secure status
  • Cần biết: cú pháp có thể khác giữa các phiên bản IOS-XE và các dòng switch; nên thử trên lab hoặc có truy cập console trước khi áp dụng trên thiết bị đang chạy.

Bước 1: Kiểm tra phiên bản TLS đang bật

Trước khi thay đổi, kiểm tra switch đang cho phép những phiên bản nào ở cả hai chiều:

Switch#show ip http server secure status
Switch#show ip http client secure status

Tại dòng HTTP secure server TLS version và HTTP secure client TLS version bạn sẽ thấy danh sách phiên bản đang được bật. Theo tài liệu Cisco (thử nghiệm trên IOS-XE 17.6.5, cấu hình mặc định), danh sách mặc định gồm TLSv1.3, TLSv1.2 và TLSv1.1. Trên phiên bản IOS-XE khác, danh sách có thể khác, nên hãy đọc đúng kết quả trên thiết bị của bạn.

Bước 2: Vô hiệu hóa TLS 1.1/1.0

Có hai cách, tùy bạn muốn giữ TLS 1.3 hay chỉ ghim cứng TLS 1.2.

Cách 1: Chỉ cho phép TLS 1.2

Dùng các lệnh dưới đây để chỉ cho phép chạy phiên bản TLS 1.2:

Switch(config)#ip http tls-version TLSv1.2
Switch(config)#ip http client tls-version TLSv1.2
  • ip http tls-version áp dụng khi switch đóng vai trò server, tức là giao diện quản trị của switch. Ví dụ bạn truy cập qua HTTPS vào web GUI hoặc RESTCONF.
  • ip http client tls-version áp dụng khi switch đóng vai trò HTTP client, tức là khi switch kết nối ra ngoài (đến server khác) qua HTTPS. Ví dụ: switch tải file cấu hình, liên lạc với Cisco DNA Center, hoặc gọi REST API HTTPS đến server khác.

Lưu ý: lệnh này chỉ khai báo đúng TLS 1.2, nên nhiều khả năng TLS 1.3 cũng không còn được dùng. Hãy chạy lại lệnh show ở Bước 1 để xác nhận danh sách phiên bản còn lại trên switch của bạn.

Cách 2: Gỡ riêng TLS 1.1 và giữ TLS 1.2, 1.3 (theo tài liệu Cisco TAC)

Tài liệu Cisco "Disable TLS 1.1 on Catalyst 9000 Switches" hướng dẫn gỡ từng phiên bản bằng dạng no:

Switch#configure terminal
Switch(config)#no ip http tls-version TLSv1.1
Switch(config)#no ip http client tls-version TLSv1.1

Hai lệnh này tắt TLS 1.1 ở cả phía server và phía client của switch. Nếu lệnh show ở Bước 1 trên thiết bị của bạn còn hiển thị TLSv1.0, bạn dùng cùng cú pháp với TLSv1.0 (no ip http tls-version TLSv1.0). Cú pháp này suy ra từ danh sách lệnh Cisco ghi nhận ở mục cảnh báo, bạn nên kiểm tra bằng ? trên CLI của switch trước khi dùng.

So sánh nhanh hai cách

Tiêu chíCách 1: ghim TLS 1.2Cách 2: gỡ TLS 1.1 (no ...)
Lệnh ip http tls-version TLSv1.2 no ip http tls-version TLSv1.1
Phiên bản còn lại Chỉ TLS 1.2 TLS 1.2 và TLS 1.3 (nếu đang bật)
Phù hợp khi Chính sách yêu cầu đúng một phiên bản Muốn giữ TLS 1.3 cho client hiện đại
Rủi ro tương thích Client chỉ hỗ trợ TLS 1.3 sẽ không kết nối được Thấp hơn

Bước 3: Xác nhận kết quả

Chạy lại hai lệnh kiểm tra, danh sách phiên bản không còn TLSv1.1 (và TLSv1.0 nếu có):

Switch#show ip http server secure status
Switch#show ip http client secure status

Kết quả:

Ngoài kiểm tra trên switch, bạn có thể quét từ máy bên ngoài để chắc chắn, ví dụ bằng Nmap:

nmap --script ssl-enum-ciphers -p 443 <IP-switch>

Kết quả chỉ nên liệt kê các phiên bản bạn cho phép (TLSv1.2, và TLSv1.3 nếu dùng Cách 2).

Lưu ý trước khi áp dụng

  • Client cũ: trình duyệt, công cụ giám sát hoặc script cũ chỉ hỗ trợ TLS 1.0/1.1 sẽ không truy cập được web GUI, RESTCONF sau khi tắt. Hãy kiểm tra trước các hệ thống đang kết nối vào switch.
  • Kết nối ra ngoài: nếu switch làm việc với server chỉ hỗ trợ phiên bản cũ (ví dụ dịch vụ quản lý, server tải file), thay đổi phía client có thể làm kết nối thất bại.
  • Giữ đường quản trị dự phòng: đảm bảo vẫn vào được switch qua console hoặc SSH trước khi đổi, phòng khi cần khôi phục.
  • Lưu cấu hình: sau khi kiểm tra ổn định, chạy write memory để giữ cấu hình qua lần khởi động lại.
  • Khôi phục: nếu cần bật lại một phiên bản, dùng dạng lệnh không có no, ví dụ ip http tls-version TLSv1.1, rồi kiểm tra lại bằng lệnh show. Chỉ nên làm tạm thời khi thật sự cần.
  • Khác phiên bản: lệnh có thể khác nhau ở giữa các version IOS hoặc các dòng switch.

Các tính năng khác cũng có cấu hình TLS riêng

Cisco liệt kê trong tài liệu cảnh báo bảo mật (Resilient Infrastructure) các cấu hình TLS yếu ngoài HTTP server/client, bạn nên rà soát cùng lúc nếu đang làm theo yêu cầu kiểm toán:

  • logging tls-profile <tên> với tls-version TLSv1.1 (Syslog qua TLS)
  • access-session tls-version 1.0
  • ip http secure-ciphersuite và ip http client secure-ciphersuite dùng các bộ mã hóa CBC-SHA cũ

Câu hỏi thường gặp (FAQ)

Tắt TLS 1.1/1.0 có làm mất kết nối SSH đang dùng không? Không. Các lệnh trên chỉ áp dụng cho HTTPS (HTTP server và HTTP client), không liên quan đến SSH.

Khác nhau giữa ip http tls-version và ip http client tls-version là gì? Lệnh đầu điều khiển switch khi làm server (người dùng truy cập vào switch). Lệnh sau điều khiển switch khi làm client (switch kết nối ra server khác). Cần cấu hình cả hai nếu muốn loại bỏ hoàn toàn phiên bản cũ.

Sau khi tắt, nên giữ TLS 1.3 hay chỉ dùng TLS 1.2? Nếu chính sách không bắt buộc một phiên bản duy nhất, nên dùng Cách 2 để giữ TLS 1.2 và 1.3. Dùng Cách 1 khi tiêu chuẩn nội bộ yêu cầu đúng TLS 1.2.

Vì sao công cụ quét lỗ hổng vẫn báo TLS 1.1 sau khi cấu hình? Kiểm tra lại bằng show ip http server secure status; xác nhận cấu hình đã lưu và cổng bị quét đúng là HTTPS của switch, vì các dịch vụ khác có thể có cấu hình TLS riêng.

Lệnh có áp dụng cho mọi dòng Catalyst 9000 không? Tài liệu Cisco áp dụng cho dòng Catalyst 9000 và thử trên IOS-XE 17.6.5. Cú pháp có thể khác giữa các phiên bản, vì vậy hãy kiểm tra bằng ? trên CLI.

Ghi chú minh bạch

Nội dung các lệnh no ip http tls-version TLSv1.1, no ip http client tls-version TLSv1.1 và các lệnh show kiểm tra được đối chiếu với tài liệu Disable TLS 1.1 on Catalyst 9000 Switches của Cisco (thử nghiệm trên IOS-XE 17.6.5). Danh sách cấu hình TLS yếu tham khảo từ Resilient Infrastructure IOS XE Security Warnings Reference. Kết quả cụ thể trên switch của bạn phụ thuộc vào phiên bản IOS-XE.

Thông tin liên quan