Нет, я не злостный торрентокачальщик :), но все же необходимость иногда возникает. На моем рабочем сервере, являющимся шлюзом во внешний мир, я пользуюсь rtorrent-ом. Встал вопрос выбора web-интерфейса для него. Да-да, консоль это святое, но согласитесь, иногда удобнее делать через gui (особенно когда лень пробирает, правда? :) Мой выбор пал на rutorrent - достаточно удобен и функционален за счет множества своих плагинов. Ну что же, приступим к установке и настройке.
Считаем, что rtorrent уже установлен (если нет, то установите при помощи вашего пакетного менеджера). Выполним небольшие настройки rtorrent-а, для дальнейшего использования web-интерфейса. Сначала создадим пользователя, от имени которого будет крутится вся система (ну не под рутом же торренты качать?!):
Создадим файл настроек .rtorrent.rc в домашней директории созданного пользователя, например, так:
и добавим туда некоторые важные для нас опции:
создадим и выставим права на указанные каталоги
О других настройках rtorrent-а можно посмотреть, например, здесь или здесь на русском.
Для того, чтобы можно было подключаться к rtorrent через web-интерфейс, нужно чтобы rtorrent был запущен. Для того, чтобы он запускался автоматически при старте можно воспользоваться двумя способами:
1. запустить с помощью утилиты screen
2. скачать скрипт с сайта rtorrent и поставить его в автозагрузку
useradd -m rtorrent
Создадим файл настроек .rtorrent.rc в домашней директории созданного пользователя, например, так:
touch /home/rtorrent/.rtorrent.rc
и добавим туда некоторые важные для нас опции:
scgi_port = 127.0.0.1:5000 #для управления rtorrent через web-интерфейс
directory = /home/rtorrent/download #место, куда будут загружаться файлы
session = /home/rtorrent/.rtorrent_session #место хранения сессии rtorrent
создадим и выставим права на указанные каталоги
mkdir /home/rtorrent/download
mkdir /home/rtorrent/.rtorrent_session
chmod 066 /home/rtorrent/download
chmod 066 /home/rtorrent/.rtorrent_session
О других настройках rtorrent-а можно посмотреть, например, здесь или здесь на русском.
Для того, чтобы можно было подключаться к rtorrent через web-интерфейс, нужно чтобы rtorrent был запущен. Для того, чтобы он запускался автоматически при старте можно воспользоваться двумя способами:
1. запустить с помощью утилиты screen
echo "screen -dmS torrent rtorrent" >> /etc/rc.d/rc.local
2. скачать скрипт с сайта rtorrent и поставить его в автозагрузку
cd /etc/init.d
wget libtorrent.rakshasa.no/raw-attachment/wiki/RTorrentCommonTasks/rtorrentInit.sh
назначить пользователя в скачанном файле, от имени которого будет работать rtorrent(мы назначим rtorrent)
user = "rtorrent"
назначим владельца скрипта, дадим возможность выполнения и добавим в автозагрузку
chmod +x rtorrentInit.sh
chown root:root rtorrentInit.sh
chkconfig rtorrentInit.sh on
(или update-rc.d rtorrentInit.sh defaults для семейства дебиана)после выполнения команды "" вы можете увидеть следующее сообщение
сервис rtorrentInit.sh не поддерживает chkconfig
чтобы команда сработала без ошибок, необходимо добавить в файл rtorrentInit.sh после первой строки #!/bin/sh
### BEGIN INIT INFO
# Provides: rtorrent_autostart
# Required-Start: $remote_fs $network $syslog
# Required-Stop: $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: rtorrent script using screen(1)
# Description: rtorrent script using screen(1) to keep torrents working without the user logging in
### END INIT INFO
# Required-Start: $remote_fs $network $syslog
# Required-Stop: $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: rtorrent script using screen(1)
# Description: rtorrent script using screen(1) to keep torrents working without the user logging in
### END INIT INFO
Скачиваем rutorrent и все плагины к нему (плагины можно скачать как по отдельности, так и одним файлом; воспользуемся вторым вариантом):
wget http://rutorrent.googlecode.com/files/rutorrent-3.4.tar.gz
wget http://rutorrent.googlecode.com/files/plugins-3.4.tar.gz
Распакуем rutorrent, например, в каталог /var/www/html
tar -xf rutorrent-3.4.tar.gz -C /var/www/html
tar -xf plugins-3.4.tar.gz -C /var/www/html/rutorrent
Настройки rutorrent хранятся в файле rutorrent/conf/config.php. Подробнее о настройках можно почитать здесь.
Теперь осталось настроить веб-сервер. Так как у меня уже установлен apache, то настройки будут именно для него (но можно подружить и nginx, и с lighthttpd, на оф.сайте есть инструкция)
Добавим в файл конфигурации apache следующую строку:
ProxyPass /RPC2 scgi://127.0.0.1:5000
и перезапустим apache. На этом настройку можно считать оконченной, но отмечу еще один момент. Если все это проводится на сервере в локальной сети, то я бы посоветовал защититься от "чужаков" средствами apache - добавить поддержку .htaccess:
AccessFileName .htaccess
Положим файл .htaccess в корень распакованного нами rutorrent (у меня это /var/www/html/rutorrent) и добавим такие строчки:
AuthType Basic
AuthName "access to admin Web server"
AuthUserFile /etc/httpd/conf/htpasswd
Require valid-use
AuthUserFile /etc/httpd/conf/htpasswd
Require valid-use
и командой htpasswd создадим файл для аутентификации:
htpasswd -c /etc/httpd/conf/htpasswd rtorrent
Теперь вы можете заходить на страницу вашего торрентокачальщика используя логин/пароль. На этом все :)
Комментариев нет:
Отправить комментарий