Tìm hiểu OpenSSL là gì? Lý do nên sử dụng OpenSSL?

1870
04-01-2022
Tìm hiểu OpenSSL là gì? Lý do nên sử dụng OpenSSL?

Đối với nhiều chủ sở hữu trang web khi lần đầu tìm hiểu về SSL thì đều cần trang bị thêm một số công cụ và tiện ích, trong đó có OpenSSL. Vậy OpenSSL là gì và cách thức hoạt động của nó là gì? Hãy cùng Bizfly Cloud tìm hiểu rõ hơn về cách cài đặt OpenSSL trên Windows nhé! 

OpenSSL là gì?

Trước khi đi tìm hiểu về cách cài đặt OpenSSL, ta cần tìm hiểu OpenSSL là gì? OpenSSL là một thư viện phần mềm sử dụng các mã nguồn mở để triển khai các giao thức mạng và mã hoá dữ liệu khác nhau như SSL và TLS. OpenSSL được sử dụng trong trường hợp cần xác định phe truyền thống ở phía đầu bên kia hoặc 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.

OpenSSL đã được ra mắt vào năm 1998 và được cài đặt sẵn trên các hệ điều hành Linux, Windows, macOS hay BSD. Chúng được sử dụng rộng rãi trong nhằm phục vụ đa số các website hiện nay trong các máy chủ web Internet. Hiện nay, theo thống kê, OpenSSL là một phương thức bảo mật được sử dụng nhiều nhất. Tuy nhiên, nếu muốn website được bảo mật tốt nhất, bạn cần gia hạn SSL let’s encrypt.

Khi nhắc tới các chứng chỉ SSL/TLS và cách thức để triển khai chúng, OpenSSL là một công cụ thích hợp hàng đầu. Thư viện gốc của các phần mềm trong OpenSSL được viết bằng ngôn ngữ lập trình C. Bên cạnh đó, OpenSSL cũng có nhiều phần mềm cho phép người dùng sử dụng thư viện với nhiều ngôn ngữ khác nhau. Các phần mềm đều có chức năng mã hoá tổng quát để mã hoá và giải mã dữ liệu. Bạn cũng có thể sử dụng dòng lệnh để yêu cầu, tạo và quản lý các chứng thực số.

OpenSSL là gì

OpenSSL là một phương thức bảo mật được sử dụng nhiều nhất

Vì sao nên sử dụng OpenSSL? 

Ở phần trước, ta đã biết OpenSSL là gì, trong phần này, bài viết sẽ lý giải tại sao bạn cần sử dụng OpenSSL. Có thể nói, thư viện phần mềm này có vai trò cực kỳ quan trọng trong công nghệ thông tin. Bạn có thể sử dụng OpenSSL để đăng ký chứng chỉ số hay còn gọi là tạo yêu cầu ký chứng chỉ. Các giao thức SSL cũng được cài đặt trên máy chủ một cách dễ dàng.

Bên cạnh đó, OpenSSL còn hỗ trợ người dùng thực hiện các loại xác minh và chuyển đổi chứng chỉ đang có thành các dạng SSL khác nhau. Các lệnh OpenSSL được sử dụng phổ biến để hỗ trợ quá trình cấu hình hoá trở nên dễ dàng và nhanh chóng hơn. Hiện nay, hầu hết các máy chủ đều không cung cấp giao diện người dùng web nên bạn hoàn toàn có thể quản lý SSL. OpenSSL là giải pháp duy nhất trên một số nền tảng để bạn nhập và cấu hình chứng chỉ.

Tóm lại, nhờ có OpenSSL, bạn có thể tạo ra các tham số chính RSA, DH hay DSA. Người dùng tạo ra các chứng chỉ X.509, CSR, CRL và mã hoá hoặc giải mã chúng bằng mật mã. Hơn thế nữa, các lệnh của OpenSSL được dùng để kiểm tra máy khách, máy chủ SSL/TLS, mã hóa S/MIME và xử lý email đã ký.

Vì sao nên sử dụng OpenSSL

OpenSSL giúp xác minh và chuyển đổi chứng chỉ đang có thành các dạng SSL khác nhau

Một số lệnh OpenSSL được sử dụng phổ biến 

Bên cạnh những thắc mắc OpenSSL là gì, vấn đề các lệnh OpenSSL được sử dụng phổ biến hiện nay cũng được nhiều người dùng quan tâm. Các câu lệnh OpenSSL được sử dụng để thực hiện nhiều chức năng khác nhau do thư viện gốc được viết bằng ngôn ngữ lập trình C.

Đối với lệnh kiểm tra các phiên bản của OpenSSL: Để sử dụng các lệnh này, người dùng cần biết được phiên bản OpenSSL đang sử dụng là bao nhiêu. Bởi phiên bản OpenSSL sẽ quyết định tới thuật toán và giao thức mã hoá mà bạn có thể sử dụng. Bản phát hành mới nhất của OpenSSL tới thời điểm hiện tại là 3.0.0 đi kèm với nhiều cải tiến mới. Đây là phiên bản được cung cấp một module FIPS mới bao gồm triển khai thuật toán mật mã đáp ứng tiêu chuẩn FIPS 140-2. Các phiên bản trước đây như 1.1.1 có thể hỗ trợ giao thức TLS 1.3. Chúng cũng nhận được sự hỗ trợ là 1.0 và 2.0. Bạn có thể kiểm tra phiên bản OpenSSL bằng cách chạy lệnh openssl version -a.

Lệnh tạo Private Key (khóa riêng) trong OpenSSL: Bạn cần chỉ định thuật toán khóa (key algorithm), kích thước khóa (key size) và các mật khẩu tùy chọn để tạo khoá riêng. Bạn có thể chọn thuật toán khóa tiêu chuẩn là RSA hoặc ECDSA cho từng tình huống cụ thể. Bạn cần tạo các khóa riêng thông qua thuật toán RSA để đảm bảo độ tương thích nếu sử dụng thuật toán chính. Khi sử dụng thuật toán khóa RSA, bạn nên chọn 2048 bit và chọn 256bit nếu sử dụng thuật toán ECDSA.

Một số lệnh OpenSSL được sử dụng phổ biến

Giá trị cao hơn hoặc thấp hơn đều có thể gây ra các vấn đề đối với thuật toán. Đồng thời, người dùng cũng cần chú ý đến việc có nên đặt mật khẩu cho khóa riêng không bởi một số máy chủ sẽ không chấp nhận. 

Khi tạo khóa riêng đã sẵn sàng, người dùng chạy lệnh openssl genrsa -out yourdomain.key 2048 để sử dụng thuật toán RSA. Lệnh này sẽ đặt định dạng khoá riêng ở dạng PEM và tạo tệp yourdomain.key trong thư mục hiện tại. Bạn cũng có thể xem nội dung đã được mã hoá khoá riêng của mình với lệnh cat yourdomain.key. Hoặc chạy lệnh openssl rsa -text -in yourdomain.key -noout để giải mã khoá riêng.

Đối với lệnh tạo CSR: Bạn cần chạy lệnh openssl req -new -key yourdomain.key -out yourdomain.csr để tạo ra CSR. Lệnh này sẽ giúp người dùng nhập các thông tin dưới đây:

  • Tên các quốc gia có hai chữ số và tổ chức của bạn được định vị một cách hợp pháp.
  • Tên thành phố được nhập đầy đủ, nơi tổ chức được định vị hợp pháp.
  • Tên hợp pháp của tổ chức.
  • Tên bộ phận của đơn vị tổ chức.
  • Tên miền đầy đủ mà bạn muốn gắn chứng chỉ SSL như www.yourdomainname.com.
  • Nhập địa chỉ email hợp pháp hoặc bỏ qua nếu không bắt buộc.

Lệnh tạo khoá riêng và CRS đồng thời: OpenSSL rất linh hoạt nên người dùng có thể sử dụng các lệnh dưới đây để tạo cả CRS và khoá riêng cùng lúc.

  • Lệnh số 1: openssl req -new
  • Lệnh số 2: -newkey rsa: 2048 -nodes -key out yourdomain.key \
  • Lệnh số 3: -out yourdomain.csr \
  • Lệnh số 4: -subj "/C=US/ST=CA/L=San Francisco/0=Your Company, Inc./OU=IT/CN=yourdomain.com"

Lệnh chuyển đổi một số tập tin hoặc chứng chỉ quan trọng của OpenSSL. Dưới đây là các câu lệnh để chuyển đổi PEM, về các tệp tin khác và ngược lại:

  • Lệnh đổi PEM sang DER là openssl x509 -outform der -in certificate.pem -out certificate.der.
  • Lệnh chuyển sang P7B từ PEM là openssl crl2pkcs7 -nocrl -certificate.cer -out certificate.p7b -certificate CACert.crt.
  • Lệnh chuyển sang PFX từ PEM là openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt.
  • Lệnh chuyển đổi sang PEM từ DER là openssl x509 -inform DER -in yourdomain.der -outform PEM -out yourdomain.crt.
  • Trong trường hợp cần chuyển đổi PrivateKey, người dùng chạy lệnh openssl rsa -inform DER -in yourdomain_key.der -outform PEM -out yourdomain.key.
  • Lệnh chuyển đổi từ P7B về PEM là openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer.
  • Lệnh chuyển đổi sang PFX từ P7B là openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer.

Lệnh kiểm tra thông tin CSR một cách đầy đủ và chính xác trước khi gửi cho CA để xác nhận. Bạn cần chạy lệnh openssl req -text -in yourdomain.csr -noout -verify để xem các thông tin và gửi đi để lấy chứng chỉ.

Cuối cùng là lệnh kiểm tra xác nhận thông tin chứng chỉ người dùng. Khi được CA cấp phát và chuyển các chứng chỉ SSL đến hộp thư, bạn hãy chạy lệnh openssl x509 -text -in yourdomain.crt -noout. Lệnh này sẽ giúp bạn đảm bảo thông tin chứng chỉ khớp với khoá riêng.

Có thể bạn quan tâm: Lỗ hổng nghiêm trọng trong OpenSSL cho phép tin tặc giải mã HTTPS

Cách cài đặt công cụ OpenSSL trên Windows

Ở các phần trên, Bizfly Cloud đã giúp bạn đọc hiểu được OpenSSL là gì. Ở phần này, bài viết sẽ hướng dẫn cho người dùng cách để cài đặt loại thư viện phần mềm này trên Windows.

  • Bước đầu tiên, bạn cần download các trình cài đặt OpenSSL Windows phiên bản mới nhất.
  • Bước thứ hai là tiến hành cài đặt OpenSSL bằng cách mở file vừa tải và tiến hành chạy trình duyệt trên hệ thống. Máy tính của bạn phải được cài đặt Microsoft Visual C++ để chạy OpenSSL. Nếu chưa được cài đặt, hệ thống sẽ báo lỗi và không chạy được.
  • Bước 3 là thiết lập các biến môi trường OpenSSL bằng cách lệnh sau: set OPENSSL_CONF=C: \OpenSSL -win64\bin\openssl.cfg và set Path=%Path%;C:\OpenSSL -win64\bin. Trong trường hợp muốn đặt vĩnh viễn, bạn có thể bấm tổ hợp phím Windows + R và nhập sysdm.cpl vào hộp thoại Run, sau đó bấm Enter. Hoặc bạn có thể mở Command Prompt và System Properties bằng cách nhập lệnh tương tự. Sau đó, bạn chuyển đến tab Advanced và chọn Environment variables.
  • Bước cuối cùng là chạy OpenSSL Binary trên hệ điều hành. Bạn mở Command Prompt trên hệ thống và nhập openssl để mở thư viện phần mềm. Khi đó, phiên bản OpenSSL đã được cài đặt trên hệ thống và bạn có thể sử dụng ngay cho mục đích thương mại hay phi thương mại.

Đối với người làm công nghệ, OpenSSL là một trong những chứng chỉ bảo mật được sử dụng phổ biến khi xây dựng và hoạt động website. Trong bài viết trên đây, Bizfly Cloud đã giải thích OpenSSL là gì đồng thời hướng dẫn các câu lệnh được sử dụng và cách cài đặt OpenSSL. Nếu bạn đang tìm kiếm thông tin về các loại chứng chỉ bảo mật, hãy theo dõi các bài viết mới từ Bizfly Cloud để cập nhật nhé!

>> Có thể bạn quan tâm: Lỗ hổng nghiêm trọng trong OpenSSL cho phép tin tặc giải mã HTTPS

Bizfly Cloud là nhà cung cấp dịch vụ điện toán đám mây với chi phí thấp, được vận hành bởi VCCorp.

Bizfly Cloud là một trong 4 doanh nghiệp nòng cốt trong "Chiến dịch thúc đẩy chuyển đổi số bằng công nghệ điện toán đám mây Việt Nam" của Bộ TT&TT; đáp ứng đầy đủ toàn bộ tiêu chí, chỉ tiêu kỹ thuật của nền tảng điện toán đám mây phục vụ Chính phủ điện tử/chính quyền điện tử.

Độc giả quan tâm đến các giải pháp của Bizfly Cloud có thể truy cập tại đây.

DÙNG THỬ MIỄN PHÍ và NHẬN ƯU ĐÃI 3 THÁNG tại: Manage.bizflycloud

TAGS: openSSL
SHARE