#!/bin/bash # Get username USER=$1 # Get current folder FOLDER=$(pwd) # Add user USEREXISTS=$(tail -n +2 /etc/openvpn/easy-rsa/pki/index.txt | grep -c -E "/CN=$USER\$") if [[ $USEREXISTS == '1' ]]; then exit 0 else cd /etc/openvpn/easy-rsa/ || return ./easyrsa --batch build-client-full "$USER" nopass fi cd "$FOLDER" || exit # Generate client file cp /etc/openvpn/client-template.txt "$FOLDER/$USER.ovpn" { echo "" cat "/etc/openvpn/easy-rsa/pki/ca.crt" echo "" echo "" awk '/BEGIN/,/END CERTIFICATE/' "/etc/openvpn/easy-rsa/pki/issued/$USER.crt" echo "" echo "" cat "/etc/openvpn/easy-rsa/pki/private/$USER.key" echo "" echo "" cat /etc/openvpn/tls-crypt.key echo "" } >>"$FOLDER/$USER.ovpn"