MailServerP8: различия между версиями
Nbr (обсуждение | вклад) Нет описания правки |
Nbr (обсуждение | вклад) |
||
(не показано 30 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
{{stub}} | |||
== Заметки по установке Samba, Postfix, Dovecot на платформе p8 == | |||
Используется [[ActiveDirectory/PostfixDovecot]] и [[ActiveDirectory/DC]] | Используется [[ActiveDirectory/PostfixDovecot]] и [[ActiveDirectory/DC]] | ||
* Устанавливается basealt-server c 4GB RAM/32GB disk в виртуальную машину с доступом в интернет. | * Устанавливается basealt-server c 4GB RAM/32GB disk в виртуальную машину с доступом в интернет. | ||
Строка 14: | Строка 15: | ||
# task_samba_dc оказался уже установленным в результате выбора Samba-server | # task_samba_dc оказался уже установленным в результате выбора Samba-server | ||
== Создание нового домена == | === Создание нового домена === | ||
#Задаем параметры желаемого хоста и домена. | #Задаем параметры желаемого хоста и домена. | ||
<pre> | <pre> | ||
Строка 21: | Строка 22: | ||
domainname school.alt | domainname school.alt | ||
</pre>. После этого перезагружаемся. | </pre>. После этого перезагружаемся. | ||
# производим создание домена | # производим создание домена | ||
samba-tool domain provision --realm=school.alt --domain school --adminpass='Pa$$word' --dns-backend=SAMBA_INTERNAL --server-role=dc --use-rfc2307 --use-xattrs=yes | samba-tool domain provision --realm=school.alt --domain school --adminpass='Pa$$word' --dns-backend=SAMBA_INTERNAL --server-role=dc --use-rfc2307 --use-xattrs=yes | ||
# добавление samba в автостарт — без особенностей. | |||
{{Attention|В /etc/net/ifaces/<ваш ethernet/resolv.conf | |||
надо записать | |||
<pre> | |||
nameserver 127.0.0.1 | |||
search school.alt | |||
</pre> и сделать service networking restart | |||
}} | |||
=== Проверка домена === | |||
Проверки прошли правильно. | |||
=== Создание пользователя === | |||
samba-tool user add ivanov --given-name='Иван Иванов' --mail-address='ivanov@school.alt' | |||
При задании пароля требуется, чтобы он был не короче 7 символов и содержал строчные, прописные буквы и спецсимволы. | |||
Примечание: запись о компьютере создается либо во время входа компьютера в домен, либо может быть задана заранее средствами управления доменами Windows. | |||
=== Проверка ldap === | |||
Cначала устанавливаю openldap и openldap-clients. | |||
Результат: | |||
<pre> ldapsearch -LLL -b '' -s base -x | |||
dn: | |||
configurationNamingContext: CN=Configuration,DC=school,DC=alt | |||
defaultNamingContext: DC=school,DC=alt | |||
rootDomainNamingContext: DC=school,DC=alt | |||
schemaNamingContext: CN=Schema,CN=Configuration,DC=school,DC=alt | |||
subschemaSubentry: CN=Aggregate,CN=Schema,CN=Configuration,DC=school,DC=alt | |||
supportedCapabilities: 1.2.840.113556.1.4.800 | |||
supportedCapabilities: 1.2.840.113556.1.4.1670 | |||
supportedCapabilities: 1.2.840.113556.1.4.1791 | |||
supportedCapabilities: 1.2.840.113556.1.4.1935 | |||
supportedCapabilities: 1.2.840.113556.1.4.2080 | |||
supportedLDAPVersion: 2 | |||
supportedLDAPVersion: 3 | |||
vendorName: Samba Team (http://samba.org) | |||
isSynchronized: TRUE | |||
dsServiceName: CN=NTDS Settings,CN=DC,CN=Servers,CN=Default-First-Site-Name,CN | |||
=Sites,CN=Configuration,DC=school,DC=alt | |||
serverName: CN=DC,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configurat | |||
ion,DC=school,DC=alt | |||
dnsHostName: dc.school.alt | |||
ldapServiceName: school.alt:dc$@SCHOOL.ALT | |||
currentTime: 20160615162522.0Z | |||
supportedControl: 1.2.840.113556.1.4.841 | |||
supportedControl: 1.2.840.113556.1.4.319 | |||
supportedControl: 1.2.840.113556.1.4.473 | |||
supportedControl: 1.2.840.113556.1.4.1504 | |||
supportedControl: 1.2.840.113556.1.4.801 | |||
supportedControl: 1.2.840.113556.1.4.801 | |||
supportedControl: 1.2.840.113556.1.4.805 | |||
supportedControl: 1.2.840.113556.1.4.1338 | |||
supportedControl: 1.2.840.113556.1.4.529 | |||
supportedControl: 1.2.840.113556.1.4.417 | |||
supportedControl: 1.2.840.113556.1.4.2064 | |||
supportedControl: 1.2.840.113556.1.4.1413 | |||
supportedControl: 1.2.840.113556.1.4.1413 | |||
supportedControl: 1.2.840.113556.1.4.1413 | |||
supportedControl: 1.2.840.113556.1.4.1413 | |||
supportedControl: 1.2.840.113556.1.4.1413 | |||
supportedControl: 1.2.840.113556.1.4.1339 | |||
supportedControl: 1.2.840.113556.1.4.1340 | |||
supportedControl: 1.2.840.113556.1.4.1413 | |||
supportedControl: 1.2.840.113556.1.4.1341 | |||
namingContexts: DC=school,DC=alt | |||
namingContexts: CN=Configuration,DC=school,DC=alt | |||
namingContexts: CN=Schema,CN=Configuration,DC=school,DC=alt | |||
namingContexts: DC=DomainDnsZones,DC=school,DC=alt | |||
namingContexts: DC=ForestDnsZones,DC=school,DC=alt | |||
supportedSASLMechanisms: GSS-SPNEGO | |||
supportedSASLMechanisms: GSSAPI | |||
supportedSASLMechanisms: NTLM | |||
highestCommittedUSN: 3773 | |||
domainFunctionality: 4 | |||
forestFunctionality: 4 | |||
domainControllerFunctionality: 4 | |||
isGlobalCatalogReady: TRUE | |||
</pre> | |||
== Установка и настройка почтовой системы == | |||
Устанавливаем Postfix и Dovecot по образцу [[ActiveDirectory/PostfixDovecot]] | |||
=== Создание пользователя в Active Directory === | |||
samba-tool user add -W Users vmail | |||
пароль ввести и запомнить. | |||
samba-tool user setexpiry vmail --noexpiry | |||
=== Увеличение системных лимитов === | |||
Системные ограничения предустановлены для ситуации по умолчанию, желательно их расширить созданием файла | |||
{{path|/etc/security/limits.d/55-mailserver.conf}} | |||
c содержимым | |||
* soft nproc 4096 | |||
* soft nofile 4096 | |||
(увеличить количество процессов и количество открытых файлов для процесса). | |||
После этого желательно перезапустить систему. | |||
=== Настройка Postfix === | |||
Тестовое окружение: локальная сеть маршрутизируема из интернет (нет NAT), | |||
сервер должен принимать как почту из интернета, так и сообщения, отправляемые авторизованными пользователями | |||
или из локальной сети. | |||
==== Установка (установка postfix-ldap была необходима) ==== | |||
в каталоге /etc/postfix | |||
* main.cf (файл, определяющий основное поведение почты). | |||
<source lang="ini"> | |||
# Global Postfix configuration file. This file lists only a small subset | |||
# of all parameters. For the syntax, and for a complete parameter list, | |||
# see the postconf(5) manual page. For a commented and more complete | |||
# version of this file see /etc/postfix/main.cf.dist | |||
# use standard delivery mechanism with filtering options for mailbox delivery | |||
# it is NOT for domain delivery | |||
mailbox_command = /usr/bin/procmail -a $DOMAIN -d $LOGNAME | |||
# use only ipv4 | |||
inet_protocols = ipv4 | |||
# Mappings | |||
# this is the domain we want to accept mail for | |||
virtual_mailbox_domains = school.alt | |||
# in this file we will check for domain users | |||
virtual_mailbox_maps = ldap:/etc/postfix/ad_local_recipients.cf | |||
# this file will route aliases/mail groups to real recipients | |||
virtual_alias_maps = ldap:/etc/postfix/ad_mail_groups.cf | |||
# mail for virtual domain will be delivered by dovecot imap4 server | |||
virtual_transport = dovecot | |||
# SSL/TLS | |||
smtpd_sasl_auth_enable = yes | |||
smtpd_sasl_local_domain = school.alt | |||
smtpd_sasl_path = private/auth | |||
# postfix will use dovecot for ldap calls about authentication of users | |||
# via SASL | |||
smtpd_sasl_type = dovecot | |||
# mail senders (who use SMTP protocol) will be handled according to the | |||
# following file | |||
smtpd_sender_login_maps = ldap:/etc/postfix/ad_sender_login.cf | |||
#! we should allow 25 untrusted connections on SMTP port here - from internet | |||
#smtpd_tls_auth_only = yes | |||
smtpd_tls_auth_only = no | |||
# use postfix internal certs for authentication (?!) | |||
smtpd_tls_CAfile = /var/lib/ssl/certs/postfix.pem | |||
smtpd_tls_cert_file = /var/lib/ssl/certs/postfix.cert | |||
smtpd_tls_key_file = /var/lib/ssl/private/postfix.key | |||
smtpd_tls_security_level = encrypt | |||
smtpd_use_tls = yes | |||
</source> | |||
* В файле /etc/postfix/master.cf надо будет добавить строки | |||
<pre> | |||
smtp inet n - - - - smtpd | |||
</pre> | |||
- транспорт для входящей почты по протоколу SMTP | |||
<pre> | |||
dovecot unix - n n - - pipe | |||
flags=DRhu user=mail:mail argv=/usr/libexec/dovecot/deliver -d ${recipient} | |||
</pre> | |||
- транспорт для доставки почты в dovecot imap4 | |||
<pre> | |||
smtps inet n - n - - smtpd | |||
-o smtpd_tls_wrappermode=yes | |||
-o smtpd_sasl_auth_enable=yes | |||
-o smtpd_client_restrictions=permit_sasl_authenticated,reject | |||
</pre> | |||
- транспорт для защищенного соединения для получения исходящей почты от "своих" клиентов. | |||
* {{path|/etc/postfix/ad_local_recipients.cf}} | |||
В этом файле происходит запрос к Ldap через порт глобального каталога. sAMAccountType=805306368 означает нормальных пользователей. | |||
<pre> | |||
version = 3 | |||
server_host = ldap://school.alt:3268 | |||
bind_dn = cn=vmail,cn=users,dc=test,dc=alt | |||
bind_pw = Pa$$word | |||
search_base = dc=school,dc=alt | |||
search_scope = subtree | |||
query_filter = (&(|(mail=%s)(otherMailbox=%u@%d))(sAMAccountType=805306368)) | |||
result_attribute = mail | |||
cache = no | |||
</pre> | |||
Bind_pw | |||
[[Категория: Почта]] | [[Категория: Почта]] | ||
[[Категория: ActiveDirectory | [[Категория: ActiveDirectory] |
Текущая версия от 14:27, 17 июня 2016
Заметки по установке Samba, Postfix, Dovecot на платформе p8
Используется ActiveDirectory/PostfixDovecot и ActiveDirectory/DC
- Устанавливается basealt-server c 4GB RAM/32GB disk в виртуальную машину с доступом в интернет.
- Выбирается Office Server (нужно много места под файлы почты в var).
- В приложениях выбираем
- Сервер LAMP
- Cервер PostgresSQL
- Samba-сервер
- Почтовый сервер
- Имя компьютера - host15
По ActiveDirectory/DC по пунктам с комментариями:
- Могут быть выданы безобидные сообщения об ошибках
- task_samba_dc оказался уже установленным в результате выбора Samba-server
Создание нового домена
- Задаем параметры желаемого хоста и домена.
HOSTNAME=dc.school.alt в /etc/sysconfig/network hostname dc.school.alt domainname school.alt
. После этого перезагружаемся.
- производим создание домена
samba-tool domain provision --realm=school.alt --domain school --adminpass='Pa$$word' --dns-backend=SAMBA_INTERNAL --server-role=dc --use-rfc2307 --use-xattrs=yes
- добавление samba в автостарт — без особенностей.
надо записать
nameserver 127.0.0.1 search school.altи сделать service networking restart
Проверка домена
Проверки прошли правильно.
Создание пользователя
samba-tool user add ivanov --given-name='Иван Иванов' --mail-address='ivanov@school.alt'
При задании пароля требуется, чтобы он был не короче 7 символов и содержал строчные, прописные буквы и спецсимволы. Примечание: запись о компьютере создается либо во время входа компьютера в домен, либо может быть задана заранее средствами управления доменами Windows.
Проверка ldap
Cначала устанавливаю openldap и openldap-clients. Результат:
ldapsearch -LLL -b '' -s base -x dn: configurationNamingContext: CN=Configuration,DC=school,DC=alt defaultNamingContext: DC=school,DC=alt rootDomainNamingContext: DC=school,DC=alt schemaNamingContext: CN=Schema,CN=Configuration,DC=school,DC=alt subschemaSubentry: CN=Aggregate,CN=Schema,CN=Configuration,DC=school,DC=alt supportedCapabilities: 1.2.840.113556.1.4.800 supportedCapabilities: 1.2.840.113556.1.4.1670 supportedCapabilities: 1.2.840.113556.1.4.1791 supportedCapabilities: 1.2.840.113556.1.4.1935 supportedCapabilities: 1.2.840.113556.1.4.2080 supportedLDAPVersion: 2 supportedLDAPVersion: 3 vendorName: Samba Team (http://samba.org) isSynchronized: TRUE dsServiceName: CN=NTDS Settings,CN=DC,CN=Servers,CN=Default-First-Site-Name,CN =Sites,CN=Configuration,DC=school,DC=alt serverName: CN=DC,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configurat ion,DC=school,DC=alt dnsHostName: dc.school.alt ldapServiceName: school.alt:dc$@SCHOOL.ALT currentTime: 20160615162522.0Z supportedControl: 1.2.840.113556.1.4.841 supportedControl: 1.2.840.113556.1.4.319 supportedControl: 1.2.840.113556.1.4.473 supportedControl: 1.2.840.113556.1.4.1504 supportedControl: 1.2.840.113556.1.4.801 supportedControl: 1.2.840.113556.1.4.801 supportedControl: 1.2.840.113556.1.4.805 supportedControl: 1.2.840.113556.1.4.1338 supportedControl: 1.2.840.113556.1.4.529 supportedControl: 1.2.840.113556.1.4.417 supportedControl: 1.2.840.113556.1.4.2064 supportedControl: 1.2.840.113556.1.4.1413 supportedControl: 1.2.840.113556.1.4.1413 supportedControl: 1.2.840.113556.1.4.1413 supportedControl: 1.2.840.113556.1.4.1413 supportedControl: 1.2.840.113556.1.4.1413 supportedControl: 1.2.840.113556.1.4.1339 supportedControl: 1.2.840.113556.1.4.1340 supportedControl: 1.2.840.113556.1.4.1413 supportedControl: 1.2.840.113556.1.4.1341 namingContexts: DC=school,DC=alt namingContexts: CN=Configuration,DC=school,DC=alt namingContexts: CN=Schema,CN=Configuration,DC=school,DC=alt namingContexts: DC=DomainDnsZones,DC=school,DC=alt namingContexts: DC=ForestDnsZones,DC=school,DC=alt supportedSASLMechanisms: GSS-SPNEGO supportedSASLMechanisms: GSSAPI supportedSASLMechanisms: NTLM highestCommittedUSN: 3773 domainFunctionality: 4 forestFunctionality: 4 domainControllerFunctionality: 4 isGlobalCatalogReady: TRUE
Установка и настройка почтовой системы
Устанавливаем Postfix и Dovecot по образцу ActiveDirectory/PostfixDovecot
Создание пользователя в Active Directory
samba-tool user add -W Users vmail пароль ввести и запомнить. samba-tool user setexpiry vmail --noexpiry
Увеличение системных лимитов
Системные ограничения предустановлены для ситуации по умолчанию, желательно их расширить созданием файла /etc/security/limits.d/55-mailserver.conf c содержимым
* soft nproc 4096 * soft nofile 4096
(увеличить количество процессов и количество открытых файлов для процесса). После этого желательно перезапустить систему.
Настройка Postfix
Тестовое окружение: локальная сеть маршрутизируема из интернет (нет NAT), сервер должен принимать как почту из интернета, так и сообщения, отправляемые авторизованными пользователями или из локальной сети.
Установка (установка postfix-ldap была необходима)
в каталоге /etc/postfix
- main.cf (файл, определяющий основное поведение почты).
# Global Postfix configuration file. This file lists only a small subset
# of all parameters. For the syntax, and for a complete parameter list,
# see the postconf(5) manual page. For a commented and more complete
# version of this file see /etc/postfix/main.cf.dist
# use standard delivery mechanism with filtering options for mailbox delivery
# it is NOT for domain delivery
mailbox_command = /usr/bin/procmail -a $DOMAIN -d $LOGNAME
# use only ipv4
inet_protocols = ipv4
# Mappings
# this is the domain we want to accept mail for
virtual_mailbox_domains = school.alt
# in this file we will check for domain users
virtual_mailbox_maps = ldap:/etc/postfix/ad_local_recipients.cf
# this file will route aliases/mail groups to real recipients
virtual_alias_maps = ldap:/etc/postfix/ad_mail_groups.cf
# mail for virtual domain will be delivered by dovecot imap4 server
virtual_transport = dovecot
# SSL/TLS
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = school.alt
smtpd_sasl_path = private/auth
# postfix will use dovecot for ldap calls about authentication of users
# via SASL
smtpd_sasl_type = dovecot
# mail senders (who use SMTP protocol) will be handled according to the
# following file
smtpd_sender_login_maps = ldap:/etc/postfix/ad_sender_login.cf
#! we should allow 25 untrusted connections on SMTP port here - from internet
#smtpd_tls_auth_only = yes
smtpd_tls_auth_only = no
# use postfix internal certs for authentication (?!)
smtpd_tls_CAfile = /var/lib/ssl/certs/postfix.pem
smtpd_tls_cert_file = /var/lib/ssl/certs/postfix.cert
smtpd_tls_key_file = /var/lib/ssl/private/postfix.key
smtpd_tls_security_level = encrypt
smtpd_use_tls = yes
- В файле /etc/postfix/master.cf надо будет добавить строки
smtp inet n - - - - smtpd
- транспорт для входящей почты по протоколу SMTP
dovecot unix - n n - - pipe flags=DRhu user=mail:mail argv=/usr/libexec/dovecot/deliver -d ${recipient}
- транспорт для доставки почты в dovecot imap4
smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject
- транспорт для защищенного соединения для получения исходящей почты от "своих" клиентов.
* /etc/postfix/ad_local_recipients.cf
В этом файле происходит запрос к Ldap через порт глобального каталога. sAMAccountType=805306368 означает нормальных пользователей.
version = 3 server_host = ldap://school.alt:3268 bind_dn = cn=vmail,cn=users,dc=test,dc=alt bind_pw = Pa$$word search_base = dc=school,dc=alt search_scope = subtree query_filter = (&(|(mail=%s)(otherMailbox=%u@%d))(sAMAccountType=805306368)) result_attribute = mail cache = no
Bind_pw [[Категория: ActiveDirectory]