Tài liệu sử dụng OpenSSL
OpenSSL là một bộ công cụ mã nguồn mở mạnh mẽ để thực hiện liên lạc an toàn. Nó cung cấp các chức năng mã hóa, giải mã, giao thức SSL/TLS, v.v. OpenSSL đã được tích hợp sẵn trong ServBay khi giao hàng, bài viết này sẽ giới thiệu chi tiết về cách cài đặt, cấu hình và sử dụng OpenSSL.
Mục lục
Cài đặt và cấu hình
Cài đặt
OpenSSL đã được tích hợp sẵn trong ServBay khi giao hàng, không cần cài đặt thêm.
Cấu hình
Tệp cấu hình của OpenSSL thường nằm trong thư mục /Applications/ServBay/package/common/openssl/3.2
(chip Intel nằm trong thư mục /Applications/ServBay/package/common/openssl/1.1.1u
), tệp cấu hình mặc định là openssl.cnf
. Bạn có thể sửa đổi tệp cấu hình theo nhu cầu để điều chỉnh hành vi của OpenSSL.
Nội dung tệp cấu hình mẫu:
[ req ]
default_bits = 2048
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_default = US
stateOrProvinceName = State or Province Name (full name)
localityName = Locality Name (eg, city)
0.organizationName = Organization Name (eg, company)
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, fully qualified host name)
commonName_max = 64
[ req_attributes ]
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Sử dụng cơ bản
OpenSSL cung cấp nhiều công cụ dòng lệnh cho các nhiệm vụ mã hóa và quản lý chứng chỉ khác nhau. Dưới đây là một số ví dụ sử dụng cơ bản:
Tạo khóa riêng và khóa công khai
Tạo khóa riêng RSA
openssl genpkey -algorithm RSA -out private_key.pem
Tạo khóa công khai từ khóa riêng
openssl rsa -pubout -in private_key.pem -out public_key.pem
Tạo yêu cầu ký chứng chỉ (CSR)
Tạo CSR
openssl req -new -key private_key.pem -out request.csr
Chứng chỉ tự ký
Tạo chứng chỉ tự ký
openssl req -x509 -days 365 -key private_key.pem -in request.csr -out certificate.crt
Quản lý chứng chỉ
Xem thông tin chứng chỉ
Xem thông tin CSR
openssl req -text -noout -verify -in request.csr
Xem thông tin chứng chỉ
openssl x509 -text -noout -in certificate.crt
Chuyển đổi định dạng chứng chỉ
Chuyển từ PEM sang DER
openssl x509 -outform der -in certificate.pem -out certificate.der
Chuyển từ DER sang PEM
openssl x509 -inform der -in certificate.der -out certificate.pem
Mã hóa và giải mã
Mã hóa đối xứng
Sử dụng AES để mã hóa tệp
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt
Sử dụng AES để giải mã tệp
openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt
Mã hóa bất đối xứng
Sử dụng khóa công khai để mã hóa tệp
openssl rsautl -encrypt -inkey public_key.pem -pubin -in plaintext.txt -out encrypted.txt
Sử dụng khóa riêng để giải mã tệp
openssl rsautl -decrypt -inkey private_key.pem -in encrypted.txt -out decrypted.txt
Câu hỏi thường gặp
1. Lệnh OpenSSL không thể thực hiện
- Giải pháp: Kiểm tra xem OpenSSL đã được cài đặt đúng cách chưa và đảm bảo đường dẫn tệp cấu hình là đúng. Nếu vấn đề vẫn còn, hãy xem nhật ký lỗi để biết thêm thông tin.
2. Chứng chỉ được tạo không hợp lệ
- Giải pháp: Kiểm tra tệp yêu cầu chứng chỉ (CSR) và thông tin trong tệp cấu hình xem liệu tất cả các trường bắt buộc đã được điền đầy đủ chưa.
3. Mã hóa hoặc giải mã không thành công
- Giải pháp: Đảm bảo rằng khóa và thuật toán đang sử dụng phù hợp với nhau. Kiểm tra đường dẫn tệp đầu vào và đầu ra xem có đúng không.
Tóm tắt
OpenSSL là một bộ công cụ mạnh mẽ và linh hoạt, phù hợp cho nhiều nhiệm vụ liên lạc an toàn và mã hóa. Qua bài viết này, bạn có thể hiểu được cách cài đặt, cấu hình và sử dụng OpenSSL trong ServBay để quản lý chứng chỉ và mã hóa dữ liệu.