[vc_row][vc_column width=”1/1″][vc_column_text]OpenVPN is an open source software application that implements 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 uses a custom security protocol that utilizes SSL/TLS for key exchange. It is capable of traversing network address translators (NATs) and firewalls. It was written by James Yonan and is published under the GNU General Public License (GPL).
OpenVPN allows peers to authenticate each other using a pre-shared secret key, certificates, or username/password. When used in a multiclient-server configuration, it allows the server to release an authentication certificate for every client, using signature and Certificate authority. It uses the OpenSSL encryption library extensively, as well as the SSLv3/TLSv1 protocol, and contains many security and control features.
To install OpenVPN, we need NAT enabled in kernel. This post is divided into two parts, build the kernel and the second part, install the software.
There is a tutorial about how to cross build pcDuino kernel on a X86-64 machine. Please read it before continue this post.
The following work is done on a X86-64 machine.
We use command “#make linux-config” to configure the kernel:
The following steps are to configure to use NAT:
Replace the generated configuration using the following command:
#cp build/sun4i_defconfig-linux/.config patch/linux-sunxi/arch/arm/configs/sun4i_defconfig
We can then continue to build the kernel by:
#cd kernel #make