Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Установка Pure-FTPd на pfSense-1.2.3

    Scheduled Pinned Locked Moved Russian
    2 Posts 2 Posters 3.9k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      storma
      last edited by

      Постановка задачи:
       1.Предприятию понадобился FTP Server (passive mode) доступный из вне.
       2.Пользователи для доступа из вне виртуальные.
       3.Доступ к папкам задействованых для FTP внутри предприятия осуществляется по SFTP (Red Drive File Transfer Extension).

      Цель описания:
       1.Попытка создания пошаговой краткой инструкции установки Pure-FTPd на pfSense-1.2.3
       2.В надежде, что пост не забанять использовать её в будущем.

      Использовались следующие внешние посты:

      http://www.pureftpd.org/project/pure-ftpd
      http://www.blackonsole.org/2009/10/pureftp-on-freebsd-71.html
      http://www.lissyara.su/archive/pureftpd/
      http://machiel.generaal.net/index.php?subject=pureftpd&language=eng#subject_6
      http://forum.pfsense.org/index.php/topic,14532.0.html

      Описание:

      Работаем с WebМордой:
       Interfaces: WAN->Disable the userland FTP-Proxy application->set check (для возможности достучаться из вне)
       Firewall: Rules: WAN  "TCP * * * 21 (FTP) *   Pure-Ftpd" (разрешаем доступ из вне)

      Работаем с консолью:
       .Выясняем версию FreeBSD
       #uname -a
       #FreeBSD pfsense-vm.local 7.2-RELEASE-p5 FreeBSD 7.2-RELEASE-p5 #0: Sun Dec  6 23:20:31 EST 2009 sullrich@FreeBSD_7.2_pfSense_1.2.3_snaps.pfsense.org:/usr/obj.pfSense/usr/pfSensesrc/src/sys/pfSense_SMP.7  i386

      .Устанавливаем нужный pkg
       #pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/ftp/pure-ftpd-1.0.21_4.tbz

      .Создаём и редактируем pure-ftpd.conf
       #cd /usr/local/etc/
       #cp pure-ftpd.conf.sample pure-ftpd.conf
       #ee pure-ftpd.conf

      BrokenClientsCompatibility  yes    (для кривых клиентских приложений)
        PureDB                      /usr/local/etc/pureftpd.pdb    (база виртуальных пользователей, о ней ещё впереди)
        CreateHomeDir               yes   (каталог пользователя будет создаваться автоматически)
        IP4Only                     yes

      -Остальные параметры я не менял. Их описание на рус. см. "http://www.lissyara.su/archive/pureftpd/"

      .Создаём папку для "файловой помойки" FTP сервера
       #mkdir /usr/home
       #mkdir /usr/home/virftp

      .Создаём пользователя в системе (один да нужен :))
       #pw user add virftp -s /sbin/nologin -w no -d /usr/home/virftp -c "virtual pure virtual ftp users" -m
       -Где "virftp" имя пользователя в системе.

      .Меняем владельца каталога
       #chown -R virftp /usr/home/virftp

      .Создаём виртуальных пользователей
       #/usr/local/bin/pure-pw useradd uftp -u virftp -g virftp -d /usr/home/virftp/uftp
       Password:[ uftp user pass ]
       Enter it again: [ uftp user pass ]

      #/usr/local/bin/pure-pw useradd umove -u virftp -g virftp -d /usr/home/virftp/umove
       Password:[ umove user pass ]
       Enter it again: [ umove user pass ]

      -Где "uftp" и "umove" виртуальные пользователи

      .Формируем  "/usr/local/etc/pureftpd.pdb" база пользователей Pure-FTPd
       #/usr/local/bin/pure-pw mkdb
       -При создании следующих виртуальных пользователей, не забываем переформировать базу пользователей.

      .Так можно посмотреть чего получилось
       #/usr/local/bin/pure-pw show uftp

      .Стартуем FTP сервер
       #/usr/local/etc/rc.d/pure-ftpd onestart

      Starting pureftpd.
       Running:/usr/local/sbin/pure-ftpd -A c50 -B -C8 -D -fftp -H -I15 -L2000:8 -m -s -U133:022 -u100 -k99 -Z

      .Стучимся из консоли
       #ftp localhost
      Trying 127.0.0.1…
      Connected to localhost.
      220---------- Welcome to Pure-FTPd [privsep] –--------
      220-You are user number 1 of 50 allowed.
      220-Local time is now 07:23. Server port: 21.
      220-IPv6 connections are also welcome on this server.
      220 You will be disconnected after 15 minutes of inactivity.
      Name (localhost:free): uftp
      331 User uftp OK. Password required
      Password:[ uftp user pass ]
      230-User uftp has group access to:  1002  
      230 OK. Current directory is /
      Remote system type is UNIX.
      Using binary mode to transfer files.
      ftp>quit

      -Во блин сходу работает(извините :)).
       -Представленное выше "эхо" FTP сервера не моё. У меня сейчас на экране что-то подобное.

      Ну дальше стандартный рецепт:
       #ee /cf/conf/config.xml

      <service><name>Pure-FTPd</name>
             <rcfile>pure-ftpd</rcfile>
             <executable>pure-ftpd</executable>
              <description>Pure-FTPd server Service</description></service>

      #rm /tmp/config.cache
       -На самом деле, не всё гладко в этом месте: "/usr/local/etc/rc.d/pure-ftpd onestart"

      Ну и на сладкое:
       #mkdir /usr/local/www/pureftp
       #chown www:www /usr/local/www/pureftp
       #/usr/local/sbin/pure-ftpwho -H -w » /usr/local/www/pureftp/index.html

      1 Reply Last reply Reply Quote 0
      • E
        Eugene
        last edited by

        Правил на wan для passive ftp маловато. Извне работать не будет.

        http://ru.doc.pfsense.org

        1 Reply Last reply Reply Quote 0
        • First post
          Last post
        Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.