{"repo":"digineo/http-over-ssh","free":true,"listed":false,"github":"https://github.com/digineo/http-over-ssh","clone":"git clone https://github.com/digineo/http-over-ssh.git","description":"HTTP over SSH transport for Prometheus","language":"Go","stars":37,"topics":["ssh","prometheus","proxy"],"license":"MIT","category":"networking-infra","readme_excerpt":"HTTP over SSH ============= This dynamic HTTP proxy tunnels your HTTP requests through SSH connections using public key authentication. The intention to develop this program is the requirement of polling [Prometheus exporters][promexp] through SSH. [promexp]: https://prometheus.io/docs/instrumenting/exporters/ Syntax A proxy request looks like this: GET http:// / / HTTP/1.1 You can override the SSH username by using HTTP Basic Auth. Usage After installation (see below), start the proxy on localhost:8000 : For a full list of options run http-over-ssh -help . Prometheus Scraper Assuming this proxy runs on the same machine as Prometheus on localhost:8080 and you want to scrape to remote hosts running prometheus exporters on localhost:9100 , simply add to your scrape configs: Authorized Keys (OpenSSH) To restrict an SSH key to only forward connections to localhost:9100 , append to the /.ssh/authorized keys : Metrics Prometheus metrics can be retrieved via /metrics . Installation If you have the Go toolchain installed, a simple will place a http-over-ssh binary in $GOPATH/bin/ . Alternatively, you may download a pre-built binary from the Github [release page][releases] and extract the binary into your $PATH . [releases]: https://github.com/digineo/http-over-ssh/releases Next steps - [ ] clean up idle ssh connections - [ ] support for unix sockets License MIT Licence. Copyright 2018, Digineo GmbH","default_branch":null,"files":null,"tree":[],"storefront":"/r/digineo","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/digineo/http-over-ssh/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}