You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+46-8Lines changed: 46 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,27 +10,65 @@ _The command line arguments have precidence and override the config file_
10
10
11
11
To create a TLS proxy using the supplied config file:
12
12
13
-
`tcpprox -s -c config.json -r 172.16.0.12:4550`
13
+
```
14
+
tcpprox -s -c config.json -r 172.16.0.12:4550
15
+
```
14
16
15
17
To create a normal TCP proxy, no config file:
16
18
17
-
`tcpprox -l 0.0.0.0 -p 8081 -r 172.16.0.12:8081`
19
+
```
20
+
tcpprox -l 0.0.0.0 -p 8081 -r 172.16.0.12:8081
21
+
```
22
+
23
+
To specify a custom certificate to use (PEM format) you can use the -cert and -key options (must be used together):
18
24
19
-
To specify a custom certificate to use (PEM format) you can use the -cert option:
25
+
___Note (breaking change)__ for previous versions of tcpprox, the `-cert` and `-key` arguments were combined into one argument `-cert`. This previous arg would take the supplied value and automatically append **.pem** and **.key**. This is no longer the case and the supplied filepaths for `-cert` and `-key` must be complete and for valid, matching files._
The application that is being proxied through tcpprox does not have to supply a client certificate (although it can).
54
+
55
+
This allows for either:
56
+
57
+
```
58
+
client <---TLS---> tcpprox <---mTLS---> server
59
+
```
60
+
61
+
or
62
+
63
+
```
64
+
client <---mTLS---> tcpprox <---mTLS---> server
65
+
```
66
+
67
+
Tcpprox will allow both types of connections through, as long as tcpprox is able to use mTLS to connect to the server, the client is oblivious of what is happening upstream.
68
+
69
+
## Config File
33
70
71
+
The config file can be used instead of supplying all information on the command line. The options specified in the file will be overwritten by any matching command line arguments. This allows for using a config file and overriding one or more options for testing / variation between hosts.
0 commit comments