{"repo":"coder/wush","free":true,"listed":false,"github":"https://github.com/coder/wush","clone":"git clone https://github.com/coder/wush.git","description":"simplest & fastest way to transfer files between computers via WireGuard","language":"Go","stars":1458,"topics":["file-transfer","go","wireguard","peer-to-peer"],"license":"CC0-1.0","category":"networking-infra","readme_excerpt":"wush wush is a command line tool that lets you easily transfer files and open shells over a peer-to-peer WireGuard connection. It's similar to magic-wormhole but: 1. No requirement to set up or trust a relay server for authentication. 1. Powered by WireGuard for secure, fast, and reliable connections. 1. Automatic peer-to-peer connections over UDP. 1. Endless possibilities; rsync, ssh, etc. Basic Usage On the host machine: On the client machine: [!NOTE] wush uses Tailscale's tsnet package under the hood, managed by an in-memory control server on each CLI. We utilize Tailscale's public DERP relays, but no Tailscale account is required. Install Using install script Using Homebrew For a manual installation, see the latest release. [!TIP] To increase transfer speeds, wush attempts to increase the buffer size of its UDP sockets. For best performance, ensure wush has CAP NET ADMIN . When using the installer script, this is done automatically for you. Technical Details wush doesn't require you to trust any 3rd party authentication or relay servers, instead using x25519 keys to authenticate incoming connections. Auth keys generated by wush serve are separated into a couple parts: Senders and receivers communicate over what we call an \"overlay\". An overlay runs over one of two currently implemented mediums; UDP or DERP. Each message over the relay is encrypted with the sender's private key. UDP : The receiver creates a NAT holepunch to allow senders to connect directly. WireGuard node","default_branch":null,"files":null,"tree":[],"storefront":"/r/coder","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/coder/wush/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."}