Хостинг · 2 min read · Jan 22, 2026

Виртуальный почтовый и FTP хостинг с iRedMail и Pure-FTPd на FreeBSD

Виртуальный почтовый и FTP хостинг с iRedMail и Pure-FTPd на FreeBSD

iRedMail — это оболочка, которая позволяет вам быстро развернуть полнофункциональное почтовое решение менее чем за 2 минуты. Начиная с версии 0.6, она поддерживает FreeBSD 7.2 и 8.0 (как i386, так и x86_64). iRedMail поддерживает как OpenLDAP, так и MySQL в качестве бэкендов для хранения виртуальных доменов и пользователей.

Бэкенд OpenLDAP iRedMail позволяет интегрировать все виды приложений. Этот гид показывает, как интегрировать pure-ftpd в бэкенд ldap iRedMail на FreeBSD 7.2, пароли будут храниться в ldap, и вы сможете изменить пароль через веб-почту.

Этот учебник основан на FreeBSD 7.2, поэтому я предлагаю вам установить минимальную версию FreeBSD 7.2, установить iredmail 0.60 и выбрать openldap в качестве бэкенда, как показано в этих учебниках:

  • iRedMail: Почтовый сервер с LDAP, Postfix, RoundCube/SquirrelMail, Dovecot, ClamAV, SpamAssassin, Amavisd (Debian 5.0.1)
  • iRedMail: Создание полнофункционального почтового сервера с LDAP, Postfix, RoundCube, Dovecot, ClamAV, SpamAssassin, DKIM, SPF на CentOS 5.x
  • iRedMail 0.6: Полнофункциональный почтовый сервер с OpenLDAP/Postfix/Dovecot/Amavisd/ClamAV/SpamAssassin/iRedAdmin на FreeBSD

1 Установите Pure-FTPd

Установите pure-ftpd:

# cd /usr/ports/ftp/pure-ftpd/  
# make install clean

Опции для Pure-ftpd, необходимо выбрать LDAP:

2 Добавить FTP пользователя

Когда вы устанавливаете pureftp, создается группа ftp, но нет пользователя ftp; это приводит к ошибке “mail pure-ftpd:(?:?) [ERROR] Не удалось найти учетную запись ‘ftp’”. Поэтому нам нужно вручную создать пользователя ftp.

# pw useradd ftp -u 14 -g 14 -s /sbin/nologin -d /dev/null  
# cat /etc/passwd | grep ftp
ftp:*:14:14:User &:/dev/null:/sbin/nologin
# cat /etc/group | grep ftp
ftp:*:14:

3 Настройка Pure-ftpd

Создайте конфигурационные файлы pure-ftp:

# cd /usr/local/etc   
# cp pure-ftpd.conf.sample pure-ftpd.conf   
# cp pureftpd-ldap.conf.sample pureftpd-ldap.conf   
# chmod 644 pure-ftpd.conf  
# chmod 644 pureftpd-ldap.conf  
# echo 'pureftpd_enable="YES"' >> /etc/rc.conf

Отредактируйте pure-ftpd.conf, чтобы pure-ftpd поддерживал ldap:

| LDAPConfigFile /usr/local/etc/pureftpd-ldap.conf CreateHomeDir yes |

3.1 Найдите пароль cn=vmail

Пароль vmail был случайно создан во время установки iredmail. Вы можете найти пароль в /usr/local/etc/postfix/ldap_virtual_mailbox_domains.cf:

cat /usr/local/etc/postfix/ldap_virtual_mailbox_domains.cf

| bind_dn = cn=vmail,dc=example,dc=com bind_pw = kZ6uB29mViWKWI9lOH3cGnF7z3Dw3B #пароль cn=vmail |

3.2 Отредактируйте pureftpd-ldap.conf

| LDAPServer localhost LDAPPort 389 LDAPBaseDN o=domains,dc=example,dc=com LDAPBindDN cn=vmail,dc=example,dc=com LDAPBindPW kZ6uB29mViWKWI9lOH3cGnF7z3Dw3B #пароль cn=vmail LDAPDefaultUID 1002 # <- UID пользователя 'vmail'. LDAPDefaultGID 1002 # <- GID пользователя 'vmail'. LDAPFilter (&(objectClass=PureFTPdUser)(mail=\L)(FTPStatus=enabled)) LDAPHomeDir FTPHomeDir # <- Это новый атрибут, который мы добавим LDAPVersion 3 |

3.3 Получите схему Pure-ftpd

Скачайте схему, которая была изменена iredmail:

wget http://iredmail.googlecode.com/svn/trunk/extra/pureftpd.schema -P /usr/local/etc/openldap/schema/

3.4 Отредактируйте /usr/local/etc/openldap/slapd.conf

Включите pureftpd.schema после iredmail.schema:

| include /usr/local/etc/openldap/schema/iredmail.schema include /usr/local/etc/openldap/schema/pureftpd.schema # <-- Добавьте эту строку. |

Добавьте индекс для атрибутов, определенных в pureftpd.schema:

| # Default index. # index objectClass eq,pres index ou,cn,mail,surname,givenname,telephoneNumber eq,pres,sub index uidNumber,gidNumber,loginShell eq,pres index uid,memberUid eq,pres,sub index nisMapName,nisMapEntry eq,pres,sub # <-- Добавьте ниже #Индекс для FTP атрибутов. index FTPQuotaFiles,FTPQuotaMBytes eq,pres index FTPUploadRatio,FTPDownloadRatio eq,pres index FTPUploadBandwidth,FTPDownloadBandwidth eq,pres index FTPStatus,FTPuid,FTPgid,FTPHomeDir eq,pres |

4 Создайте домашний каталог FTP

Данные FTP хранятся в каталоге /home/ftp/. Создайте /home/ftp/, владелец должен быть пользователем root.

# mkdir /home/ftp/  
# ls -dl /home/ftp/
drwxr-xr-x 2 root wheel 512 Jan 31 13:25 /home/ftp/
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.