Oricorio - It´s a service based on docker-compose (nginx, wg-easy) and cloud-init configuration for faster deployment VPN with reverse-proxy configuration (nginx).
- Clone this repository
- Set your values for variables in the .env file.
- Run - docker-compose up -d
- Run - docker ps (to check the status)
-
ALLOWED_NGINX_IPS - The IPv4 address or subnet from which access will be allowed. Provide a single IPv4 address or a CIDR range, such as
192.168.1.1or192.168.1.0/24. -
WEB_INTERFACE_PORT - Port for access to the web interface wg-easy or endpoint - /wgui (Only for wg-easy). The default value is
51821. -
WG_ALLOWED_IPS - Specifies the IP ranges (in CIDR notation) that are allowed to communicate through the VPN. For example, use
0.0.0.0/0to allow all traffic or a specific range like192.168.1.0/24for a local network. Note: Using0.0.0.0/0allows all traffic, which can pose security risks. It is recommended to restrict this to specific ranges whenever possible. -
WG_DEFAULT_SUBNET - Specifies the subnet to use for the VPN. The format is
ip_address/prefix_length. For example,10.16.0.0/24will create a subnet with a netmask of255.255.255.0. -
WG_MTU - Specifies the Maximum Transmission Unit (MTU) for the VPN. The MTU is the maximum size of a packet that can be transmitted over the network. The default value is
1420, which is suitable for most use cases. Adjust this value only if you experience connectivity issues or need to optimize for specific network conditions. -
WG_UI_TRAFFIC_STATS - Specifies whether to display traffic statistics in the web interface. Set to
trueto enable, orfalseto disable. Defaults tofalseif not specified. -
WG_LANGUAGE - Specifies the language for the web interface. The available options are
en(English) andes(Spanish). -
WG_DEFAULT_DNS - Specifies the DNS servers to use for the VPN. Separate multiple DNS servers with commas. For example,
8.8.8.8, 1.1.1.1. -
WG_PORT - Specifies the port to use for the VPN. The default value is
51820, but it can be changed freely to suit your network configuration. -
NGINX_DOMAIN - The domain for the web interface. For example,
example.com.This is the domain for the web interface. It is used to configure the server block in NGINX.
-
PASSWORD_HASH - The hashed password for the web interface. Default is empty.
This is the hashed password for the web interface. It is used to secure the access to the web interface. The password can be hashed using the
wgpwcommand-line tool provided by thewg-easypackage. For example, to hash a password, you can runwgpw mypassword.Note: Make sure to store the hashed password securely and do not commit it to version control.
🚨 File user_data.yaml contains data for cloud-init. It has default user - oricorio, defualt hashed password - changepass 🚨 If you use user_data.yaml for deploy your server than change password and/or disable password login is set lock_passwd: false