An open API service indexing awesome lists of open source software.

https://github.com/ps1dr3x/ars-proxy

Fast, minimal, asynchronous HTTP/HTTPS proxy server that can be used as a reverse proxy or for securing non-TLS services. Written in Rust
https://github.com/ps1dr3x/ars-proxy

async fast futures hyper proxy reverse rust server tls tokio

Last synced: about 2 months ago
JSON representation

Fast, minimal, asynchronous HTTP/HTTPS proxy server that can be used as a reverse proxy or for securing non-TLS services. Written in Rust

Awesome Lists containing this project

README

        

# ars-proxy [WIP]
Fast, minimal, asynchronous HTTP/HTTPS proxy server written in Rust

```bash
# Usage:
ars-proxy [--cert --pass-file ] [--to-https]
```
### Notes:

- If `--to-https` parameter is specified (useful only in HTTP mode), the server will proxy all the received http requests to HTTPS.

- If a TLS certificate path is specified (by `--cert` parameter), the server will listen on HTTPS only.
- The only certificate format supported is .pfx/.p12, it is possible to create a .pfx certificate from .crt and .key files using openssl:
```bash
openssl pkcs12 -export -out cert.pfx -inkey cert.key -in cert.crt
```
- The password file (whose path can be specified by `--pass-file` parameter) is supposed to be a file containing only the certificate password (setting file permissions to 600 is recommended). This avoids specifying the certificate password in command line, that can be a security problem.
- If argument `--pass-file` is not specified, the certificate password is assumed to be blank ("").

### Credits:

Credit for a working implementation of a (Tokio-based) Hyper HTTPS server goes to @izderadicka [[link]](https://github.com/izderadicka/tokio-tls/tree/new-tokio "[link]")