31 lines
839 B
Markdown
31 lines
839 B
Markdown
# atp: a tcp proxy
|
|
|
|
A simple TCP proxy written in rust.
|
|
|
|
### why?
|
|
|
|
In the past, I had nginx set up to serve my websites, and it also served as a TCP proxy for SSH. Recently, however, I switched to Caddy for HTTPS. Caddy, unfortunately, doesn't have a TCP proxy, so I had to keep nginx around for my proxying needs. I find this a bit overkill though, which is where `atp` comes in.
|
|
|
|
### configuration
|
|
|
|
The configuration is in the TOML format. A sample config follows:
|
|
|
|
```toml
|
|
"192.168.1.28:6667" = 8000
|
|
"192.168.1.48:1604" = 1604
|
|
```
|
|
|
|
### running
|
|
|
|
```sh
|
|
cargo run /path/to/config.toml
|
|
```
|
|
|
|
If no path is provided, `atp` will fall back to looking for `config.toml` in the current directory.
|
|
|
|
TODO:
|
|
- [ ] more descriptive error messages
|
|
- [ ] use spawning + channels instead of `select!`
|
|
- [ ] on-the-fly config reload?
|
|
- [ ] UDP proxying?
|