FTP сервер на PuppyRus

10 февраля 2011 -

Автор melviX

В жизни бывают случаи. когда надо срочно перекинуть файлы, особенно большие, с одного компьютера на другой, да ещё и в другую часть света.

Вы скажете, есть же файлообменники. Да, но размер там обычно ограничен, нужно туда закачать, возможно медленно, а потом на другом конце скачать, опять же возможно медленно. А тут фильм на полтора гектара редкий .

И мало кто из пользователей PuppyRus знает о существовании такого простого и удобного средства, которое позволит решить Вам подобную проблему.

Имя ему PureFTPd FTP сервер. Развернуть его можно за пару минут и пользоваться параллельно со многими пользователями в разных концах света.

Когда я собирал PuppyRus Jeans, наш гуру по сетям Александр Першин - DdShurick, настоял на добавление в дистрибутив странного каталога - /home. Т.е. прямо в корне должен быть такой каталог для успешной работы имеющегося в системе PureFTPd, который без этого каталога не работал правильно.

Так я и сделал. И даже мы с ним испытали его действие, благо мы соседи, он в Калининграде, я в Вильнюсе (шучу, для тех, кто в танке).

Потом я благополучно забыл об этом и напомнил мне об этой возможности Александр тогда, когда пришлось устанавливать домашний FTP сервер.

Долго мы мучались с его настройками, но всё заработало прекрасно. И теперь я могу передать свой опыт, ведь это так приятно .

Итак, для начала Вам нужно определить, на каком разделе Вы собираетесь разместить каталог, в который либо Вам могут заливать файлы, либо Вы раздавать их. Затем надо придумать название каталогу, оно же будет именем пользователя а также логином. Затем говорим: "Ахалай-махалай", открываем терминал (консоль) и вводим следующие команды:

1. mount /dev/sda2 /home  - т.е. монтируете к необходимому для работы PureFTPd каталогу  /home выбранный раздел, в примере /dev/sda2

2. adduser name  - соэдаёте пользователя с именем, таким же, как у будущего каталога (в примере name). При создании потребуется ввести пароль (желательно), затем подтвердить его. При вводе пароля ничего не будет меняться в поле ввода, так и должно быть, повторно вводите тот же самый пароль.

Всё, можете проверить, на разделе sda2 должен появиться каталог name.

Запускаете PureFTPd, находящийся в Меню "Сеть". Не разрешайте заходить с правами root и анонимному юзеру.

Теперь сообщаете другу адрес своего FTP сервера в виде типа: ftp://79.159.19.179/, где цифры - это IP адрес вашего компьютера или внешний . Если у Вас стоит роутер, то нужно настроить форвардинг с внешнего IP на внутренний IP вашего компьютера. Также сообщите логин и пароль пользователя name.

Закиньте в каталог name нужный файл, ваш друг сможет его скачать, даже через любой броузер, использую http://79.159.19.179/, либо приведённый выше ftp адрес.

Закинуть в тот же каталог свои файлы ваш друг сможет через программу ftp-клиента, к примеру имеющуюся в PuppyRus в Меню "Интернет" - gFTP ftp клиент, либо иную, даже используя иную ОС.

При отсутствии подобных программ ваш друг может использовать консольную программу curlftpfs, также входящую в дистрибутив. Для этого в терминале (консоли) необходимо  ввести:

curlftpfs ftp://79.159.19.179/  /mnt/data -o user=name:pass

Вы уже поняли, что в строке команды присутствуют адрес вашего  FTP сервера, имя пользователя (он же логин) и пароль для него pass (вставьте свой).

И если ваш друг работает под PuppyRus, он в каталоге /mnt/data увидит каталог /name, в который или из которого сможет просто перетянуть нужные файлы. Как будто всё происходит на одном компьютере.

Если Вам необходимо, чтобы раздел подключался постоянно автоматом, а PureFTPd запускался без вашего участия, добавьте пару строк в /etc/rc.d/rc.local:

mount /dev/sda2 /home
pure-ftpd -bBADHk 90 -u 1 -E

Пробуйте!

P.S. Как Вы уже поняли, пользователей можно создавать много.