2009년 1월 26일

openvpn에서 crl.pem의 역할

openvpn의 client인증서를 강제로 revoke시키려 할때는 아래와 같은 방법으로 revoke시킨다.

. ./vars
./revoke-full client2

그러면 아래와 같은 메세지를 볼수 있다.

Using configuration from /root/openvpn/20/openvpn/tmp/easy-rsa/openssl.cnf
DEBUG[load_index]: unique_subject = "yes"
Revoking Certificate 04.
Data Base Updated
Using configuration from /root/openvpn/20/openvpn/tmp/easy-rsa/openssl.cnf
DEBUG[load_index]: unique_subject = "yes"
client2.crt: /C=KG/ST=NA/O=OpenVPN-TEST/CN=client2/emailAddress=me@myhost.mydomain
error 23 at 0 depth lookup:certificate revoked

마지막 error 23은 revoke된 인증서의 인증이 실패했다라는 의미이다.

세부적으로 revoke-full script는 CRL(certificate revocation list)이라고 불리는 crl.pem파일을 key디렉토리 하위에 생성한다.

openvpn server configuration파일에 아래 option을 추가하여 crl인증을 매 client인증때마다 수행하여 crl에 revoke된 정보가 들어있다면 connection을 drop시키도록 한다.

이러한 crl파일의 update는 openvpn서버가 실행되고 있는동안에도 수행될수 있으며 매 한시간 마다 update되며 매번 client가 접속시마다 체크된다.
crl-verify crl.pem

댓글 없음: