Cài đặt chứng chỉ SSL trên máy chủ Apache
Bạn có thể cài đặt chứng chỉ SSL lên máy chủ Apache để máy chủ Apache hỗ trợ truy cập an toàn qua HTTPS. Bài viết này hướng dẫn cách cài đặt chứng chỉ SSL trên máy chủ Apache.
Phiên bản Apache trong tài liệu này lấy Apache/2.4.6 làm ví dụ.
Trước khi cài đặt, hãy xác nhận cổng 443 chưa bị chiếm dụng. Nếu cổng 443 đã được sử dụng, vui lòng liên kết một cổng khác khi cài đặt chứng chỉ.
Lấy chứng chỉ
- Sau khi chúng tôi ký cấp chứng chỉ cho bạn, bạn sẽ nhận được tệp chứng chỉ (.zip) ở định dạng nén. Trong gói nén có bốn thư mục tương ứng với bốn định dạng chứng chỉ: Tomcat, Nginx, IIS, Apache; máy chủ Apache cần sử dụng chứng chỉ trong thư mục Apache.
- Thư mục Apache sẽ chứa ba tệp,
- Tệp chứng chỉ
domain_com.crt - Tệp khóa riêng
domain_com.key - Tệp chuỗi chứng chỉ
domain_com.ca-bundle
Cài đặt chứng chỉ SSL
- Sao chép tệp chứng chỉ
domain_com.crt, tệp khóa riêngdomain_com.keyvà tệp chuỗi chứng chỉdomain_com.ca-bundleđã lấy được từ thư mục cục bộ vào thư mục/etc/httpd/sslcủa máy chủ Apache.
- Nếu thư mục
/etc/httpd/sslkhông tồn tại, bạn có thể tạo bằng lệnhmkdir -p /etc/httpd/ssl - Có thể có khác biệt giữa các phiên bản, một số thư mục Apache có thể là
/etc/apache2
- Kiểm tra tệp cấu hình
httpd.conftrong thư mục/etc/httpd/conf, tìm câu lệnh cấu hìnhInclude conf.modules.d/*.confvà xác nhận câu lệnh cấu hình đó chưa bị chú thích. Nếu đã bị chú thích, hãy xóa ký hiệu chú thích (#) ở đầu dòng và lưu tệp cấu hình. - Kiểm tra tệp cấu hình
00-ssl.conftrong thư mục/etc/httpd/conf.modules.d, tìm câu lệnh cấu hìnhLoadModule ssl_module modules/mod_ssl.sovà xác nhận rằng câu lệnh cấu hình đó chưa bị chú thích. Nếu đã bị chú thích, hãy bỏ ký hiệu chú thích (#) ở đầu dòng và lưu tệp cấu hình.
Nếu không tìm thấy LoadModule ssl_module modules/mod_ssl.so trong tệp cấu hình trên, hãy xác nhận xem mô-đun mod_ssl.so đã được cài đặt hay chưa. Nếu chưa cài đặt mô-đun mod_ssl.so, bạn có thể cài đặt bằng cách thực thi lệnh yum install mod_ssl.
- Chỉnh sửa tệp cấu hình
ssl.conftrong thư mục/etc/httpd/conf.d. Sửa đổi nội dung sau:
<VirtualHost *:443>
DocumentRoot /var/www/html
#启用 SSL 功能
SSLEngine on
#证书文件的路径
SSLCertificateFile /etc/httpd/ssl/domain_com.crt
#私钥文件的路径
SSLCertificateKeyFile /etc/httpd/ssl/domain_com.key
#证书链文件的路径
SSLCertificateChainFile /etc/httpd/ssl/domain_com.ca-bundle
</VirtualHost>
- Lưu tệp cấu hình và khởi động lại máy chủ Apache.
Kiểm tra chứng chỉ SSL
Nhập tên miền đã gắn chứng chỉ SSL vào thanh địa chỉ trình duyệt để kiểm tra xem chứng chỉ SSL của bạn đã được cài đặt thành công hay chưa. Nếu thành công, thanh địa chỉ trình duyệt sẽ hiển thị biểu tượng ổ khóa bảo mật; nhấp vào đó để xem thông tin chứng chỉ.

Cấu hình bảo mật tự động chuyển HTTP sang HTTPS (tùy chọn)
Nếu bạn cần tự động chuyển hướng yêu cầu HTTP sang HTTPS, bạn có thể thực hiện theo các bước sau:
- Chỉnh sửa tệp cấu hình
httpd.conftrong thư mục/etc/httpd/conf. Kiểm tra xem tệp cấu hình đó có tồn tạiLoadModule rewrite_module modules/mod_rewrite.sohay không. Nếu có, hãy bỏ ký hiệu chú thích (#) ở đầu dòng; nếu không có, hãy thêm dòngLoadModule rewrite_module modules/mod_rewrite.so, sau đó lưu tệp cấu hình. - Mở tệp http.conf và thêm nội dung sau vào tệp cấu hình:
<VirtualHost *:80>
# 新增
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</VirtualHost>
- Khởi động lại máy chủ Apache để truy cập bằng tên miền, thực hiện tự động chuyển hướng HTTP sang HTTPS.