All for Joomla All for Webmasters

Hướng dẫn cài đặt chứng chỉ Comodo Positive SSL

Chứng chỉ SSL (Secure Sockets Layer) là tiêu chuẩn của công nghệ bảo mật, nó thiết lập một liên kết được mã hóa giữa máy chủ chứa dữ liệu website và trình duyệt của người dùng một cách an toàn.

Hiện nay chứng chỉ SSL được sử dụng rất phổ biến, hầu hết những website mới hay server mới đều lựa chọn kích hoạt SSL ngay từ ban đầu.

Quá trình kích hoạt và cài đặt chứng chỉ SSL trên server tuy không quá khó khăn nhưng cũng đòi hỏi bạn cần phải có một số kiến thức kỹ thuật nhất định.

Trong bài viết này, mình sẽ hướng dẫn các bạn cài đặt chứng chỉ phổ biến nhất cho tên miền là Comodo Positive SSL được đăng ký tại Namecheap trên máy chủ Nginx.

Do kiến thức và kỹ thuật của từng bạn khác nhau nên mình sẽ làm từng bước chi tiết, tuy rằng dài dòng nhưng sau này các bạn có thể rút ngắn lại khi có kinh nghiệm.
Hướng dẫn cài đặt chứng chỉ Comodo Positive SSL

1. Tạo private key và csr

Sau khi đăng ký ssl, bạn cần phải tiến hành kích hoạt thì mới nhận được file chứng chỉ từ nhà cung cấp.

Ở bước này, bạn cần phải tạo 2 tập tin gồm: Private KeyCSR (Certificate Signing Request). Sau đó hãy cẩn thận lưu lại để sử dụng ở các bước tiếp theo.

Đầu tiên bạn dùng chương trình ZOC Terminal để kết nối với server, sau khi đăng nhập thành công bạn tiến hành tạo 2 file trên bằng câu lệnh sau:

openssl req -new -newkey rsa:2048 -nodes -keyout lvhieu.key -out lvhieu.csr

Ở chữ màu đỏ trong dòng lệnh các bạn hãy thay đổi tên các tập tin theo sở thích của từng người, ở đây mình để tên domain của mình cho dễ nhớ.

Tiếp theo, các bạn cần nhập đầy đủ thông tin không dấu theo yêu cầu bên dưới. Hãy gõ phím từ từ, nếu nhập sai hãy dùng tổ hợp phím Ctrl + X (hoặc Ctrl + C, Ctrl + Z) rồi chạy lại lệnh trên.

Country Name (2 letter code) [XX]:Tên quốc gia (Nếu ở Việt Nam là: VN)
State or Province Name (full name) []:Tên tỉnh / thành phố
Locality Name (eg, city) [Default City]:Tên quận / huyện
Organization Name (eg, company) [Default Company Ltd]:Tên doanh nghiệp / tên của bạn
Organizational Unit Name (eg, section) []:Lĩnh vực hoạt động
Common Name (eg, your name or your server's hostname) []:Tên miền cần chứng thực (Ví dụ: lvhieu.com)
Email Address []:Địa chỉ email đăng ký

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:Để trống và nhấn enter
An optional company name []:Để trống và nhấn enter

Nếu tạo xong nó không thông báo gì nữa thì bạn đã làm thành công, và dưới đây là mẫu đăng ký của mình:

[[email protected] home]# openssl req -new -newkey rsa:2048 -nodes -keyout lvhieu.key -out lvhieu.csr
Generating a 2048 bit RSA private key
...................................................+++
.................+++
writing new private key to 'lvhieu.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:VN
State or Province Name (full name) []:Hau Giang
Locality Name (eg, city) [Default City]:Chau Thanh
Organization Name (eg, company) [Default Company Ltd]:Lam Van Hieu
Organizational Unit Name (eg, section) []:Thiet Ke Website
Common Name (eg, your name or your server's hostname) []:lvhieu.com
Email Address []:[email protected]

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
[[email protected] home]#

Bước tiếp theo bạn dùng lệnh sau để tìm đường dẫn của 1 file bất kỳ, ở đây mình sẽ tìm tập tin lvhieu.csr vừa tạo ở trên:

find / -name lvhieu.csr

Khi bạn tìm bằng câu lệnh trên sẽ cho ta địa chỉ nơi tập tin Private Key và CSR được lưu lại sau khi tạo thành công:

/home/lvhieu.csr

Kế tiếp bạn dùng chương trình WinSCP kết nối với server để truy cập đến thư mục /home chứa các tập tin vừa tìm được ở trên và tải về máy tính của bạn (hãy xóa 2 file Private Key và CSR trên server của bạn luôn nhé).
*********************

2. Kích hoạt chứng chỉ ssl

Sau khi tải về máy tính bạn dùng chương trình Sublime Text để mở file lvhieu.csrcopy toàn bộ thông tin bên trong và mở trình duyệt truy cập vào trang quản lý tài khoản của Namecheap. Ở thư mục Product List ta chọn chứng chỉ ssl cần kích hoạt cho tên miền của bạn và ấn Active.
********************
Tiếp theo trang active ssl xuất hiện và bạn paste nội dung của file CSR đã copy lúc trước vào phần Enter CSR (domain của bạn lúc tạo CSR file sẽ tự động xuất hiện bên dưới). Do ta cài đặt ssl trên Nginx nên phần Server Type ta chọn Apache, Nginx, Cpanel or Other.
************************
Sau đó bạn ấn Submit để sang bước kế tiếp, ở bước này bạn hãy kiểm tra lại tất cả thông tin xem có gì cần thay đổi không. Nếu có thay đổi bạn phải trở lại server và tạo Private KeyCSR file từ đầu nhé.
******************************
Kiểm tra thông tin xong bạn ấn Next, ở mục DCV Methode bạn chọn Email. Mục Approver Emailbạn hãy chọn đúng email của bạn đã đăng ký lúc tạo CSR file nhé, thông thường bước này mặc định sẽ tạo cho ta rất nhiều email nhưng trong đó sẽ có một email mà ta đã đang ký.
*****************************
Chọn đúng email của bạn xong thì ấn Next, ở bước này bạn cần phải nhập lại đầy đủ thông tin theo yêu cầu là được.
**************************
Bước sau cùng bạn ấn Next để sang phần Confirm để xác nhận kết thúc phần kích hoạt ssl và chờ ít phút để nhà cung cấp gửi email xác nhận cho bạn.
***************************
Sau một thời gian dài mòn mỏi đợi chờ, cuối cùng nhà cung cấp đã gửi email gồm có đường link và một dãy các ký tự. Bạn chỉ việc copy dòng ký tự đó và ấn vào liên kết ẩn dưới chữ here để paste vào, sau đó ấn Next rồi Close Window.
*****************

3. Tạo file bundle crt

Nếu kích hoạt chứng chỉ ssl thành công, email được gửi từ Comodo đến cho bạn có đính kèm một file nén có tên lvhieu_com.zip. Trong file nén đó sẽ có 2 file gồm: lvhieu_com.ca-bundlelvhieu_com.crt.

Bạn dùng Sublime Text để mở file lvhieu_com.crt chép toàn bộ nội dung bên trong sau đó bạn tiếp tục mở file lvhieu_com.ca-bundlepaste lên trên cùng của file này. Kế tiếp bạn chọn Save As trên file lvhieu_com.ca-bundle và đặt tên mới là lvhieu-bundle.crt.

4. Cài đặt chứng chỉ ssl

Ở bước này, các bạn dùng ZOC Terminal để kết nối lại server. Sau khi kết nối thành công thì bắt đầu tạo thư mục chứa file chứng chỉ và private key bằng các lệnh sau:
Tạo thư mục chứa file chứng chỉ lvhieu-bundle.crt.

mkdir -p /etc/nginx/ssl/lvhieu/

Tạo thư mục chứa file private key.

mkdir -p /etc/nginx/ssl/lvhieu/ssl_key/

Tạo thư mục chứa file csr file (thư mục này không cần thiết, do mình sợ để lạc mất nên để chung trên server).

mkdir -p /etc/nginx/ssl/lvhieu/ssl_csr/

Tiếp theo chúng ta cần phải tạo thêm file dhparam.pem trong thư mục /etc/nginx/ssl/ bằng lênh sau:

openssl dhparam 2048 -out /etc/nginx/ssl/dhparam.pem

Sau khi tạo thư mục và file dhparam.pem xong, ta tiếp tục dùng chương trình WinSCP để tải tất cả các tập tin vào đúng thư mục đã định trước.
***********************

5. Cấu hình và kiểm tra Nginx

Ở bước này, chúng ta sẽ chỉnh lại file cấu hình Nginx. Ví dụ: tên miền của mình là lvhieu.com thì file cấu hình sẽ có đường dẫn là /etc/nginx/conf.d/lvhieu.com.conf.

Tiếp theo, bạn ta dùng chương trình WinSCP truy tìm đến thư mục /etc/nginx/conf.d/ và tải file lvhieu.com.conf về máy tính. Sau khi tải về bạn hãy nén lại hay tạo 1 file backup để có phát sinh lỗi trong quá trình cấu hình ta có thể phục hồi lại.

Để cấu hình file lvhieu.com.conf ta dùng chương trình Sublime Text thực hiện như sau:

Cấu hình SSL xử lý các request

– Trong block server { ... } thứ 2 ta cấu hình như sau:
+ Chuyển listen 80; thành listen 443 ssl http2;
+ Sau dòng server_name lvhieu.com; ta thêm đoạn cấu hình ssl đã được tối ưu như sau:

# SSL
ssl_certificate /etc/nginx/ssl/lvhieu/lvhieu-bundle.crt;
ssl_certificate_key /etc/nginx/ssl/lvhieu/ssl_key/lvhieu.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';

# Improve HTTPS performance with session resumption
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 1d;

# DH parameters
ssl_dhparam /etc/nginx/ssl/dhparam.pem;

# Enable HSTS (https://developer.mozilla.org/en-US/docs/Security/HTTP_Strict_Transport_Security)
add_header Strict-Transport-Security "max-age=31536000" always;

Redirect toàn bộ link www http sang https

Chưa gắn thẻ

Bài viết liên quan

Để lại bình luận

1 Bình luận trên "Hướng dẫn cài đặt chứng chỉ Comodo Positive SSL"

Notify of
avatar
Sắp xếp:   mới nhất | cũ nhất | đánh giá
wpDiscuz