A VPN (Virtual Private Network) allows you to establish a secure and encrypted connection between two or more systems using a public network, like the Internet.
The system supports two types of VPNs:
OpenVPN lets you easily create VPN connections, It brings with numerous advantages including:
The OpenVPN server in roadwarrior mode allows connection of multiple clients.
Supported authentication methods are:
The server can operate in two modes: routed or bridged. You should choose bridged mode only if the tunnel must carry non-IP traffic.
To allow a client to establish a VPN:
Create a new account: it is recommended to use a dedicated VPN account with certificate, avoiding the need to create a system user.
On the other hand, it’s mandatory to choose a system account if you want to use authentication with user name and password.
Download the file containing the configuration and certificates.
Import the file into the client and start the VPN.
When creating an OpenVPN net2net connection, you must choose a master between involved servers. All other servers are considered as slaves (clients).
Steps to be performed on the master server:
Steps to be performed on the slave:
IPsec (IP Security) protocol is usually used to create tunnels with devices from other manufacturers.
L2TP is considered the replacement for PPTP which is insecure. Many devices include native support for this protocol but not all implementations are compatible.
Supported authentication methods are:
To allow a client to establish a VPN:
Note
Use of L2TP is recommended if and only if it is not possible to install a OpenVPN client into the device.
IPsec is extremely reliable and compatible with many devices. In fact, it is an obvious choice when you need to create net2net connections between firewalls of different manufacturers.
Unlike OpenVPN configuration, in an IPsec tunnel, firewalls are considered peers.
If you are creating a tunnel between two NethServer Enterprise, given the firewalls A and B:
%any
,
the server waits for connections from the other endpoint.%any
is allowed in one side only!If an endpoint is behind a NAT, the values for Local
identifier and Remote identifier fields must be set to
custom unique names prepended with @
. Common names are the
geographic locations of the servers, such as the state or city name.