Giới thiệu Một Certification Authority phát hành các chứng chỉ kỹ thuật số trong đó có chứa một khóa công khai và danh tính của chủ sở hữu. Các chứng chỉ được cấp dưới định dạng PFX (Personal inFormation eXchange) được bảo vệ bởi mật khẩu. Chứng chỉ cung cấp nền tảng của một cơ sở hạ tầng khóa công khai (PKI). Đây là những thông tin điện tử, do cơ quan cấp giấy chứng nhận (CA), được liên kết với một cặp khóa công khai và khóa bí mật. Certification Authority Server của chúng tôi hoạt động như một ứng dụng IIS cho hầu hết các máy chủ web Windows. Điều đó có nghĩa là nó không cần thiết vận hành thêm một máy CA. Cảnh báo và lưu ý Với mọi cố gắng để làm cho hướng dẫn này là đầy đủ và càng chính xác càng tốt, nhưng chúng tôi không đảm bảo mọi thứ đều hoàn hảo. Các thông tin cung cấp trên như là một cơ sở khách quan và chúng tôi cũng không chịu trách nhiệm cho bất kỳ người nào hoặc tổ chức đối với bất kỳ tổn thất hoặc thiệt hại phát sinh từ các thông tin trong tài liệu này. Thương hiệu .NET, Visual Studio .NET là thương hiệu của Microsoft Inc. Adobe, Adobe Reader là thương hiệu của Adobe Systems Inc. Tất cả các thương hiệu khác là tài sản của chủ sở hữu tương ứng của họ .
Trang 1Hướng dẫn cài đặt Certification Authority Server
Giới thiệu
Một Certification Authority phát hành các chứng chỉ kỹ thuật số trong đó có chứa một khóa công khai và danh tính của chủ sở hữu Các chứng chỉ được cấp dưới định dạng PFX (Personal inFormation eXchange) được bảo vệ bởi mật khẩu
Chứng chỉ cung cấp nền tảng của một cơ sở hạ tầng khóa công khai (PKI) Đây là những thông tin điện tử, do cơ quan cấp giấy chứng nhận (CA), được liên kết với một cặp khóa công khai và khóa bí mật
Certification Authority Server của chúng tôi hoạt động như một ứng dụng IIS cho hầu hết các máy chủ web Windows Điều đó có nghĩa là nó không cần thiết vận hành thêm một máy CA
Cảnh báo và lưu ý
Với mọi cố gắng để làm cho hướng dẫn này là đầy đủ và càng chính xác càng tốt, nhưng chúng tôi không đảm bảo mọi thứ đều hoàn hảo Các thông tin cung cấp trên như là một cơ sở khách quan và chúng tôi cũng không chịu trách nhiệm cho bất kỳ người nào hoặc tổ chức đối với bất kỳ tổn thất hoặc thiệt hại phát sinh từ các thông tin trong tài liệu này
Thương hiệu
.NET, Visual Studio NET là thương hiệu của Microsoft Inc Adobe, Adobe Reader
là thương hiệu của Adobe Systems Inc Tất cả các thương hiệu khác là tài sản của chủ sở hữu tương ứng của họ
Trang 2CA server – tính năng mới 3
Microsoft Store Root Certificate 3
Root Certificate Generator 3
OCSP Validation Service 4
Cách OCSP Validation Service hoạt động 4
Kiểm thử OCSP 5
Xác thực chữ ký PDF 6
Điều kiện tiên quyết 12
Cài đặt 13
Chứng chỉ Root CA 14
Cấp chứng chỉ Root CA 14
Cấp chứng chỉ 15
Cấp chứng chỉ người dùng 15
Cấp chứng chỉ từ CSR (Certificate Signing Request) 16
Thu hồi chứng chỉ 17
CRL 18
Quản lý CA 19
Quản lý chứng chỉ 19
Nhật ký 20
Trang 3CA server – tính năng mới
CA Server có sẵn cho mục đích thử nghiệm tại liên kết này:
http://ca.signfiles.com/ca/
Phiên bản mới nhất của máy chủ CA bao gồm các tính năng sau:
- Chứng chỉ ký số có thể được tải từ Microsoft Certificate Store.
- Hỗ trợ OCSP (Online Certificate Status Protocol)
- Chứng chỉ mẫu CSR
Microsoft Store Root Certificate
Nếu bạn muốn sử dụng một chứng chỉ HSM Root, nó phải xuất hiện trên Microsoft Certificate Store - Personal Tab
CA Server có thể sử dụng một chứng chỉ gốc hiện có là chứng chỉ CA (phương pháp ưa thích) hoặc bạn có thể tạo ra một chứng chỉ gốc mới vào CSP của bạn Chứng chỉ gốc phải có sẵn cho mọi hoạt động CA Các hoạt động này là: Phát hành chứng chỉ, phát hành CRL, ký số các phản hồi OCSP
Root Certificate Generator
Nếu CSP của bạn không cung cấp một phương thức để tạo ra các chứng chỉ trực tiếp trên CSP, bạn có thể sử dụng Root Certificate Generator
Trang 4Cách để tạo ra một chứng chỉ gốc sử dụng Root Certificate Generator:
- Khởi động Root Certificate Generator
- Trong danh sách trỏ xuống của Smart Card Certificate Service Provider, chọn
CSP của bạn
- Nếu CSP của bạn không xuất hiện trong danh sách, chứng chỉ có thể không được tạo ra
- Điền vào các trường dữ liệu của bạn (Organization, email, vv)
- Chọn một mẫu Root Certificate
- Tùy chọn, thiết lập kích thước khóa, thời hạn hiệu lực, vv
- Bấm Generate Certificate
- Nhập các thông tin CSP (PIN PED, mật khẩu, các cơ chế khác)
- Đọc hướng dẫn CSP để nhập chứng chỉ được tạo ra trên Microsoft Certificate Store - Personal tab (not Trusted Root Certification Authorities or Other People)
Trang 5OCSP Validation Service
Cách OCSP Validation Service hoạt động
OCSP Certificate phải được phát hành bởi Root Certificate giống như User Certificate, như hình dưới
- Client phải bao gồm trên OCSP Request the User Certificate Serial Number, tức là cần được xác nhận và Root Certificate Public Key Hash
- The OCSP Request is send the OCSP Server URL The OCSP URL is extracted from the User Certificate - Authority Info Access field, giống như sau:
[1]Authority Info Access Access Method=On-line Certificate Status Protocol (1.3.6.1.5.5.7.48.1) Alternative Name: URL=http://ca.signfiles.com/OCSP.aspx Máy chủ OCSP (http://ca.signfiles.com/OCSP.aspx) sẽ thực hiện các bước sau:
Xác thực Chứng chỉ OCSP Nếu Chứng chỉ OCSP không hợp lệ, một thông báo lỗi sẽ được trả về (POST byte []) hoặc: OCSPRespGenerator.InternalError
Xác thực các file CRL Nếu file CRL không hợp lệ hoặc không có sẵn, thông báo: OCSPRespGenerator.InternalError sẽ được trả về
Xác nhận cấu trúc OCSP Request Nếu OCSP Requet không có chữ ký của Root CA hiện tại, trạng thái OCSPRespGenerator.Unauthorized sẽ được trả về (Observation: Some OCSP clients could return Unknown status but the pupular CA's like Verisign or Thawte returns OCSPRespGenerator.Unauthorized)
User Certificate serial number được chiết xuất từ OCSP Request và nếu nó
được tìm thấy trên CRL, trạng thái Revoked (thu hồi) được trả về cho Client
Nếu User Certificate serial number không xuất hiện trên các CRL, chứng chỉ
được coi là hợp lệ và trạng thái Good được trả về cho Client
Nếu có một ngoại lệ xuất hiện trong tiến trình, trạng thái
Trang 6OCSPRespGenerator.InternalError sẽ được trả về.
Tất cả các lỗi trên sẽ xuất hiện trên Audit Trail.
Kiểm thử OCSP
Dịch vụ OCSP có thể được kiểm thử như sau
Sau khi Chứng chỉ gốc được cài đặt trên Microsoft Certificate Store - Trusted Root Authorities, có thể sử dụng PDF Signer để tạo một chữ ký số để thu hồi thông tin mẫu thu được từ OCSP Responder CA Chứng chỉ gốc có thể được tải về từ đây: http://ca.signfiles.com/caOCSP/RootCertificate.cer
Để tạo một chữ ký số PDF, bạn cần có được một Chứng chỉ từ CA Server (http://ca.signfiles.com/caOCSP/IssueUserCertificate.aspx)
Các phản hồi OCSP có thể được nhúng vào chữ ký PDF chỉ khi chứng chỉ Root mà phát hành chứng chỉ User tồn tại trên Microsoft Certificate Store
Ngoài ra, Chứng chỉ OCSP phải được phát hành bởi Chứng chỉ Root giống như Chứng chỉ User:
Dịch vụ xác thực OCSP cũng có thể được xác nhận bằng cách sử dụng câu lệnh sau:
certutil -url <path to the cer file> - select OCSP (from AIA) option.
Trang 7Xác thực chữ ký PDF
Chữ ký được tạo bởi PDF Signer thường không đáng tin cậy, vì vậy bạn cần xác thực chữ ký
Click nút Add to Trusted Identities, đánh dấu tất cả checkbox, click OK và tái xác
nhận chữ ký
Trang 8Sau khi chứng chỉ được coi là đáng tin cậy bởi Adobe, chữ ký là hợp lệ.
Trang 9Phản hồi OCSP sẽ giống như hình dưới:
Điều này có nghĩa là OCSP Server đang làm việc
Trang 10Nếu chữ ký số được tạo ra bằng cách sử dụng một Chứng chỉ đã bị thu hồi (Revoked Certificate), tài liệu PDF sẽ giống như sau:
Trang 11Một chứng chỉ số đã bị thu hồi xuất hiên trên CRL:
Trang 12Điều kiện tiên quyết
CA Server yêu cầu cần có:
- Hệ điều hành Windows với IIS
- Microsoft NET Framework 2.0
- ASP.NET được kích hoạt trên IIS của bạn
Để kích hoạt ASP.NET trong IIS webserver của bạn, hãy vào Control Panel - Programs and Features - Turn Windows features on or off và trên Internet Information Services Features, chọn ASP.NET như hình dưới đây
Kích hoạt ASP.NET on IIS
Trang 13Cài đặt
Tải về CA Server, giải nén các nội dung trên IIS webserver của bạn (ví dụ: C:\
CAServer).
Nội dung thư mục CA Server
Ngay bây giờ, CA Server phải được thêm vào như là một ứng dụng trên IIS
webserver Tới biểu tượng Computer - Nhấn chuột phải vào Manage - Computer Management – Services and Applications – Internet Information Services (IIS) Manager
IIS Management
Trang 14Trên trang web của bạn, CA Server phải được thêm vào như là một ứng dụng mới.
Nhấp chuột phải vào trang web IIS của bạn (Default Web Site) - Add Application
… và thiết lập các định danh ứng dụng và đường dẫn vật lý như dưới đây
Chú ý: CA Server yêu cầu quyền Đọc, Viết và Thực thi để kích hoạt cho đường
dẫn vật lý Người sử dụng IIS phải có quyền này cho các đường dẫn vật lý đặc biệt
Tại thời điểm này, CA Server sẽ được cài đặt Để kiểm tra các cài đặt, hãy vào:
http://localhost/ca
Chứng chỉ Root CA
CA Server cần một chứng chỉ kỹ thuật số đặc biệt (Chứng chỉ Root CA) được sử dụng để ký số các chứng chỉ khác
Chứng chỉ CA là một loại đặc biệt của chứng chỉ và phải được tạo ra như sau:
- Sử dụng RSA 2048
- Ngày hết hạn: tối thiểu 5 năm
Cấp chứng chỉ Root CA
Chứng chỉ Root CA có thể được cấp bởi các máy chủ CA theo liên kết này:
http://localhost/ca/IssueRootCertificate.aspx
Trang 15Cấp chứng chỉ
Cấp chứng chỉ người dùng
Cấp chứng chỉ người dùng theo liên kết này:
http: //localhost/ca/IssueUserCertificate.aspx
Các chứng chỉ được cấp ở định dạng PFX và nó có thể được cài đặt trong
Microsoft Certificate Store hoặc nó có thể được sử dụng trong các ứng dụng của bạn
Các chứng chỉ được ký số bằng chứng chỉ Root CA
Trang 16Cấp chứng chỉ từ CSR (Certificate Signing Request)
Để cấp một chứng chỉ từ một file CSR cần truy cập liên kết này:
http: //localhost/ca/IssueFromCSR.aspx
Thông thường, một tập tin CSR được tạo ra bởi máy chủ web của bạn hoặc bằng một thiết bị HSM
Giấy chứng nhận được cấp ở định dạng CER và nó được ký số bằng chứng chỉ Root CA
Trang 17Thu hồi chứng chỉ
Khi một chứng chỉ được phát hành, một mật khẩu thu hồi có thể được thiết lập
Để thu hồi chứng chỉ truy cập liên kết này:
http: //localhost/ca/RevokeCertificate.aspx
Để thu hồi chứng chỉ được cấp bởi các máy chủ CA, bắt buộc phải có số serial chứng chỉ và mật khẩu thu hồi
Chứng chỉ đã thu hồi sẽ xuất hiện trên các CRL (Certificate Revocation List), để cho các ứng dụng khác biết rằng giấy chứng nhận là không còn giá trị
Trang 18Certificate Revocation List (CRL) là một danh sách các chứng chỉ (hoặc cụ thể hơn
là một danh sách các số serial của các chứng chỉ) đã bị thu hồi, và do đó không nên tin cậy
Mỗi chứng chỉ được cấp bới máy chủ CA bao gồm các URL CRL để CRL phải được cập nhật
CRL có giá trị 7 ngày vì vậy nó phải được cấp vào khoảng thời gian này
Để cấp CRL, các trang dưới đây phải được truy cập mỗi 6 ngày:
http://localhost/ca/EmitCRL.aspx?emit=true
Bởi vì IIS không hỗ trợ cron jobs như Apahe, trang EmitCRL.aspx?emit=true phải được gọi theo thời gian (thường là 6 ngày) để phát hành CRL
Nếu CRL sẽ hết hạn, tất cả các chứng chỉ do CA sẽ được coi là không hợp lệ.
Trang http://localhost/ca/EmitCRL.aspx?emit=true có thể được đặt trên Task Scheduler hoặc truy cập bằng tay theo thời gian
Trang 19Quản lý CA
Quản lý chứng chỉ
Để quản lý các chứng chỉ đã cấp truy cập liên kết này:
http://localhost/ca/Manage.aspx
Trên trang này sẽ xuất hiện các thông tin liên quan đến các chứng chỉ được cấp bởi máy chủ CA
Ngoài ra, các chứng chỉ có thể được thu hồi, tải về hoặc xuất ra
Trang 20Nhật ký
Mỗi hành động được thực hiện trên máy chủ CA được mã hóa và lưu lại trên một tập tin Audit Trail Log
Truy cập vào Nhật ký theo liên kết này:
http://localhost/ca/Audit.aspx
Mỗi lỗi xảy ra về việc cấp chứng chỉ cũng có sẵn ở đây