Фотогалереи

Услуги

Помощь при использовании сайта

Настройка Rutorrent для работы с Nginx

После долгого использования rtorrent в консольном режиме решил наконец прикрутить к нему rutorrent Почему именно rutorrent? Потому что насколько я понял морда wtorrent с nginx не дружит совсем. Итак, я не буду рассказывать сейчас как настраивать rtorrent, тот кто читает наверняка уже его использует давно,а расскажу конкретно как к rtorrent прикрутить веб морду. Везде где я читал rutorrent слушал порт по протоколу TCP/IP, но я считаю использование unix socket будет и безопаснее как то правильнее чтоли. Приступим: Для начала нам нужно иметь хотя бы рабочий nginx, rtorrent собранный

 

--with-xmlrpc

и собственно сам rutorrent с плагином RPC Скачиваем по этим двум ссылкам и расспаковываем:

cd /srv/http sudo tar -xvzpf /path/to/rutorrent-3.1.tar.gz

После чего переходим в директорию plugins:

cd /srv/http/rutorrent/plugins  sudo tar -xvzpf /path/to/rpc-3.1.tar.gz

Меняем владельца директории rutorrent на того от которого запущен nginx,например http

sudo chown -R http:http /srv/http/rutorrent/

Затем открываем вашим любимым текстовым редактором конфигурационный файл rutorrent

nano -w /srv/http/rutorrent/conf/config.php

и прописываем порт и хост для прослушки:

$scgi_port = 0; $scgi_host = "unix:///tmp/ru.sock";

Далее открываем конфиг rtorrent'a

nano ~/.rtorrent.rc

и прописываем адрес сокета который будет создавать rtorrent при старте.

scgi_local = /tmp/ru.sock

Единственная загвоздка в том что запуск rtorrent у меня происходит от другого пользователя нежели запуск nginx. Проблема эта решается путем добавления в init скрипт rtorrentd нужного umask. Прямо в скрипте прописываем:

umask 111

Теперь займемся nginx'ом: Создадим новый локэйшен для этого:

location /rutorrent {
root /srv/http/; 
auth_basic "You need the password";
auth_basic_user_file /etc/nginx/conf/torrent; 

}
location ~* \.php$ {
index index.html;
fastcgi_pass unix:/tmp/ru.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /srv/http$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
}

Теперь при обращении www.yourdomain.ru/rutorrent будет открываться веб морда rutorrent. Хочу заметить что ее надо скрыть от посторонних глаз. Так как сам rutorrent не обладает никакими собственными методами аутенфикации мы сделали ее средствами nginx и прописали выше:


auth_basic "You need the password"; auth_basic_user_file /etc/nginx/conf/torrent

Теперь создадим с помощью httpasswd (утилита Apache) зашифрованный пароль и запишем его хеш в /etc/nginx/conf/torrent.


sudo htpasswd -b /etc/nginx/conf/torrent your_login your_password

Собственно все, теперь перезапускаем nginx и rtorrent и открываем в браузере http://127.0.0.1/rutorrent. Выдастся запрос на авторизацию после ввода которого вы можете рулить закачками на сервере хоть с дивана, хоть с работы.

5
2 голосов
Ваша оценка: Нет


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".
Аватар пользователя anonymous

Если nginx не древний, як говно мамонта, то можно сделать без плагина

location /RPC2 {
scgi_pass "Куда там надо";
include scgi_params;
}

Аватар пользователя admin

Я настраивал во времена ветки 0.7. Спасибо за полезную инфу.