这是indexloc提供的服务,不要输入任何密码
Skip to content

u5surf/inletsctl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

inletsctl

Build Status

Provision cloud hosts as exit-nodes for inlets with a single command.

Status

Completed:

  • DigitalOcean support
  • Scaleway support
  • inletsctl delete command

Pending:

  • Add CLI flags to support Packet.com

Related projects

Inlets is listed on the Cloud Native Landscape as a Service Proxy

  • inlets - open-source L7 HTTP tunnel and reverse proxy
  • inlets-pro - L4 TCP load-balancer
  • inlets-operator - deep integration for inlets in Kubernetes, expose Service type LoadBalancer
  • inletsctl - CLI tool to provision exit-nodes for use with inlets or inlets-pro

Getting inletsctl

curl -sLSf https://raw.githubusercontent.com/inlets/inletsctl/master/get.sh | sudo sh

Costs for exit-nodes

See notes for inlets-operator

Examples

Examples on how to run inletsctl to create an exit node.

Pre-reqs:

  • You will need inlets on your client

Workflow:

  • After running inletsctl create, the IP address of your exit-node will be returned along with a sample inlets client command, for instance:

    Inlets OSS exit-node summary:
      IP: 209.97.131.180
      Auth-token: qFyFzKYQvFSgtl7TM76p5SwWpmHaQGMT405HajiMzIYmwYVgJt1lvAMXfV4S3KlS
    
    Command:
      export UPSTREAM=http://127.0.0.1:8000
      inlets client --remote "ws://209.97.131.180:8080" \
            --token "qFyFzKYQvFSgtl7TM76p5SwWpmHaQGMT405HajiMzIYmwYVgJt1lvAMXfV4S3KlS" \
            --upstream $UPSTREAM
  • You can delete your exit node using the id given by your cloud provider

    inletsctl delete --access-token-file ~/Downloads/do-access-token --id 164857028

Example usage with DigitalOcean

inletsctl create --access-token-file $HOME/Downloads/do-access-token \
  --region="nyc1"

Example with inlets-pro

Let's say we want to forward TCP connections to the IP 192.168.0.26 within our client's network, using inlets-pro, we'd run this using the --remote-tcp flag.

inletsctl create digitalocean --access-token-file ~/Downloads/do-access-token \
  --remote-tcp 192.168.0.26

Example usage with Scaleway

# Obtain from your Scaleway dashboard:
export TOKEN=""
export SECRET_KEY=""
export ORG_ID=""

inletsctl create --provider scaleway \
  --access-token $TOKEN
  --secret-key $SECRET_KEY --organisation-id $ORG_ID

The region is hard-coded to France / Paris 1.

Contributing

Add another cloud provisioner

Add a provisioner by sending a PR to the inlets-operator's provision package, once released, you can vendor the package here and add any flags that are required.

Note: only clouds that support cloud-init can be added

License

MIT

About

Fast HTTP (L7) and TCP (L4) tunnels written in Go

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 94.8%
  • Shell 4.1%
  • Makefile 1.1%