Hướng dẫn cài đặt SSL cho Apache trên VPS Ubuntu

Sau khi đăng ký và kích hoạt các chứng chỉ SSL, quý khách sẽ nhận được các file xác thực từ phía nhà cung cấp dịch vụ. Ở đây, các bạn chú ý các file CRT và CA, Private Key khi cài đặt.

Quý khách có thể tham khảo các gói dịch vụ SSL của HOSTVN tại đây: https://hostvn.net/dich-vu/chung-thuc-so-ssl/

Đối với dịch vụ SSL của HOSTVN quý khách có thể tham khảo một trong các bài viết sau để lấy CRT và CA, Private Key:

Phần 1: Bật mod_ssl

Để có thể chạy được SSL trên VPS Ubuntu với webserver Apache, trước tiên quý khách cần nật mod SSL cho VPS bằng cách login vào VPS thông qua SSH và chạy lệnh dưới đây:

a2enmod ssl

Để truy cập VPS thông quy SSH quý khách có thể tham khảo hướng dẫn sau: https://kb.hostvn.net/huong-dan-su-dung-putty-de-ssh-vao-vps_42.html

Phần 2: Tạo file chứng chỉ và cấu hình Vhost

Sau khi đã có CRT và CAPrivate Key quý khách đăng nhập vào VPS qua SFTP bằng Winscp với tài khoản root và di chuyển tới thư mục chưa các file cấu hình của Apache (Thường là: /etc/apache2)

1. Tạo thư mục chưa các file chứng chỉ SSL

Tại đây quý khách tạo một thư mục mới và đặt tên là ssl Click chuột phải -> New -> Directory để tạo thư mục mới chứa các file chứng chỉ SSL, đặt tên thư mục này là ssl

2. Tạo file private key

Bên trong thư mục ssl quý khách tạo tiếp file chưa nội dung Private key. Trong hướng dẫn này ví dụ sẽ tạo file hostvn-prikey.key

Dán nội dung Private key vào file và lưu lại

2. Tạo file chưa CRT và CA

Tiếp tục tạo file thứ 2 chứa nội dung CRT và CA. Trong ví dụ này sẽ tạo file có tên hostvn-cert.crt

3. Cấu hình file vhost

Sau khi đã tạo các file chứng chỉ SSL thành công, quý khách cần cấu hình lại file vhost của website. File này thường nằm trong thư mục /etc/apache2/sites-available và có tên dạng domain.com.conf (Có thể là tên khác do quý khách đặt lúc cấu hình webserver)

Quý khách có thể tham khảo cấu hình dưới đây và sửa lại nội dung của file Vhost cho phù hợp để có thể nhận chứng chỉ SSL và tự động redirect website sang dạng https

<VirtualHost *:80>
<IfModule mod_rewrite.c> 
      RewriteEngine on 
      RewriteCond %{HTTPS} !=on 
      RewriteRule ^/(.*) https://kb.hostvn.net/$1 [R] 
</IfModule> 
ServerName kb.hostvn.net
ServerAlias www.kb.hostvn.net
</VirtualHost>

<VirtualHost *:443>
ServerAdmin admin@kb.hostvn.net
ServerName kb.hostvn.net
ServerAlias www.kb.hostvn.net

SSLEngine on
SSLCertificateFile /etc/apache2/ssl/hostvn-cert.crt
SSLCertificateKeyFile /etc/apache2/ssl/hostvn-prikey.key

DocumentRoot /home/kb.hostvn.net/public_html
ErrorLog /home/kb.hostvn.net/logs/error-hocphp.log
CustomLog /home/kb.hostvn.net/logs/access-hocphp.log combined
<Directory /home/kb.hostvn.net/public_html>
AllowOverride All
Order Deny,Allow
Require all granted
DirectoryIndex index.php index.html index.htm
</Directory>
</VirtualHost>

Quý khách lưu ý cần sửa lại tên miền,  đường dẫn và tên các file chứng chỉ đúng với đường dẫn và tên file quý khách đã tạo ở bước trước.

Sau khi sửa và lưu file Vhost quý khách khởi động lại Apache để thay đổi có hiệu lực:

service apache2 restart

Chúc quý khách thành công. Nếu gặp khó khăn quý khách có thể liên hệ trực tiếp với bộ phận Kỹ thuật của HOSTVN để được hỗ trợ một cách tốt nhất.



Article ID: 436
Cập nhật gần nhất: 05 Th03, 2019
Lần sửa đổi: 1
SSL (HTTPS) -> Hướng dẫn cài đặt SSL -> Hướng dẫn cài đặt SSL cho Apache trên VPS Ubuntu
https://kb.hostvn.net/hung-dn-cai-dat-ssl-cho-apache-tren-vps-ubuntu_436.html