Cách tạo chứng chỉ SSL Self-Signed trên Ubuntu

Đầu tiên chúng ta hãy xem liệu Apache 2 đã có mô-đun SSL được nạp chưa.

apache2ctl -M | grep ssl

nếu kết quả của lệnh trên là:

ssl_module (shared)

Nếu không, chúng ta cần nạp Mô-đun SSL:

a2enmod ssl

Đầu ra của lệnh đó sẽ như sau:

Considering dependency setenvif for ssl:
Module setenvif already enabled
Considering dependency mime for ssl:
Module mime already enabled
Considering dependency socache_shmcb for ssl:
Enabling module socache_shmcb.
Enabling module ssl.
See /usr/share/doc/apache2/README.Debian.gz on how to configure SSL and create self-signed certificates.
To activate the new configuration, you need to run:
service apache2 restart

Và bây giờ chúng tôi sẽ khởi động lại Apache:

service apache2 restart

2. Thiết lập môi trường và tạo chứng chỉ SSL

Tạo một thư mục để lưu trữ chứng chỉ và khóa máy chủ:

mkdir /etc/apache2/ssl

Tạo SSL thông qua OpenSSL bằng lệnh sau:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt

Lệnh trên tạo khóa 2048 bit và CRT. Đầu ra của lệnh trên sẽ dẫn đến những câu hỏi sau đây:

Generating a 2048 bit RSA private key
…………+++
………..+++
writing new private key to ‘/etc/apache2/ssl/apache.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) [AU]: US
State or Province Name (full name) [Some-State]: Michigan
Locality Name (eg, city) []: Lansing
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Liquid Web
Organizational Unit Name (eg, section) []: KB
Common Name (e.g. server FQDN or YOUR name) []: kb.thebestfakedomainnameintheworld.com
Email Address []: email@abcd.com

3. Thêm chứng chỉ SSL Self-signed vào Apache

Private key và CSR được liên kết đã được tạo, chúng ta cần chỉnh sửa tệp cấu hình SSL cho Apache:

vim /etc/apache2/sites-available/default-ssl.conf

Tìm phần:
VirtualHost _default_:443
Sau đó, tìm:
ServerAdmin webmaster@localhost
Và thêm cấu hình Virtual Host sau trên dòng tiếp theo:
ServerName abcd.com:443

(Đảm bảo abcd.com bằng tên miền hoặc địa chỉ IP cho máy chủ ảo của bạn)

4. Kích hoạt Máy chủ ảo

  1. Kích hoạt máy chủ ảo bằng lệnh:
    a2ensite default-ssl
  2. Sau đó khởi động lại Apache một lần nữa:
    service apache2 restart

Leave a Reply