TransmissionSwift / Guides / Remote Transmission on macOS
How to connect to a remote Transmission daemon on macOS
TransmissionSwift is a client, not a server: it drives a Transmission BitTorrent daemon that is already running, on a seedbox, a NAS, a home server or a Raspberry Pi. This guide shows how to switch on the daemon's remote API and connect to it from your Mac.
In short: enable the RPC interface on the daemon, give it a username and password, make the port reachable (preferably through a VPN or SSH tunnel), then add the server in TransmissionSwift.
1. Enable the RPC interface on the daemon
Transmission exposes its remote API over HTTP on port 9091 by
default. Edit settings.json in the daemon's config directory
(commonly ~/.config/transmission-daemon/ on Linux,
~/Library/Application Support/Transmission/ on macOS, or the
directory you passed with -g):
{
"rpc-enabled": true,
"rpc-bind-address": "0.0.0.0",
"rpc-port": 9091,
"rpc-authentication-required": true,
"rpc-username": "youruser",
"rpc-password": "a-strong-password",
"rpc-whitelist-enabled": false
}
Stop the daemon before editing the file: it rewrites
settings.json on exit and would otherwise overwrite your
changes.
2. Or start it with the right flags
The equivalent command-line flags are handy for a quick test or a service unit:
transmission-daemon \
--auth \
--username youruser \
--password 'a-strong-password' \
--port 9091 \
--download-dir /var/lib/transmission-daemon/downloads
3. Make the port reachable
- Same network: connect to the machine's LAN address, for
example
192.168.1.20:9091. No router changes needed. - Over the internet: forward the port on your router, or use the seedbox provider's host and port.
- Recommended for privacy: tunnel with SSH instead
of exposing the port publicly:
Then connect TransmissionSwift tossh -L 9091:localhost:9091 user@your-server127.0.0.1:9091. The traffic is encrypted and nothing is exposed to the internet.
4. Add the server in TransmissionSwift
- Open TransmissionSwift and choose Add Server.
- Enter the host and port (for example
127.0.0.1and9091when using an SSH tunnel). - Enter the RPC username and password. TransmissionSwift keeps the password in the macOS Keychain.
- If your daemon serves the API under a custom path, set the URL path
(the default is
/transmission/). - Connect. Your torrents, labels and server stats load straight from the daemon.
Security checklist
- Always set a username and password before exposing the RPC port.
- Prefer a VPN or SSH tunnel over opening the port to the internet.
- If you must expose it, put it behind a reverse proxy with HTTPS.
- Keep the daemon updated, and restrict access with a firewall where possible.
Next steps
Once you are connected, set up path mapping to open downloads in Cyberduck, Finder or another app, and check the FAQ for common questions. If you are moving from Transmission Remote GUI, see the transgui comparison.