网络知识
ubuntu openssl使用技巧
2025-07-18 09:36  点击:1

在Ubuntu系统中使用OpenSSL有许多实用的技巧,以下是一些常用的方法和命令:

安装OpenSSL通过APT包管理器安装:
sudo apt updatesudo apt install openssl libssl-dev
从源码编译安装:
wget https://www.openssl.org/source/openssl-1.1.1u.tar.gztar -xzvf openssl-1.1.1u.tar.gzcd openssl-1.1.1u./config --prefix=/usr/local/openssl shared zlibmake -j$(nproc)sudo make install
常用OpenSSL命令行工具功能生成密钥对:
openssl genrsa -out private.key 2048openssl rsa -pubout -in private.key -out public.key
创建证书签名请求(CSR):
openssl req -new -key private.key -out certificate.csr
自签名证书:
openssl req -x509 -new -nodes -key private.key -days 365 -out certificate.crt
加密和解密文件:
openssl enc -aes-256-cbc -salt -in file.txt -out file.txt.encopenssl enc -d -aes-256-cbc -in file.txt.enc -out file.txt
生成和验证消息摘要:
openssl dgst -sha256 file.txtopenssl dgst -sha256 -verify public.key -signature signature.txt file.txt
生成和验证数字签名:
openssl dgst -sha256 -sign private.key -out signature.txt file.txtopenssl dgst -sha256 -verify public.key -signature signature.txt file.txt
生成随机数:
openssl rand -hex 32
管理SSL/TLS连接:
openssl s_client -connect example.com:443openssl s_server -www -accept 443 -cert certificate.crt -key private.key
使用特定版本的OpenSSL进行编译通过环境变量指定OpenSSL版本:
export OPENSSL_ROOT_DIR=/opt/openssl/1.1.1export OPENSSL_INCLUDE_DIR=$OPENSSL_ROOT_DIR/includeexport OPENSSL_LIB_DIR=$OPENSSL_ROOT_DIR/libexport LD_LIBRARY_PATH=$OPENSSL_LIB_DIR:$LD_LIBRARY_PATHexport PATH=$OPENSSL_ROOT_DIR/bin:$PATH
通过编译选项指定OpenSSL版本:
gcc -o my_program my_program.c -I/opt/openssl/1.1.1/include -L/opt/openssl/1.1.1/lib -lssl -lcrypto
管理证书链创建完整的证书链:
cat server.crt intermediate.crt private.key > full-chain.pem
导入自签名证书到信任存储对于自签名证书,你可能需要将其导入到系统的信任存储中,以便浏览器和其他应用程序信任它。在Ubuntu中,可以使用以下命令将证书添加到 /etc/ssl/certs/ca-certificates.crt 文件中:
sudo cp certificate.pem /etc/ssl/certs/ca-certificates.crt

请注意,OpenSSL的版本可能会随着Ubuntu版本的更新而发生变化,因此建议在使用前通过 openssl version命令确认当前安装的版本。如果你需要特定版本的OpenSSL,可以从OpenSSL官方网站下载对应版本的源码进行编译安装。