From 2384dc1eaff8b601c59196bb1d8b1e8331271ce8 Mon Sep 17 00:00:00 2001 From: randomshell <43271778+randomshell@users.noreply.github.com> Date: Sun, 29 Mar 2020 07:06:49 +0000 Subject: [PATCH] Revoke clients only when `$CLIENTNUMBER` is set Fix #477 --- openvpn-install.sh | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/openvpn-install.sh b/openvpn-install.sh index d152fb6..e0c88e0 100755 --- a/openvpn-install.sh +++ b/openvpn-install.sh @@ -1107,23 +1107,25 @@ function revokeClient () { read -rp "Select one client [1-$NUMBEROFCLIENTS]: " CLIENTNUMBER fi - CLIENT=$(tail -n +2 /etc/openvpn/easy-rsa/pki/index.txt | grep "^V" | cut -d '=' -f 2 | sed -n "$CLIENTNUMBER"p) - cd /etc/openvpn/easy-rsa/ || return - ./easyrsa --batch revoke "$CLIENT" - EASYRSA_CRL_DAYS=3650 ./easyrsa gen-crl - # Cleanup - rm -f "pki/reqs/$CLIENT.req" - rm -f "pki/private/$CLIENT.key" - rm -f "pki/issued/$CLIENT.crt" - rm -f /etc/openvpn/crl.pem - cp /etc/openvpn/easy-rsa/pki/crl.pem /etc/openvpn/crl.pem - chmod 644 /etc/openvpn/crl.pem - find /home/ -maxdepth 2 -name "$CLIENT.ovpn" -delete - rm -f "/root/$CLIENT.ovpn" - sed -i "s|^$CLIENT,.*||" /etc/openvpn/ipp.txt + if [[ "$CLIENTNUMBER" != "" ]]; then + CLIENT=$(tail -n +2 /etc/openvpn/easy-rsa/pki/index.txt | grep "^V" | cut -d '=' -f 2 | sed -n "$CLIENTNUMBER"p) + cd /etc/openvpn/easy-rsa/ || return + ./easyrsa --batch revoke "$CLIENT" + EASYRSA_CRL_DAYS=3650 ./easyrsa gen-crl + # Cleanup + rm -f "pki/reqs/$CLIENT.req" + rm -f "pki/private/$CLIENT.key" + rm -f "pki/issued/$CLIENT.crt" + rm -f /etc/openvpn/crl.pem + cp /etc/openvpn/easy-rsa/pki/crl.pem /etc/openvpn/crl.pem + chmod 644 /etc/openvpn/crl.pem + find /home/ -maxdepth 2 -name "$CLIENT.ovpn" -delete + rm -f "/root/$CLIENT.ovpn" + sed -i "s|^$CLIENT,.*||" /etc/openvpn/ipp.txt - echo "" - echo "Certificate for client $CLIENT revoked." + echo "" + echo "Certificate for client $CLIENT revoked." + fi } function removeUnbound () {