-
-
Notifications
You must be signed in to change notification settings - Fork 20
Multiple TLS Crypt V2 Keys per X509 Certificate
A single X509 client certificate can have unlimited TLS-Crypt-V2 client keys to chose from
to connect to a specific server.
Option --sub-key-name=Name
allows Easy-TLS to manage these unlimited keys.
You do not need a TLS-Crypt-V2 --sub-key-name
to use all EasyTLS features.
Only use --sub-key-name
to manage Extra TLS-Crypt-V2 Client keys.
Every server and client can be given a unique TLS-Crypt-V2 key without using --sub-key-name
.
The only reason to use --sub-key-name
is if you have trouble with DPI firewalls blocking you.
The following commands support Sub-Keys:
-
Interactive build - Example:
build
-
Interactive inline - Example:
inline
-
build-tls-crypt-v2-client
Example:--sub-key-name=home build-tls-crypt-v2-client alice
The new key file will be:
easytls/alice-home-tls-crypt-v2.key
-
inline-tls-crypt-v2
Example:--sub-key-name=home inline-tls-crypt-v2 alice
The new Inline file will be:
easytls/alice-home.inline
and update the inline index. -
inline-remove
Example:--sub-key-name=home inline-remove alice
This will remove the Inline file:
easytls/alice-home.inline
and update the inline index.
(You can manually delete the TLS-Crypt-V2 Key file now) -
inline-renew - TODO
Example:--sub-key-name=home inline-renew alice
This will renew the Inline file:
easytls/alice-home.inline
and update the inline index. -
disable
Example:--sub-key-name=home disable alice
This will disable the client: X509 Certificate
alice
with TLS-Crypt-V2 keyhome
. -
enable
Example:--sub-key-name=bob enable alice
This will enable the client: X509 Certificate
alice
with TLS-Crypt-V2 keyhome
.
Root X509 Certificate Authority (CA) Certificate.
Server Certificate: server01.crt
- TLS-Crypt-V2 server01 key:
server01-tls-crypt-v2.key
Command:./easytls build-tls-crypt-v2-server server01
- Inline file:
server01.inline
Command:./easytls inline-tls-crypt-v2 server01
Client Certificate: alice.crt
TLS-Crypt-V2 Default Client key for alice
X509 Certificate.
- TLS-Crypt-V2 alice key:
alice-tls-crypt-v2.key
Command:./easytls build-tls-crypt-v2-client server01 alice
- Inline file:
alice.inline
Command:./easytls inline-tls-crypt-v2 alice
TLS-Crypt-V2 Client Sub-keys for alice
X509 Certificate.
-
TLS-Crypt-V2 alice key
--sub-key-name=WORK
:alice-WORK-tls-crypt-v2.key
Command:./easytls --sub-key-name=WORK build-tls-crypt-v2-client server01 alice
-
Inline file:
alice-WORK.inline
Command:./easytls --sub-key-name=WORK inline-tls-crypt-v2 alice
-
TLS-Crypt-V2 alice key
--sub-key-name=LAPTOP
:alice-LAPTOP-tls-crypt-v2.key
Command:./easytls --sub-key-name=LAPTOP build-tls-crypt-v2-client server01 alice
-
Inline file:
alice-LAPTOP.inline
Command:./easytls --sub-key-name=LAPTOP inline-tls-crypt-v2 alice
Client Certificate: bob.crt
TLS-Crypt-V2 Default Client key for bob
X509 Certificate.
- TLS-Crypt-V2 bob key:
bob-tls-crypt-v2.key
Command:./easytls build-tls-crypt-v2-client server01 bob
- Inline file:
bob.inline
Command:./easytls inline-tls-crypt-v2 bob
TLS-Crypt-V2 Client Sub-keys for bob
X509 Certificate.
-
TLS-Crypt-V2 bob key
--sub-key-name=HOME
:bob-HOME-tls-crypt-v2.key
Command:./easytls --sub-key-name=HOME build-tls-crypt-v2-client server01 bob
-
Inline file:
bob-HOME.inline
Command:./easytls --sub-key-name=HOME inline-tls-crypt-v2 bob
-
TLS-Crypt-V2 bob key
--sub-key-name=LAPTOP
:bob-LAPTOP-tls-crypt-v2.key
Command:./easytls --sub-key-name=LAPTOP build-tls-crypt-v2-client server01 bob
-
Inline file:
bob-LAPTOP.inline
Command:./easytls --sub-key-name=LAPTOP inline-tls-crypt-v2 bob
* X509
|
\
|- Certificate Authority (CA) Certificate.
|
|\
| \
| |-- Server Certificate: `server01.crt`
| \
| \
| |---- TLS-Crypt-V2 server01 key: `server01-tls-crypt-v2.key`
| | Command: `./easytls build-tls-crypt-v2-server server01`
| |---- Inline file: `server01.inline`
| | Command: `./easytls inline-tls-crypt-v2 server01`
|\
| \
| |-- Client Certificate: `alice.crt`
| |\
| | \
| | |---- TLS-Crypt-V2 alice key: `alice-tls-crypt-v2.key`
| | | Command: `./easytls build-tls-crypt-v2-client server01 alice`
| | |---- Inline file: `alice.inline`
| | | Command: `./easytls inline-tls-crypt-v2 alice`
| |
| |\
| | \
| | |---- TLS-Crypt-V2 alice key `--sub-key-name=WORK`: `alice-WORK-tls-crypt-v2.key`
| | | Command: `./easytls --sub-key-name=WORK build-tls-crypt-v2-client server01 alice`
| | |---- Inline file: `alice-WORK.inline`
| | | Command: `./easytls --sub-key-name=WORK inline-tls-crypt-v2 alice`
| |
| |\
| | \
| | |---- TLS-Crypt-V2 alice key `--sub-key-name=LAPTOP`: `alice-LAPTOP-tls-crypt-v2.key`
| | | Command: `./easytls --sub-key-name=LAPTOP build-tls-crypt-v2-client server01 alice`
| | |---- Inline file: `alice-LAPTOP.inline`
| | | Command: `./easytls --sub-key-name=LAPTOP inline-tls-crypt-v2 alice`
| |
| |\
| | \
| | |---- TLS-Crypt-V2 alice key `--sub-key-name=PHONE`: `alice-PHONE-tls-crypt-v2.key`
| | | Command: `./easytls --sub-key-name=PHONE build-tls-crypt-v2-client server01 alice`
| | |---- Inline file: `alice-PHONE.inline`
| | | Command: `./easytls --sub-key-name=PHONE inline-tls-crypt-v2 alice`
|
|\
| \
| |-- Client Certificate: `bob.crt`
| |\
| | \
| | |---- TLS-Crypt-V2 bob key: `bob-tls-crypt-v2.key`
| | | Command: `./easytls build-tls-crypt-v2-client server01 bob`
| | |---- Inline file: `bob.inline`
| | | Command: `./easytls inline-tls-crypt-v2 bob`
| |
| |\
| | \
| | |---- TLS-Crypt-V2 bob key `--sub-key-name=HOME`: `bob-HOME-tls-crypt-v2.key`
| | | Command: `./easytls --sub-key-name=HOME build-tls-crypt-v2-client server01 bob`
| | |---- Inline file: `bob-HOME.inline`
| | | Command: `./easytls --sub-key-name=HOME inline-tls-crypt-v2 bob`
| |
| |\
| | \
| | |---- TLS-Crypt-V2 bob key `--sub-key-name=LAPTOP`: `bob-LAPTOP-tls-crypt-v2.key`
| | | Command: `./easytls --sub-key-name=LAPTOP build-tls-crypt-v2-client server01 bob`
| | |---- Inline file: `bob-LAPTOP.inline`
| | | Command: `./easytls --sub-key-name=LAPTOP inline-tls-crypt-v2 bob`
| |
| |\
| | \
| | |---- TLS-Crypt-V2 bob key `--sub-key-name=PHONE`: `bob-PHONE-tls-crypt-v2.key`
| | | Command: `./easytls --sub-key-name=PHONE build-tls-crypt-v2-client server01 bob`
| | |---- Inline file: `bob-PHONE.inline`
| | | Command: `./easytls --sub-key-name=PHONE inline-tls-crypt-v2 bob`
|
|
.
.