尊敬的StackExchange社区
我有一个带有ubuntu 16.04的OpenVPN 2.3.10服务器Runnig,其中多个客户端(〜80)与Digital Ocean tutorial安装在一起。当我吊销证书时,它仍然可以像以前一样连接。...
我的服务器配置:
port 1197
proto udp
dev tun3
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh2048.pem
topology subnet
server XXX.XXX.XXX.XXX XXX.XXX.XXX.XXX
local XXX.XXX.XXX.XXX
ifconfig-pool-persist ipp.txt
client-config-dir ccd
keepalive 10 120
tls-auth ta.key 0
key-direction 0
cipher AES-128-CBC
auth SHA256
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status-version 2
status openvpn-status4.log
log-append openvpn.server4.log
verb 3
management 127.0.0.1 5558
crl-verify crl/crl.pem
对于证书管理,我使用easy-rsa。
cd ~/openvpn-ca
source vars
要创建证书:./build-key cert_name
要撤消证书,请执行以下操作:./revoke-full cert_name
然后将crl.pem
文件复制到keys
目录的/etc/openvpn/crl
目录中,并更改所有权sudo chown nobody:nogroup /etc/openvpn/crl/crl.pem
相关事件服务器日志:
TLS: Initial packet from [AF_INET]XXX.XXX.XXX:60341, sid=4af4c75c e17bc520
CRL: CRL crl/crl.pem is from a different issuer than the issuer of certificate C=FR, ST=company_name, L=company_name, O=company_name, OU=company_name, CN=company_name, name=server, emailAddress=admin@company.com
VERIFY OK: depth=1, C=FR, ST=company_name, L=company_name, O=company_name, OU=company_name, CN=company_name, name=server, emailAddress=admin@company.com
CRL: CRL crl/crl.pem is from a different issuer than the issuer of certificate C=FR, ST=company_name, L=company_name, O=company_name, OU=company_name, CN=client_name, name=server, emailAddress=admin@company.com
VERIFY OK: depth=0, C=FR, ST=company_name, L=company_name, O=company_name, OU=company_name, CN=client_name, name=server, emailAddress=admin@company.com
如果我这样做了./list-crl
,我可以看到我的证书确实已被撤销:
Certificate Revocation List (CRL):
Version 1 (0x0)
Signature Algorithm: sha256WithRSAEncryption
Issuer: /C=FR/ST=company_name/L=company_name/O=company_name/OU=company_name/CN=test2/name=server/emailAddress=admin@company.com
Last Update: Jun 10 09:03:59 2020 GMT
Next Update: Jun 8 09:03:59 2030 GMT
Revoked Certificates:
Serial Number: 02
Revocation Date: Feb 13 15:48:55 2018 GMT
Serial Number: 03
Revocation Date: Feb 13 15:50:38 2018 GMT
Serial Number: 04
Revocation Date: Feb 13 15:58:06 2018 GMT
Serial Number: 05
Revocation Date: Feb 13 16:59:54 2018 GMT
Serial Number: 06
Revocation Date: Feb 13 17:00:01 2018 GMT
Serial Number: 07
Revocation Date: Feb 13 17:06:43 2018 GMT
Serial Number: 28
Revocation Date: Jul 9 13:24:14 2018 GMT
Serial Number: 29
Revocation Date: Jul 9 13:24:30 2018 GMT
Serial Number: 32
Revocation Date: Jun 9 07:25:35 2020 GMT
Serial Number: 58
Revocation Date: Jun 9 07:26:01 2020 GMT
Serial Number: 59
Revocation Date: Jun 9 07:26:19 2020 GMT
Serial Number: 9B
Revocation Date: Jun 9 15:13:52 2020 GMT
Serial Number: 9C
Revocation Date: Jun 9 14:47:36 2020 GMT
Signature Algorithm: sha256WithRSAEncryption
XXXXX
我可以在 Issuer:块中看到一个固定的问题: CN = test2 ,但是我找不到从哪里来。
这种情况有点令人困惑,因为现在我设法通过iptables阻止客户端,因此它可以连接到VPN但不能访问任何内容,但是我宁愿解决该吊销问题。
你有什么主意吗?
谢谢。
答案 0 :(得分:0)
Openvpn通常被配置为通过nobody用户运行,因此请确保没有用户(/ etc / openvpn / crl)和crl.pem用户可以访问放置crl.pem文件的目录。用户也不可读。 我个人建议将crl.pem文件放在/ etc / openvpn内。