Это цитата сообщения
Sb0y Оригинальное сообщениеTorrent сервер для раздач файлов на платформе Gentoo
Не так давно, меня начал доставать мой низкий рейтинг на трекерах. Времени

исправлять ситуацию нет, но информация иной раз бывает очень нужна ;)
Дома у меня стоит сервер Gentoo с ежемесячным остатком трафика, вот я и решил исправить положение.
Схема у нас будет такая: самописный демон будет запускать консольный клиент rtorrent, который, в свою очередь будет через
XMLRPC работать с SCGI гейтом, за счёт чего у нас будет Web-интерфейс управления нашими торрентами. Сами торренты будем забирать с сервера по средствам FTP.
[показать] В качестве гейта я выбрал lighttpd, по 3м причинам: легко настраивается, мало ест памяти, легче спрятать в интрасеть.
Кстати сервер Lighttpd мне очень понравился. Лёгкий, оптимизированный, функциональный, разве что не совсем безопастный. В этом сервере я нашёл все те положительные качества, которые когда-то нашёл в Gentoo.
Установка необходимого ПО.
Зададим необходимые USE-флаги(для этой операции в системе должен уже быть порт
gentoolkit):
# euse -E curl libwww xmlrpc sqlite php
# euse -D minimal
Теперь установим необходимое:
# emerge -avn lighttpd rtorrent dtach xmlrpc-c subversion vsftpd Настройка lighttpd
# vim /etc/lighttpd/lighttpd.conf
Найдите там секцию
server.modules и добавте в неё строчку:
code:
"mod_scgi",
Мы подключили к серверу lighttpd модуль реализующий поддержку SCGI.
Затем в конец файла добавте:
code:
scgi.server = (
"/RPC2" = >
((
"host" = > "127.0.0.1",
"port" = > 5000,
"check-local" = > "disable"
))
)
Настроили модуль SCGI.
Также могут быть интересны такие значения как:
#Порт который использует сервер. Если не задано используется 80.
server.port = 81
#Сетевой интерфейс который занимает сервер. Если не задано сервер пытается занять все. У меня была проблема - при указании #явного интерфейса сервак переставал слушать сетевую петлю и не мог соединится с rtorrent'ом. Способа заставить явно слушать его 2 #интерфейса я не нашёл.
server.bind = 192.168.0.1
#Настройка безопасности. Запрещает доступ к перечисленным типам файлов. Рекомендую поставить, иначе у вас утащат базу данных с #паролем для доступа к wtorrent прямо из-под носа =)
url.access-deny = ("~", ".inc", ".db", ".tpl.php", ".cls.php",)
Ну и поставим lighttpd на загрузку при старте системы и заодно запустим его:
# rc-update add lighttpd default
# /etc/init.d/lighttpd start
Настройка rtorrent.
Конечно у rtorrent'а масса интересных настроек, но в данный момент нас интересует только порт, который будет слушать сокет, а посему:
$ echo "scgi_port = 127.0.0.1:5000" > > ~/.rtorrent.rc
Ещё нам понадобится чтобы rtorrent работа как демон, для этого я использовал start-stop-daemon.
# vim /etc/init.d/rtorrentd
[code]
depend() {
use net.*
}
start() {
ebegin
Читать далее...