Cấu hình Apache 2.0 hỗ trợ giao thức SSL/TLS - Pdf 15


Cấu hình Apache 2.0 hỗ trợ giao thức SSL/TLS

Bài này kết thúc loạt ba bài giới thiệu về cách cấu hình Apache 2.0 hỗ trợ
giao thức SSL/TLS để an ninh tối đa và thực thi tối ưu cho SSL dựa trên các
giao dịch thương mại điện tử.

Phần I giới thiệu các khía cạnh về khóa của SSL/TLS, và chỉ ra làm cách nào
để biên dịch, cài đặt, và cấu hình Apache 2.0. Phần II mô tả cấu hình của
mod_ssl và các nguồn thẩm định. Đồng thời chỉ ra làm thế nào để tạo được
các chứng chỉ SSL của web server.

Bây giờ, trong phần III và cũng là phần cuối cùng của bài này, chúng ta sẽ
xem đến bộ thẩm định client, dùng các chứng chỉ client. Đồng thời chúng ta
sẽ biết được làm cách nào để chroot một Apache an toàn, thảo luận các
phương hướng tẫn công. Sau đó là mô tả các lỗi cấu hình điển hình của các
nhà quản trị làm giảm mức an toàn của truyền thông SSL.

Bộ thẩm định Client (Client Authentication)

Một phương thức phổ biến nhất để xác định người dùng trong các ứng dụng
web là mật khẩu, nhóm mật khẩu hay PIN, theo nghĩa khác là “điều gì đó mà
chỉ bạn biết”. “Lợi thế lớn nhất của một trong các phương thức này là sự đơn
giản”. Với một nhà quản trị, điều đó đủ để thêm vào một file hướng dẫn
trong http.conf và tạo ra một file mật khẩu để thực hiện như là một sơ đồ.


1. Cho phép bộ kiểm định client trong web server của Apache

Để cho phép dùng chứng chỉ client, chúng ta cần thêm các chỉ dẫn sau vào
thư mục httpd.conf:
SSLVerifyClient require
SSLVerifyDepth 1
Cảm ơn chỉ dẫn SSLVerifyClient, truy cập vào web server giờ không còn bị
giới hạn chỉ trong các web browser mà cho cả các chứng chỉ phù hợp được
ký bởi CA cục bộ. (Chú ý: quá trình tạo CA cục bộ đã được mô tả trong bài
trước) Giá trị “SSLVerifyDepth” chỉ rõ độ chuyên sâu nhất của nguồn cung
cấp chứng chỉ trung cấp trong chuỗi chứng chỉ. Trong trường hợp của chúng
ta, chúng ta sẽ lấy giá trị này là “1”, bởi vì tất cả các chứng chỉ client phải
được ký bởi CA cục bộ. Chúng ta không dùng CAs trung cấp.

2. Cài đặt chứng chỉ địa phương CA vào cấu trúc thư mục Apache.
install -m 644 -o root -g sys ca.crt /usr/local/apache2/conf/ssl.crt/
3. Cài đặt thư mục SSLCACertificateFile (trong httppd.conf) để trỏ tới
chứng chỉ CA chúng ta vừa cài đặt.
SSLCACertificateFile /usr/local/apache2/conf/ssl.crt/ca.crt
4. Bây giờ khởi động lại Apache
/usr/local/apache2/bin/apachectl stop
/usr/local/apache2/bin/apachectl startssl
Từ bây giờ, truy cập vào web server qua SSL chỉ được chấp nhận đối với các
web browser có chứng chỉ client hợp lý, được ký bởi CA cục bộ. Để kiểm tra
điều này, bạn có thể truy cập vào URL của website. Sau khi thiết lập kết nối
SSL MS Internet Explorer sẽ yêu cầu bạn chọn chứng chỉ client bạn muốn
dùng, như trong hình 1:

Hình 1. Internet Explorer yêu cầu một chứng chỉ client.

-newkey rsa:1024 \
-nodes \
-keyout client.key \
-out request.pem \
-subj '/O=Seccure/OU=Seccure Labs/CN=Frodo Baggins'
2. Người dùng gửi yêu cầu chứng chỉ (request.pem) tới CA cục bộ để được
ký.

3. Nhiệm vụ của CA cục bộ là kiểm chứng các thông tin từ yêu cầu chứng chỉ
client thực tế có hợp lý và đúng đắn không.

4. Sau khi kiểm chứng, yêu cầu chứng chỉ (request.pem) nên được sao chép
vào thư mục $SSLDIR/requests trên máy trạm CA cục bộ, dùng các phương
tiện di động như ổ USB.

5. CA cục bộ nên ký yêu cầu chứng chỉ như sau. Điều này nên chạy trên máy
trạm của CA
openssl ca \
-config $SSLDIR/openssl.cnf \
-policy policy_anything \
-extensions ssl_client \
-out $SSLDIR/requests/signed.pem \
-infiles $SSLDIR/requests/request.pem
6. CA cục bộ nên gửi chứng chỉ (signed.pem) cho người dùng

7. Sau khi nhận được chứng chỉ đã ký, người dùng cần lưu trữ khoá private
cùng với chứng chỉ của nó theo dạng PKCS#12.
openssl pkcs12 \
-export \
-clcerts \

Hình 5. Chi tiết chứng chỉ Client certificate trong IE.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status