FreeLAN
FreeLAN is computer software that implements peer-to-peer, full mesh, virtual private network (VPN) techniques for creating secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities. It is free and open-source software licensed under the GNU General Public License Version 3 (GNU GPLv3).[2]
Developer(s) | Julien Kauffmann |
---|---|
Initial release | 1.1 / October 1, 2013[1] |
Repository | |
Written in | C++ |
Type | VPN |
License | GNU GPLv3 |
Website | freelan |
Encryption
FreeLAN uses the OpenSSL library to provide encryption of both the data and control channels. It lets OpenSSL do all the encryption and authentication work, allowing FreeLAN to use all the ciphers available in the OpenSSL package.
Authentication
FreeLAN has several ways to authenticate peers with each other. From version 2.0 FreeLAN offers pre-shared keys, certificate-based, and username-password based authentication.
Connecting FreeLAN clients to each other in p2p mode
To connect to someone via p2p connection, a certificate must be added to the configuration file.
For example, A needs to connect to B directly, not through a server.
Both of them have one server in configuration contact:
contact=158.88.132.221:12000
A's configuration file must have the line:
dynamic_contact_file=c:\freelan\Bob.crt
- path to B's certificate
B's configuration must NOT have the line:
accept_contact_requests=no
by default this option is set yes, so it can be commented out.
All of them need relay mode on. It means server, A, and B must have this line:
relay_mode_enabled=yes
References
- FreeLAN Change Log - FreeLAN Change Log
- https://github.com/freelan-developers/freelan/blob/master/LICENSE