Читал много статей по организации домашнего сервера, решил добавить немного пользы.
Недавно разработал для себя универсальный алгоритм по созданию сидбокса с самбой и фтп для домашней сети и решил поделиться с окружающими. Организация такого сервера занимает максимум час, и в принципе подходит под любое железо.
Единственным условием для успешной реализации этого решения: проводной интернет до сервера.
Итак, начнём с того, что мне в руки попал Mac mini PowerPC G4, с гигабайтом памяти и сотней гигабайт на жёстком диске. Хорошая машинка для такого дела — работает бесшумно, электричества жрёт мало, места практически не занимает, имеет встроенный привод для DVD-дисков.
Хотя такая реализация подойдёт практически для любого другого железа.

Для начала нужно скачать с официального репозитория Debian net installer для вашей платформы и записать его на диск. В моём случае это powerpc.
После это выполняем стандартную установку операционки с некоторыми уточнениями: нужно установить только базовую систему и SSH-сервер. Остальное будем ставить из консоли. Ещё одно уточнение по разметке диска: обычно я всегда выбираю «Использовать весь диск» и не заморачиваюсь на тему LVM и ручного разбиения, потому что все закачки торрентов будут храниться на самом большом разделе home, а остальное умещается в разделы по умолчанию.
Итак, система установлена, сеть, как правило, цепляется по DHCP (делаю на роутере резервацию айпи для мак-адреса сетевухи машины).

Ну и собственно сама настройка:

Для управления сервером через web-интерфейс устанавливаю Webmin.
Добавим нужные библиотеки, если их нету в системе:

apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions

Добавляем репозиторий Webmin в apt нашего сервера:

nano /etc/apt/sources.list

 

deb http://download.webmin.com/download/repository sarge contrib
deb http://webmin.mirror.somersettechsolutions.co.uk/repository sarge contrib

Для установки Webmin с помощью apt нужно добавить SSL-ключ для доступа в репозиторий Webmin:

cd /root
wget http://www.webmin.com/jcameron-key.asc
apt-key add jcameron-key.asc

Устанавливаем Webmin, который будет доступен по ссылке https:// айпи_вашего_сервера:10000 (ругнётся на сертификат, игнорируем ошибку)

apt-get update
apt-get install webmin
Установка торрент-клиента

Далее необходимо настроить наш торрент-клиент. Самым простым и оптимальным решением является Transmission, т.к. настраивается очень просто и быстро и имеет клиент для Windows. Его и установим:

apt-get update
apt-get install transmission-daemon transmission

Для настройки Transmission использует файл конфигурации settings.jsonn, расположенный в /var/lib/transmission-daemon/info. Перед его редактированием нужно остановить Transmission, иначе изменения, внесённые в файл при работающей программе будут заменены на дефаултные.

/etc/init.d/transmission-daemon stop

Обычно я меняю только следующие параметры:

download-dir: /home/ваша_папка_для_скаченных_торрентов
rpc-password: ваш_пароль_пользователя
rpc-username: ваше_имя_пользователя
rpc-whitelist-enabled: устанавливаю false

После этого нужно сохранить файл и запустить Transmission:

/etc/init.d/transmission-daemon start

Не забудьте создать в директории /home/ ту папку, которую вы указали в файле настроек Transmission и дать ей соответствующие права:

mkdir /home/ваша_папка_для_скаченных_торрентов
chmod 777 /home/ваша_папка_для_скаченных_торрентов

Теперь можно проверить, как работает Transmission и уже ставить что нибудь на закачку. Для этого достаточно ввести в браузере адрес:
http:// адрес_вашего_сервера:9091

image

Для Windows существует Transmisson-remote-gui, его можно легко найти в гугле. После его установки нужно ввести адрес вашего сервера, имя пользователя и пароль, который вы указали в settings.json и выставить ассоциации торрент-файлов с новым клиентом. Все закачки будут автоматически добавляться в сидбокс.

image

Установка Samba

Для доступа к этим файлам из сети Windows потребуется установить и сконфигурировать Samba. Я не заморачиваюсь с настройками, так как сервер в домашней сети и публикации его во внешний мир нет. Поэтому алгоритм установки будет таким:
Устанавливаем Samba сервер с возможностью иметь доступ к файлам на других компьютерах:

aptitude install samba smbclient smbfs

Создаю резервную копию файла настроек Samba, как говорится, на всякий пожарный:

cp /etc/samba/smb.conf /etc/samba/smb.conf.backup

Теперь редактируем файл настроек и добавляем в него следующие параметры:

nano /etc/samba/smb.conf

 

[global]
workgroup = ИМЯ_ВАШЕЙ_РАБОЧЕЙ_ГРУППЫ_ИЛИ_ДОМЕНА
netbios name = ИМЯ_СЕРВЕРА
server string = ЛЮБОЕ_ОПИСАНИЕ_СЕРВЕРА
security = share
browseable = yes

[share]
path = /home/ваша_папка_для_скаченных_торрентов
comment = mediafiles
readonly = No
guest ok = Yes

Сохраняем файл и перезапускаем Samba:

/etc/init.d/samba restart

Теперь в эту папку можно зайти, указав в адресной строке проводника Windwos \айпи_вашего_сервера

Настройка ФТП

Если есть желание настроить внешний доступ по ФТП, то делается это так же просто, как и всё предыдущее.
Заходим на Webmin: https:// айпи_вашего_сервера:10000 (ругнётся на сертификат, игнорируем ошибку).
Переходим в раздел Webmin -> Webmin settings, устанавливаем русский язык (в формате UTF-8). Обновляем страницу.
Переходим в раздел Система -> Менеджер ПО, ставим галочку в «Пакеты из APT», указываем в строке поиска proftpd, жмём Искать в APT. После этого Webmin установит нам фтп-сервер ProFTPD. Обновляем страницу и идём в Службы -> Сервер ProFTP -> Файлы и каталоги, и указываем Ограничить пользователя в каталогах -> Домашний каталог. Сохраняем изменения.
Идём в Система -> Пользователи и группы. Выбираем того пользователя, которого вы указали как нового, при установке Debian Linux на ваш сервер, указываем ему домашний каталог как /home/ваша_папка_для_скаченных_торрентов. Сохраняем настройки.

Для верности перезагружаем наш свежеиспечённый сервер:

reboot

Не путать с halt — это команда выключения сервера!

Собственно на этом настройка домашнего сервера завершена.
Приятного пользования!