Chứng chỉ SSL hiện đang được sử dụng rộng rãi trong bối cảnh mã hóa khi Google phát động chiến dịch HTTPS Everywhere và bắt buộc đối với mọi người để bảo mật website. Do đó, việc triển khai SSL đúng cách là rất quan trọng. Nhiều chủ sở hữu web lần đầu tiên tìm hiểu về SSL phải trang bị thêm các công cụ và tiện ích cần thiết. OpenSSL là một trong số đó. OpenSSL là gì trên Windows? Trong bài viết hôm nay, Tino Group sẽ hướng dẫn bạn cách cài đặt OpenSSL trên Windows đơn giản nhất.
Giới thiệu OpenSSL
OpenSSL là gì?
OpenSSL là một thư viện phần mềm có mã nguồn mở được sử dụng để mã hóa dữ liệu và triển khai các giao thức mạng. Công cụ này dùng 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.
OpenSSL ra mắt vào năm 1998 và có sẵn trong các hệ thống Linux, Windows, macOS và BSD. Với OpenSSL, người dùng có thể thực hiện các tác vụ liên quan đến SSL khác nhau như CSR (Yêu cầu ký chứng chỉ), tạo khóa riêng và cài đặt chứng chỉ SSL. Vì vậy, khi nhắc tới chứng chỉ SSL/TLS và cách thức triển khai chúng thì đây chính là công cụ thích hợp nhất.
Hiện nay, chúng đang được ứng dụng rộng rãi trong các máy chủ web Internet nhằm phục vụ cho hầu hết các trang web.
Tại sao OpenSSL lại quan trọng?
Khi sử dụng OpenSSL, bạn có thể đăng ký chứng chỉ số (Tạo yêu cầu ký chứng chỉ) và cài đặt các giao thức SSL ngay trên máy chủ của bạn một cách dễ dàng. Hơn nữa, bạn cũng có thể chuyển đổi chứng chỉ đang có thành các định dạng SSL khác nhau, đồng thời thực hiện tất cả các loại xác minh.
Tất cả những gì bạn cần làm là tìm hiểu một vài lệnh OpenSSL phổ biến với mỗi chứng chỉ mới để quá trình cấu hình trở nên nhanh chóng và dễ dàng hơn. Không phải tất cả các máy chủ đều cung cấp giao diện người dùng web để bạn có thể quản lý SSL. Do đó trên một số nền tảng, OpenSSL là giải pháp duy nhất để nhập và cấu hình chứng chỉ của bạn.
Tóm lại, OpenSSL được sử dụng để:
- Tạo các tham số chính RSA, DH và DSA
- Tạo chứng chỉ X.509, CSR và CRL
- Mã hóa và giải mã bằng mật mã
- Kiểm tra máy khách và máy chủ SSL/TLS
- Xử lý email đã ký hoặc mã hóa S/MIME
Một số lệnh OpenSSL được sử dụng phổ biến nhất hiện nay
Do thư viện gốc được viết bằng ngôn ngữ lập trình C, nên các câu lệnh OpenSSL có thể được sử dụng để thực hiện nhiều chức năng khác nhau. Dưới đây là các lệnh OpenSSL được dùng phổ biến nhất.
Lệnh kiểm tra các phiên bản OpenSSL
Trước khi đi sâu vào các lệnh khác, bạn có thể kiểm tra phiên bản OpenSSL của mình bằng với lệnh sau: openssl version –a
Lệnh sử dụng để tạo khóa riêng
Để tạo khóa riêng, bạn cần xác định thuật toán khóa (key algorithm), kích thước khóa (key size) và mật khẩu tùy chọn (passphrase). Trong đó, thuật toán khóa tiêu chuẩn là RSA hoặc bạn cũng có thể chọn ECDSA cho các tình huống cụ thể khác. Để đảm bảo bạn sẽ không gặp phải các vấn đề về tương thích, bạn nên sử dụng thuật toán RSA. Bạn hãy sử dụng lệnh sau để tạo khóa riêng:
openssl genrsa -out yourdomain.key 2048
Lệnh này sẽ giúp bạn tạo tệp yourdomain.key trong thư mục hiện tại và khóa riêng của bạn sẽ có định dạng PEM .
Tiếp theo, bạn có thể xem nội dung được mã hóa khóa riêng của mình qua lệnh:
cat yourdomain.key
Để giải mã khóa riêng của bạn, hãy sử dụng lệnh này:
openssl rsa -text -in yourdomain.key –noout
Lệnh tạo CSR
Để tạo CSR, bạn hãy chạy lệnh sau:
openssl req -new -key yourdomain.key -out yourdomain.csr
Khi dùng lệnh này, bạn sẽ nhập các thông tin sau đây:
- Tên quốc gia: Nhập mã quốc gia gồm 2 chữ số, trong đó tổ chức của bạn phải được định vị một cách hợp pháp.
- Thành phố: Nhập đầy đủ tên thành phố – nơi tổ chức của bạn được định vị hợp pháp
- Tên của tổ chức: Viết tên tổ chức hợp pháp của bạn
- Đơn vị tổ chức: Điền tên của bộ phận (bạn hoàn toàn có thể nhấn Enter để bỏ qua).
- Tên thường gặp: Nhập tên miền đầy đủ mà bạn muốn gán chứng chỉ SSL (cụ thể là: www.yourdomainname.com.)
- Email: Nhập địa chỉ email hợp lệ (bạn cũng có thể enter bỏ qua khi thuộc tính này không bắt buộc).
Lệnh tạo CSR và khóa riêng cùng một lúc
Vì OpenSSL rất linh hoạt nên bạn có thể sử dụng lệnh sau để tạo cả khóa riêng và CSR cùng lúc:
openssl req -new \
-newkey rsa:2048 -nodes -keyout yourdomain.key \
-out yourdomain.csr \
-subj "/C=US/ST=CA/L=San Francisco/O=Your Company, Inc./OU=IT/CN=yourdomain.com"
Lệnh kiểm tra thông tin CSR
Để đảm bảo bạn đã cung cấp thông tin một cách đầy đủ và chính xác trước khi gửi CSR cho CA để họ cấp phát chứng chỉ, bạn cần chạy lệnh bên dưới:
openssl req -text -in yourdomain.csr -noout –verify
Lệnh kiểm tra xác nhận thông tin chứng chỉ của bạn
Sau khi được CA cấp phát và chuyển chứng chỉ SSL đến hộp thư của bạn, hãy chạy lệnh dưới đây để đảm bảo thông tin của chứng chỉ khớp với khóa riêng của bạn.
openssl x509 -text -in yourdomain.crt –noout
Hướng dẫn cài đặt công cụ OpenSSL trên Window
Bước 1: Download OpenSSL Binary
Bạn có thể download trình cài đặt OpenSSL Windows phiên bản mới nhất từ trang này.
http://slproweb.com/products/Win32OpenSSL.html
Bước 2: Tiến hành cài đặt OpenSSL
Lúc này, bạn mở file vừa tải và bắt đầu chạy trình cài đặt OpenSSL trên hệ thống.
OpenSSL yêu cầu máy tính của bạn phải được cài đặt Microsoft Visual C ++. Nếu bạn chưa cài đặt Microsoft Visual C ++, trình cài đặt sẽ hiển thị thông báo như sau:
Bạn hãy nhấp vào Yes để tải xuống và cài đặt gói Microsoft Visual C ++
Sau đó, chạy lại trình cài đặt OpenSSL và làm theo hướng dẫn.
Bước 3: Thiết lập cho các biến môi trường
Bạn hãy đặt các biến môi trường để OpenSSL có thể hoạt động bình thường trên hệ thống. Bạn sẽ được yêu cầu đặt OPENSSL_CONF và Path.
Sử dụng các lệnh sau để đặt môi trường cho phiên hiện tại:
set OPENSSL_CONF=C:\OpenSSL-Win64\bin\openssl.cfg
set Path=%Path%;C:\OpenSSL-Win64\bin
Đặt biến vĩnh viễn: Bạn cũng có thể đặt vĩnh viễn các biến môi trường OPENSSL_CONF và Path trong hệ thống. Cách làm như sau:
Nhấn tổ hợp phím Windows + R, sau đó nhập “sysdm.cpl” vào hộp thoại Run và nhấn Enter. Ngoài ra, bạn có thể mở Command Prompt và nhập lệnh tương tự để mở System Properties.
Kế tiếp chuyển đến tab Advanced và chọn Environment variables.
Đặt biến OPENSSL_CONF:
Đặt biến Path:
Bước 4: Chạy OpenSSL Binary
Mở Command Prompt trên hệ thống của bạn và nhập openssl để mở OpenSSL. Lúc này, phiên bản OpenSSL đã được cài đặt trên hệ thống của bạn.
Trên đây là một số thông tin cơ bản về OpenSSL, một công cụ để cài đặt chứng chỉ SSL giúp đảm bảo cho website của bạn được hoạt động một cách an toàn nhất. Hy vọng với những gì bài viết đã chia sẻ, bạn sẽ biết cách tự thiết lập OpenSSL cho máy tính Windows của mình.
FAQs về OpenSSL
Sử dụng OpenSSL và hiển thị "không thể ghi trạng thái ngẫu nhiên " nghĩa là gì?
Về cơ bản, lý do phổ biến nhất cho điều này là tệp .rnd trong thư mục chính đang được sở hữu bởi root chứ không phải tài khoản của bạn. Cách khắc phục nhanh như sau:
Sudo rm ~/.rnd
Heartbleed là lỗi gì trên OpenSSL?
Vào ngày 7 tháng 4 năm 2014, dự án OpenSSL đã tuyên bố tất cả các phiên bản trong series 1.0.1 cho đến 1.0.1f xảy ra một lỗi trong phần thực hiện phần mở rộng heartbeat (nhịp đập tim) của TLS và lỗi này đã được đặt tên hiệu là Heartbleed, tạm dịch là “trái tim chảy máu” hay “trái tim rỉ máu”.
Vào lúc tuyên bố lỗi, có khoảng 17% trong số máy chủ Web được tín nhiệm bởi nhà cung cấp đã chứng thực có thể tấn công được. Những người tấn công sẽ đọc bộ nhớ của máy chủ để có thể truy cập các dữ liệu cá nhân và làm hại đến sự an toàn của máy chủ cũng như người dùng. Cụ thể, người tấn công sẽ phá mã các thông tin đã được nghe lén, sau đó thực hiện một tấn công xen giữa (man-in-the-middle)
OpenSSL có thực sự miễn phí không?
OpenSSL được cấp phép theo giấy phép kiểu Apache, nên về cơ bản, bạn có thể tự do lấy và sử dụng công cụ này cho các mục đích thương mại và phi thương mại với một số điều kiện cấp phép đơn giản.
Phiên bản OpenSSL mới nhất là gì?
OpenSSL 3.0 là phiên bản mới nhất của OpenSSL. OpenSSL FIPS Object Module (FOM) 3.0 là một phần tích hợp khi bản tải xuống phiên bản này. Do đó, bạn không cần tải 3.0 FOM riêng biệt.