{"id":18631422,"url":"https://github.com/bahamas10/node-proxyt","last_synced_at":"2025-11-04T05:30:31.620Z","repository":{"id":42302897,"uuid":"232382431","full_name":"bahamas10/node-proxyt","owner":"bahamas10","description":"TCP proxy CLI with optional TLS support in pure Node.JS","archived":false,"fork":false,"pushed_at":"2023-05-07T16:57:26.000Z","size":41,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-27T07:30:55.970Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bahamas10.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-01-07T17:48:27.000Z","updated_at":"2021-05-04T22:02:45.000Z","dependencies_parsed_at":"2024-12-27T07:27:37.891Z","dependency_job_id":"c96dc074-8c05-41f9-963e-04b5da4e5b7d","html_url":"https://github.com/bahamas10/node-proxyt","commit_stats":{"total_commits":14,"total_committers":1,"mean_commits":14.0,"dds":0.0,"last_synced_commit":"c7ee41f790fc8a3b0852234e743e5590307492ca"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahamas10%2Fnode-proxyt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahamas10%2Fnode-proxyt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahamas10%2Fnode-proxyt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahamas10%2Fnode-proxyt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bahamas10","download_url":"https://codeload.github.com/bahamas10/node-proxyt/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239425427,"owners_count":19636346,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T05:07:03.667Z","updated_at":"2025-11-04T05:30:31.570Z","avatar_url":"https://github.com/bahamas10.png","language":"JavaScript","readme":"proxyt\n======\n\nTCP proxy CLI with optional TLS support in pure Node.JS\n\nAbout\n-----\n\nI wrote `proxyt` to be a simple tool that makes spinning up a TCP proxy (with\noptional TLS) support an easy task.  I normally use `nc` whenever I need a\nsimple proxy, but I wanted something with slightly more functionality that\nworked across multiple operating systems without needing to be recompiled.\nSince I already use Node everywhere at home, this seemed like an obvious fit.\n\nI also wanted something that could reload certificates without having to be\nshut down / restarted.  `proxyt` takes a `-i \u003cinterval\u003e` option (explained\nbelow) that will cause the certs to be reloaded automatically on a set\ninterval.\n\nAll logging is done via [Bunyan](https://github.com/trentm/node-bunyan).\n\nInstall\n-------\n\n    npm install -g proxyt\n\nExamples\n--------\n\n### TCP proxy\n\nListen on all interfaces on port 80 and forward incoming requests to 10.0.1.234\non port 8080.\n\n    proxyt 0.0.0.0:80 10.0.1.234:8080\n\n### TCP proxy with TLS\n\n    proxyt -s -k pem.key -c pem.cert 0.0.0.0:443 10.0.1.234:8080\n\nListen on all interfaces on port 443 using TLS and forward incoming requests to\n10.0.1.234 on port 8080.\n\n### TCP proxy with TLS and advanced options\n\n    proxyt -s -k pem.key -c pem.cert -i 86400 -H my-host.example.com 0.0.0.0:443 10.0.1.234:8080\n\nListen on all interfaces on port 443 using TLS and forward incoming requests to\n10.0.1.234 on port 8080.  Also, reload the cert and key every 86400 seconds\n(every day) and verify that the incoming SNI hostname matches `my-host.example.com`.\n\nUsage\n-----\n\n    $ proxyt -h\n    Usage: proxyt [options] \u003clisten\u003e \u003ctarget\u003e\n\n    Example:\n\n      Listen on all interfaces on port 80 (locally) and forward\n      incoming requests to 10.0.1.234 on port 8080\n\n        $ proxyt 0.0.0.0:80 10.0.1.234:8080\n\n      Listen locally via TLS on port 443 (locally) and forward incoming\n      requests to 1.2.3.4 on port 5678\n\n        $ proxyt -s -k pem.key -c pem.cert 127.0.0.1:443 1.2.3.4:5678\n\n    Options:\n\n      -c, --cert \u003ccert\u003e       [env PROXYT_CERT] certificate file to use (requires -s)\n      -H, --sni-host \u003chost\u003e   [env PROXYT_SNI_HOST] SNI Hostname (optional), connections that do not match will be dropped\n      -h, --help              print this message and exit\n      -i, --interval \u003csecs\u003e   [env PROXYT_INTERVAL] interval in seconds to reload TLS key and cert, defaults to none\n      -k, --key \u003ckey\u003e         [env PROXYT_KEY] key file to use (requires -s)\n      -l, --log-level \u003clvl\u003e   [env PROXYT_LOG_LEVEL] bunyan log level to use, defaults to info\n      -n, --no-dns            [env PROXYT_NO_DNS] do not attempt to resolve IP addresses\n      -s, --use-tls           [env PROXYT_USE_TLS] enable tls, requires -c and -k be set\n      -v, --version           print the version number and exit\n\nLicense\n-------\n\nMIT License\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbahamas10%2Fnode-proxyt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbahamas10%2Fnode-proxyt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbahamas10%2Fnode-proxyt/lists"}