Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/txn2/n2proxy

Contraband filtering reverse proxy for plain http and SSL.
https://github.com/txn2/n2proxy

brew docker-container docker-image golang-application http-protocol-manipulation http-proxy http-proxy-middleware http-server post proxy rpm-packages sql-injection sql-injection-attacks xss-filter

Last synced: 4 days ago
JSON representation

Contraband filtering reverse proxy for plain http and SSL.

Awesome Lists containing this project

README

        

![n2proxy](mast.jpg)

# n2proxy

[n2proxy] is a [reverse proxy] for detecting and filtering suspicious data including [xss], [SQL injection] or any matchable pattern in a URL or HTTP post body.

**Install**
```bash
# download sample configuration file
wget https://raw.githubusercontent.com/txn2/n2proxy/master/cfg.yml

# install on mac
brew install txn2/tap/n2proxy

# upgrade
brew upgrade n2proxy
```

**Use**
```bash
# get the version
n2proxy --version

# get help
n2proxy --help

# environment variable override defaults
CFG=./cfg.yml PORT=9090 BACKEND=http://example.com:80 n2proxy

# command line options override environment variables
n2proxy --port=9091 --backend=http://example.com:80

# docker
docker run --rm -t -v "$(pwd)":/cfg/ -p 9092:9092 \
txn2/n2proxy --port=9092 --cfg=/cfg/cfg.yml \
--backend=http://example.com

```

Browse to http://localhost:9090

### Development Notes

This project uses [Go Releaser].

Generate a build without publishing it:
```bash
goreleaser --skip-publish --rm-dist --skip-validate
```

Generate Release:
```bash
GITHUB_TOKEN=$GITHUB_TOKEN goreleaser --rm-dist
```

[SQL injection]: https://www.owasp.org/index.php/SQL_Injection
[xss]: https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)
[n2proxy]: https://github.com/txn2/n2proxy
[reverse proxy]: https://en.wikipedia.org/wiki/Reverse_proxy
[Go Releaser]: https://goreleaser.com/