tlsgate

TLS proxy
git clone git://git.akobets.xyz/tlsgate
Log | Files | Refs | README | LICENSE

README (1191B)


      1 tlsgate
      2 -------
      3 TLS proxy.
      4 It takes incoming client connections and redirects them to a server:
      5 
      6   client -> proxy -> server
      7 
      8 It can be configured which side of the connection uses TLS: client or server.
      9 
     10 
     11 Dependencies
     12 ------------
     13 - libtls. TLS library provided by LibreSSL.
     14 
     15 
     16 Install
     17 -------
     18 $ make
     19 $ make install
     20 
     21 
     22 Examples
     23 -------
     24 Setup an HTTPS server: accept connections on port 443 and pass them to a local HTTP server on port 80.
     25 
     26 $ tlsgate \
     27     -s \
     28     -h 0.0.0.0 \
     29     -p 443 \
     30     -H 0.0.0.0 \
     31     -P 80 \
     32     -c /etc/path/to/cert/cert.pem \
     33     -k /etc/path/to/key/key.pem
     34 
     35 Use TLS with an IRC client that does not support it (client is connecting to /tmp/irc.sock).
     36 Timeout is set to 0 so proxy does not timeout.
     37 
     38 $ tlsgate \
     39     -S \
     40     -u /tmp/irc.sock \
     41     -H irc.server.com \
     42     -P 6697 \
     43     -t 0
     44 
     45 
     46 Credits
     47 -------
     48 Thanks to the developers of the quark HTTP server
     49 https://tools.suckless.org/quark/
     50 This project had helpful examples on how to handle sockets and signals.
     51 tlsgate was initially made to make HTTPS work with quark.
     52 
     53 Thanks to LibreSSL/libtls developers for a great tls library.
     54 
     55 
     56 Author
     57 -----
     58 Artem Kobets <artem@akobets.xyz>
     59 
     60 
     61 See man page for details.