[Из песочницы] Поднимаем собственный торрент-трекер на Centos
Вероятно, все крупные трекеры пишутся на заказ, либо индивидуально «допиливаются» известные движки. Когда стоит цель поднять собственный, например локальный трекер, чаще всего требования к нему не будут очень уж высокими, и остаётся выбрать нужный вариант из всех доступных, с перспективой на развитие.
Примерно так думал я, рассматривая и оценивая каждого кандидата. Свой выбор я остановил на TorrentPear II. Оценивая плюсы и минусы следует отметить привычный для пользователей интерфейс, схожий с небезыствестным Rutracker-ом, и техническую поддержку, пусть и в виде форума. Трекер, после небольшой настройки, без проблем работает у меня уже более года.
Установка выглядит следующим образом (небольшая цитата из инструкции):
1. Распаковываем на сервер содержимое скачанной вами папки
2. Создаем базу данных, в которую при помощи phpmyadmin (или любого другого удобного инструмента) импортируем дамп, расположенный в папке **install/sql/mysql.sql**
3. Правим файл конфигурации **library/config.php**, загруженный на сервер:
> ***'db1' => array('localhost', 'dbase', 'user', 'pass', $charset, $pconnect)***
В данной строке изменяем данные входа в базу данных
***$domain_name = 'torrentpier.me';***
В данной строке указываем ваше доменное имя. Остальные правки в файле вносятся по усмотрению.
Нужно сказать, что на PHP 7.0 трекер работать не хочет. Пришлось создать для него отдельный контейнер с PHP 5.4.45. Рекомендуемая версия PHP: 5.3 — 5.5. Кроме этого, авторы рекомендуют в некоторых случаях отвязать встроенный в движок крон (необходимый для работы), и использовать обычный серверный. Задание может выглядеть следующим образом:
*/5 * * * * /usr/bin/php -f /var/www/site.ru/htdocs/cron/cron.php
С установкой трекера всё достаточно понятно, но нужно сделать ещё кое-что. В моём случае торрент-трекер — это подспорье для сайта, и выступает он альтернативой для пользователя, привыкшего качать файлы с сайтов с использованием торрентов. В общем, первоначальный источник раздачи, грубо говоря, всегда я сам. Поэтому, необходимо готовить «полный набор»: торрент-трекер, наполненный торрент-файлами (которые потом можно красиво разместить на сайте), и плюс источник раздачи. Я решил что торрент-клиент, то есть собственно источник раздачи, будет находится на том же сервере, что и сайт, и торрент-трекер. Нужен клиент с Web ui под Centos.
Мой выбор пал на Deluge. Установка выглядит следующим образом:
— Добавляем репозиторий
vi /etc/yum.repos.d/deluge.repo
[deluge]
name=LinuxTECH - deluge
baseurl=http://pkgrepo.linuxtech.net/el6/release/
enabled=1
gpgcheck=1
gpgkey=http://pkgrepo.linuxtech.net/el6/release/RPM-GPG-KEY-LinuxTECH.NET
includepkgs=deluge* GeoIP python-chardet rb_libtorrent*
— Установка:
yum -y install deluge deluge-common deluge-web deluge-console deluge-images deluge-daemon
— Добавляем пользователя:
useradd --system --home /var/lib/deluge deluge
— По рекомендации с форума Deluge, в случае использования Centos нужно подправить конфиг:
vi /etc/init.d/deluge-daemon
Меняем строку:
prog2=deluge
на:
prog2=deluge-web
и
daemon --user deluge "$prog2 --ui web >/dev/null 2>&1 &"
меняем на:
daemon --user deluge "$prog2 >/dev/null 2>&1 &"
— Добавляем в автозагрузку:
chkconfig deluge-daemon on
— Открываем порт 8112, необходимый для работы web интерфейса:
vi /etc/sysconfig/iptables
-A INPUT -p tcp -m conntrack --ctstate NEW -m multiport --dports 8112 -j ACCEPT
service iptables restart
— Запуск:
service deluge-daemon start
Открываем интерфейс Deluge (http://ip_server:8112), пароль по умолчанию: «deluge».
Осталось создать собственно торрент-файлы, разместить их в трекере, и создать закачку/раздачу в клиенте.
Для создания торрентов можно использовать свой «домашний» торрент-клиент. Но можно использовать и уже установленный ранее Deluge. Из web интерфейса Deluge создать торрент-файлы не получится, здесь можно воспользоваться консолью или подключится к Deluge со своего ПК. Например, для использующих Windows есть соответствующие клиенты.
После установки Deluge на ПК, нужно в настройках, в разделе «Интерфейс» снять галочку с «классический», и создать подключение к удалённому серверу, используя подготовленные для этого данные:
— На сервере прописать доступы:
echo "user:pass:10" >> /var/lib/deluge/.config/deluge/auth
— Открыть соответствующие порты, как минимум порт 58846, плюс те, которые необходимы для раздачи.
Теперь всё готово. Итак, ещё раз — наиболее простой вариант подготовки «полного набора» выглядит следующим образом:
— Устанавливаем и настраиваем на сервере торрент-трекер TorrentPear II;
— Устанавливаем и настраиваем на сервере торрент-клиент Deluge;
— На сервер заливается файл, который будет раздаваться;
— На «домашнем» торрент-клиенте создаётся новый торрент-файл;
— Торрент-файл заливается на трекер, который этот файл модифицирует;
— Теперь используя этот модифицированный торрент-файл, создаём раздачу на торрент-клиенте Deluge, находящимся на сервере, и в качестве каталога для закачки указываем тот, где лежит закаченный ранее файл под раздачу.
Трекер в работе, и на сервере всегда крутится раздача, а значит ваши пользователи всегда найдут минимум один сид.
Комментарии (3)
22 августа 2016 в 20:18
0↑
↓
Эх, это для CentOS.
Я с моим Debian’ом остаюсь в пролёте…22 августа 2016 в 20:24
0↑
↓
, а в чем отличие?
если только в apt-get vs yum, для данного примера.22 августа 2016 в 20:34
0↑
↓
Не, я лучше дождусь статьи «Поднимаем собственный торрент-трекер на Debian».Более того, я уверен, что многие были бы очень признательны, если автор бы потрудился и написал целую серию статей: «Поднимаем собственный торрент-трекер на Gentoo», «Поднимаем собственный торрент-трекер на Arch», «Поднимаем собственный торрент-трекер на Slackware», «Поднимаем собственный торрент-трекер на Fedora», «Поднимаем собственный торрент-трекер на openSUSE» и т, д.
Ведь нам так не хватает хороших и качественных статей на данном ресурсе.