Настройки встроенного в систему FTP-демона для использования анонимными пользователями и некоторые другие.

Для начала в файле /etc/group ищем что-то типа ftp:*:14: Если ничего подобного нет, то вписываете вручную.

Далее в файле /etc/master.passwd ищем строку ftp:*:14:14::0:0:Anonymous FTP:/var/ftp:/nonexistent где /var/ftp изменяете на ваш уже созданный каталог для анонимных пользователей.

Затем обновляете базу пользователей, для чего в консоли пишете pwd_mkdb -p /etc/master.passwd

Потом в файл /etc/rc.conf прописываете:

ftpd_enable="YES"
ftpd_flags="-4 -r -S -M -W"

Где:
-4 - работать только в IPv4;
-r - запускает сервер в режиме read-only;
-S - в лог /var/log/ftpd (если он есть) пишутся все загрузки файлов от anonymous;
-t - таймаут неактивности в секундах (по умолчанию 15 минут);
-W - не записывать в лог /var/log/wtmp сессии FTP;
-M - Предотвращает создание анонимными пользователями директорий;
-E - Запретить команду EPSV. Это хорошо применять для серверов за файерволом;
-A - Разрешается только анонимный доступ к ftp.
-l - Каждая успешная и ошибочная ftp(1) сессия записывается через syslog LOG_FTP в /var/log/xferlog.

Остальные ключи смотрите здесь.

Запускаем сервер:
#cd /etc/rc.d
#ftpd start


Часть 2. Настройка firewall

В файл pf.conf пишем:

pass in quick on vtnet0 proto tcp from any to any port > 49151 keep state

Затем перечитываем правила: pfctl -f /etc/pf.conf