всё разобрался вот всё что я проделал надо кому то пользуйтесь:
Установка openssl
/usr/ports/security/openssl
make && make install
BErkley DB
cd /build_unix
../dist/configure
SASL(cyrus-sasl-2.1.19.tar)
./configure \
--enable-anon \
--enable-plain \
--enable-login \
--disable-krb4 \
--disable-otp \
--disable-cram \
--disable-gssapi \
--disable-digest \
--with-authd=unix \
--with-pam=/usr/lib \
--with-dbdir=/usr/local/bdb \
--with-bdb-libdir=/usr/local/bdb/lib \
--with-bdb-incdir=/usr/local/bdb/include \
--with-openssl=/usr/local/openssl \
--with-plugindir=/usr/local/lib/sasl2
IMAP4(cyrus-imapd-2.1.17.tar)
export CPPFLAGS="-I/usr/local/include"
CPPFLAGS="${CPPFLAGS} -I/usr/local/include"
export CPPFLAGS
./configure \
--with-sasl=/usr/local \
--with-perl \
--with-auth=unix \
--with-dbdir=/usr/local/bdb \
--with-bdb-libdir=/usr/local/bdb/lib \
--with-bdb-incdir=/usr/local/bdb/include \
--with-openssl=/usr/local/openssl \
--without-ucdsnmp \
imapd.conf
configdirectory: /var/imap
partition-default: /var/spool/imap
admins: cyrus
sasl_pwcheck_method: saslauthd
tls_cert_file: /var/imap/server.pem
tls_key_file: /var/imap/server.pem
maxmessagesize: 30000000
altnamespace: yes
Создаём рабочий каталог, указанный параметром "configdirectory:
/var/imap" и устанавливаем на него необходимые права:
cd /var
mkdir imap
chown cyrus.mail imap
chmod 750 imap
По-умолчанию демон лежит в папке /usr/local/sbin/. Для начала можем
посмотреть какие методы аутентификации поддерживает наш демон: <
/usr/local/sbin/saslauthd -v saslauthd 2.1.15 authentication
mechanisms: getpwent pam rimap
Вообще хотелось бы аутентифицироваться из отдельного файла с
криптованными паролями (подобно системной базе), но сожалению такая
схема у меня не получилась.
Пришлось аутентифицироваться из общей системной базы (getpwent). Для
этого механизма необходимо чтобы демон был запущен:
/usr/local/sbin/saslauthd -a getpwent
Для авторизации:
mkdir /var/state
mkdir /var/state/saslauthd
su - cyrus
/usr/local/cyrus-imapd-2.2.9/tools/mkimap
cp master/conf/normal.conf /etc/cyrus.conf
настройка OPENSSL и Cyrus
openssl req -new -x509 -nodes -out /var/imap/server.pem -keyout /var/imap/server.pem -days 365
Добавте следующие строки в файл "/etc/services ", если их там нет.
pop3 110/tcp
imap 143/tcp
imsp 406/tcp
acap 674/tcp
imaps 993/tcp
pop3s 995/tcp
kpop 1109/tcp
sieve 2000/tcp
lmtp 2003/tcp
fud 4201/udp
/usr/cyrus/bin/master &
перекинул библиотеки с bdb/lib -> /usr/local/lib usr/local/include