Что такое код vpopmail_add_user


Содержание

FPublisher

Web-технологии: База знаний

Документация PHP

vpopmail_add_user

(PHP 4 >= 4.0.5, PECL vpopmail:0.2)

vpopmail_add_user — Add a new user to the specified virtual domain

Описание

bool vpopmail_add_user ( string $user , string $domain , string $password [, string $gecos [, bool $apop ]] )

Эта функция является ЭКСПЕРИМЕНТАЛЬНОЙ. Поведение этой функции, ее имя и относящаяся к ней документация могут измениться в последующих версиях PHP без уведомления. Используйте эту функцию на свой страх и риск.

К настоящему времени эта функция еще не была документирована; для ознакомления доступен только список аргументов.

vpopmail_add_user

(PHP 4 >= 4.0.5, PECL vpopmail >= 0.2)

vpopmail_add_user — Add a new user to the specified virtual domain

Описание

Эта функция является ЭКСПЕРИМЕНТАЛЬНОЙ. Поведение этой функции, ее имя и относящаяся к ней документация могут измениться в последующих версиях PHP без уведомления. Используйте эту функцию на свой страх и риск.

К настоящему времени эта функция еще не была документирована; для ознакомления доступен только список аргументов.

Что такое код vpopmail_add_user

(4.1.0 — 4.2.3 only, PECL)

vpopmail_alias_add — Insert a virtual alias

Description bool vpopmail_alias_add ( string user, string domain, string alias )

Эта функция является ЭКСПЕРИМЕНТАЛЬНОЙ . Поведение этой функции, ее имя и относящаяся к ней документация могут измениться в последующих версиях PHP без уведомления. Используйте эту функцию на свой страх и риск.

Внимание

К настоящему времени эта функция еще не была документирована; для ознакомления доступен только список аргументов.

Внимание
Пред. Начало След.
vpopmail_add_user Уровень выше vpopmail_alias_del_domain

Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:

Виртуальная почтовая система на основе qmail/vpopmail.

1. Введение

Не важно для чего вы хотите организовать систему электронной почты, только лишь для сервисов, как самостоятельный сервер, или для нескольких виртуальных доменов, qmail может быть легко настроен для любых ваших нужд. Это руководство поможет вам установить и настроить qmail, для любого из этих вариантов с уклоном на удаленный доступ, в том числе через зашифрованные каналы данных.

Это руководство поможет вам освоить qmail, courier-imap, vpopmail, и horde/imp. Но вместе с ними так же вступят в «игру» daemontools, ucspi-tcp, mysql, apache, и mod_php. qmail предоставляет функции MTA (Mail Transfer Agent), courier-imap — предоставляет удаленный сбор почты, (pop3/imap сервер. прим.пер.) vpopmail предоставляет функции управления виртуальными доменами, и horde/imp — это почтовый веб-клиент.

До установки (emerging) чего-либо, вы должны корректно установить переменную USE. Если у вас уже были установлены какие-нибудь из этих пакетов, то, возможно, вам придется их переустановить. USE=»maildir ssl imap mysql». Также, если вы хотите использовать horde/imp как web-клиент, то так же надо добавить USE=»nls» до установки mod_php.

Примечание: Это руководство написано «по-шагам» Если в какой-то момент вы чувствуете что все то, что нужно готово, то можете не продолжать.

Cуществует достаточно пакетов, с помошью которых можно построить систему электронной почты. Сейчас самое время осмыслить и решить для вас ли qmail. У нас так же есть прекрасное руководство основанное на Postfix, или вы можете взглянуть на exim. Выбирайте решение для себя, а мы покажем вам, как использовать qmail.

2. qmail («Разговаривая с собой»)

Листинг 2.1: Emerge qmail

Важно: Эта часть построена вокруг qmail-1.03-r13 или старше. Будет ли нижеизложенное работать с ранними версиями? Может быть. Должны ли вы обновиться? Да, если вы хотите быть уверены, что это сработает.

Предупреждение: Если вы получили сообщение the virtual/mta package conflicts with another package тогда вам необходимо удалить из системы любой другой MTA. Чтобы узнать что это за пакет, просто запустите emerge qmail -p.

Установка qmail так же «потянет» за собой установку ucspi-tcp и daemontools. О них, если хотите, вы можете прочитать на ucspi-tcp и на daemontools. Обычно, daemontools отвечает за управление qmail’ом как сервисом, тогда как ucspi-tcp отвечает за управление входящими TCP соединениями для сервиса qmail.

Для начала проведем несколько пост-инсталяционных мероприятий. :)

Листинг 2.2: Конфигурирование qmail

(Измените под свою конфигурацию)

# ebuild /var/db/pkg/mail-mta/qmail-1.03-r*/qmail-1.03-r*.ebuild config

Qmail проектировался так, чтобы полностью соответствовать требованиям безопасности. Почта никогда не посылается пользователю ‘root’. Поэтому вам надо выбрать пользователя на машине, который будет получать почту предназначенную ‘root’. С этого момента я предполагаю, что этот пользователь ‘vapier’.

Листинг 2.3: Установка не-root акаунта для e-mail.

# echo vapier > .qmail-root

# echo vapier > .qmail-postmaster


# echo vapier > .qmail-mailer-daemon

Теперь, поднимем сервис доставки qmail.

Листинг 2.4: Запуск qmail delivery service

# rc-update add svscan default

# ln -s /var/qmail/supervise/qmail-send qmail-send

Надо убедиться, что qmail работает корректно, вот небольшой тест.

Листинг 2.5: Test delivery service

test root e-mail!

test postmaster e-mail!

# qmail-inject vapie r

test vapier e-mail!

(Теперь в вашем ящике должно быть 3 письма)

Вот и все! Теперь у вас стоит почтовая система способная удовлетворить, потребности локальной машины и системных демонов/пользователей.

Предупреждение: Если вы не получили никаких писем или видите странные ошибки в лог-файлах (проверьте /var/log/qmail/) включающие ‘localhost.localhost’, это означает что ваша domain/dns информация не корректна. По умолчанию, qmail использует информацию от hostname —fqdn. Если на вашей машине, эта команда выводит ‘localhost’, тогда проверьте ваши файлы /etc/hostname, /etc/hosts, и настройки dns чтобы убедиться что все правильно. Отредактируйте конфигурационные файлы в каталоге /var/qmail/control/. Используйте их примеры, (там же) если вам нужна помощь.

Листинг 2.6: Пример /var/qmail/control/ файлов для домена второго уровня

Что такое код vpopmail_add_user

vpopmail_add_user — добавляет нового пользователя в специфицированный виртуальный домен.

Описание

bool vpopmail_add_user (string user, string domain, string password [, string gecos [, bool apop]])

Эта функция — ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Предупреждение!

Эта функция в настоящее время ещё не задокументирована; имеется только список аргументов.

vpopmail Функции

Содержание

  • vpopmail_add_alias_domain_ex — Add alias to an existing virtual domain
  • vpopmail_add_alias_domain — Add an alias for a virtual domain
  • vpopmail_add_domain_ex — Add a new virtual domain
  • vpopmail_add_domain — Add a new virtual domain
  • vpopmail_add_user — Add a new user to the specified virtual domain
  • vpopmail_alias_add — Insert a virtual alias
  • vpopmail_alias_del_domain — Deletes all virtual aliases of a domain
  • vpopmail_alias_del — Deletes all virtual aliases of a user
  • vpopmail_alias_get_all — Get all lines of an alias for a domain
  • vpopmail_alias_get — Get all lines of an alias for a domain
  • vpopmail_auth_user — Attempt to validate a username/domain/password
  • vpopmail_del_domain_ex — Delete a virtual domain
  • vpopmail_del_domain — Delete a virtual domain
  • vpopmail_del_user — Delete a user from a virtual domain
  • vpopmail_error — Get text message for last vpopmail error
  • vpopmail_passwd — Change a virtual user’s password
  • vpopmail_set_user_quota — Sets a virtual user’s quota
Предупреждение!
НОВОСТИ ФОРУМА
Рыцари теории эфира
01.10.2020 — 05:20: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ — Upbringing, Inlightening, Education ->
[center][Youtube]69vJGqDENq4[/Youtube][/center]
[center]14:36[/center]
Osievskii Global News
29 сент. Отправлено 05:20, 01.10.2020 г.’ target=_top>Просвещение от Вячеслава Осиевского — Карим_Хайдаров.
30.09.2020 — 12:51: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ — Upbringing, Inlightening, Education ->
[center][Ok]376309070[/Ok][/center]
[center]11:03[/center] Отправлено 12:51, 30.09.2020 г.’ target=_top>Просвещение от Дэйвида Дюка — Карим_Хайдаров.
30.09.2020 — 11:53: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ — Upbringing, Inlightening, Education ->
[center][Youtube]VVQv1EzDTtY[/Youtube][/center]
[center]10:43[/center]

интервью Раввина Борода https://cursorinfo.co.il/all-news/rav.
мой телеграмм https://t.me/peshekhonovandrei
мой твиттер https://twitter.com/Andrey54708595
мой инстаграм https://www.instagram.com/andreipeshekhonow/


[b]Мой комментарий:
Андрей спрашивает: Краснодарская синагога — это что, военный объект?
— Да, военный, потому что имеет разрешение от Росатома на манипуляции с радиоактивными веществами, а также иными веществами, опасными в отношении массового поражения. Именно это было выявлено группой краснодарцев во главе с Мариной Мелиховой.

[center][Youtube]CLegyQkMkyw[/Youtube][/center]
[center]10:22 [/center]

Доминико Риккарди: Россию ждёт страшное будущее (хотелки ЦРУ):
https://tainy.net/22686-predskazaniya-dominika-rikardi-o-budushhem-rossii-sdelannye-v-2000-godu.html

Завещание Алена Даллеса / Разработка ЦРУ (запрещено к ознакомлению Роскомнадзором = Жид-над-рус-надзором)
http://av-inf.blogspot.com/2013/12/dalles.html

[center][b]Сон разума народа России [/center]

[center][Youtube]CLegyQkMkyw[/Youtube][/center]
[center]10:22 [/center]

Доминико Риккарди: Россию ждёт страшное будущее (хотелки ЦРУ):
https://tainy.net/22686-predskazaniya-dominika-rikardi-o-budushhem-rossii-sdelannye-v-2000-godu.html

Завещание Алена Даллеса / Разработка ЦРУ (запрещено к ознакомлению Роскомнадзором = Жид-над-рус-надзором)
http://av-inf.blogspot.com/2013/12/dalles.html

[center][b]Сон разума народа России [/center]

Что такое код vpopmail_add_user

Зададим аргументы для сборки ( Внимание. писать в одну строку! Спасибо Jurik47.) :

в другой консоле:

Должен появится лог примерно следующего содержания:

@400000004947b8af046b4f3c Checking locals
@400000004947b8af046b5324 locals has changed
@400000004947b8af046b5af4 Sending HUP to qmail-send
@400000004947b8af097cc3ac No matching processes were found
@400000004947b8af09cf6404 Checking validrcptto.cdb
@400000004947b8af09cf6bd4 Checking auth.txt and auth.cdb
@400000004947b8af09cf73a4 Done
@400000004947b8af0a4ae14c \—— rv=0
@400000004947b8af0a5fc8dc sleeping 4 seconds.
@400000004947b8b30aa1755c waiting for input on /tmp/update-qmail
@400000004947d48408e9f1bc gathering input
@400000004947d484095a6e9c /——
@400000004947d484095a766c onchange add_domain mydomain.com
@400000004947d484095a7e3c \——
@400000004947d484095a860c running [/service/qmail-updater/update-qmail] (output follows)
@400000004947d484095a95ac /——
@400000004947d4840e48845c Starting
@400000004947d4840e488c2c Checking users/assign and users/cdb
@400000004947d4840e489014 Checking morercpthosts and morercpthosts.cdb
@400000004947d4840e489bcc Checking virtualdomains
@400000004947d4840e48a39c virtualdomains has changed
@400000004947d4840e48ab6c Checking locals
@400000004947d4840e48b33c locals has changed
@400000004947d4840e48bb0c Sending HUP to qmail-send
@400000004947d48411646a5c No matching processes were found
@400000004947d484125c62d4 Checking validrcptto.cdb
@400000004947d484125c7274 Checking auth.txt and auth.cdb
@400000004947d484125c7a44 Done
@400000004947d48412e5d26c \—— rv=0
@400000004947d48412fc11bc sleeping 5 seconds.
@400000004947d48913500204 waiting for input on /tmp/update-qmail

Создадим почтовый ящик:

Должен появится лог примерно следующего содержания:

@400000004947d4840e48ab6c Checking locals
@400000004947d4840e48b33c locals has changed
@400000004947d4840e48bb0c Sending HUP to qmail-send
@400000004947d48411646a5c No matching processes were found
@400000004947d484125c62d4 Checking validrcptto.cdb
@400000004947d484125c7274 Checking auth.txt and auth.cdb
@400000004947d484125c7a44 Done
@400000004947d48412e5d26c \—— rv=0
@400000004947d48412fc11bc sleeping 5 seconds.
@400000004947d48913500204 waiting for input on /tmp/update-qmail
@400000004947d51200c80ce4 gathering input
@400000004947d51201121604 /——
@400000004947d51201121dd4 onchange add_user test@mydomain.com
@400000004947d51201122d74 \——
@400000004947d51201123544 running [/service/qmail-updater/update-qmail] (output follows)
@400000004947d51201123d14 /——
@400000004947d51205842d94 Starting
@400000004947d51205843564 Checking users/assign and users/cdb
@400000004947d51205843d34 Checking morercpthosts and morercpthosts.cdb
@400000004947d51205844504 Checking virtualdomains
@400000004947d51205844cd4 Checking locals
@400000004947d512058454a4 Checking validrcptto.cdb
@400000004947d51205845c74 Checking auth.txt and auth.cdb
@400000004947d51205846444 Done
@400000004947d51205f3fe94 \—— rv=0
@400000004947d512060a5554 sleeping 5 seconds.
@400000004947d517066fe93c waiting for input on /tmp/update-qmail
@400000004947d517066ff10c gathering input
@400000004947d51706cfc064 /——
@400000004947d51706cfc834 onchange mod_user test@mydomain.com
@400000004947d51706cfd004 \——
@400000004947d51706cfd7d4 running [/service/qmail-updater/update-qmail] (output follows)
@400000004947d51706cfdfa4 /——
@400000004947d5170bdefe6c Starting
@400000004947d5170bdf063c Checking users/assign and users/cdb
@400000004947d5170be831e4 Checking morercpthosts and morercpthosts.cdb
@400000004947d5170be839b4 Checking virtualdomains
@400000004947d5170be84184 Checking locals
@400000004947d5170be84954 Checking validrcptto.cdb
@400000004947d5170be85124 Checking auth.txt and auth.cdb
@400000004947d5170be858f4 Done
@400000004947d5170c9411e4 \—— rv=0
@400000004947d5170cb1040c sleeping 5 seconds.
@400000004947d51c0d0d4d0c waiting for input on /tmp/update-qmail

Шаг 12. Настраиваем Validrcptto

Внесём необходимые изменения:

Найти эту строку:

Закомментировать строку и добавить следующую:

Должно стать так:

Установим модуль CDB_File:

Будет выведен список e-mail адресов на которые будет производится прием почтовых сообщений.
.

Шаг 13. Установка Maildrop

Проверим запустились ли сервисы:

Получим такой вывод:

/service/maildrop-logger: up (pid 5571) 4 seconds
/service/maildrop-logger/log: up (pid 5572) 4 seconds

Шаг 14. Удаляем Sendmail


Шаг 15. Настраиваем qmail

Следующего содержания:

x pop3d_log
x pop3d_run
x qbonk
x qbonkns
x qfixq
x qmail.sh
x qmailctl
x rc
x send_log
x send_run
x smtpd_log
x smtpd_run

Пропишем с каким именем будет работать сервер:

Пропишем с каких адресов разрешена пересылка писем:

tcprules smtp.cdb smtp.tmp

Шаг 16. Настраиваем SMTPS

Приведём к такому виду

tcprules smtpssl.cdb smtpssl.tmp Создадим SSL key файл

Закончили с qmail.

Шаг 17. УСТАНОВКА SpamAssassin

Ругается :):
доустанавливаем необходимые модули (чтобы не ругался). В моём случае так:

Всё — ругани нет :)

Через несколько секунд проверим:

Удалим скрипт запуска:

Шаг 18. УСТАНОВКА ClamAV

Если не установлен unzip, то установливаем его:

Должны увидеть примерно следующее:

Шаг 19. УСТАНОВКА сканера

Предлагаю на выбор qmail-scanner или simscan.


УСТАНОВКА qmail-scanner

Должен быть установлен bash.
В портах пока версия qmail-scanner-2.01_4

Options for qmail-scanner 2.01_4

Теперь для проверки встроенного сканера запустите команду:

Эта команда должна вернуть список из нескольких вирусов.
Затем под непривилигированным пользователем выполните команду:

При успешном создании базы данных, вы получите сообщение, подобное этому:

Сейчас необходимо перезапусть qmail, чтобы qmail-scanner встроился в очередь.
Наш run-скрипт, созданный ранее, не требует каких либо дополнительных настроек.

Теперь пришло время протестировать Qmail-Scanner, Spamassassin и Clam AV на корректную работу.
В архиве с Qmail-Scanner содержится прекрасный скрипт для тестирования:

Успешный тест должен завершиться следующим:
2 сообщения будут помещены в карантин Clam Antivirus в /var/spool/quarantine/new,
2 сообщения будут помещены в почтовый ящик, указанный в конфигурационном скрипте Qmail-scanner.
Вполне возможно, что вы не получите сообщения об инфицированных e-mail’ах.

Установка simscan (переход с qmail-scanner на simscan)

Перейдем в папку с исходниками:

Скачаем патч и установим:

simscan-1.4.0-umask.patch 100% of 473 B 71 kBps

Hmm. Looks like a unified diff to me.
The text leading up to this was:
—————————
|diff -ruN simscan-1.4.0-factory/simscan.c simscan-1.4.0-patched/simscan.c
|— simscan-1.4.0-factory/simscan.c 2007-10-29 10:15:05.000000000 -0400
|+++ simscan-1.4.0-patched/simscan.c 2007-11-23 01:33:48.000000000 -0500
—————————
Patching file simscan.c using Plan A.
Hunk #1 succeeded at 283.
done

Доустановилось:

ripmime-1.4.0.6
p5-Mail-SpamAssassin-3.2.5_1
p5-Net-DNS-0.65
p5-Digest-SHA1-2.11
p5-Digest-HMAC-1.01
simscan-1.4.0_3

127.:allow,RELAYCLIENT=»»
192.168.0.:allow,RELAYCLIENT=»»,QMAILQUEUE=»/var/qmail/bin/simscan»
:allow,QMAILQUEUE=»/var/qmail/bin/simscan»

Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

Vpopmail procmail

Содержание

Задача

Появилась задача поставить автоответчик на один почтовый ящик vpopmail-пользователя уехавшего в отпуск.

Решение

Затем в папке vpopmail-пользователя (в моей системе это /usr/local/vpopmail/domains/mydomain.ru/user, в этой папке есть папка Maildir) создаем DOT-файл .qmail:

Затем в этой же папке создаем файл .procmailrc:

Затем создаем файл /usr/local/vpopmail/domains/mydomain.ru/user/mess.txt в кодировке utf8:

Не забываем, что файлы должны принадлежать vpopmail (это в нашем случае).

Дополнения

Коротко о procmail.

Общий синтаксис правил:

Опции:

  • H Условие применяется к заголовку почты.
  • B Условие ищется в теле сообщения.
  • D Включает чувствительность к регистру.
  • A Это правило применяется только когда применялось предыдущее.
  • a Как и A, за исключением того, что при применении предыдущего правила ошибок не должно быть. E Это правило выполняется, если предыдущее не было применено.
  • e Это правило будет исполнено, если предыдущее был выполнено, но завершилось с ошибками.
  • h Команде передается заголовок сообщения.
  • b Команде передается тело сообщения.
  • f Команда интерпретируется как фильтр.
  • c Создать копию cc сообщения. При применении этого правила предполагается, что сообщение доставляется с этим флагом и после его доставки дальнейшие правила можно применять к копии сообщения.
  • w Ждать окончания исполнения команды для получения результата.
  • W Так же как и предыдущая опция, но в случае ошибки не выдавать ни каких сообщений.
  • i Игнорировать возможные опечатки.
  • r Пишет сообщение таким, как оно есть. Проверка на окончание пустой строкой не выполняется.

По умолчанию, условие применяется к заголовку сообщения и нечувствительно к регистру.

После :0 и возможных опций может следовать второе :. это указывает на то, что файл назначения, куда должно быть записано сообщение, должен быть блокирован во избежание ситуации, когда два процесса одновременно пишут в один файл. Можно указать файл, который будет использован в качестве блокирующего.

Далее идут условия, по одному в строке, и перед каждым ставится символ *. Условия обычно записываются в виде регулярных выражений для того, чтобы определить последовательность символов в заголовке или теле сообщения. Символы регулярок:

  • ^ Начало строки.
  • $ Конец строки.
  • . Любой символ, за исключением символа возврата каретки.
  • * Ноль или более раз.
  • + Один или более раз.
  • ? Ноль или более раз.
  • [a-z] Диапазон символов, в этом случае от a до z.
  • [^a-z] Любой символ вне диапазона от a до z.
  • a|b Или ‘a’ или ‘b’

После условий идет одна команда. Если первый символ команды является одним из приведенных ниже, то предполагается особое поведение:

  • ! Сообщение перенаправляется на все указанные почтовые адреса.
  • | Если после этого символа следует исполняемый файл, то он исполняется всякий раз, когда выполняется условие. Если после этого символа ничего не стоит, то весь текст сообщения отправляется на стандартный вывод. Если за | следует переменная, то результат указанной команды сохраняется в эту переменную.

Доступ к моему почтовому ящику gmail через php-код

Как я могу получить доступ к моей учетной записи gmail через мой php-код? Мне нужно получить тему и адрес из моей учетной записи gmail. И тогда мне нужно отметить доступ как прочитанный в gmail Должен ли я использовать gmail pop3 clint? — это любая инфраструктура, которую я могу использовать для доступа к gmail pop3 сервер.

Я бы просто использовал PHP imap-функции и сделал что-то вроде этого:

Это соединение с imap.googlemail.com(googlemail imap server), устанавливает $subject для темы первого сообщения и $from на адрес от первого сообщения. Затем он отмечает это сообщение как прочитанное. (Он не проверен, но он должен работать: S)

Это работает для меня.

Вы можете использовать IMAP из PHP.

Еще один приятный пример IMAP доступен в http://davidwalsh.name/gmail-php-imap

Zend Framework имеет API Zend_Mail для чтения почты. Это позволяет легко переключаться между протоколами (POP3, IMAP, Mbox и Maildir). В это время поддерживаются только классы хранения IMAP и Maildir.

Прочитать пример сообщений из документов Zend Framework:

Посмотрите другие вопросы по меткам php email pop3 gmail или Задайте вопрос

Authenticate via POP3 using vPopMail

I’m working on installing vPopMail on CentOS for use with a Qmail / Courier-IMAP mail-server setup. So far, everything is working out well enough. Mail sent to any virtual user I have setup under any virtual domain (assuming MX records are pointed correctly in the domain DNS) I add to vPopMail is routed correctly to the vPopMail ./Maildir/ and is viewable in /home/vpopmail/domains/domain-example.com/user.name/Maildir/new.

The problem I’m having now is telling the pop service to authenticate using vPopMail instead of the

Qmail / Courier-IMAP authentication method(s).

«You also need to modify your pop server startup line to use the vchkpw program for authentication.» (found at http://www.inter7.com/vpopmail/vpopmail.html) is all I can find in any documentation to even give me the clue that that needs to be done.

So, the question:

How do I tell my pop server to authenticate with vPopMail?

Thanks so much in advance! :)

(Feel free to let me know what (if) more info is needed to answer my question..)

Илон Маск рекомендует:  Видео о доменах, регистраторах
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL
tcprules smtp.cdb smtp.tmp

Restarting qmail:
* Stopping qmail-smtpd.
* Sending qmail-send SIGTERM and restarting.
* Sending qmail-pop3d SIGTERM and restarting.
* Restarting qmail-smtpd.

#User qscand
User clamav

#DatabaseOwner qscand
DatabaseOwner clamav

Изменяем пользователя от которого запускаются сервисы:

exec spamd -x -u clamav -H /tmp -s /dev/stderr

Возвращаем права владельцу clamav, если использовали qmail-scanner:

Увидим лог примерно следующего содержания:

@400000004999193b13514254 Limits: Recursion level limit set to 16.
@400000004999193b1358cfec Limits: Files limit set to 10000.
@400000004999193b13604de4 Archive support enabled.
@400000004999193b136f2a94 Algorithmic detection enabled.
@400000004999193b13772d5c Portable Executable support enabled.
@400000004999193b137ebaf4 ELF support enabled.
@400000004999193b1387522c Mail files support enabled.
@400000004999193b138ef734 OLE2 support enabled.
@400000004999193b13919afc PDF support enabled.
@400000004999193b13981724 HTML support enabled.
@400000004999193b139e31a4 Self checking every 1800 seconds.
@400000004999193b13ad029c Set stacksize to 1114112
@4000000049991a9537243024 Socket file removed.
@4000000049991a95373041fc Pid file removed.
@4000000049991a95373d886c — Stopped at Mon Feb 16 10:49:31 2009
@4000000049991a9f16ab46ac ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991aa70b23e3fc ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991aad0655d574 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991aaf1af8da94 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ab131de0f54 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ab40b6a2074 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ab61d06715c ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ab82e20f3cc ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991abb05ef5b14 ERROR: LOCAL: Socket file
var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991abd17c61904 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991abf2b79b12c ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ac203bef624 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ac4161abac4 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ac626298224 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ac83a8c3e3c ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991acb118bd434 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991acd24d4758c ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991acf34c9dcd4 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ad20af146f4 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ad420683de4 ERROR: LOCAL: Socket file
/var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ad631907424 ERROR: LOCAL: Socket file /
var/run/clamav/clamd.sock could not be bound: Permission denied
@4000000049991ad9083a4ce4 Limits: Global size limit set to 104857600 bytes.
@4000000049991ad90841da7c Limits: File size limit set to 26214400 bytes.
@4000000049991ad908496814 Limits: Recursion level limit set to 16.
@4000000049991ad90850f1c4 Limits: Files limit set to 10000.
@4000000049991ad908586bd4 Archive support enabled.
@4000000049991ad9086014c4 Algorithmic detection enabled.
@4000000049991ad90867aa2c Portable Executable support enabled.
@4000000049991ad9086f4764 ELF support enabled.
@4000000049991ad90876dccc Mail files support enabled.
@4000000049991ad9087f1a2c OLE2 support enabled.
@4000000049991ad90886b37c PDF support enabled.
@4000000049991ad9088e9aec HTML support enabled.
@4000000049991ad9088fcf84 Self checking every 1800 seconds.
@4000000049991ad908963c0c Set stacksize to 1114112

Правим (запрещаем прием вложений с расширением .exe):

simscan versions cdb file built. /var/qmail/control/simversions.cdb

Добавим пользователя simscan в группу clamav:

clamav:*:106:simscan

Изменим скрипт запуска службы qmail-smtpd:

Должны получить примерно следующее:

simscan: cdb looking up
simscan: cdb for found clam=yes,spam=yes,trophie=no,spam_hits=17
simscan: pelookup clam = yes
simscan: pelookup spam = yes
simscan: pelookup trophie = no
simscan: trophie = no/0
simscan: pelookup spam_hits = 17
simscan: unimplemented flag spam_hits = 17
simscan: starting: work dir: /var/qmail/simscan/1234791758.108397.12154
simscan: pelookup: called with postmaster@mydomain.com
simscan: pelookup: domain is mail.mydomain.com
simscan: cdb looking up mail.mydomain.com
simscan: pelookup: local part is postmaster
simscan: cdb looking up postmaster@mail.mydomain.com
simscan: pelookup: called with postmaster@mydomain.com
simscan: pelookup: domain is mydomain.com
simscan: cdb looking up mydomain.com
simscan: cdb for mydomain.com found clam=yes,spam=yes,attach=.exe
simscan: pelookup clam = yes
simscan: pelookup spam = yes
simscan: pelookup attach = .exe
simscan: attachment flag attach = .exe
simscan: .exe is attachment number 0
simscan: pelookup: local part is postmaster
simscan: cdb looking up postmaster@mydomain.com
simscan: cdb looking up version attach
simscan: calling clamdscan
simscan: cdb looking up version clamav
simscan: normal clamdscan return code: 0
simscan: calling spamc
simscan: calling /usr/local/bin/spamc spamc -u postmaster@mydomain.com
simscan: cdb looking up version spam
simscan:[12153]:CLEAN (2.90/5.00):0.2986s::(null):
postmaster@mydomain.com: postmaster@mydomain.com
simscan: done, execing qmail-queue
simscan: qmail-queue exited 0
0.006u 0.146s 0:00.37 37.8% 71+814k 0+8io 0pf+0w

Увеличиваем производительность сканирования.

Можно (нужно) применить подобное и при использовании qmail-scanner :)

Создаём виртуальный диск (RAM disk) для simscan:

Добавить в /boot/loader.conf

или пересобрать ядро с опцией:

Загрузим модулем (если нет поддержки в ядре):

3 1 0xc0d83000 97d0 tmpfs.ko

Получим системное сообщение:

kernel: WARNING: TMPFS is considered to be a highly experimental feature in FreeBSD.

Т.е. используем данное решение на свой страх и риск.

Filesystem Size Used Avail Capacity Mounted on
/dev/ad2s1a 496M 160M 296M 35% /
devfs 1.0K 1.0K 0B 100% /dev
/dev/ad2s1e 496M 566K 456M 0% /tmp
/dev/ad2s1f 33G 4.1G 26G 14% /usr
/dev/ad2s1d 1.4G 636M 713M 47% /var
tmpfs 1.1G 4.0K 1.1G 0% /var/qmail/simscan

Монтирум при загрузке:

none /var/qmail/simscan tmpfs rw,mode=2750,u >

И действительно получаем прирост в скорости обработки.

Шаг 20. Установка Courier-IMAP

Установим Courier-IMAP. http://www.courier-mta.org/imap/
Перед началом установки добавим следующие опции:

Далее ставимl courierpassd:


Удалим файл автозапуска в папке /usr/local/etc/rc.d:

и убедимся, что следующей строки нет в /etc/rc.conf:

Далее необходимо для запуска с помощью daemontools создать структуру каталога сервиса courierpasswd.
Я использую /var/qmail/supervise для физического размещения моих директорий с сервисами.

Запустим как сервис:

Создадим imap cert:

Изменим следующее значение:

Будем запускать courier-authdaemond как сервис:

И в конце создадим линк для authdaemond в /service:

Посмотрим работает ли courier-authdaemond:

Удалим скрипты автозапуска созданные при сборке courier в папке /usr/local/etc/rc.d:

Удалим следующие строки в /etc/rc.conf (необходимо чтобы не стартовал дважды.):

Также создадим директорию для courierpassd для запуска оного сервисом:

Создадим линк на courier-imap в /service:

Проверим работу courier-imap:

PLAIN IMAP будем использовать для localhost. IMAP SSL можно разрешить на внешних интефейсах.

Создадим линк на imap-ssl в /service:

Используем модифицированный скрипт qmailctl названный imapctl.

Если запустить imapctl stat, увидим работающие сервисы imap.

/service/courier-authdaemond: up (pid 39026) 1129 seconds
/service/courier-authdaemond/log: up (pid 39027) 1129 seconds
/service/courier-imap: up (pid 42398) 594 seconds
/service/courier-imap/log: up (pid 42399) 594 seconds
/service/courier-passwd: up (pid 36102) 1590 seconds
/service/courier-passwd/log: up (pid 36103) 1591 seconds

Шаг 21. Установка SquirrelMail

SquirrelMail — клиент электронной почты с веб-интерфейсом, написанный на PHP.
Для получения дополнительной информации см. http://www.squirrelmail.org
Чтобы установить squirrelmail из портов, запустите следующую команду:

Squirrelmail будет инсталлирован в /usr/local/www и проинсталирует необходимые модули.
Можете сделать symlink в месторасположение вашей папки с webmail.

Сконфигурируем Squirrelmail
Теперь необходимо сконфигурировать Squirrelmail. Выполните команду для перехода в режим настройки:

Появится меню. Пункт 1 — Organization Preferences. Любые из настроек внутри этого окна являются
необязательными. Когда Вы закончите, нажмите клавишу S, чтобы сохранить, а затем нажмите Ввод
и затем нажмите клавишу R, чтобы вернуться в главное меню.

Перейдём к этапу 2 — Server settings. Введите 1 Domain и нажмите Ввод на клавиатуре.
Вы можете ввести имя сервера или локальный IP или внешний IP, какой вы предпочитаете.
Если ваш почтовый сервер находится позади маршрутизатора / брандмауэра, используйте
локольный IP. Если используете внешний IP, то имя хоста или статический IP будут
работать хорошо. Если вы используете службу DynDNS как dyndns.org, рекомендуется
использовать локальные IP и поместить Qmail сервер после маршрутизатора / брандмауэра.

В соответствии с настройками сервера используйте следующее. Измените XXXX на IP своего
почтового сервера:
1. Domain : x.x.x.x
2. Invert Time : false
3. Sendmail or SMTP : Sendmail

A. Update IMAP Settings : localhost:143 (other)
B. Change Sendmail Config : /var/qmail/bin/sendmail

Нажать Y и потом Enter. Нажать S для сохранения и снова Enter. Нажать Q для выхода из меню.

Зададим владельца для вложений squirrelmail:

Настроим php.ini (если он еще не сущществует):

Тестируем Squirrelmail
Если увидите такую ошибку при просмотре сайта squirrelmail:


Fatal error: Call to undefined function: preg_replace() in /usr/local/www/apache22/data/functions/global.php on line 165

Установите следующий порт:

Чтобы убедится что Squirrelmail работает правильно, необходумо выполнить тест конфигурации. Выполните его, проследовав по следующему адресуl. http://your-squirrelmail-location/src/configtest.php. Замените your-squirrelmail-location на ваш IP или hostname. Он покажет вам что ваш squirrelmail настроен правильно. Если видите такое:

ERROR: Error connecting to SMTP server «localhost:25».Server error: (0) Unknown error: 0

Значит не всё в порядке. Значит нет доступа для приема сообщений на 25 порт. После установки squirrelmail можетеустановит плагин change_pass-2.7-1.4.x Чтобы иметь возможность изменять пароли в squirrelmail.

Шаг 22.Установка QmailAdmin с onchange

Установим qmailadmin с наложением патча onchange

Писать в одну строку:

Настраиваем qmailadmin
Когда мы добавляем новых пользователей через qmailadmin, мы хотим, чтобы борьба со спамом бьла включена по умолчанию. Необходимо изменить:

Наити следующую строку:

Это разрешит при создании аккаунта пользователя средствами qmailadmin включения в ящик пользователя папки обнаружения спама («Spam Detection»)

Теперь перейдя: http://www.domain.xxx/cgi-bin/qmailadmin увидите экран с предложение ввода имени пользователя и пароля:
Можно создавать почтовые ящики для вашего домена. Если надо добавить домен, используйте утилиту

Шаг 23.Установка vQadmin

Приведем к виду:

Создадим пользователя и пароль:

Adding password for user admin


размещено: 2009-02-08,
последнее обновление: 2009-08-19,
автор: Gegemon

Ixtis, 2009-02-09 в 8:13:45

Поддержка suidperl не требуется, когда у тебя qmail-scanner собирается с cwrapper. Не нужно suidperl’а. Когда тем более suidperl потенциальная дыра в безопасности.

Если память не изменяет, то SUID_PERL необходим для SquirrelMail. Критичных дыр в безопасности там не находилось уже давно, однако замечание правильное. Уж лучше какого-нибудь PHP-клиента и спаться будет спокойнее.

SUID_PERL нужен и для vpopmail как минимум.:)
А с замечаниями, обсуждением, предложениями добро пожаловать сюда.

># ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
># ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
плохо! пользуй /etc/mail/mailer.conf это будет правильно

Может лучше не советовать новичкам ставить php4??
>cd /usr/ports/devel/php4-pcre
или это опечатка?
———————-
вы уж меня извините, но exim как-то проще, сам в свое время ковырял qmail все было отлично до тех пор пока объем спама не стал доходить до пятизначных цифр в сутки, переезд на exim исправил положение.
————————
А не страшно пользовать продукт который уже давно не сопровождается, а функционал добавляется сторонними патчами, в которых порой не понятно чего правится

Gegemon, 2009-02-11 в 13:27:38

To abigor: ответил в форуме.

респект автору!
все таки ввел в продакшн седня свой почтарь
сделал на основе qmail-spamcontrol (сильно переписанный мной qmail-smtpd)

спасибо автору за много находок в этой статье. много почерпнул и настроил в плане spamassasin, clamav, courier-imap

З.Ы. лично я считаю кумейл лучшим почтовым сервером на никсах (а может и не только на никсах) за его расширяемость и гибкость в настройке, зе легко понимаемые исходники ;) которые легко модифицировать под себя

cd /usr/ports/mail/vpopmail
# make CONFIGURE_ARGS=»—enable-logging=p —enable-skeleton —enable-onchange-script \
—enable-auth-module=mysql —disable-passwd —enable-clear-passwd —disable-many-domains \
—enable-auth-logging —enable-sql-logging —enable-valias —disable-mysql-limits»
*************
При всём при этом vpopmail собирается почему-то с поддержкой CDB, но не MySQL. Глюк?

To: Jurik47
Зайди в ветку обсуждения. Там решим твою проблему.

To arksu:
Пожалуйста!

JIeXa, 2009-08-12 в 17:20:33

мм. Навороченная система получается. suid bit для vpopmail — а зачем простите?
долгое время пользовался qmail.. Спам, куча проблем безопасности, глюки.. Хотя почтарь вобщем не плохой, но лично у меня не хватает квалификации «дообработать напильником» в нужном объеме.
ЗЫ Статья с кумейлрокс.орг практически полностью.
По мне для новичка вполне хватило бы
qmail+vpopmail(без мускуля)+ucspi

угу.
а qmailrocks.org — c freebsdrocks.net. :)
А сам автор патча не рекомендует ставить по qmailrocks.org.
http://qmail.jms1.net/qmailrocks.shtml
Так что кто у кого я бы не стал голословно заявлять. :)
Да и где кстати там про Simscan.
А уважаемый?

ALex_hha, 2009-08-18 в 23:39:28

Хосподи, та когда ж он наконец то умрет. И нравится же народу заниматься никрофилией

Не умрет. sendmail не умер. И qmail не умрет. и exim не умрет. и postfix не умрет. все работает. просто руки и голова на месте должны быть.


2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов. 2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540 2011-11-20, BlackCat
Разъём на WiFi-карту
Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма 2011-09-14, manefesto
Настройка git+gitosis
Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
вверх
Статистика сайта
Сейчас на сайте находится: 16 чел.
За последние 30 мин было: 86 человек
За сегодня было
9799 показов,
990 уникальных IP