在Debian系统上,要启用OpenSSL的在线证书状态协议(OCSP),你需要按照以下步骤操作:
openssl
和ocsp
工具。如果没有安装,可以使用以下命令安装:sudo apt update
sudo apt install openssl ocsp
# 生成私钥
openssl genpkey -algorithm RSA -out private.key
# 生成证书签名请求(CSR)
openssl req -new -key private.key -out certificate.csr
# 使用CA签发证书(这里假设你有一个CA)
openssl x509 -req -in certificate.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out certificate.crt -days 365
编辑你的Web服务器配置文件(例如,如果你使用的是Apache,编辑/etc/apache2/sites-available/default-ssl.conf
;如果是Nginx,编辑/etc/nginx/sites-available/default
),添加或修改以下配置:
对于Apache:
<VirtualHost *:443>
# ... 其他配置 ...
# OCSP Stapling
SSLUseStapling on
SSLStaplingCache "shmcb:/var/run/ocsp(128000)"
</VirtualHost>
对于Nginx:
server {
# ... 其他配置 ...
ssl_stapling on;
ssl_stapling_verify on;
location @ssl_stapling_lookup {
resolver 8.8.8.8 8.8.4.4 valid=300s;
proxy_pass https://ocsp.example.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
ssl_certificate /path/to/fullchain.pem;
ssl_certificate_key /path/to/private.key;
# ... 其他配置 ...
}
请确保将https://ocsp.example.com
替换为你的OCSP响应服务器的URL。
对于Apache:
sudo systemctl restart apache2
对于Nginx:
sudo systemctl restart nginx
openssl
命令来验证OCSP Stapling是否正常工作:openssl s_client -connect yourdomain.com:443 -tls1_2 -tlsextdebug
在输出中,查找OCSP response
部分,如果看到OCSP响应,说明OCSP Stapling已经启用并正常工作。
请注意,这些步骤可能需要根据你的具体环境和需求进行调整。如果你使用的是自签名证书或特定的CA,可能需要额外的配置步骤。