Skip to content

simmsb/easy-expose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Easy expose

A really simple way to expose some service behind a NAT, similar to rathole and frp.

WARNING: This does not secure the channel, or even do NAT busting. You should already have an overlay network that creates the secure channel, like tailscale, or even just a plain wireguard vpn.

The main benefit of this over rathole and such is that the latency should be the lowest possible, as the redirect is setup using nftables, rather than two userspace programs.

Usage

easy-expose 0.1.0
Set up a packet redirect on some remote host that forwards packets to you

example: `easy-expose test_redir tcp root@vps 9912 100.82.95.116:9912`

USAGE:
    easy-expose [OPTIONS] <IDENTIFIER> <MODE> <DESTINATION> <REMOTE> <LOCAL>

ARGS:
    <IDENTIFIER>
            A unique name to identify this forwarding instance

    <MODE>
            What type of packet to forward

            [possible values: udp, tcp]

    <DESTINATION>
            The remote host to expose on [format: a ssh destination]

            nftables needs to be installed on this host, the user to connect as also needs
            permission to run `nft` (aka: root)

    <REMOTE>
            The remote port to expose on

    <LOCAL>
            Where to forward packets to [format: <ip/hostname>:<port>]

OPTIONS:
    -h, --help
            Print help information

    -i, --identity <FILE>
            The ssh identity file to use

    -V, --version
            Print version information

Docker usage

You can run this through the docker image: ghcr.io/simmsb/easy-expose:latest, for example:

$ docker run -v ~/.ssh/id_rsa:/id_rsa \
    ghcr.io/simmsb/easy-expose:latest \
        test_redir tcp root@<ip_addr> 9912 100.82.95.116:9912 -i /id_rsa

About

Quickly mint NFT(able)s port forwards remotely

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages