Skip to content
Snippets Groups Projects
README.md 1.03 KiB
Newer Older
# Plugins implementing TLS Crypt V2 for OpenVPN
Emily Ehlert's avatar
Emily Ehlert committed

## Description

This repository contains multiple plugins each implementing the TLS Crypt V2 mechanism in a HSM or Hardware Token. To use any of the plugins, it is required to patch OpenVPN to add a plugin Hook for performing TLS Crypt V2 operations.
Emily Ehlert's avatar
Emily Ehlert committed

## Installation

Each plugin is an individual CMake project and can compiled with it. Dependencies depend on plugin:
Emily Ehlert's avatar
Emily Ehlert committed

* SoftHSM: softhsm
* YubiKey: openssl, yubico-c
* Smartcard: pcsclite, ant
Emily Ehlert's avatar
Emily Ehlert committed

Using the Smartcard Key Wrapping plugin requires compiling and loading a Java Applet onto a Smartcard. The applet code is provided in `SmartcardKeyWrapping/SmartcardKeyWrappingApplet`. The applet is an Ant Project.
Emily Ehlert's avatar
Emily Ehlert committed

Emily Ehlert's avatar
Emily Ehlert committed

Add the plugin to your server config and add arguments depending on the plugin. Order of arguments matters!
Emily Ehlert's avatar
Emily Ehlert committed

* SoftHSM: Path to SoftHSM2 Library (e.g. /usr/lib/pkcs11/libsofthsm2.so)
* YubiKey: Slot number to use on the YubiKey (e.g. 1 or 2) and access code for the YubiKey (if unknown / not set: 0)
* Smartcard: No arguments required