3df53012b6
Symlinked files can be resolved by rsync when using the configuration on remote servers but for local testing having the actual file is beneficial.
37 lines
824 B
Bash
Executable File
37 lines
824 B
Bash
Executable File
#!/bin/bash
|
|
## @licence MIT <http://opensource.org/licenses/MIT>
|
|
## @author Copyright (C) 2015 Robin Schneider <ypid@riseup.net>
|
|
|
|
if [ -z "$OPENVPN" ]; then
|
|
export OPENVPN="$PWD"
|
|
fi
|
|
if ! source "$OPENVPN/ovpn_env.sh"; then
|
|
echo "Could not source $OPENVPN/ovpn_env.sh."
|
|
exit 1
|
|
fi
|
|
|
|
TARGET="/tmp/openvpn_${OVPN_CN}"
|
|
if [ -n "$1" ]; then
|
|
TARGET="$1"
|
|
else
|
|
TARGET="$OPENVPN/server"
|
|
fi
|
|
|
|
## Ensure that no other keys then the one for the server is present.
|
|
rm --recursive --force "$TARGET/pki/private" "$TARGET/pki/issued"
|
|
|
|
echo "
|
|
openvpn.conf
|
|
ovpn_env.sh
|
|
pki/private/${OVPN_CN}.key
|
|
pki/issued/${OVPN_CN}.crt
|
|
pki/dh.pem
|
|
pki/ta.key
|
|
pki/ca.crt
|
|
" | rsync --recursive --verbose \
|
|
--files-from - \
|
|
"$OPENVPN/" "$TARGET"
|
|
mkdir -p "$TARGET/ccd"
|
|
|
|
echo "Created the openvpn configuration for the server: $TARGET"
|