BitTorrent je protokol pro sdílení souborů typu peer-to-peer. Existuje mnoho místních klientů, které můžete použít k torrentování souborů. Mohou však nastat situace, kdy je budete potřebovat stáhnout přes internet, protože nemůžete použít místního torrent klienta.
cloud-torrent je webový torrent klient. Umožňuje vám vyhledávat sledovače torrentů, přidávat torrentové soubory a magnetické odkazy a stahovat je do počítače.
V tomto článku se podíváme na instalaci cloudového torrentu na server se systémem Linux. Můžete jej dokonce spustit na svém vlastním počítači, pokud je veřejně dostupný s IP adresou.
Ale buďte opatrní:pokud plánujete na svém serveru spouštět torrentové aplikace, ujistěte se, že to váš poskytovatel umožňuje.
Stáhněte si a spusťte cloudový torrent
Stáhněte si správnou verzi cloudového torrentu z. dolů na stránce Publikace. Binární soubory jsou k dispozici pro 32bitové a 64bitové varianty Intel a také pro ARM. V následujícím příkladu jsme stáhli 64bitovou verzi Linuxu:
wget https://github.com/jpillora/cloud-torrent/releases/download/0.8.24/cloud-torrent_linux_amd64.gz
Po stažení archivu jej budete muset rozbalit, přejmenovat binární soubor a nastavit jej jako spustitelný. Chcete-li to provést, spusťte následující příkazy:
gzip -d cloud-torrent*.gz mv cloud-torrent* cloud-torrent chmod +x cloud-torrent
Poté spusťte binární soubor:
./cloud-torrent
Navštivte nyní https://your_server_name:3000/
s prohlížečem. Pokud vidíte webové rozhraní, je to skvělé! Pokud vám to však nefunguje, zkontrolujte následující:
- Neblokují provoz na portu 3000 – v takovém případě budete muset změnit konfiguraci brány firewall.
- Neprovozujete existující službu na portu 3000. Pokud ano, Cloud Torrent se ukončí s chybou
listen tcp 0.0.0.0:3000: bind: address already in use
. Cloudové torrentování můžete spustit na jiném portu takto:./cloud-torrent -p <custom_port_number>
Číslo portu musí být mezi 1025 a 65535.
Chcete-li zastavit cloudové torrentování, stiskněte Ctrl + C.
Nastavte cloudové torrentování
Zatímco cloudové torrentování již funguje, pravděpodobně budete chtít, aby se spustil automaticky při startu systému jako běžná systémová služba. Můžete to udělat velmi snadno.
Nejprve musíte nastavit samostatného uživatele pro spuštění cloudového torrentingu. I když to není nezbytně nutné, obecně se to z bezpečnostních důvodů doporučuje.
sudo useradd -rm cloud-torrent
Dále musíte přesunout binární soubor cloudového torrentu do domovského adresáře nového uživatele.
sudo mv cloud-torrent /home/cloud-torrent/cloud-torrent
Nyní musíte nakonfigurovat systém tak, aby se spouštěl automaticky. Chcete-li to provést, musíte určit použitý init systém. Chcete-li provést toto spuštění (zdroj):
if [[ `/sbin/init --version` =~ upstart ]]; then echo upstart; elif [[ `systemctl` =~ -.mount ]]; then echo systemd; elif [[ -f /etc/init.d/cron && ! -h /etc/init.d/cron ]]; then echo using sysvinit; else echo cannot tell; fi
Když je problém upstart
nebo sysvinit
, měli byste použít pokyny pro sysvinit. Když je problém systemd
, měli byste použít direktivy systemd.
systémově založené systémy
Se systémem založeným na systemd je tento proces poměrně přímočarý. Vytvořte /etc/systemd/system/cloud-torrent.service
s následujícím obsahem:
[Unit] Description=torrent web server [Service] Type=simple User=cloud-torrent WorkingDirectory=/home/cloud-torrent ExecStart=/home/cloud-torrent/cloud-torrent [Install] WantedBy=multi-user.target
Pokud potřebujete použít jiný port, budete muset ExecStart=/home/cloud-torrent/cloud-torrent -p <port_number>
místo toho.
Poté musíte systemd sdělit, že jste vytvořili nový soubor služby a také jej nastavit tak, aby se spouštěl při spouštění:
sudo systemctl daemon-reload sudo systemctl enable cloud-torrent.service
Nakonec byste měli službu okamžitě spustit, abyste měli přístup ke cloudovému torrentu:
sudo systemctl start cloud-torrent.service
systémy založené na systému sysvinit / upstart
Pro systémy založené na Sysvinit nebo Upstart musíte přidat skript shellu s následujícím kódem v /etc/init.d/cloud-torrent
:
#!/bin/sh ### BEGIN INIT INFO # Provides: cloud-torrent # Required-Start: $local_fs $network $named $time $syslog # Required-Stop: $local_fs $network $named $time $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts the cloud-torrent web server # Description: starts cloud-torrent using start-stop-daemon ### END INIT INFO DESC="torrent web server" NAME=cloud-torrent DAEMON=/home/cloud-torrent/cloud-torrent DAEMONUSER=cloud-torrent PIDFILE=/var/run/$NAME.pid STOP_SCHEDULE="${STOP_SCHEDULE:-QUIT/5/TERM/5/KILL/5}" test -x $DAEMON || exit 0 start() { start-stop-daemon --start --quiet --make-pidfile --pidfile "$PIDFILE" -d "/home/$DAEMONUSER" --background --chuid "$DAEMONUSER" --oknodo --exec "$DAEMON" } stop() { start-stop-daemon --stop --quiet --pidfile "$PIDFILE" --retry="$STOP_SCHEDULE" --name "$NAME" --oknodo rm -f "$PIDFILE" } status() { if [ -f "$PIDFILE" ]; then if kill -0 $(cat "$PIDFILE"); then echo "$NAME is running" else echo "$NAME process is dead, but pidfile exists" fi else echo "$NAME is not running" fi } case "$1" in start) echo "Starting $NAME $DESC..." start ;; stop) echo "Stopping $NAME $DESC..." stop ;; restart) echo "Restarting $NAME $DESC..." stop start ;; status) status ;; *) echo "Usage: $0 {start|stop|restart|status}" exit 2 ;; esac exit 0
Pokud potřebujete spustit cloudový torrent na jiném portu, stačí změnit start()
ve skriptu shellu výše takto:
start-stop-daemon --start --quiet --make-pidfile --pidfile "$PIDFILE" -d "/home/$DAEMONUSER" --background --chuid "$DAEMONUSER" --oknodo --exec "$DAEMON" -- -p <port_number>
Potom musíte skript nastavit jako spustitelný:
sudo chmod +x /etc/init.d/cloud-torrent
Poté byste měli povolit spuštění služby při bootování. Ihned spustíme službu. Pokud používáte Ubuntu nebo Debian, proveďte následující:
sudo update-rc.d cloud-torrent defaults sudo service cloud-torrent start
Pokud však používáte CentOS nebo Fedoru, je to trochu složitější. Nejprve musíte nainstalovat start-stop-daemon
Program:
wget https://raw.githubusercontent.com/boolean-world/misc-tools/master/install-start-stop-daemon.sh sudo bash install-start-stop-daemon.sh
Nyní můžete službu aktivovat při spouštění pomocí následujících příkazů:
sudo chkconfig --add cloud-torrent sudo chkconfig --level 2345 cloud-torrent on
Nakonec můžete službu okamžitě spustit pomocí:
sudo service cloud-torrent start
Prozkoumejte uživatelské rozhraní cloudového torrentu
Pokud jste postupovali podle výše uvedených kroků, cloudové torrentování by mělo být spuštěno! Můžete navštívit https://<your_server_IP>:3000/
abyste to ověřili. Nyní si můžete stáhnout torrenty vložením magnetických odkazů nebo odkazů na torrentové soubory do textového pole. Navíc můžete zadat hledaný výraz pro vyhledávání torrentů na oblíbených torrentových webech.
Nastavení sadby a šifrování můžete nakonfigurovat kliknutím na ikonu se třemi pruhy. (Viz snímek obrazovky níže.)
ochrana heslem
Současné nastavení má jeden problém – může ho používat kdokoli, kdo navštíví. Tomu můžete zabránit nastavením hesla pomocí proměnné prostředí s názvem. uveďte AUTH
.
Pokud používáte systemd, upravte /etc/systemd/system/cloud-torrent.service
a přidejte tento řádek do [Service]
Sekce:
Environment="AUTH=username:password"
Poté restartujte službu cloudového torrentu pomocí:
sudo systemctl daemon-reload sudo systemctl restart cloud-torrent
Pro systémy založené na sysvinit stačí exportovat AUTH
Proměnná jako ve skriptu shellu:
# [previous part of shell script] DAEMONUSER=cloud-torrent PIDFILE=/var/run/$NAME.pid export AUTH="username:password" # [rest of the shell script]
Nahraďte username
a password
se svými vlastními hodnotami a poté začněte znovu:
sudo service cloud-torrent restart
Nakonfigurujte HTTPS
Chcete-li chránit své soukromí, možná budete chtít nakonfigurovat HTTPS v cloudovém torrentu.
Nejprve musíte získat certifikát. Pokud žádný nemáte, můžete si ho pořídit prostřednictvím Let’s Encrypt. V následujících segmentech byste měli nahradit /path/to/key.pem
a /path/to/cert.pem
se správnými cestami. Pokud používáte Let’s Encrypt, tyto soubory najdete pod /etc/letsencrypt
Adresář.
Pro uživatele systemd to bude snadné. V /etc/systemd/system/cloud-torrent.service
, změňte řádek pomocí ExecStart=
takže:
ExecStart=/home/cloud-torrent/cloud-torrent -k /path/to/key.pem -r /path/to/cert.pem
Opět je to trochu složitější pro uživatele sysvinit / začínající uživatele. Otevřete to /etc/init.d/cloud-torrent
Soubor a změna start-stop-daemon
Příkaz v start()
takže:
start-stop-daemon --start --quiet --make-pidfile --pidfile "$PIDFILE" -d "/home/$DAEMONUSER" --background --chuid "$DAEMONUSER" --oknodo --exec "$DAEMON" -- -k /path/to/key.pem -r /path/to/cert.pem
Po provedení těchto změn restartujte službu cloudového torrentu, jak je popsáno výše. V tomto okamžiku by mělo být nastaveno cloudové torrentování přes HTTPS. Další konfigurovatelné možnosti lze nalézt v --help
Počítadlo.