Зачем нужен собственный торрент-трекер – вопрос не стоит. Причины могут быть разные. Поэтому сразу перейду к делу.

Вероятно, все крупные трекеры пишутся на заказ, либо индивидуально «допиливаются» известные движки. Когда стоит цель поднять собственный, например локальный трекер, чаще всего требования к нему не будут очень уж высокими, и остаётся выбрать нужный вариант из всех доступных, с перспективой на развитие.

Примерно так думал я, рассматривая и оценивая каждого кандидата. Свой выбор я остановил на TorrentPier II. Оценивая плюсы и минусы следует отметить привычный для пользователей интерфейс, схожий с небезыствестным Rutracker-ом, и техническую поддержку, пусть и в виде форума. Трекер, после небольшой настройки, без проблем работает у меня уже более года.

image

Установка выглядит следующим образом (небольшая цитата из инструкции):

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

image

С установкой трекера всё достаточно понятно, но нужно сделать ещё кое-что. В моём случае торрент-трекер – это подспорье для сайта, и выступает он альтернативой для пользователя, привыкшего качать файлы с сайтов с использованием торрентов. В общем, первоначальный источник раздачи, грубо говоря, всегда я сам. Поэтому, необходимо готовить «полный набор»: торрент-трекер, наполненный торрент-файлами (которые потом можно красиво разместить на сайте), и плюс источник раздачи. Я решил что торрент-клиент, то есть собственно источник раздачи, будет находится на том же сервере, что и сайт, и торрент-трекер. Нужен клиент с 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».

image

Осталось создать собственно торрент-файлы, разместить их в трекере, и создать закачку/раздачу в клиенте.

image

Для создания торрентов можно использовать свой «домашний» торрент-клиент. Но можно использовать и уже установленный ранее Deluge. Из web интерфейса Deluge создать торрент-файлы не получится, здесь можно воспользоваться консолью или подключится к Deluge со своего ПК. Например, для использующих Windows есть соответствующие клиенты.

После установки Deluge на ПК, нужно в настройках, в разделе «Интерфейс» снять галочку с «классический», и создать подключение к удалённому серверу, используя подготовленные для этого данные:

— На сервере прописать доступы:

echo "user:pass:10" >> /var/lib/deluge/.config/deluge/auth

— Открыть соответствующие порты, как минимум порт 58846, плюс те, которые необходимы для раздачи. В моём случае «процесс (раздачи) пошёл» после открытия портов 6881:6889, а также 53567 (tcp/udp).

Теперь всё готово. Итак, ещё раз — наиболее простой вариант подготовки «полного набора» выглядит следующим образом:

— Устанавливаем и настраиваем на сервере торрент-трекер TorrentPier II;
— Устанавливаем и настраиваем на сервере торрент-клиент Deluge;
— На сервер заливается файл, который будет раздаваться;
— На «домашнем» торрент-клиенте создаётся новый торрент-файл;
— Торрент-файл заливается на трекер, который этот файл модифицирует;
— Теперь используя этот модифицированный торрент-файл, создаём раздачу на торрент-клиенте Deluge, находящимся на сервере, и в качестве каталога для закачки указываем тот, где лежит закаченный ранее файл под раздачу.

image

Трекер в работе, и на сервере всегда крутится раздача, а значит ваши пользователи всегда найдут минимум один сид.
Поделиться с друзьями
-->

Комментарии (23)


  1. Acid_Jack
    22.08.2016 20:18
    -1

    Эх, это для CentOS.
    Я с моим Debian'ом остаюсь в пролёте…


    1. Taller
      22.08.2016 20:24
      +3

      а в чем отличие?
      если только в apt-get vs yum, для данного примера.


      1. Acid_Jack
        22.08.2016 20:34
        +9

        Не, я лучше дождусь статьи «Поднимаем собственный торрент-трекер на Debian».

        Более того, я уверен, что многие были бы очень признательны, если автор бы потрудился и написал целую серию статей: «Поднимаем собственный торрент-трекер на Gentoo», «Поднимаем собственный торрент-трекер на Arch», «Поднимаем собственный торрент-трекер на Slackware», «Поднимаем собственный торрент-трекер на Fedora», «Поднимаем собственный торрент-трекер на openSUSE» и т, д.

        Ведь нам так не хватает хороших и качественных статей на данном ресурсе.


        1. dostigai
          22.08.2016 21:48
          +4

          Подозреваю сарказм в Ваших словах. Но объясняется всё просто.
          Отношение к Centos в данном случае имеет только торрент-клиент, точнее его установка. Сам же трекер, понятное дело, ставится, скорее всего одинаково на любую *nix систему.

          И всё же. Лично мой опыт, в данном случае, касается установки всего «набора» только на Centos. И вполне вероятно, что в других системах могли бы появиться свои нюансы, кстати, как в случае с Deluge. Поэтому я решил, что уточнение честнее, чем обобщение, даже если оно выведено в заголовок.


          1. slonopotamus
            22.08.2016 22:29
            -1

            Сам же трекер, понятное дело, ставится, скорее всего одинаково на любую *nix систему.


            К счастью, нет. В нормальных дистрибутивах софт устанавливается при помощи системного менеджера пакетов, а не " Распаковываем на сервер содержимое скачанной вами папки". Как вы эту распакованную (а потом еще видимо и отредактированную) хрень обновлять будете? Каким образом отслеживаются уязвимости в ней?

            С deluge похожая фигня. Почему вместо использования официального репозитория дистрибутива надо подключать какие-то левые урлы?


            1. dostigai
              22.08.2016 22:51
              +2

              Во втором случае — deluge отсутствует в стандартном репозитории. Поэтому способы его установки остаются на усмотрение желающего установить. Использование сторонних репозиториев на сегодняшний день — не такая уж и редкость. Главное что бы это было обосновано для того, кто решил их использовать.

              Что касается трекера — так ведь это же CMS по сути, которая с помощью «распаковки» зачастую и устанавливается. Обновление, вопросы по безопасности и все другие вопросы решаются естественно с помощью техподдержки, которая эту CMS обслуживает.


          1. Acid_Jack
            23.08.2016 07:56
            +1

            Вместо данной «статьи» можно было обойтись двумя словами: TorrentPier II + Deluge (а вы даже в названии основного продукта сделали ошибку). И качество при этом бы не ухудшилось.

            Если уж на то пошло, было бы интереснее увидеть не скупое «мой выбор пал», а развёрнутое сравнение движков торрент-трекеров и обоснование выбора того или иного решения в зависимости от поставленных задач.


            1. dmitry_dvm
              23.08.2016 08:15

              Давно заметил, что русское it-сообщество крайне наглое и занудное. Что на SO, что на отечественных ит-сайтах. Вместо помощи или дельных советов начинает гундеть, что запятая не там стоит и т.п. Человек старался расписать все шаги подробно, написал хорошую, полезную статью и всегда найдется какой-нибудь умник, который начинает критиковать на ровном месте. Причем даже не критиковать, а заявлять, что лучше бы статьи вообще не было. Ну да, лучше бы не было, лучше бы мы тут читали сплошной поток от ализара сотоварищи.

              Мне вот нравится центось и такая статья, с центосовыми нюансами мне потенциально пригодится. Что-то я не вижу от вас полезных статей, как и вообще статей, за последние 2 года.
              И да, не припоминаю cms, распространяемые в rpm-, deb-, пакетах.
              А насчет сравнения движков — так возьмите и напишите сравнение, а автор вот захотел написать не сравнение, а инструкцию и написал, за что ему спасибо.
              Так что поменьше снобизма, Acid_Jack, тут вам никто ничего не обязан.


              1. Meklon
                23.08.2016 08:41

                Owncloud в пакетах


            1. dostigai
              23.08.2016 11:01

              Благодарю за указание ошибки — поправил.

              По поводу «что было бы лучше» — здесь могут быть разные мнения. Причём не противоречащие друг-другу. Рабочая инструкция по установке может быть и не такая интересная, но достаточно полезная, о чём говорит хотя бы количество добавивших в избранное.


  1. SuperDoker
    22.08.2016 21:18

    Сегодня вроде не 1 апреля


    1. unrealphp
      22.08.2016 22:03
      +3

      Зато молодость вспомнилась


  1. Meklon
    22.08.2016 21:21
    +3

    Спасибо, пригодится


  1. ExplosiveZ
    22.08.2016 22:21
    +8

    Habrahabr, 2016, устанавливаем CMS и deluge!


    1. slonopotamus
      22.08.2016 22:35
      +2

      На центос!


  1. ivan386
    23.08.2016 00:32
    +1

    Для скачивания с HTTP сервера торрент клиентом можно задать в торренте WebSeed. В магнет ссылке тоже можно задать WebSeed но тут уже без битторрент клиента на сервере не обойтись.


  1. Ivan_83
    23.08.2016 01:41

    Тема не раскрыта: ни одного слова о том как это всё работает и что на самом деле представляет из себя торрент трекер, как накручивать/обманывать стату и пр. Только херак-херак и в продакшин.


  1. ivlis
    23.08.2016 03:22
    +4

    >Распаковываем на сервер содержимое скачанной вами папки

    Это в 2016 году, ага.


  1. KorP
    23.08.2016 08:20
    +3

    А я давно говорю — деградирует хабр! :(


  1. Diden05
    23.08.2016 10:08
    +3

    Пора написать статью «Устанавливаем Drupal на Ubuntu», а то ведь не осилят…


  1. climenty
    23.08.2016 12:37

    SELinux на Центосе выключен? Если да, то статья вдвойне «полезная».
    А если включен, то хорошо бы этот момент отразить и отметить были ли проблемы с правилами.


  1. INDUSTRIALIST
    23.08.2016 22:10

    Было время когда я создавал свой торрент-трекер на TBSource.


  1. RumBuRum
    24.08.2016 22:36
    +1

    Статья гуд, спасибо автор. Зашел почитать про незнакомую для себя тему в общих чертах: сложно ли поставить трекер и что для этого нужно. Оказывается не сложно, и даже под CentOs учтены особенности установки.
    А для нудья всегда есть специалисты узкого профиля и мелкого в анфас.