UserGuide ThinClient - gazpachoking/deluge GitHub Wiki
Deluge can be setup in such a way that a Deluge daemon, deluged
, can be setup on a central computer, server
, which can then be accessed and controlled by other computers, clients
, using one of Deluge's UIs.
-
From Deluge 1.2 onwards, all communication between the GTK UI and daemon is encrypted so SSH tunnelling is not a requirement.
-
Both the Deluge client and daemon need to be the same major versions, i.e. both
1.2.x
or both1.3.x
. -
Windows users should append
.exe
to Deluge commands, e.g.deluged.exe
,deluge-console.exe
The Deluge daemon deluged
should be installed on the central server that you want your other computers to connect to.
Follow the install instructions to install deluged
and deluge-console
as a minimum on the server.
To run deluged
as a service so that it starts/stops on server boot/shutdown, see these [UserGuide/InitScript guides]. Replace any daemon start or stop commands below with the appropriate service commands.
If you have problems setting up deluged
enable logging and check for errors.
To create the config directory and populate with the default files, run and then stop deluged
:
deluged
pkill deluged
The next step is to create a Deluge user for clients/UIs to access the daemon remotely by editing the authentication file, auth
, located in your config directory.
The auth
file should contain lines with only '<username>:<password>:<level>
', replacing <username>
and <password>
with your choice and <level>
with the desired [UserGuide/Authentication authentication level].
You can use your favourite text editor to achieve this or can be done with a one-line echo command e.g.:
echo "alice:MyC0mpL3xPass:10" >> ~/.config/deluge/auth
We will use deluge-console
to configure deluged
to accept connections from computers other than localhost
.
Note: For SSH Tunnelling
you do not need to enable remote connections so this step can be skipped.
Run the Console UI in non-interactive mode to set then view the allow_remote
option with these commands:
deluge-console "config -s allow_remote True"
deluge-console "config allow_remote"
If you are running deluged
under another user you will need to temporarily login as that user to enable deluge-console to access that daemon's config:
su --shell /bin/bash --login deluge
As a last resort you can edit core.conf
in the config and change "allow_remote" from false
to true
. Note that editing conf files can only be done with deluged
stopped.
deluged
You will need to know the server's IP address for setting up the client(s). If you do not know your server's private or public IP address use these commands:
- Private IP:
hostname -I
- Public IP:
curl ifconfig.me
Congratulations! The server is now setup for remote client access.
The Deluge GTK UI setup require switching the GTK UI from Classic mode to Thin-client mode, then adding and connecting to the remote daemon on the server.
- In
Preferences -> Interface
and disable (untick)Classic Mode
- Restart
deluge
and you should now see theConnection Manager
pop up. - Remove the
localhost
daemon, if not needed. - Click "Add" and for 'Hostname' enter your server's IP.
i. For SSH Tunnelling you must use
127.0.0.2
and follow [UserGuide/ThinClient#CreateSSHTunnel Create SSH Tunnel] below, before continuing - Leave the
Port
as default,58846
- Enter the
Username
andPassword
you added to the authentication file then finish by clicking 'Add'. If this was successful a green tick should now appear as the status for the daemon you just added. -
Optional step: Expand
Options
and select 'Automatically connect to selected host on startup
' and 'Do not show this dialog on start-up
'. - Click on
Connect
and the Connection Manager should disappear.
Congratulations! You can now access the Deluge daemon, deluged
, on the server via the GTK UI.
For the console you can connect to a remote daemon by using the connect
command:
connect <host>[[:<port>]] <user> <password>
- Follow the install instructions to install
deluged
anddeluge-web
- Run deluge Web UI:
deluge-web
- You can also use the
--fork
option to have the deluge-web process run in the background and again, you may want to use an [UserGuide/InitScript InitScript].
Congratulations! The server is now setup for web UI access.
Open your preferred web browser and enter the url below where is the ip address of the server:
http://<server>:8112
- Default password is:
deluge
Congratulations! You can now access deluge on the server via the web UI.
Open up a terminal and enter the following, replacing <server>
with the public IP of your server.
ssh -fNL 127.0.0.2:58846:localhost:58846 <server>
We use 127.0.0.2
instead of localhost
so that Deluge client knows that we are connecting to a remote daemon. You will encounter problems otherwise with file browsing at it will assume to be on local client machine rather than remote server.
If you get the error 'bind: Can't assign requested address
', you need to add 127.0.0.2
as an alias for the loopback device:
sudo ifconfig lo0 add 127.0.0.2