Xây dựng hạ tầng PKI trên nền Windows Server 2008 – Phần 1


Xem thêm:
Xây dựng hạ tầng khóa công khai (PKI) trên nền Windows Server 2008 – Phần 1
Xây dựng hạ tầng khóa công khai (PKI) trên nền Windows Server 2008 – Phần 2
Xây dựng hạ tầng khóa công khai (PKI) trên nền Windows Server 2008 – Phần 3
Xây dựng hạ tầng khóa công khai (PKI) trên nền Windows Server 2008 – Phần 4.1
Xây dựng hạ tầng khóa công khai (PKI) trên nền Windows Server 2008 – Phần 4.2
Xây dựng hạ tầng khóa công khai (PKI) trên nền Windows Server 2008 – Phần 5
Xây dựng hạ tầng khóa công khai (PKI) trên nền Windows Server 2008 – Phần 6.1
Xây dựng hạ tầng khóa công khai (PKI) trên nền Windows Server 2008 – Phần 6.2

————-

Loạt bài về tìm hiểu, xây dựng hạ tầng PKI trên nền Windows Server 2008 này khá dài, chắc sẽ không dưới 10 phần, mình sẽ vừa viết, thực hành và chia sẻ ở đây. Các lý thuyết nền tảng phục vụ cho chuyên bài này như mật mã học, tổng quan về cơ sở hạ tầng khóa công khai đã được giới thiệu trên blog, có thể tìm đọc lại tại đâyđây. Giờ là lúc chuyển trọng tâm sang phần triển khai Windows Server 2008 PKI  và sau đó là các ứng dụng của nó trong thực tiễn như:

  • Bảo mật cho các giao dịch trực tuyến qua web, email
  • Bảo mật cho hệ thống tập tin, tài liệu, phần mềm
  • Bảo mật cho mạng không dây, mạng riêng ảo

Rất mong nhận được ý kiến, thảo luận của mọi người.

Phần 1 – Chuẩn bị môi trường Active Directory

Trước khi triển khai một hạ tầng PKI trên nền Windows Server 2008, có một vài câu hỏi đặt ra là:

  • Có cần nâng cấp tất cả các domain controller trong forest lên Windows Server 2008 hay không? Câu trả lời là không. Vì Windows Server 2008 PKI không phụ thuộc vào chuyện các domain controller có chạy Windows Server 2008 hay không. Tức là ta có thể triển khai Windows Server 2008 PKI trong môi trường Active Directory có các domain controller chạy Windows 2000 hoặc Windows Server 2003.
  • Có cần nâng cấp domain functional level hoặc forest functional level lên Windows Server 2008 hay không? Câu trả lời vẫn là không. Windows Server 2008 PKI không có yêu cầu nào dành cho domain hay forest functional level.
  • Cần phải làm gì để triển khai Windows Server 2008 PKI? Ở các phần sau mô tả các bước cần làm để cài đặt dịch vụ Active Directory Domain Services (AD DS) phục vụ cho Windows Server 2008 PKI.
  • Có thể triển khai Windows Server 2008 Enterprise CA trong môi trường có dịch vụ AD DS được không? Điều này là không thể. Một Enterprise CA cần có sự hiện diện của AD DS để lưu trữ các thông tin cấu hình, phát hành chứng chỉ, chính sách an ninh và chức năng xác thực. Có thể cài đặt Windows Server 2008 làm standalone CA nếu muốn triển khai PKI trong môi trường không có AD DS. Trong môi trường standalone CA, nội dung của chứng chỉ được định nghĩa trong các tập tin yêu cầu chứng chỉ thay vì sử dụng các mẫu chứng chỉ trong AD DS để định nghĩa nội dung của các chứng chỉ được cấp. Ngoài ra, tất cả các yêu cầu cấp chứng chỉ mặc định được đặt ở trạng thái chờ phê duyệt, và cần tới người quản lý đồng ý hoặc từ chối cho mỗi yêu cầu được gửi tới standalone CA.

Phân tích môi trường Active Directory

Trước khi cài đặt Windows Server 2008 Enterprise CA, có vài thứ cần chuẩn bị như sau:

  • Xác định số lượng forest: điều này sẽ ảnh hưởng tới số lượng các Enterprise CA cần thiết để triển khai dịch vụ Active Directory Certificate Services. Một Enterprise CA chỉ có thể cấp chứng chỉ cho các tài khoản người dùng và máy tính nằm trong cùng forest với nó. Nếu có nhiều forest cần tới chứng chỉ từ PKI thì phải mỗi một forest phải có ít nhất một Enterprise CA dành riêng cho nó.
  • Xác định số lượng domain trong forest: nếu có nhiều hơn một domain trong forest thì phải quyết định xem domain nào sẽ chứa các CA. Việc lựa chọn domain nào sẽ chứa tài khoản máy tính của máy CA phụ thuộc vào chuyện tổ chức sử dụng cơ chế quản lý tập trung hay phân tán. Trong mô hình tập trung, các CA thường sẽ được đặt trong cùng domain. Còn ở môi trường phân tán thì có thể triển khai các CA trong nhiều domain.
  • Xác định phiên bản schema của domain: để triển khai Windows Server 2008 CA và khai thác tất cả các tính năng mới có trong Active Directory Certificate Services thì cần áp dụng phiên bản mới nhất của AD DS schema. Windows Server 2008 schema có thể được triển khai trong các forest chứa các domain controller chạy Windows 2000, Windows Server 2003 hay Windows Server 2008. Windows Server 2008 schema sẽ bổ sung thêm các tính năng mới sau:
    • Hỗ trợ mẫu chứng chỉ phiên bản 3: các mẫu chứng chỉ này sẽ sử dụng các thuật toán được cung cấp bởi Cryptography Next Generation (CNG) API.
    • Hỗ trợ OCSP: giao thức này không có trong các phiên bản trước đó như Windows 2000, Windows Server 2003. Dịch vụ này sẽ thay thế cho CRL trong việc xác định trạng thái thu hồi của chứng chỉ.
    • Dịch vụ Network Device Enrollment: giúp tư động cấp chứng chỉ cho các thiết bị mạng của Cisco qua giao thức SCEP (Simple Certificate Enrollment Protocol). Điều này cho phép chứng chỉ được cấp cho các thiết bị mạng mà không cần phải tạo thêm các tài khoản máy tính trong Active Directory cho chúng.
    • Hỗ trợ Qualified Certificate: như được mô tả trong RFC 3739, loại chứng chỉ này có mức tin cậy cao khi sử dụng cho chữ ký số. Một Qualified Certificate cũng có thể bao gồm các thông tin sinh trắc học của người nắm giữ chứng chỉ.

(Xem thêm hướng dẫn ở bài viết sau để thực hiện nâng cấp Windows 200 hoặc Windows Server 2003 schema lên Windows Server 2008 schema:
http://prashanthpurushotham.wordpress.com/2011/10/19/schema-upgrade-from-windows-server-2003-to-windows-server-2008-r2-testing-plan-in-isonet-network/)

  • Xác định scope của group Cert Publisher: đây là group mặc định có trong mỗi domain của forest. Group Cert Publisher của một domain được cấp các quyền hạn để đọc và ghi các thông tin chứng chỉ tới thuộc tính userCertificatecủa đối tượng user trong domain đó. Điều cần xem xét ở đây là scope của group này được xác định bởi hệ điều hành của domain controller đầu tiên của domain, cụ thể:
    • Nếu domain A được tạo trên nền Windows 2000 thì Cert Publisher là global group. Vì vậy mà chỉ có các tài khoản máy tính nằm trong domain A mới có thể làm thành viên của group Cert Publisher của domain A đó.
    • Nếu domain A được tạo trên nền Windows Server 2003 hoặc 2008 thì Cert Publisher là domain local group. Có nghĩa rằng các tài khoản máy tính từ bất kỳ domain nào cũng có thể làm thành viên của group Cert Publisher của domain A này.

Nếu một CA cấp chứng chỉ cho người dùng và cần phát hành chứng chỉ đó tới thuộc tính userCertificate thì quá trình này sẽ thất bại nếu CA không phải là thành viên của group Cert Publisher của domain mà người dùng đó đang thuộc về.

Trong trường hợp Cert Publisher là global group thì có 2  phương án là:

  • Chỉnh sửa quyền hạn để cho phép group này đọc và ghi lên thuộc tính userCertificate cho tất cả các domain trong forest.
  • Thay đổi scope của group Cert Publisher thành domain local group và thêm tài khoản máy tính của CA vào group Cert Publisher của mỗi domain.

–manthang

7 comments

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s