Skip to content

BuildingBlocks

mac edited this page Mar 30, 2016 · 1 revision

Using various programs for customization

The VPNBox suite in conjunction with the ucspi suites offers it's users customizability in there VPN needs, allowing for different transport protocols, encryption and compressing. All the changes should be as simple either adding, removing or switching programs without need to alter the rest of the command.

Transport Protocols

Using the various ucspi suites, it is possible to choose whether the vpn is set over TCP, UDP or ICMP. Their programs are respectively:

tcplisten and tcpconnect

udplisten and udpconnect`

icmplisten and icmpconnect

Note that TCP is a streaming based protocol and as such requires the unbundle program in order to function correctly.

tcplisten IP PORT unbundle tapio tap0

tcpconnect -6 IP PORT unbundle tapio tap0

Compressing

The compressbox program included in the VPNBox suite is intended for increasing vpn's bandwith performance and can be added to the command line optionally.

Encryption

The VPNBox suite includes two encryption programs, xorbox and secretbox.

xorbox is only meant for cryptanalysis uses as the algorithms used are outdated.

secretbox is meant for actual encryption use and uses algorithms from the libsodium package.

Both programs are optional.

Tapio

The main building block for creating vpns. This program allows R/W between two virtual TAP devices, and in conjunction with one of the ucspi programs which give network capabilities to Tapio create a VPN.

The Command line

[tcp|udp|icmp]listen -RH IP PORT [unbundle] [xorbox|secretbox -k key] -- [compressbox] tapio tap0

[tcp|udp|icmp]connect -6 IP PORT [unbundle] [xorbox|secretbox -k key] -- [compressbox] tapio tap0