пятница, 27 сентября 2013 г.

FTP сервер proftpd (установка и настройка).

Возникла надобность обменяться файлами с друзьями. Решил, что лучше всего для выполнения этой задачи подойдет FTP сервер. Сказано - сделано. Поехали.
Оговорка: сервер не находится за NAT, порт смотрит прямо в инет.

1. Устанавливаем proftpd:
apt-get install proftpd
В процессе установки выбираем standalone.
2. Добавим нашего ftp юзера, одновременно запрещая ему доступ к shell:
adduser guest --shell /bin/false
3. Дадим полные права на домашний каталог (с правами будем разбираться в конфиге):
chmod 777 -R /home/guest
4. Откроем proftpd.conf и начнем настройку  proftpd:
nano /etc/proftpd/proftpd.conf

тут я опишу что у меня отличается от дефолтного  proftpd.conf

DefaultRoot /home/guest   # "запираем" пользователя guest в своем каталоге
Port          21   #стандартный FTP порт, его надо открыть или изменить на тот который нравится, в этом случае на стороне клиента придется его указать.
RequireValidShell off   # запрещаем shell
PassivePorts 49555 49556  #открываем произвольные порты, нужно для пассивного режима, если FTP клиент в активном режиме, то можно этого не делать

запрещаем юзеру удалять и записывать в домашний католог и вложенные в него (тут можно варьировать, изменяя пути к каталогам и лимиты):


<Directory /home/guest/*>
<Limit DELE WRITE>
DenyAll
</Limit>
</Directory>

Для того, чтобы в логах proftpd отображалось правильное время добавим строки:

TimesGMT off
SetEnv TZ :/etc/localtime

Сохраняем, выходим.

5. Корректно выставляем время:
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

6. Проверяем:
 ls -l /etc/localtime

7. Перезапускаем proftpd
/etc/init.d/proftpd restart

Если нужные порты открыты, то все должно заработать.

Комментариев нет:

Отправить комментарий