Установка proftpd в pfsense Печать
Автор: Administrator   
21.10.10 16:14

Установка proftpd в pfsense



Модификация Freebsd под названием pfsense очень хороша в качестве шлюза для офиса. Но хотелось бы чуть-чуть расширить ее возможности, хотелось бы еще файлообменник замутить. Решил поднять ftp сервер в качестве файлообменника, но вот незадача в готовых пакетах ftp серверов нет.


Но это не беда. pfsense та же freebsd, поэтому можно скачать готовый пакет proftpd для FreeBSD 7.0 отсюда. Заходим в webGUI pfsense в раздел Diagnostics –> command -> Upload и закачиваем этот пакет (у меня был proftpd-1.3.1_4.tbz)
Потом заходим в pfsense через ssh, выбираем пункт shell и устанавливаем пакет

pkg_add /tmp/proftpd-1.3.1_4.tbz

Потом правим конфигурационный файл ProFTPd

ee /usr/local/etc/proftpd.conf

В примерно такой вид:

ServerName "FTP"
ServerType standalone
DefaultServer on
ScoreboardFile /var/run/proftpd.scoreboard
DelayTable /var/run/proftpd.delay
Port 21
Umask 022
User ftp
Group nogroup
SystemLog /var/log/proftpd.log
TransferLog /var/log/xferlog
DisplayConnect /etc/ftp_connect.msg
DisplayLogin /etc/ftp_login.msg
DefaultRoot ~ users

Теперь создаем файлы и что-нибудь туда пишем, а можно и ничего не писать:

touch /etc/ftp_connect.msg
touch /etc/ftp_login.msg

Заводим пользователя, допустим ftp с домашней директорией /var/ftp/

pw add user ftp -d /var/ftp

И ставим выставляем пароль:

passwd ftp

Если директории /var/ftp не существует создаем ее

mkdir /var/ftp/

выставляем хозяина папки пользователя ftp

chown ftp /var/ftp

Правим скрипт запуска proftpd, /usr/local/etc/rc.d/proftpd

#!/bin/sh
proftpd_enable="YES"
. /etc/rc.subr
name=proftpd

rcvar=`set_rcvar`
command=/usr/local/sbin/proftpd

pidfile=/var/run/proftpd.pid

required_files=/usr/local/etc/proftpd.conf
stop_postcmd=stop_postcmd
stop_postcmd()

{

rm -f $pidfile

}
extra_commands="reload"
load_rc_config $name

run_rc_command "$1"

Теперь заходим в webGUI, в Interfaces –> LAN и ставим галочку “Disable the userland FTP-Proxy application” (рисунок ниже) и жмем SAVE


В принципе наш ftp сервер готов, пробуем запустить:

/usr/local/etc/rc.d/proftpd start

и подключаемся ftp://192.168.0.1
Если что-то не получается, смотрим логи:

tail –f /var/log/proftpd.log

P.S. Но у нас же pfsense, где все управление происходит через webGUI, потом правим файл /cf/conf/config.xml где пошло описание сервисов, добавляем:

<service>
<name>Proftpd</name>
<rcfile>proftpd</rcfile>
<executable>proftpd</executable>
<description>ProFTPd server Service</description>
</service>

Извиняюсь за картинку, блог не поддерживает теги

Чтобы изменения сразу применились удаляем кеш конфига

rm /tmp/config.cache

Теперь заходим в webGUI Status –> Services и наблюдаем новый сервис, который можно останавливать и запускать, мелочь, а приятно =)


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

 

оригинал: тут

допы:

http://leonidov.su/2008/08/26/ftpd_config/
http://www.opennet.ru/base/net/proftpd_setup.txt.html

 

{jcomments on}

Последнее обновление 21.10.10 16:48