Skip to main content

Hướng dẫn về PKI – Phần 2: Thiết kế

Hướng dẫn về PKI – Phần 2: Thiết kế - 24/10/2007 16h:50



-->
Phần 1: Lập kế hoạch
Martin Kiaer
Trong phần đầu tiên của loạt bài hướng dẫn về PKI này, chúng ta đã có được một cái nhìn tổng quan về cách chuẩn bị và lên kế hoạch cho PKI của bạn. Trong phần hai này, chúng tôi sẽ tiếp tục giới thiệu với thêm một chút kỹ thuật. Chúng ta sẽ xem xét một số vấn đề về thiết kế PKI. Xuyên suốt trong toàn bộ bài này, chúng tôi sẽ giới thiệu đến bạn cách để tránh những lỗi chung nhất trong quá trình thiết kế. Thiết kế một PKI Khi thiết kế một PKI, có rất nhiều thứ mà bạn cần phải xem xét đến:
Kiến trúc của CA sẽ như thế nào (ví dụ như số lượng CA và những role gì sẽ có)
Bạn muốn bảo vệ như các khóa riêng của CA như thế nào
Nơi nào bạn muốn tạo các điểm công bố
Chúng ta hãy xem xét sâu hơn nữa trong các vấn đề trên Tạo kiến trúc CA có khả năng mở rộng tốt Số lượng và các mức của CA bạn nên bổ sung cơ bản dựa vào sự bảo mật của bạn và các yêu cầu về khả năng sẵn có. Bạn nên cố gắng tổ chức kiến trúc của mình theo những gì cần thiết. Thực sự không có một kinh nghiệm tốt nhất nào trong việc chọn bao nhiêu mức CA bạn cần, tuy vậy thật hiếm khi có ai cần đến trên bốn mức; mặc dù vậy vẫn có một nguyên tắc mà chúng tôi đã liệt kê trong bảng 1 dưới đây giúp bạn đi đúng hướng:
Mức CA
Chú thích
- Độ bảo mật thấp - Các yêu cầu cần thiết về bảo mật CA thấp hơn - Gồm một CA gốc - Số lượng nhỏ các yêu cầu chứng chỉ
- Độ bảo mật trung bình - Gồm một CA gốc offline và các CA cấp dưới online - CA gốc offline được xóa khỏi mạng - Đưa ra các CA online trên mạng - Có từ hai CA trở lên đưa ra với mỗi chứng chỉ
- Độ bảo mật cao - Gồm có CA gốc offline và chính sách offline - Một hoặc nhiều CA thứ cấp online - Hợp với khu vực địa lý rộng và các tổ chức bảo mật cao
Bảng 1: Số các mức CA cần thiết
Như một lưu ý bổ sung, bạn có thể nhớ lại từ phần 1 của loạt bài này, có một thứ được gọi là chính sách chứng chỉ dùng để mô tả cách và ai phát hành/phân phối các chứng chỉ đối với một chủ đề (ví dụ các chủ đề về người dùng đang tồn tại, các máy tính, thiết bị,…). Nếu bạn đã từng có lúc nghĩ mình cần nhiều hơn một chính sách chứng chỉ vì sự hợp lệ, tính địa lý, tính tổ chức hoặc cách sử dụng chứng chỉ thì cần phải định nghĩa một kiến trúc 3 mức, yêu cầu này sẽ cần đến 2 hoặc nhiều CA chính sách ở mức 2 (các CA chính sách). Khi thực thi một PKI, bạn sẽ luôn luôn phải bắt đầu với một CA gốc, hoàn toàn không quan trọng khi chúng ta xử lý với một kiến trúc PKI mức 1, mức 2 hay mức 3. Khi CA gốc luôn là CA gốc và thường được thực thi bởi tự nó thì bạn cần phải bảo vệ khóa riêng của CA gốc một cách tốt nhất có thể. Điều này luôn luôn cần phải chú ý, không quan tâm đến việc kiến trúc PKI của bạn gồm bao nhiêu mức. Nếu kiến trúc PKI của bạn gồm có hai mức hoặc nhiều hơn thì CA gốc cần có một số lượng tối thiểu sự truy cập, vì chỉ có các CA cấp thứ mới yêu cầu sự truy cập vào CA gốc. Mặc dù vậy, khi khoảng cách từ CA gốc tăng (nghĩa là có nhiều mức được bổ sung), các yêu cầu bảo mật sẽ giảm và sự truy cập tăng đối với các CA cấp thứ. Đây sẽ là một hệ số quan trọng khi chúng ta bắt đầu cài đặt các CA, thứ mà chúng tôi sẽ giới thiệu đến trong phần sau. Các khóa riêng CA Trước khi cài đặt một CA, bạn nên có một kế hoạch về kích thước của khóa riêng CA sẽ là bao nhiêu và nó được bảo vệ như thế nào. Chúng ta hãy xem xét đến kích thước khóa, điều rất quan trọng cho lý do bảo mật và khả năng tương thích. Bảng 2 dưới đây liệt kê các kích thước khóa được khuyến khích:
CA role
Kích thước khóa
Root CA
4096
Policy CA
4096
Issuing CA
2048
Bảng 2: Một số kích thước khóa CA
Thông thường, kích thước khóa 4096 được khuyến khích sử dụng để tăng độ bảo mật, đặc biệt cho CA gốc. Mặc dù vậy, điều này có thể phát sinh các vấn đề không tương thích, ví dụ với các sản phẩm mạng của Cisco (phụ thuộc vào phiên bản nào Cisco IOS đang được sử dụng). Điều này là do nhiều sản phẩm của nhóm sản xuất thứ ba có các vấn đề trong việc quản lý kích thước khóa lớn hơn 2048. Và khi thiết bị mạng có thể được tích hợp trong các giải pháp như 802.1x cho vấn đề hợp lệ và tính nguyên tắc thì kích thước khóa sẽ có tính chất quan trọng. Vì vậy bạn phải bảo đảm rằng biết được thiết bị gì sẽ được sử dụng và các hạn chế nào có thể xảy ra đối với việc quản lý chứng chỉ trước khi bắt đầu thực thi một PKI. Khi đã định nghĩa kích thước khóa CA bạn muốn sử dụng thì chúng ta sẽ xem xét đến cách khóa riêng của CA sẽ được bảo vệ như thế nào. Bảo vệ khóa riêng CA Mặc định, CA sử dụng Cryptographic Service Provider (CSP) của Microsoft và bảo vệ khóa riêng của nó với sự trợ giúp của Data Protection API (DPAPI). Điều này gây ra một vấn đề, do tất cả các thành viên của nhóm quản trị viên đều có quyền truy cập đối với khóa riêng của CA và bất kỳ thành viên nào của nhóm này cũng đều có thể export khóa riêng CA, có thể tạo một CA giả mạo mới và đi kèm với nó là các chứng chỉ giả mạo. Các thách thức khác về bảo mật cũng tồn tại như những tấn công tràn bộ đệm từ các phần mềm mã độc. Vậy bạn nên làm gì? Bạn cần phải cân bằng các yêu cầu bảo mật với chi phí và khả năng sử dụng liên quan đến sự bảo vệ khóa riêng của CA. Trong bảng 3 dưới đây, chúng tôi đã liệt kê một số phương pháp chung nhất để bảo vệ khóa riêng của CA. Chúng tôi sẽ để cho bạn đánh giá dưới dạng cách tốt nhất để bảo vệ khóa riêng CA như thế nào. Hãy nhớ rằng điều này có thể là thành phần quan trọng nhất để bảo vệ PKI của bạn.
Phương pháp bảo vệ
Điểm mạnh
Điểm yếu
Lưu chứng chỉ cục bộ
- Dễ thực thi (mặc định) - Chi phí thấp
- Độ bảo mật thấp - CSP chỉ là FIPS 140-1 compliant
Chứng thực dựa trên chip (thẻ thông minh hoặc USB Token)
- Dễ thực thi - Chi phí thấp- FIPS 140-2 compliant
- Độ bảo mật vật lý thấp vì thẻ thông minh có thể dễ bị mất cắp hoặc đánh rơi. - Yêu cầu sự hiện diện mặt vật lý khi các dịch vụ chứng chỉ được bắt đầu - Yêu cầu CSP đặc biệt là cả FIPS 140-2 compliant và các dịch vụ hỗ trợ chứng chỉ Microsoft.
Các máy ảo được mã hóa
- Dễ triển khai - Chi phí thấp - Không phần cứng - Tính phụ thuộc - FIPS 140-2 compliant
- Độ bảo mật trung bình - Dễ bị xâm hại bằng các tấn công analog vì máy tính ảo gồm có ổ đĩa cứng hoặc DVD dễ bị mất hoặc lấy trộm
Modul bảo mật phần cứng (HSM)
- Mức bảo mật rất cao - FIPS 140-2 mức 2 và 3 compliant - Có thể là PCI hoặc LAN - Có thể được sử dụng như các bộ trợ giúp cho SSL.
- Chi phí cao (phụ thuộc vào cấu hình) - Yêu cầu sự cẩn trọng và lập kế hoạch tỉ mỉ
Bảng 3: Một số phương pháp chung để bảo vệ khóa riêng CA.
Bổ sung thêm vào những phương pháp đã được liệt kê trong bảng 3, bạn cũng muốn tăng độ bảo mật của CA bằng việc bảo đảm tất cả CA, ngoại trừ việc phát hành các CA được giữ offline. Bằng cách này chúng sẽ xuất hiện ít trên mạng và chỉ được kết nối vào mạng khi CRL và đã phát hành các chứng chỉ cho các CA khi có những sự thay đổi mới cần thiết với PKI của bạn. Hầu như, các CA gốc và chính sách đều được tắt một cách toàn bộ, tuy nhiên điều này sẽ phụ thuộc vào mức bảo mật vật lý của bạn tốt như thế nào và các khóa riêng của CA được bảo vệ tốt ra sao cũng phần cứng có khả năng tin cậy như thế nào. Nơi tạo các điểm công bố Vùng cuối cùng mà chúng ta sẽ tập trung trước khi bắt đầu thực thi PKI là vị trí công bố Certificate Revocation Lists (CRL) và các khóa công khai của CA. Điều này có thể được hiểu như các điểm phân phối chứng chỉ Certificate Distribution Points (CDP). Có các giao thức khác nhau chúng ta có thể sử dụng để định nghĩa CDP và chúng được liệt kê dưới đây:
HTTP
LDAP (trong thế giới Microsoft thông thường có nghĩa là Active Directory)
FTP
File share (SMB)
Trong hình 1 bên dưới, chúng tôi đã minh chứng nơi công bố CRL và các khóa công khai CA cùng với thứ tự các giao thức được khuyến cáo sử dụng với nó.
Hình 1: Thứ tự giao thức CDP được khuyến cáo
Như những gì bạn có thể thấy, giao thức chính được khuyến khích ở đây là HTTP và cũng có lý do cho sử dụng giao thức này đó là: HTTP là một giao thức tốt nhất cho cả các điểm công bố bên trong và ngoài. Nó rất hoàn hảo nếu bạn bạn cần phải phát hành các chứng chỉ cho cả người dùng bên trong và bên ngoài tại cùng một thời điểm. Đặc biệt cách sử dụng bên ngoài rất quan trọng cần phải xem xét, vì bạn sẽ phải bảo đảm rằng các chứng chỉ đã sử dụng cho truy cập VPN, NAQ hay Wi-Fi đó được kiểm tra hủy bỏ trước khi người dùng được phép truy cập vào mạng bên trong. Bạn cũng cần phải chú ý rằng nếu một CDP không có sẵn cho giao thức đã được cấp thì nó sẽ time-out (thường sau 30s) và chuyển đến giao thức kế tiếp trên danh sách. Vì vậy bằng việc có cấu hình đúng ngay từ đầu là một điều quan trọng và cần thiết đối với cảm nhận người dùng, vì CRL có thể được kiểm tra từ các vị trí bên trong và ngoài mà không có các vấn đề time-out và không có việc gây tổn thất cài đặt bảo mật mạng của bạn. Mặc dù vậy, nếu bạn có một lý do chọn giao thức mặc định là LDAP thì cũng không có điều gì phải lo lắng lắm đặc biệt nếu PKI của bạn sẽ chỉ được sử dụng cho mục đích bên trong. Bạn cũng cần phải thận trọng rằng nếu sử dụng một Active Directory có tích hợp PKI và phát hành các chứng chỉ đến người dùng bên ngoài thì có thể chúng sẽ cần thực thi các truy vấn LDAP đối với Active Directory của bạn (thừa nhận rằng bạn sử dụng Active Directory như một kho chứa CDP LDAP). Mặc dù vậy bạn nên bảo đảm có một cài đặt web server dự phòng, sử dụng cài đặt luân chuyển vòng DNS khi giao thức ưa thích là HTTP. Nếu muốn sử dụng LDAP thì bạn cần phải có một cài đặt dự phòng khi có hai hoặc nhiều bộ điều khiển trong miền của mình. Kết luận Trong phần 2 này, chúng tôi đã giới thiệu cho các bạn một số hướng dẫn và những lời khuyên bổ ích về cách thiết kế tốt nhất như thế nào với một PKI có cả các CA offline và online. Các bạn nên nghiên cứu đến các bảng và hình trong phần này vì chúng gồm có rất nhiều chi tiết cần thiết cho việc thực hành. Trong phần tiếp theo của loạt bài này (phần 3), chúng tôi sẽ sử dụng thực hành tốt nhất cho việc thiết kế từ phần hai này và giới thiệu cho các bạn cách cài đặt PKI từng bước một.

Comments

Popular posts from this blog

Demo sử dụng Veeam để backup / restore / replicate máy ảo

Veeam Backup & Replication là 1 giải pháp mạnh cho việc backup, khôi phục và đảm bảo an toàn dữ liệu hạ tầng ảo đáp ứng hoàn toàn các nhu cầu từ bất kỳ độ lớn hay phức tạp của môi trường ảo hóa Vmware và hiện nay là hỗ trợ cả Hyper-V. Một số quan tâm chính mà giải pháp này mang lại: Hỗ trợ môi trường ảo hóa ESX/ESXi Vmware và Microsoft Hyper-V Tăng cường với kiến trúc backup phân tán cho các môi trường lớn và phúc tạp Ngoài giải pháp backup còn đi kèm theo trong bộ sản phẩm tập trung này là Replication. Hỗ trợ khôi phục nhanh hệ thống trực tiếp (start máy ảo trực tiếp) từ các tập tin backup đã được nén và dedup mà không cần restore các tập tin máy ảo ra hệ thống lưu trữ. Đa dạng hóa các phương thức restore từ một bản backup: restore máy ảo, tập tin máy ảo, tập tin bên trong OS của máy ảo hoặc dữ liệu của một ứng dụng đặc thù như AD, Exchange… Hỗ trợ incremental backup (Forward Incremental và Reversed Incremental Backup ) Tăng cường khả năng lưu trữ với tính năng compress v

Phần mềm sao lưu SQL Server tự động tốt nhất

Sau bao nhiêu năm làm việc với SQL Server, mình phát hiện thấy có nhiều trường hợp SQL Server bị lỗi phần tự động sao lưu dẫn đến không thể sao lưu hoặc các bản SQL Express không có phần tự động sao lưu gây khó khăn cho người quản trị database. Nhằm đáp ứng nhu cầu đó nên mình đã viết ra phần mềm SaigonIT SQL Server Backup and Shrink Log . Chương trình đặc biệt hữu ích cho khách hàng sử dụng các bản SQL Server Express. Tính năng chính: Hoạt động theo cơ chế service, không cần login vào hệ điều hành hệ thống vẫn chạy được. Đáp ứng tốt cho các máy chạy Windows Server. Hỗ trợ sao lưu cho các server chạy SQL Server 2000 trở lên. Tự động nén dữ liệu sao lưu thành file zip để tiết kiệm không gian đĩa. Cho phép đặt mật khẩu file sao lưu. Tính năng thu nhỏ file log. Đặt lịch sao lưu theo các ngày trong tuần vào một giờ quy định. Gửi email đến quản trị thông báo mỗi khi sao lưu thành công. Hỗ trợ tốt tài khoản email của Gmail. Cho phép thiết lập chỉ lưu số lượng nhất định bản

Hướng dẫn cài đặt FreeNAS làm shared storage

Có một loạt các lựa chọn hệ điều hành có sẵn để thiết lập NAS của riêng bạn. Nhưng chúng ta sẽ giữ cho mọi thứ đơn giản và thực hiện với FreeNAS. FreeNAS là hệ điều hành thu gọn của FreeBSD nên tương thích phần cứng phụ thuộc vào FreeBSD mà freeBSD cũng tương đối kén phần cứng. Nói chung nên tránh các hệ thống quá cũ. Các bạn có thể tham khảo khả năng tương thích ở đây: http://www.freebsd.org/releases/8.3R/hardware.html FreeNAS hỗ trợ tất cả các giao thức chia sẻ phổ biến. Với các máy tính Windows, nó hỗ trợ Common Internet File System (CIFS), cũng được biết đến dưới tên SMB hoặc samba. Với những người dùng Mac, nó hỗ trợ Apple Filing Protocol (AFP). Bên cạnh đó cũng hỗ trợ Network File System (NFS) cho các máy tính kiểu dáng Unix đó. Khi thiết lập các đĩa, bạn có thể kích hoạt sự mã hóa. FreeNAS cũng cung cấp sự truy cập thông qua File Transfer Protocol (FTP), thậm chí còn có thể thiết lập cho các kết nối gửi đến từ Internet. Thực hiện điều đó bằng cách nhập một cổng chuyển t