🔓 TLS Termination proxies

artistical representation of rama TLS Termination proxy as llama unlocking cargo to move it forward unprotected
A TLS termination proxy is a proxy server that acts as an intermediary point between client and server applications, and is used to terminate and/or establish TLS (or DTLS) tunnels by decrypting and/or encrypting communications. This is different to TLS pass-through proxies that forward encrypted (D)TLS traffic between clients and servers without terminating the tunnel.

Wikipedia

Examples:

  • /examples/tls_termination.rs: Spawns a mini handmade http server, as well as a TLS termination proxy, forwarding the plain text stream to the first.
  • /examples/mtls_tunnel_and_service.rs: Example of how to do mTls (manual Tls, where the client also needs a certificate) using rama, as well as how one might use this concept to provide a tunnel service build with these concepts;

Description

%3clientclientproxy (rama)proxy (rama)client->proxy (rama)  httpsserver Aserver Aproxy (rama)->server A  httpserver Bserver Bproxy (rama)->server B  http

Reverse proxies are a superset of proxies that also include TLS Termination Proxies. It's very common for a reverse proxy to also terminate the TLS tunnel.