Tên thay thế của chủ thể: máy chủ VPN được nhận dạng như thế nào
Một chứng chỉ đáng tin cậy vẫn có thể sai với tên máy chủ VPN của bạn. SAN phải mang hình thức danh tính mà ứng dụng khách kiểm tra, như tên DNS hoặc địa chỉ IP.
Ứng dụng khách của bạn từ chối một chứng chỉ mà chuỗi của nó được xác thực sạch sẽ, và lỗi nói rằng tên không khớp. Thông điệp đó không phải về việc ai đã ký chứng chỉ. Nó nói về tiện ích mở rộng tên thay thế của chủ thể, nơi chứa các danh tính mà chứng chỉ được phép đại diện, và về việc danh tính bạn đã cấu hình có xuất hiện ở đó đúng hình thức hay không. Sự tin cậy trả lời ai đã ký, còn kiểm tra tên trả lời chứng chỉ thuộc về máy chủ nào.
Ứng dụng khách thực sự so sánh điều gì
Ứng dụng khách chuyển cấu hình của bạn thành một danh tính tham chiếu: tên máy chủ, địa chỉ hoặc định danh riêng cho giao thức. Sau đó nó tìm danh tính đó trong chứng chỉ, áp dụng các quy tắc khớp của giao thức đang dùng. Chỉ các mục cùng loại được tính, nên một mục DNS không thể thỏa mãn một địa chỉ, và việc so sánh diễn ra bất kể có ai nhìn vào chứng chỉ hay không.
Khi danh tính tham chiếu vắng mặt trong tiện ích đó, việc kiểm tra thất bại dù tên chung cũ có khớp. Một chứng chỉ có thể được cấp hợp pháp cho một công ty mà vẫn sai với vpn.example.com nếu tên đó chưa bao giờ được đưa vào. Thất bại là sự không khớp tên dù chứng chỉ là thật.
Tên DNS và địa chỉ IP là các mục riêng biệt
Một hồ sơ trỏ tới 203.0.113.10 trong khi chứng chỉ chỉ liệt kê vpn.example.com sẽ bị từ chối, vì gói tin đến nhưng danh tính không khớp. Tên DNS và địa chỉ nguyên văn được lưu dưới các kiểu mục khác nhau, và cái này không bao giờ thay thế cái kia. Đó là lý do một dịch vụ có thể truy cập được bằng địa chỉ mà vẫn không dùng được qua hồ sơ sử dụng địa chỉ đó.
Ký tự đại diện cũng tuân theo quy tắc riêng: một ký tự đại diện bao một nhãn, không phải mọi tên dưới một miền. So sánh DNS không phân biệt chữ hoa chữ thường, trong khi các kiểu định danh khác có phân biệt, nên một giá trị trông giống hệt trên màn hình có thể thất bại trong so sánh nghiêm ngặt. Hãy kiểm tra quy tắc khớp cho kiểu danh tính đang dùng thay vì so chuỗi bằng mắt. Thêm tên vào tiện ích mở rộng là quyết định cấp phát, không phải điều mà cài đặt ứng dụng khách có thể cung cấp.
Kiểm tra chứng chỉ mà kết nối thực sự đã dùng
Hãy đọc tài liệu mà điểm cuối đang hoạt động trình bày, không phải tệp sao chép từ trang quản trị. Bộ cân bằng tải hoặc phiên bản thay thế có thể trình bày thứ khác với chứng chỉ được tải lên nhiều tháng trước, và sự khác biệt đó không thấy được trong bảng điều khiển.
openssl s_client -connect vpn.example.com:443 -showcerts </dev/null | openssl x509 -noout -text
Khối tên thay thế của chủ thể, chuỗi nhà phát hành và thời hạn hiệu lực đều thuộc cùng một lần đọc, vì không khớp tên và hết hạn tạo ra các lỗi khác nhau. Hãy so từng tên trong khối đó với danh tính đã cấu hình trong hồ sơ, theo từng ký tự, và ghi lại nó thuộc kiểu nào. Lặp lại lệnh với dạng địa chỉ của điểm cuối cho thấy chứng chỉ bao cả hai danh tính hay chỉ một. Hiển thị chủ thể thân thiện trong bảng điều khiển quản trị không phải kết quả xác thực và không nói gì về những tên mà tiện ích chứa.
Tên chung không phải nguồn sự thật hiện đại
Trình duyệt và hầu hết thư viện TLS nay bỏ qua tên chung khi khớp tên máy chủ và tham khảo tiện ích mở rộng. Một số ứng dụng khách VPN vẫn so tên chung trước hoặc quay về nó khi thiếu tiện ích, và vì thế một chứng chỉ có thể qua được trong trình duyệt mà thất bại trong ứng dụng khách. Cùng một phép kiểm tra tên có thể qua trên nền tảng này và thất bại trên nền tảng khác mà chứng chỉ không hề thay đổi.
Tìm hiểu ứng dụng khách của bạn đọc trường nào trước khi kết luận chứng chỉ sai. Hai ứng dụng khách trên cùng một điểm cuối có thể bất đồng, và sự bất đồng đó là thông tin về ứng dụng khách chứ không phải về chứng chỉ.
Sửa việc cấp phát hoặc hồ sơ, không phải phép kiểm tra
Khi một hồ sơ được xây quanh một bí danh, hãy hoặc trỏ nó tới tên máy chủ đã ghi tài liệu, hoặc cấp lại chứng chỉ cho bí danh và triển khai trong khung thời gian đã lên kế hoạch. Làm im lặng cảnh báo không phải lựa chọn thứ ba, vì phép kiểm tra là bước duy nhất gắn một chứng chỉ đã ký với đúng máy chủ này. Loại bỏ nó nghĩa là bất kỳ chứng chỉ nào từ cùng cơ quan đó đều có thể thay thế máy chủ bạn muốn đến.
Gia hạn nên giữ nguyên các tên và mục đích dự kiến thay vì chỉ đẩy ngày hết hạn về phía trước. Một lần gia hạn làm mất tên là sự cố mới được lên lịch cho lần khởi động lại kế tiếp, và nó thường đến không báo trước vì chứng chỉ cũ vẫn còn hiệu lực khi thay đổi được thực hiện.
Ghi lại danh tính mong đợi, các tên đã trình bày và chuỗi đã ký chúng. Bản ghi đó biến lần gia hạn kế tiếp thành một phép so sánh thay vì một cuộc điều tra. Định nghĩa của tiện ích nằm trong RFC 5280 nếu bạn cần kiểm tra một lần cấp phát cụ thể.