Deploying a Private VPN to AWS EC2 using CloudFormation
Make the neccessary changes to the pptp-server-params.json
file, being sure to define new username & password parameters
{
"ParameterKey": "VPNUsername",
"ParameterValue": "nathan"
},
{
"ParameterKey": "VPNPassword",
"ParameterValue": "passw0rd1"
},
{
"ParameterKey": "VPNPhrase",
"ParameterValue": "passw0rd1"
},
The template can be deployed using the AWS cli by running the following:
aws cloudformation create-stack --stack-name "pptp-vpn" \
--template-body file://pptp-server.yaml \
--parameters file://pptp-server-params.json \
--region us-east-1
Note: The --region
parameter is used to define which region the VPN should be deployed to.
Get details, including the Server address for your VPN:
aws cloudformation describe-stacks --stack-name "pptp-vpn" \
--region us-east-1 \
--query 'Stacks[0].Outputs[?OutputKey==`VPNServerAddress`].OutputValue' \
--output text
This configuration is based on the work done by webdigi who's work can be founds below: