OpenSSL是一個強大的加密工具包,它提供了許多命令行工具來執行各種加密任務。以下是一些常用的OpenSSL命令行工具及其用法:
openssl version 這個命令會顯示你安裝的OpenSSL版本。
openssl req 這個命令用于生成證書簽名請求(CSR)和自簽名證書。例如:
openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr
這個命令會生成一個新的2048位的RSA私鑰(mydomain.key)和一個證書簽名請求(mydomain.csr)。
openssl x509 這個命令用于生成自簽名證書或者查看證書信息。例如:
openssl x509 -req -days 365 -in mydomain.csr -signkey mydomain.key -out mydomain.crt
這個命令會使用mydomain.key私鑰簽署mydomain.csr證書簽名請求,并生成一個有效期為365天的自簽名證書mydomain.crt。
openssl s_client 這個命令用于測試SSL/TLS連接。例如:
openssl s_client -connect www.example.com:443
這個命令會連接到www.example.com的443端口,并顯示SSL/TLS握手過程的詳細信息。
openssl s_server 這個命令用于啟動一個SSL/TLS服務器。例如:
openssl s_server -www -port 443 -cert mydomain.crt -key mydomain.key
這個命令會啟動一個監聽在443端口的SSL/TLS服務器,使用mydomain.crt證書和mydomain.key私鑰。
openssl enc 這個命令用于加密和解密文件。例如:
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt
這個命令會使用AES-256-CBC算法加密plaintext.txt文件,并將結果保存到encrypted.txt文件中。
openssl dgst 這個命令用于計算文件的哈希值。例如:
openssl dgst -sha256 file.txt
這個命令會計算file.txt文件的SHA-256哈希值。
這只是OpenSSL命令行工具的一部分功能,更多功能和選項可以通過閱讀官方文檔或使用openssl help命令來獲取。