## Volume aanmaken

Maak een volumecontainer. In deze tutorial wordt de `$OVPN_DATA`omgevingsvariabele gebruikt. Stel dit in op wat je maar wilt. De standaardwaarde `ovpn-data`wordt aanbevolen voor enkele OpenVPN Docker-containerservers. Het instellen van de variabele in de shell maakt gebruik van stringvervanging om te voorkomen dat de gebruiker deze handmatig vervangt in een stap in de tutorial:

    OVPN_DATA="ovpn-data-noorderpoort"

Maak de volume met:

    docker volume create --name $OVPN_DATA

Initialiseer de `$OVPN_DATA`container die de configuratiebestanden en certificaten zal bevatten en vervang deze `vpn.example.com`door je FQDN. De `vpn.example.com`waarde moet de volledig gekwalificeerde domeinnaam zijn die je gebruikt om met de server te communiceren. Dit veronderstelt dat de DNS-instellingen al zijn geconfigureerd. Als alternatief is het mogelijk om alleen het IP-adres van de server te gebruiken, maar dit wordt niet aanbevolen.

    docker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://VPN.EXAMPLE.COM

    docker run -v $OVPN_DATA:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://192.168.182.128

Genereer de EasyRSA PKI-certificeringsinstantie. Je wordt gevraagd om een ​​wachtwoordzin voor de CA-privésleutel. Kies een goede en onthoud het; zonder de wachtwoordzin is het onmogelijk om clientcertificaten uit te geven en te ondertekenen:

    docker run -v $OVPN_DATA:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki

Let op, de beveiliging van de `$OVPN_DATA`container is belangrijk. Het bevat alle privésleutels om de server na te bootsen en alle clientcertificaten. Houd hier rekening mee en controleer de toegang waar nodig. De standaard OpenVPN-scripts gebruiken een wachtwoordzin voor de CA-sleutel om de beveiliging te verhogen en het uitgeven van valse certificaten te voorkomen.