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

Minimum viable SSL connection #5228

Open
wants to merge 7 commits into
base: develop
Choose a base branch
from

Conversation

fishface60
Copy link
Contributor

@fishface60 fishface60 commented Feb 11, 2025

Identify the Bug or Feature request

Works towards #5164

Description of the Change

Most of the change is documenting how to set up a CA from MapTool's RSA keys, generate certificates and create the SSL tunnel.

The code change is adding support for creating an SSLSocket instead of a regular Socket and the URIs and Dialog to opt into using SSL.

Possible Drawbacks

Having a "Use SSL" checkbox to connect to a MapTool server behind a SSL port without corresponding config to create an SSL server is confusing.

Release Notes

  • Added experimental support for connecting to MapTool servers manually secured behind SSL/TLS. See doc/SSL.md for documentation on how to create and configure certificates while the manual steps have yet to be automated.

This change is Reviewable

This is documentation for a manual process that will be incrementally
automated.
SocketConnection has two constructors, either one wrapping an existing
socket or one that creates the socket when started.

Creating the socket from just the host and port is insufficiently
flexible for supporting SSL sockets and since the only difference for
how to handle SSL sockets is how they are created, making creation more
flexible is the minimal change required to support them.
For now this could plausibly be a boolean in RemoteServerConfig.Socket
but it is expected to grow additional complication.
This also adds support for rptools-maptool+tcps URIs to connect to SSL
servers over the command-line.

This adds the useSSL flag to an existing variant as the minimal change.
@cwisniew
Copy link
Member

I assume the final intent of this change is to move everything into MT and not require any manual set up, or socat or openssl commands to be run or installed on the users machines?

@fishface60
Copy link
Contributor Author

fishface60 commented Feb 12, 2025 via email

@kwvanderlinde kwvanderlinde added the feature Adding functionality that adds value label Feb 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Adding functionality that adds value
Projects
Status: Awaiting-Review
Development

Successfully merging this pull request may close these issues.

3 participants