OpenSSL là gì? Câu hỏi này được khá nhiều người thiết lập website quan tâm tới khi sử dụng chứng chỉ xác thực. OpenSSL là một tiện ích nguồn mở được sử dụng để mã hóa dữ liệu. Tiện ích này cho phép tạo khóa RSA, DH, DSA,… và mã hóa dữ liệu với kết nối SSL/TLS. Để có thể hiểu sâu hơn về khái niệm OpenSSL cũng như tìm hiểu một số mã lệnh OpenSSL được sử dụng phổ biến hiện nay nhé!
Nội dung bài viết
- OpenSSL là gì?
- Các lệnh OpenSSL được sử dụng phổ biến nhất
- Lệnh OpenSSL được sủ dụng tạo khóa riêng
- Kiểm tra khóa riêng với OpenSSL Command
- Sử dụng lệnh OpenSSL để tạo CSR
- Lệnh OpenSSL dùng để kiểm tra CSR
- OpenSSL lệnh để chuyển đổi chứng chỉ và các tập tin quan trọng
- Sử dụng OpenSSL Command để kiểm tra chứng chỉ
- OpenSSL Command được dùng để kiểm tra tệp PKCS # 12 (tệp .pfx)
OpenSSL là gì?
OpenSSL là 1 thư viện phần mềm cho toàn bộ các ứng dụng bảo mật truyền thông qua mạng máy tính phòng chống nghe trộm hoặc cần phải xác định phe truyền thông ở phía đầu bên kia. Chúng được ứng dụng rộng rãi trong các máy chủ web Internet nhằm phục vụ đa số các website hiện nay.
Ngoài OpenSSL thì SSL là một phương thức bảo mật được sử dụng nhiều nhất hiện nay. Tuy nhiên, nếu website của bạn đang sử dụng SSL let’s encrypt nhưng chưa gia hạn thì hãy gia hạn ssl let’s encrypt để website của bạn được bảo mật một cách tốt nhất.
Khi nhắc tới chứng chỉ SSL/TLS và cách thức triển khai chúng thì không có công cụ nào thích hợp bằng OpenSSL. Đây là công cụ mã nguồn mở có sẵn trên Windows, Linux, Solaris, macOS, QNX và nhiều hệ điều hành khác.
Lý giải OpenSSL là gì?
Open SSL gồm các phần mềm nguồn mở cho phép triển khai các giao thức mạng và mã hóa dữ liệu khác nhau như SSL và TLS. Thư viên gốc của phần mềm này được viết bằng ngôn ngữ lập trình C. Trong đó có sẵn những phần mềm cho phép người dùng sử dụng thư viện OpenSSL với nhiều nguôn ngữ khác nhau cùng với các chức năng mật mã tổng quát để có thể mã hóa và giải mã dữ liệu. OpenSSL cũng được sử dụng từ dòng lệnh để có thể yêu cầu, tạo và quản lý các chứng thực số.
Các lệnh OpenSSL được sử dụng phổ biến nhất
Với thư viện gốc được viết bằng ngôn ngữ lập trình C, các câu lệnh OpenSSL có thể được sử dụng để thực hiện vô vàn chức năng khác nhau kể từ thế hệ CSR để chuyển đổi các định dạng chứng chỉ số. Tuy nhiên với những người chỉ muốn cài đặt chứng chỉ số SSL thì chỉ có một số ít lệnh thực sự cần thiết. Dưới đây là các lệnh OpenSSL được dùng phổ biến cùng các ứng dụng của họ như sau:
Lệnh OpenSSL được sủ dụng tạo khóa riêng
openssl genrsa -out yourdomain.key 2048
Kiểm tra khóa riêng với OpenSSL Command
openssl rsa -in privateKey.key -check
Sử dụng lệnh OpenSSL để tạo CSR
Nếu như bạn đã tạo khóa cá nhân bằng câu lệnh:
openssl req -new -key yourdomain.key -out yourdomain.csr
Khi thực hiện lệnh này, người dùng sẽ được nhập các thông tin chi tiết sau đây:
- Tên quốc gia: Điền mã quốc gia gồm 2 chữ số trong đó tổ chức của người dùng được định vị một cách hợp pháp.
- Tiểu bang/Tỉnh: Viết đầy đủ tên của tiểu bang nơi tổ chức của bạn đang được định vị hợp pháp.
- Thành phố: Điền đầy đủ tên thành phố, nơi tổ chức của người dùng được định vị hợp pháp
- Tên của tổ chức: Viết tên tổ chức của bạn hợp pháp
- Đơn vị tổ chức: Điền tên của bộ phận (nếu như không cần thiết, bạn có thể nhấn Enter để bỏ qua).
- Tên thường gặp: Điền domain đầy đủ của bạn (cụ thể như: www.yourdomainname.com.)
- Email: Điền địa chỉ ID email qua đó chứng nhận sẽ được diễn ra (bạn có thể enter bỏ qua nếu như không bắt buộc).
Một số câu lệnh OpenSSL được sử dụng nhiều nhất hiện nay
Nếu như bạn chưa tạo Khóa cá nhân:
Câu lệnh dưới đây sẽ giúp bạn tạo CRS và khóa riêng trong 1 lần sử dụng:
openssl req -new \
-newkey rsa:2048 -nodes -keyout yourdomain.key \
-out yourdomain.csr \
-subj “/C=US/ST=Florida/L=Saint Petersburg/O=Your Company, Inc./OU=IT/CN=yourdomain.com”
Lệnh OpenSSL dùng để kiểm tra CSR
openssl req -text -noout -verify -in CSR.csr
OpenSSL lệnh để chuyển đổi chứng chỉ và các tập tin quan trọng
Các câu lệnh OpenSSL để chuyển đổi tệp PEM:
Tiến hành chuyển đổi PEM sang DER
openssl x509 -outform der -in certificate.pem -out certificate.der
Chuyển đổi PEM sang P7B
openssl crl2pkcs7 -nocrl -certfile certificate.cer -out certificate.p7b -certfile CACert.cert
Chuyển đổi PEM sang PFX
openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt
Các câu lệnh OpenSSL sử dụng để chuyển đổi tệp DER
Để bảo vệ toàn bộ nội dung trên website của bạn sẽ được bản quyền và tránh sự copy của đối thủ thì DMCA là gì là điều mà bạn nên tìm hiểu ngay.
Chuyển đổi DER sang PEM
Để chuyển đổi tệp chứng chỉ, bạn nên sử dụng cú pháp sau đây:
openssl x509 -inform DER -in yourdomain.der -outform PEM -out yourdomain.crt
Để chuyển đổi tệp khóa cá nhân, hãy dùng câu lệnh sau:
openssl rsa -inform DER -in yourdomain_key.der -outform PEM -out yourdomain.key
OpenSSL lệnh để tiến hành chuyển đổi tập tin P7B
Chuyển đổi P7B sang PEM
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
Chuyển đổi P7B sang PFX
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
openssl pkcs12 -export -in certificate.cer -inkey privateKey.key -out certificate.pfx -certfile CACert.cer
Các lệnh OpenSSL được sử dụng để chuyển đổi tệp PKCS # 12 (.pfx)
Lỗ hổng OpenSSL ảnh hưởng như thế nào tới website?
Chuyển đổi PFX sang PEM
Tiến hành chuyển đổi tệp chứng chỉ:
openssl pkcs12 -in certificate.pfx -out certificate.cer -nodes
Tiến hành chuyển đổi tệp khóa cá nhân:
openssl pkcs12 -in yourdomain.pfx -nocerts -out yourdomain.key -nodes
Sử dụng OpenSSL Command để kiểm tra chứng chỉ
openssl x509 -in certificate.crt -text -noout
OpenSSL Command được dùng để kiểm tra tệp PKCS # 12 (tệp .pfx)
openssl pkcs12 -info -in keyStore.p12
Chắc hẳn với những chia sẻ của chúng tôi ở bài viết trên đây, các bạn đã biết hiểu hơn OpenSSL là gì và 1 số câu lệnh OpenSSL được sử dụng phổ biến nhất hiện nay. Nếu như muốn tìm hiểu thêm các thuật ngữ cũng như dịch vụ chứng chỉ bảo mật được sử dụng phổ biến khi xây dựng và đảm bảo website hoạt động ổn định và an toàn, đừng quên theo dõi các bài viết của BKHost nhé!