NỘI DUNG
Trong nội dung Giải ngố WWW – Phần 4: 3 điều tối quan trọng về việc tạo và sử dụng Certificate trong quá trình truy cập HTTPS Website, tôi đã giới thiệu nguyên lý tạo và sử dụng Certificate. Để bớt chán với đám lý thuyết lằng nhằng, trong kỳ này, tôi sẽ demo dựng Certificate Authority – CA Server để xác thực và cấp Certificate cho Web Server sử dụng.
Dù thực chất đây là dựng Private CA Server để xác thực cho nhu cầu nội bộ, tuy nhiên, về cơ bản, các bước xử lý cũng hoàn toàn tương đồng như khi làm với Public CA Server. Tôi sẽ nhấn mạnh những điểm khác biệt quan trọng theo các nội dung chi tiết sau đây.
Tôi xin tóm lược lại các bước xử lý để bạn tiện theo dõi như sau:
– Bước 1: CA Server phát hành Root Certificate để xác thực danh tính chính nó;
– Bước 2: Web Server lấy Root Certificate về để cài đặt xác nhận tin cậy CA Server;
– Bước 3: Web Server tạo Certificate Signing Request – CSR gửi đến CA Server để xin cấp Certificate;
– Bước 4: CA Server xác thực và cấp Certificate cho Web Server;
– Bước 5: Web Server lấy Certificate do CA Server cấp để sử dụng làm việc với Web Client.
– Bước 6: Web Client kiểm tra truy cập đến Website trên Web Server đã có Certificate.
Tương ứng với các bước trên, phần demo sẽ sử dụng 3 con hàng sau:
– 1 con Windows Server đã cài đặt Active Directory Certificate Service – AD CS đóng vai trò CA Server;
– 1 con Windows Server đã cài đặt Internet Information Services – IIS và Website tương ứng đóng vai trò Web Server;
– 1 con Win 7 với Client Browser là Firefox đóng vai trò Web Client.
Lưu ý, mục tiêu kỳ này là để tôi nhấn mạnh các nội dung quan trọng của các bước nói trên chứ không phải demo chi tiết từng bước dựng và xác thực với CA Server nhé. Nếu muốn chi tiết thì bạn có thể xem hướng dẫn hàng chính chủ của www.c-sharpcorner.com tại đây hoặc comment các chi tiết bạn muốn làm rõ để tôi phản hồi.
#1. Tạo Root Certificate trên CA Server
Thông thường, CA trùm cuối nó sẽ sai mấy thằng đệ Intermediate/Child CA làm trực tiếp với Web Server. Bản thân nó thì chỉ kiểm soát đám đàn em chứ không trực tiếp nhúng tay vào. Tuy nhiên, trong demo minh họa đơn giản này, bạn sẽ thấy chỉ đơn giản có một thằng CA Server làm hết mọi việc mà thôi.
Tôi sẽ bắt đầu từ thời điểm con CA Server vừa mới cài xong AD CS. Lúc này, quá trình tạo Root Certificate sẽ diễn ra ở bước Post-deployment Configuration như sau.
Post-deployment Configuration sẽ bao gồm các bước như chọn Credentials, Role Services,…và quan trọng nhất là tạo Private Key. Sau khi xác định các thông số cơ bản Key Length, Hash Algotithm…, CA Server sẽ khởi tạo Private Key và Public Key để đưa vào Root Certificate.
Sau khi cung cấp các thông tin còn lại để hoàn tất việc tạo Root Certificate và truy cập vào Tool/Certification Authority mà kết quả như sau là ngon.
#2. Lấy Root Certificate về Web Server
Chuyển qua con Web Server, để lấy cái Root Certificate của CA Server về, bạn mở trình duyệt truy cập đến ca-server-name/certsrv (ca-server-name là gì thì bạn nhớ coi lại thiết lập CA Server nhé). Tiếp đó lựa chọn “Download a CA certificate…” sau đó chọn “Download CA Certificate chain“để tiến hành việc lấy Root Certificate về.
Kế đến các đại ca sẽ hỏi bạn vị trí đặt cái Root Certificate này vào. Và như nội dung tôi đã nói kỳ trước, vị trí đặt sẽ là Trusted Root Certification Authorities như bên dưới.
#3. Tạo Certificate Signing Request – CSR trên Web Server
Đến đây thì con Web Server của bạn đã xác nhận việc tin cậy con CA Server. Bước kế tiếp nó sẽ gửi yêu cầu xác thực và cấp Certificate đến CA Server thông qua CSR.
Lưu ý: Certificate ở đây là Web Server của , bạn đừng nhầm với cái Root Certificate của CA Server nói ở 2 bước trên nhé.
Trên giao diện quản lý IIS của Web Server bạn truy cập vào Server Certificate.
Sau đó lần mò sang đám Actions bên tay phải kiếm dong “Create Certificate Request…” để bắt đầu việc tạo CSR. Tương tự như quá trình tạo Root Certificate trên CA Server, ở đây Web Server cũng sẽ tạo Private Key và Public Key. Điểm khác biệt là để đưa Web Server vào CSR chứ không tự xuất bản cái Certificate như CA Server đâu nhé.
Kết thúc đoạn này bạn sẽ thu được một cái sản phẩm như sau.
Kế đến, bạn cần truy cập lại ca-server-name/certsrv, nhưng lần này chọn “Request a certificate” nhé. Sau đó đến “advanced certificate request” rồi đến “Submit a certificate request using a base-64-encoded CMC or PKCS #10 file,…”. Còn nhớ cái “template chuẩn Public-Key Cryptography Standards (PKCS) #10” tôi nói kì trước không. Vâng, click chuột vào đi bạn sẽ thấy hình hài của nó kiểu thế này.
Tại cái ô trống của Saved Request, bạn sẽ hốt nội dung cái sản phẩm nói trên đổ vào đây trước khi Submit đến CA Server.
Tôi định cô đọng nội dung để đập một phát ăn ngay cả 6 bước nói ở đầu bài nhưng nội dung demo này dài quá. Thôi hôm nay cho tôi dừng ở đây kỳ sau nói tiếp Bước 5 và 6 nhé.
2 thoughts on “Giải ngố WWW – Phần 5: 6 bước tự dựng Certificate Authority Server để cấp Certificate cho Website nâng cấp từ HTTP lên HTTPS”