FreeBSD: простой открытый торрент трекер

Для того, чтобы настроить свой торрент трекер, я использовал opentracker. Данный трекер написан на C, очень минималистичен, не использует жесткий диск при работе — все храниться в памяти.

Следуем инструкции по сборке — проблем у меня на FreeBSD 8.2 не возникло. Полуенный бинарник opentracker копируем, например, в директорию /opt/tracker/. Также создаем конфигурационный файл /opt/tracker/opentracker.conf:

# путь, по которому будет доступна статистика
access.stats_path stats
# opentracker будет делать chroot в следующюю директорию:
tracker.rootdir /opt/tracker
# имя пользователя, под которым будет работать opentracker:
tracker.user   opentracker


Создаем группу и пользователя opentracker:

pw groupadd opentracker
pw useradd opentracker -d /opt/tracker -s /usr/sbin/nologin -G opentracker


Создаем файл /etc/rc.d/opentracker:

#!/bin/sh

# PROVIDE: opentracker
# REQUIRE: DAEMON
# KEYWORD: shutdown

. /etc/rc.subr

name="opentracker"
rcvar=`set_rcvar`
load_rc_config $name

start_cmd="opentracker_start"
stop_cmd="opentracker_stop"

opentracker_start() {
    checkyesno opentracker_enable && echo "Starting opentracker." && \
    /opt/tracker/opentracker -r announce -f /opt/tracker/opentracker.conf > /dev/null 2>&1 &
}

opentracker_stop() {
    checkyesno mariadb_enable && echo "Stopping opentracker." && \
    killall opentracker > /dev/null 2>&1
}

run_rc_command "$1"


Запускаем:

/etc/rc.d/opentracker start


По-умолчанию, трекер стартует на порту 6969. Но вполне можно использовать reverse proxy на nginx или cherokee.

Добавляем в /etc/rc.conf для запуска при старте системы:

opentracker_enable="YES"


Трекер открытый, т.е. любой может создать трекер и в качестве URL трекера указать ссылку трекер:6969/announce. Просмотреть статистику можно по ссылке трекер:6969/stats?mode=everything.

Можно сделать трекер закрытым, ограничить доступ к статистике и даже создать кластер из торрент трекеров. Читаем документацию

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

RSS свернуть / развернуть
+
0
эта строчка заменяет эту статью ;)
cd /usr/ports/net/opentracker && make install clean

Можно сделать трекер закрытым, ограничить доступ к статистике и даже создать кластер из торрент трекеров. Читаем документацию

ЗЫ если описывать — то уже полностью
avatar

ttys

  • 21 сентября 2012, 23:57
+
0
И? Скрипт — есть, добавление группы — есть, сборка не из портов — есть.
avatar

Sergei_T

  • 23 сентября 2012, 16:34
+
0
И? Скрипт — есть, добавление группы — есть, сборка не из портов — есть.
юзера создавать не надо скрипты ваять тоже, нафига весь этот головняк?, раз из портов всё ставится, да и обновлять потом же легче.
где пример с описанием opentracker.conf?, про опции ядра тоже ни слова
Можно сделать трекер закрытым, ограничить доступ к статистике и даже создать кластер из торрент трекеров. Читаем документацию
вот как раз про это можно было и написАть
а процесс установки — монописуально,
в общем полезного из этой статьи узнал — только о существовании трекера.

кусок листинга после сборки порта:

===> Installing rc.d startup script(s)
This tracker is open in a sense that everyone announcing a torrent is welcome
to do so and will be informed about anyone else announcing the same torrent.
Unless -DWANT_IP_FROM_QUERY_STRING is enabled (which is meant for debugging
purposes only), only source IPs are accepted. The tracker implements a minimal
set of essential features only but was able respond to far more than 10000
requests per second on a Sun Fire 2200 M2 (thats where we found no more clients
able to fire more of our testsuite.sh script).

Some tweaks you may want to try under FreeBSD:

sysctl kern.ipc.somaxconn=1024
sysctl kern.ipc.nmbclusters=32768
sysctl net.inet.tcp.msl=10000
sysctl kern.maxfiles=10240
===>   Registering installation for opentracker-0.2010.05.30_1
===> SECURITY REPORT: 
      This port has installed the following files which may act as network
      servers and may therefore pose a remote security risk to the system.
/usr/local/bin/opentracker

      This port has installed the following startup scripts which may cause
      these network services to be started at boot time.
/usr/local/etc/rc.d/opentracker
..........
avatar

ttys

  • 23 сентября 2012, 23:54
+
0
так 2,5 года работает и без сборки из портов)
avatar

Sergei_T

  • 24 сентября 2012, 00:51
+
0
Тут какие-то религиозно-священные соображения — всегда все собирать из портов?
avatar

Sergei_T

  • 24 сентября 2012, 00:56
+
0
скорее наоборот я привык делать как проще и эффективнее ну а ты судя по всему не ищешь лёгких путей ;)
avatar

ttys

  • 24 сентября 2012, 17:00
+
0
ЗЫ
pkg_add -rv opentracker 

никто не отменял, и опять таки всё одной командой
avatar

ttys

  • 24 сентября 2012, 17:28
+
0
когда я собирал его там не было вроде
avatar

Sergei_T

  • 24 сентября 2012, 17:46
+
0
так подправь, т.к. статей про трекер не особо много
avatar

ttys

  • 24 сентября 2012, 23:40

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.