Routing: Authentication
Routing: Authentication
Routing: Authentication
in OpenConnect VPN[9] to solve the issues TLS has with tunneling over TCP (SSL/TLS
are TCP-based, and tunneling TCP over TCP can lead to big delays and connection
aborts[10]).
Microsoft Point-to-Point Encryption (MPPE) works with the Point-to-Point Tunneling
Protocol and in several compatible implementations on other platforms.
Microsoft Secure Socket Tunneling Protocol (SSTP) tunnels Point-to-Point
Protocol (PPP) or Layer 2 Tunneling Protocol traffic through an SSL/TLS channel (SSTP
was introduced in Windows Server 2008 and in Windows Vista Service Pack 1).
Multi Path Virtual Private Network (MPVPN). Ragula Systems Development Company
owns the registered trademark "MPVPN".[relevant?][11]
Secure Shell (SSH) VPN – OpenSSH offers VPN tunneling (distinct from port
forwarding) to secure[ambiguous] remote connections to a network, inter-network links, and
remote systems. OpenSSH server provides a limited number of concurrent tunnels. The
VPN feature itself does not support personal authentication.[12] SSH is more often used to
remotely connect to machines or networks instead of a site to site VPN connection.
WireGuard is a protocol. In 2020, WireGuard support was added to both the Linux [13] and
Android[14] kernels, opening it up to adoption by VPN providers. By default, WireGuard
utilizes the Curve25519 protocol for key exchange and ChaCha20-Poly1305 for
encryption and message authentication, but also includes the ability to pre-share a
symmetric key between the client and server.[15]
Internet Key Exchange version 2 was created by Microsoft and Cisco and is used in
conjunction with IPSec for encryption and authentication. Its primary use is in mobile
devices, whether on 3G or 4G LTE networks, since it automatically reconnects when a
connection is lost.
OpenVPN is a free and open-source VPN protocol based on the TLS protocol. It
supports perfect forward-secrecy, and most modern secure cipher suites,
like AES, Serpent, TwoFish, etc. It is currently[may be outdated as of March 2023] being developed and
updated by OpenVPN Inc., a non-profit providing secure VPN technologies.
Crypto IP Encapsulation (CIPE) is a free and open-source VPN implementation for
tunneling IPv4 packets over UDP via encapsulation.[16] CIPE was developed
for Linux operating systems by Olaf Titz, with a Windows port implemented by Damion
K. Wilson.[17] Development for CIPE ended in 2002.[18]
Authentication[edit]
Tunnel endpoints must be authenticated before secure VPN tunnels can be established. [citation
needed]
User-created remote-access VPNs may use passwords, biometrics, two-factor authentication, or
other cryptographic methods. Network-to-network tunnels often use passwords or digital certificates.
Depending on the VPN protocol, they may store the key to allow the VPN tunnel to establish
automatically, without intervention from the administrator. Data packets are secured by tamper
proofing via a message authentication code (MAC), which prevents the message from being altered
or tampered without being rejected due to the MAC not matching with the altered data packet.
Routing[edit]
Tunneling protocols can operate in a point-to-point network topology however, this would
theoretically not be considered a VPN because a VPN by definition is expected to support arbitrary
and changing sets of network nodes. But since most router implementations support a virtual,
software-defined tunnel interface, customer-provisioned VPNs often are simply[ambiguous] defined tunnels
running conventional routing protocols.
Provider-provisioned VPN building blocks[edit]
Site-to-site VPN terminology
Depending on whether a provider-provisioned VPN (PPVPN) operates in Layer 2 (L2) or Layer 3
(L3), the building blocks described below may be L2 only, L3 only, or a combination of
both. Multiprotocol Label Switching (MPLS) functionality blurs the L2–L3 identity.[19][original research?]
RFC 4026 generalized the following terms to cover L2 MPLS VPNs and L3 (BGP) VPNs, but they
were introduced in RFC 2547.[20][21]
Customer (C) devices
A device that is within a customer's network and not directly connected to the service provider's
network. C devices are not aware of the VPN.
Customer edge device (CE)
A device at the edge of the customer's network which provides access to the PPVPN. Sometimes it
is just a demarcation point between provider and customer responsibility. Other providers allow
customers to configure it.
Provider edge device (PE)
A device, or set of devices, at the edge of the provider network that connects to customer networks
through CE devices and presents the provider's view of the customer site. PEs are aware of the
VPNs that connect through them, and maintain VPN state.
Provider device (P)
A device that operates inside the provider's core network and does not directly interface to any
customer endpoint. It might, for example, provide routing for many provider-operated tunnels that
belong to different customers' PPVPNs. While the P device is a key part of implementing PPVPNs, it
is not itself VPN-aware and does not maintain VPN state. Its principal role is allowing the service
provider to scale its PPVPN offerings, for example, by acting as an aggregation point for multiple
PEs. P-to-P connections, in such a role, often are high-capacity optical links between major locations
of providers.