Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow one/many connection per TLS-Crypt-V2 key #213

Open
TinCanTech opened this issue Aug 7, 2021 · 6 comments
Open

Allow one/many connection per TLS-Crypt-V2 key #213

TinCanTech opened this issue Aug 7, 2021 · 6 comments
Assignees
Labels

Comments

@TinCanTech
Copy link
Owner

This requires some form of TLS-Crypt-V2 key connection tracking.

@TinCanTech TinCanTech added the Feature request Additional new feature label Aug 7, 2021
@TinCanTech TinCanTech self-assigned this Aug 7, 2021
@TinCanTech TinCanTech added the wontfix This will not be worked on label Aug 9, 2021
@TinCanTech
Copy link
Owner Author

This cannot be done because there is no way to track the TLS-Key serial number when a client disconnects.

@TinCanTech TinCanTech removed the wontfix This will not be worked on label Aug 9, 2021
@TinCanTech
Copy link
Owner Author

TinCanTech commented Aug 9, 2021

This may be possible by using abusing OpenVPN auth_control_file.

@TinCanTech TinCanTech reopened this Aug 9, 2021
TinCanTech referenced this issue Aug 10, 2021
This is required by TLS-Crypt-V2 key connection tracking,
which is disabled by default. (WIP)

Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 10, 2021
Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 10, 2021
Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 10, 2021
This script only adds to conn-trac.
(Disabled)

Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 10, 2021
This script only renoves from conn-trac.
(Disabled)

Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 10, 2021
This script adds to and removes from conn-trac.

A conn-trac can be lost by client-disconnect if --reneg-* and --float
occur during the same --ping interval.  There may be other reasons as
well.

(Disabled)

Signed-off-by: Richard T Bonhomme <[email protected]>
@TinCanTech
Copy link
Owner Author

Requires ip address and port number

@TinCanTech
Copy link
Owner Author

TinCanTech commented Aug 11, 2021

Due to --float and not being able to use --ipchange on a server, tracking by ip:port is not may be possible~ when a client floats ..

So Also, have to can conn-trac by tlskey-serial (TLS-Crypt-V2 key).

It's a pain in the ass but is possible for TLS-Crypt-V2 keys only.

TinCanTech referenced this issue Aug 12, 2021
Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 12, 2021
Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 12, 2021
If metadata files exist then delete them if stale
(older than stale_sec: defaullt 3 seconds)
Otherwise, fail without kill-client, client will try again.

conn-trac is not done for TLS-Crypt-V2 keys.

Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 12, 2021
conn-trac is used only to unregister a previous connection,
which now fails to connect.

Signed-off-by: Richard T Bonhomme <[email protected]>
TinCanTech referenced this issue Aug 12, 2021
Use conn-trac lib to register new connections and unregister
failing connections.  Includes loading c_ext_md_file.

Stop abusing Openvpn auth_control_file.
Remove TLS-Crypt-V2 key serial file.

Signed-off-by: Richard T Bonhomme <[email protected]>
@TinCanTech
Copy link
Owner Author

After extensive testing, early indicators suggest that conn-trac library is working well.

@TinCanTech
Copy link
Owner Author

The only item remaining, is to decide what action to take if a new connection is the same as a current connection.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant