Программа и методика испытаний¶
Choose a language: RU | EN | ZH
- Содержание
- Программа и методика испытаний
- 1. Основные системные параметры
- 2. Панель управления сервером
- 3. Основные функции почтовой подсистемы
- 4. Основные функции подсистемы адресных книг
- 5. Основные функции подсистемы календарей
Роли, которые может выполнять Почтовый сервер TEGU, и варианты возможных архитектурных решений столь различны, что практически невозможно рассмотреть все. Поэтому настоящий документ является краткой методикой испытания основных функций Почтового сервера TEGU.
В качестве примера используется сервер mail.tegu.online.
1. Основные системные параметры¶
1.1. Какие порты слушает TEGU¶
Выполняется на почтовом сервере TEGU
# netstat -tulpn | grep tegu tcp 0 0 127.0.0.1:8899 0.0.0.0:* LISTEN 87974/tegu tcp6 0 0 :::993 :::* LISTEN 87974/tegu tcp6 0 0 :::465 :::* LISTEN 87974/tegu tcp6 0 0 :::25 :::* LISTEN 87974/tegu tcp6 0 0 :::143 :::* LISTEN 87974/tegu tcp6 0 0 :::8808 :::* LISTEN 87974/tegu tcp6 0 0 :::8809 :::* LISTEN 87974/tegu tcp6 0 0 :::8888 :::* LISTEN 87974/tegu tcp6 0 0 :::9999 :::* LISTEN 87974/tegu
1.2. А какие порты видит клиент на сервере TEGU¶
Выполняется на клиенте
$ nmap mail.tegu.online Starting Nmap 7.93 ( https://nmap.org ) at 2024-02-03 13:16 MSK Nmap scan report for mail.tegu.online (79.137.210.127) Host is up (0.072s latency). Not shown: 995 filtered tcp ports (no-response) PORT STATE SERVICE 25/tcp open smtp 80/tcp closed http 465/tcp open smtps 993/tcp open imaps 9999/tcp open abyss
Сравните с документацией, сделайте вывод. В случае необходимости даже прочтите документацию.
1.3. Проверка DNS зоны¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с административным аккаунтом. Прочтите и проанализируйте содержимое поля "Рекомендации для зоны DNS".
Используйте его для настройки зон собственных доменов.
Вы также можете проверить правильность настройки с помощью различных внешних сервисов (к примеру https://smtp.bz/ )
1.4. Балансировка кластера вычислительных узлов¶
Направьте в сторону Почтового сервера TEGU поток сообщений.
С помощью интегрированного системного лога наблюдайте поочередную обработку потока сообщений вычислительными узлами сервера.
1.5. Отказоустойчивость (резервирование) TEGU¶
Направьте в сторону Почтового сервера TEGU поток сообщений.
Поочередно отключайте вычислительные узлы TEGU, при этом с помощью интегрированного системного лога наблюдайте поочередную обработку потока сообщений теми вычислительными узлами сервера, которые остались в работе.
Сохраняйте управление над кластером TEGU (т.е. доступ к Панели управления) до тех пор, пока работоспособен хотя бы один вычислительный узел.
1.6. Нагрузочное тестирование¶
С помощью специального приложения (к примеру Apache JMeter) создайте заведомо чрезмерный поток запросов к Почтовому серверу TEGU по протоколам SMTPS, IMAPS, CalDAV, CardDAV. С помощью системного лога наблюдайте за поведением сервера. Выбирая архитектурное решение для размещения Apache JMeter, лучше сделать это с собственной локальной сети т.к. пропускная способность внешнего канала связи скорее всего не позволит вам создать действительно достойный трафик.
По поведению сервера судите о достаточности аппаратных ресурсов, выделенных вами для TEGU.
1.7. Тестирование антивирусного и антиспамового ПО¶
Подключите антивирусное и антиспамовое ПО по протоколу Milter.
Направьте в сторону TEGU некоторое количество сообщений.
С помощью интегрированного системного лога анализируйте поведение сервера.
С помощью почтовой программы прочтите отметки антивирусного и антиспамового ПО в заголовках сообщений.
С помощью правил обработки входящих сообщений настройте действия сервера в ответ на сообщения в заголовках писем.
2. Панель управления сервером¶
- Откройте с помощью браузера Панель управления сервером по адресу https://mail.tegu.online:9999 , введите административный логин и пароль.
Результат: Наблюдайте систему меню и элементы управления сервером. Используйте параметры, отображенные на дашборде для подключения пользовательских программ. - Выполните выход из системы управления и войдите с помощью пользовательского аккаунта login: monica@tegu.online pwd: ххххххх .
Результат: Наблюдайте систему меню и элементы управления пользовательским профилем. Используйте параметры, отображенные на дашборде для подключения пользовательских программ.
3. Основные функции почтовой подсистемы¶
3.1. Аутентификация¶
Доступность и аутентификация IMAP¶
Подключение к серверу по протоколу IMAPS удобнее всего проверить с помощью утилиты openssl. Выполните сценарий из примера ниже:
$ openssl s_client -connect mail.tegu.online:993 CONNECTED(00000003) depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1 verify return:1 depth=1 C = US, O = Let's Encrypt, CN = R3 verify return:1 depth=0 CN = mail.tegu.online verify return:1 --- Certificate chain 0 s:CN = mail.tegu.online i:C = US, O = Let's Encrypt, CN = R3 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Dec 28 10:20:52 2023 GMT; NotAfter: Mar 27 10:20:51 2024 GMT 1 s:C = US, O = Let's Encrypt, CN = R3 i:C = US, O = Internet Security Research Group, CN = ISRG Root X1 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Sep 4 00:00:00 2020 GMT; NotAfter: Sep 15 16:00:00 2025 GMT 2 s:C = US, O = Internet Security Research Group, CN = ISRG Root X1 i:O = Digital Signature Trust Co., CN = DST Root CA X3 a:PKEY: rsaEncryption, 4096 (bit); sigalg: RSA-SHA256 v:NotBefore: Jan 20 19:14:03 2021 GMT; NotAfter: Sep 30 18:14:03 2024 GMT --- Server certificate -----BEGIN CERTIFICATE----- MIIE7TCCA9WgAwIBAgISBOK5RG1yE1V4NeDeXdHNY1QqMA0GCSqGSIb3DQEBCwUA MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD EwJSMzAeFw0yMzEyMjgxMDIwNTJaFw0yNDAzMjcxMDIwNTFaMBsxGTAXBgNVBAMT EG1haWwudGVndS5vbmxpbmUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQDG+iMOf4+E5oY3IkYxfjLg+ifgocK6gVT5A94uvfOKCQk7AYE1y5N8Rp5dfCkl lGnB9H2+XRIVMBE3Ey3zCM482h+PJaKEnzB6ygcuK41q8ovGTeLbG2RiqYHRdGxk 9iYS/wdtmWu+vXfQy+YRQzNW4uHYs/tUZ1JYqT6vzXJeGeMKHv6V1hZz5KhLIbgv Fyu0wazy2GR6E3I1YNopv/i2OY1MZ8SVgLor1nYTcCqqTHa+omrBebYNCizJfvdo Rl+9AhbqfQZVH4RRzieMx+M412nSeYkNKhxaPMch0uPD/VMJagfpXhReBBsWul0z s8u43+vm9sqW4X/NpfELR84dAgMBAAGjggISMIICDjAOBgNVHQ8BAf8EBAMCBaAw HQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYD VR0OBBYEFNZALKKtXM0MPYXhTFrVQeeGp/ZVMB8GA1UdIwQYMBaAFBQusxe3WFbL rlAJQOYfr52LFMLGMFUGCCsGAQUFBwEBBEkwRzAhBggrBgEFBQcwAYYVaHR0cDov L3IzLm8ubGVuY3Iub3JnMCIGCCsGAQUFBzAChhZodHRwOi8vcjMuaS5sZW5jci5v cmcvMBsGA1UdEQQUMBKCEG1haWwudGVndS5vbmxpbmUwEwYDVR0gBAwwCjAIBgZn gQwBAgEwggEEBgorBgEEAdZ5AgQCBIH1BIHyAPAAdgA7U3d1Pi25gE6LMFsG/kA7 Z9hPw/THvQANLXJv4frUFwAAAYywJ+FCAAAEAwBHMEUCIQCTj716IucHj+kT6aVG /t2fInv898xRagrDHr1rN4puugIgWKi01xVC/HjY9Ssw+xtsEEmyHaVZiZf965Ui U8Rmg6sAdgDuzdBk1dsazsVct520zROiModGfLzs3sNRSFlGcR+1mwAAAYywJ+Fw AAAEAwBHMEUCIETFIXZ7DyCQdUC2eOFXkkMdtV4cKHvt2LoPtIE1K01HAiEAtHHU p2iAd5Yl0cCm6wGPhW1wzn5XmAJtXGO58cuOyuwwDQYJKoZIhvcNAQELBQADggEB AI0bEM/jhoP/Ks9i2l97YMBSqw7y8rWJ4baX6r5d7Z/W8dFgO6g21+vWWNAPV2Xx Rk5GFmY9DUhBg3P+d94N3r5rnnPgcETWKuWDncqWSGeUaMkYIvvbpkwvLy1I2h7C 9rpioPIqlbbmxyx9tseFSjR1ktnBivFb+V5UIfLI+TFa/FiO26UyjVPky21WFHlu RqdV4JrqjpPJ8yJHc/PzM9TPng9OaFJ4ereJ6s0+FaN4vAGNzy7hU/bxWVGxVoQR B/a4P1gU4oEl4qp/DlVBFhtdaVNn5QSg23FvlQcDLKRMHlCiIzTvCzZ8VARibBoJ 0E12qKPrOp+bD5f922Cu6tM= -----END CERTIFICATE----- subject=CN = mail.tegu.online issuer=C = US, O = Let's Encrypt, CN = R3 --- No client certificate CA names sent Peer signing digest: SHA256 Peer signature type: RSA-PSS Server Temp Key: X25519, 253 bits --- SSL handshake has read 4501 bytes and written 386 bytes Verification: OK --- New, TLSv1.3, Cipher is TLS_AES_128_GCM_SHA256 Server public key is 2048 bit Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated Early data was not sent Verify return code: 0 (ok) --- --- Post-Handshake New Session Ticket arrived: SSL-Session: Protocol : TLSv1.3 Cipher : TLS_AES_128_GCM_SHA256 Session-ID: 30C9C070D27CF79FC9BDB69546EEE3E1A3DF879EBDC4DD545BCD9D115C8291CE Session-ID-ctx: Resumption PSK: C83741A728F647D9BA9D087C8AF978338307A681E8ABCF1890B5A64EDBE67ABB PSK identity: None PSK identity hint: None SRP username: None TLS session ticket lifetime hint: 604800 (seconds) TLS session ticket: 0000 - d0 d1 6a ee e4 17 d7 8f-49 1c c7 45 e6 84 6a e9 ..j.....I..E..j. 0010 - 7f 02 dc 11 ee b9 ae 3e-21 17 20 c4 5b a3 24 ad .......>!. .[.$. 0020 - 83 b1 e9 85 a0 7c a7 b2-e2 31 5f 8f a8 23 51 d4 .....|...1_..#Q. 0030 - 52 11 dc 52 b1 a5 eb 17-b0 37 dd ac ec 90 92 a5 R..R.....7...... 0040 - e6 c2 14 5b 77 7f 56 ba-b1 26 ad e2 ff b2 5f 02 ...[w.V..&...._. 0050 - 1f 29 39 9a b1 9b 48 4f-58 3e 41 42 39 82 46 4c .)9...HOX>AB9.FL 0060 - af a5 37 c8 1c b6 83 44-b8 ..7....D. Start Time: 1706805153 Timeout : 7200 (sec) Verify return code: 0 (ok) Extended master secret: no Max Early Data: 0 --- read R BLOCK * OK [CAPABILITY IMAP4rev1 ID AUTH=LOGIN AUTH=PLAIN] a1 login monica@tegu.online Qwe123Poi * CAPABILITY IMAP4rev1 ID QUOTA NAMESPACE a1 OK Logged in. a2 LIST "" "*" * LIST (\HasNoChildren) "." INBOX * LIST (\HasNoChildren \Sent) "." &BB4EQgQ,BEAEMAQyBDsENQQ9BD0ESwQ1- * LIST (\HasNoChildren \Archive) "." &BBAEQARFBDgEMg- * LIST (\HasNoChildren \Trash) "." &BBoEPgRABDcEOAQ9BDA- * LIST (\HasNoChildren \Junk) "." &BCEEPwQwBDw- * LIST (\HasNoChildren \Drafts) "." &BCcENQRABD0EPgQyBDgEOgQ4- * LIST (\HasNoChildren) "." Sent * LIST (\HasNoChildren) "." Trash * LIST (\HasNoChildren \Recovery) "." __RECOVERY__ * LIST (\HasNoChildren) "." "&BB4EMQRJBDgENQ- &BD8EMAQ,BDoEOA-.&BCAEMARBBEEESwQ7BDoEMA- CNEWS" * LIST (\HasNoChildren) "." "&BB4EMQRJBDgENQ- &BD8EMAQ,BDoEOA-.&BCAEMARBBEEESwQ7BDoEMA- &BBwEOAQ9BEYEOAREBEAESw-" a2 OK LIST completed. a3 EXAMINE INBOX * FLAGS ($Forwarded $has_cal $label1 Junk NonJunk \Answered \Deleted \Draft \Flagged \Seen) * OK [PERMANENTFLAGS ()] Read-only mailbox. * 7 EXISTS * 0 RECENT * OK [UIDVALIDITY 134205729] UIDs valid * OK [UIDNEXT 595] Predicted next UID a3 OK [READ-ONLY] Examine completed a4 LOGOUT * BYE Logging out a4 OK Logout completed. closed
Доступность и аутентификация SMTPS¶
Подключение к серверу по протоколу SMTPS удобнее всего проверить с помощью утилиты openssl.
Но прежде надо выполнить подготовительную функцию, а именно подготовить используемые логин и пароль в формате base64, это потребуется нам во время сессии.
Для этого выполните следующую команду:
$ echo -ne "\0<логин>\0<пароль>" | base64 AG1vbmljYUB0ZWd1Lm9ubGluZQBRd2UxMjNQb2k=
Не забывайте про нулевые байты \0
Теперь выполните сценарий из примера ниже:
$ openssl s_client -starttls smtp -connect mail.tegu.online:25 CONNECTED(00000003) depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1 verify return:1 depth=1 C = US, O = Let's Encrypt, CN = R3 verify return:1 depth=0 CN = mail.tegu.online verify return:1 --- Certificate chain 0 s:CN = mail.tegu.online i:C = US, O = Let's Encrypt, CN = R3 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Dec 28 10:20:52 2023 GMT; NotAfter: Mar 27 10:20:51 2024 GMT 1 s:C = US, O = Let's Encrypt, CN = R3 i:C = US, O = Internet Security Research Group, CN = ISRG Root X1 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Sep 4 00:00:00 2020 GMT; NotAfter: Sep 15 16:00:00 2025 GMT 2 s:C = US, O = Internet Security Research Group, CN = ISRG Root X1 i:O = Digital Signature Trust Co., CN = DST Root CA X3 a:PKEY: rsaEncryption, 4096 (bit); sigalg: RSA-SHA256 v:NotBefore: Jan 20 19:14:03 2021 GMT; NotAfter: Sep 30 18:14:03 2024 GMT --- Server certificate -----BEGIN CERTIFICATE----- MIIE7TCCA9WgAwIBAgISBOK5RG1yE1V4NeDeXdHNY1QqMA0GCSqGSIb3DQEBCwUA MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD EwJSMzAeFw0yMzEyMjgxMDIwNTJaFw0yNDAzMjcxMDIwNTFaMBsxGTAXBgNVBAMT EG1haWwudGVndS5vbmxpbmUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQDG+iMOf4+E5oY3IkYxfjLg+ifgocK6gVT5A94uvfOKCQk7AYE1y5N8Rp5dfCkl lGnB9H2+XRIVMBE3Ey3zCM482h+PJaKEnzB6ygcuK41q8ovGTeLbG2RiqYHRdGxk 9iYS/wdtmWu+vXfQy+YRQzNW4uHYs/tUZ1JYqT6vzXJeGeMKHv6V1hZz5KhLIbgv Fyu0wazy2GR6E3I1YNopv/i2OY1MZ8SVgLor1nYTcCqqTHa+omrBebYNCizJfvdo Rl+9AhbqfQZVH4RRzieMx+M412nSeYkNKhxaPMch0uPD/VMJagfpXhReBBsWul0z s8u43+vm9sqW4X/NpfELR84dAgMBAAGjggISMIICDjAOBgNVHQ8BAf8EBAMCBaAw HQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYD VR0OBBYEFNZALKKtXM0MPYXhTFrVQeeGp/ZVMB8GA1UdIwQYMBaAFBQusxe3WFbL rlAJQOYfr52LFMLGMFUGCCsGAQUFBwEBBEkwRzAhBggrBgEFBQcwAYYVaHR0cDov L3IzLm8ubGVuY3Iub3JnMCIGCCsGAQUFBzAChhZodHRwOi8vcjMuaS5sZW5jci5v cmcvMBsGA1UdEQQUMBKCEG1haWwudGVndS5vbmxpbmUwEwYDVR0gBAwwCjAIBgZn gQwBAgEwggEEBgorBgEEAdZ5AgQCBIH1BIHyAPAAdgA7U3d1Pi25gE6LMFsG/kA7 Z9hPw/THvQANLXJv4frUFwAAAYywJ+FCAAAEAwBHMEUCIQCTj716IucHj+kT6aVG /t2fInv898xRagrDHr1rN4puugIgWKi01xVC/HjY9Ssw+xtsEEmyHaVZiZf965Ui U8Rmg6sAdgDuzdBk1dsazsVct520zROiModGfLzs3sNRSFlGcR+1mwAAAYywJ+Fw AAAEAwBHMEUCIETFIXZ7DyCQdUC2eOFXkkMdtV4cKHvt2LoPtIE1K01HAiEAtHHU p2iAd5Yl0cCm6wGPhW1wzn5XmAJtXGO58cuOyuwwDQYJKoZIhvcNAQELBQADggEB AI0bEM/jhoP/Ks9i2l97YMBSqw7y8rWJ4baX6r5d7Z/W8dFgO6g21+vWWNAPV2Xx Rk5GFmY9DUhBg3P+d94N3r5rnnPgcETWKuWDncqWSGeUaMkYIvvbpkwvLy1I2h7C 9rpioPIqlbbmxyx9tseFSjR1ktnBivFb+V5UIfLI+TFa/FiO26UyjVPky21WFHlu RqdV4JrqjpPJ8yJHc/PzM9TPng9OaFJ4ereJ6s0+FaN4vAGNzy7hU/bxWVGxVoQR B/a4P1gU4oEl4qp/DlVBFhtdaVNn5QSg23FvlQcDLKRMHlCiIzTvCzZ8VARibBoJ 0E12qKPrOp+bD5f922Cu6tM= -----END CERTIFICATE----- subject=CN = mail.tegu.online issuer=C = US, O = Let's Encrypt, CN = R3 --- No client certificate CA names sent Peer signing digest: SHA256 Peer signature type: RSA-PSS Server Temp Key: X25519, 253 bits --- SSL handshake has read 4652 bytes and written 419 bytes Verification: OK --- New, TLSv1.3, Cipher is TLS_AES_128_GCM_SHA256 Server public key is 2048 bit Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated Early data was not sent Verify return code: 0 (ok) --- 250 SMTPUTF8 --- Post-Handshake New Session Ticket arrived: SSL-Session: Protocol : TLSv1.3 Cipher : TLS_AES_128_GCM_SHA256 Session-ID: F59FCCB0C1F2F9DFE58466407DB5F32B1A72391E6AB778041F35AB33E0AA742A Session-ID-ctx: Resumption PSK: 743B7B4FCF747DC6731831B667728172A792097BCC29345EDC3205E9D748301F PSK identity: None PSK identity hint: None SRP username: None TLS session ticket lifetime hint: 604800 (seconds) TLS session ticket: 0000 - d3 42 10 43 6f 8f 5e eb-1f 0e 52 dc d4 39 42 5e .B.Co.^...R..9B^ 0010 - ad 11 1e d8 41 18 b6 0a-10 99 1b 01 ae e3 3f 7c ....A.........?| 0020 - da 94 f6 90 89 d2 94 3b-00 33 46 48 c4 c5 85 81 .......;.3FH.... 0030 - a5 4b 09 67 ab 7b 09 c2-72 20 9b 2a 0f 8a 47 09 .K.g.{..r .*..G. 0040 - e5 29 07 03 a9 51 62 72-cd 00 cf 16 16 30 dc e2 .)...Qbr.....0.. 0050 - e9 13 1a ea e5 c6 eb ff-27 16 fb 15 f2 40 bc 0e ........'....@.. 0060 - 43 9c 39 64 9a 71 fc 7d-e2 C.9d.q.}. Start Time: 1706954445 Timeout : 7200 (sec) Verify return code: 0 (ok) Extended master secret: no Max Early Data: 0 --- read R BLOCK
Необходимо выполнить команду EHLO
EHLO tegu.online 250-mail.tegu.online 250-8BITMIME 250-SIZE 36700160 250-AUTH PLAIN LOGIN 250-PIPELINING 250 SMTPUTF8
Выбираем метод PLAIN
AUTH PLAIN 334
Нам предлагают ввести логин и пароль в формате base64. Эту комбинацию мы подготовили ранее. Вводим:
AG1vbmljYUB0ZWd1Lm9ubGluZQBRd2UxMjNQb2k= 235 Authentication successful
Аутентификация успешна.Теперь можно продолжить обычную сессию SMTP.
MAIL FROM: monica@tegu.online 250 OK ....
Подключение почтовой программы¶
Настройте почтовую программу согласно рекомендациям на дашборде Панели управления Почтового сервера TEGU. Если вы правильно настроили ресурсные записи доменной зоны, то все ресурсы CalDAV и CardDAV должны подключиться автоматически. Если нет, проверьте правильность настройки доменной зоны согласно "Рекомендации для зоны DNS", приведенной на дашборде Панели управления (в аккаунте admin).
Результат: В почтовой программе создана учетная запись, в почтовом интерфейсе отображаются базовые папки IMAP (Входящие, Отправленный и др.).
3.2. Создание почтовых ящиков¶
Почтовые ящики в почтовом сервере создаются автоматически при первой аутентификации пользователя. Таким образом, для создания почтового ящика необходимо, чтобы на сервере каталогов было разрешено его использование (поле email заполнено значением с именем почтового адреса). Фактическое создание почтового ящика вы можете контролировать в диалоге Панель управления сервером https://mail.tegu.online:9999/ "Хранилище почты / Панель управления / Почтовые ящики".
Тестирование локальной доставки сообщений¶
Создайте и отправьте email-сообщение локальному пользователю из вашей доменной зоны. К примеру: MAIL FROM: monica@tegu.online, RCPT TO: klava@tegu.online.
Отследите доставку сообщения в логе почтового сервера с помощью команды: journalctl -f -u tegu (при этом не забудьте проверить, что в конфигурации включено логирование: [Log] debug =true). С помощью почтовой программы наблюдайте доставку сообщений в обе стороны.
Тестирование внешней доставки сообщений¶
Создайте и отправьте email-сообщение внешнему адресату. К примеру: MAIL FROM: monica@tegu.online, RCPT TO: ikalmetov@mbk-lab.ru. В логе и в почтовой программе наблюдайте обмен сообщениями с внешними адресатами.
Управление сообщениями¶
Создайте дополнительную IMAP-папку и методом перетаскивания (Drag’n’Drop) переместите одно или несколько сообщений из одной папки в другую. Наблюдайте адекватную реакцию почтовой программы. Используйте метод для дальнейшей ручной сортировки своих сообщений.
Групповое управление сообщениями¶
Пользовательский уровень¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с пользовательским аккаунтом. В разделе "Общие папки" добавьте папку, присвойте ей имя на русском или английском языке (например: Общая папка Моники). С помощью кнопки "Редактировать доступ" добавьте доступ для пользователей или групп пользователей.
Для добавления доступа пользователям, введите email-адреса этих пользоваталей, для добавления групп используете выбор из списка доступных вам групп.
Помните, что папки поддерживают иерархию, таким образом, можно создать любое количество папок верхнего уровня, так и подпапок, находящихся внутри. При этом доступы не наследуются, для каждой из папок задается собственный уровень доступа.
К примеру мы добавили доступ для пользователя: klava@tegu.online.
Откройте почтовую программу с аккаунтом monica@tegu.online и обновите список папок IMAP. Наблюдайте появление папки "Общая папка Моники" в контейнере "Общие папки".
Теперь перейдите в почтовую программу с аккаунтом klava@tegu.online и обновите список папок IMAP. Наблюдайте появление папки "Общая папка Моники" в контейнере "Общие папки".
Таким образом, эти два пользователя разделяют общую папку, созданную пользователем monica@tegu.online.
Используйте общую папку для ручной сортировки, а также для написания автоматических правил сортировки на стороне сервера.
Уровень администратора¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора. В разделе "Общие папки" добавьте папку, присвойте ей имя на русском или английском языке (например: Общая системная папка). С помощью кнопки "Редактировать доступ" добавьте доступ для пользователей или групп пользователей.
К примеру мы добавили доступ для пользователя: klava@tegu.online и monica@tegu.online.
Помните, что папки поддерживают иерархию, таким образом, можно создать любое количество папок верхнего уровня, так и подпапок, находящихся внутри. При этом доступы не наследуются, для каждой из папок задается собственный уровень доступа.
Откройте почтовую программу и обновите список папок IMAP. Наблюдайте появление папки "Общая системная папка" в контейнере "Общие папки". Обратите внимание, что системная папка управляется администратором и не исчезает при удалении пользовательского аккаунта.
Используйте общие системные папки для ручной сортировки, а также для написания автоматических правил сортировки на стороне сервера.
3.3. Маршрутизация сообщений¶
В силу большой вариативности данный пункт испытаний предполагает проведение большого числа различных экспериментов с не столько с целью тестирования, сколько с целью ознакомления с различными механизмами маршрутизации.
Маршрутизация входящих сообщений на стороне сервера¶
Обработка выполняется на этапе очереди.
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора. В разделе "Маршрутизация / Входящих писем" для выбранного домена добавьте правило. Заполните поля "Название правила", условия выборки и действия.В поле "Условия" выберите один из следующих критериев:
- Дата
- Кому
- От кого
- Тема
- Получатель копии
- Размер
- Количество очков спама
- Тело письма
- Все письма
При необходимости добавьте необходимое количество условий. Обратите внимание на логический ключ "и" "или" при обработке нескольких условий.
- Положить в паку
- Копировать в папку
- Отметить как прочтенное
- Отметить флагом
- Перенаправить на
- Отправить копию на
- Ответить сообщением
- Отклонить
- Остановить обработку правил
Обратите внимание, что при выборе действия "Остановить обработку правил" все последующие действия, а также пользовательские правила для данной выборки не будут выполняться.
Направьте необходимое количество входящих писем в почтовый ящик пользователя таким образом, чтобы проверить каждое из условий и действий.
Маршрутизация исходящих сообщений на стороне сервера¶
Обработка выполняется на этапе очереди.
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора. В разделе "Маршрутизация / Исходящих писем" для выбранного домена добавьте правило. Заполните поля "Название правила", условия выборки и действия.В поле "Условия" выберите один из следующих критериев:
- Кому
- От кого
- Тема
- Тело письма
- Группа отправителя
- Группа получателя
- Все письма
При необходимости добавьте необходимое количество условий. Обратите внимание на логический ключ "и" "или" при обработке нескольких условий.
- Преобразовать адрес отправителя
- Преобразовать адрес получателя
- Добавить копию сообщения
- Отправить на премодерацию
- Отправить через смарт-хост
- Запретить доставку внешним пользователям
- Запретить доставку больше N писем внешним пользователям в день
- Запретить доставку больше N писем внутренним пользователям в день
- Запретить доставку группе
- Запретить доставку участникам группы
- Запретить доставку
- Разрешить доставку внешним пользователям
- Разрешить доставку группе
- Разрешить доставку участникам группы
- Разрешить доставку
- Уведомление отправителя об ограничении
Направьте необходимое количество входящих писем в почтовый ящик пользователя таким образом, чтобы проверить каждое из условий и действий.
Изменение адресов на стороне сервера¶
Преобразование производится на этапе SMTP-сессии.
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора. В разделе "Маршрутизация / Изменение адресов" добавьте правило. Заполните поля "Название правила", условия выборки и действия.В поле "Условия" выберите один из следующих критериев:
- Кому
- От кого
- Группа отправителя
- Группа получателя
- Все письма
При необходимости добавьте необходимое количество условий. Обратите внимание на логический ключ "и" "или" при обработке нескольких условий.
- Преобразовать адрес отправителя
- Преобразовать адрес получателя
На практике это означает:
- Операнд * - любое количество символов, которое при преобразовании остается неизменным;
- Операнд () - любое количество символов, которое будет заменено на фразу, стоящую после =>
Для тестирования любым удобным способом направьте серверу письмо, адресованное в домен, который он не обслуживает.
К примеру сервер TEGU настроен на обслуживание домена tegu.online.
Направляем ему письмо, адресованное monica@example.com, но при этом создаем правило: *@(example.com) => tegu.online
Сервер не должен принять письмо для monica@example.com т.к. не обслуживает домен example.com, однако на этапе SMTP-сессии (после команды data), прочтя заголовок сервер TEGU применяет правило преобразования адресов, в результате чего monica@example.com преобразуется в monica@tegu.online, такой пользователь в разрешенном домене на TEGU есть, следовательно, сервер принимает и доставляет письмо.
3.4. Разрешения и блокировки¶
Система защиты авторизации¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора.
Включите опцию "Основные настройки / Включить систему защиты авторизации (бан)".
Установите в поле "Основные настройки / Макс. количество провалов авторизации до бана" значение = 3.
Намеренно измените пароль тестируемого пользователя на неправильный.
Попробуйте выполнить авторизацию несколько раз.
После третье провальной попытки сервер заблокирует IP-адрес данного клиента.
Наблюдайте уведомление об этом в логе, вы также можете контролировать список таких адресов в опции "Заблокированные IP".
Вы можете вручную удалить IP адрес из блокировок.
Если вы не сделаете этого, то IP-адрес освободится автоматически через время, указанное в поле "Основные настройки / Длительность бана (минуты)".
Добавьте IP-адрес в поле "Основные настройки / Список исключения IP системы защиты авторизации (192.168.0.1 или 192.168.0.0/24)" - сервер не будет применять систему защиты к данному адресу.
Использование Greylist¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора.
Установите в поле "Основные настройки / Включить Greylist" значение On.
Направьте любое письмо с внешнего адреса в адрес пользователя сервера TEGU (к примеру: ikalmetov@mbk-lab.ru).
Наблюдайте прием сообщения в логе.
Во время первой попытки вы увидите, ikalmetov@mbk-lab.ru greylisted (это означает, что попытка направить письмо отвергнута, но TEGU заполнил в сером списке домен и IP-адрес отправителя).
Когда сервер предпримет новую попытку отправки сообщения, в случае если домен и IP-адрес совпадут с теми, которые запомнены в сером списке, то адрес помещается в белый список и TEGU примет сообщение.
Адрес находится в сером списке в течение срока, указанного в поле "Основные настройки / Срок жизни записи серого списка greylist-а (часы)".
Адрес находится в белом списке в течение срока, указанного в поле "Основные настройки / Срок жизни записи белого списка greylist-а (часы)".
Добавьте домен в поле "Основные настройки / Список исключения доменов отправителей для greylist-а (один на строку)" - сервер не будет применять технологию Greylist к сообщениям данного домена.
Черные списки email и IP-адресов¶
Добавьте ваш IP-адрес в поле "Белые и черные списки SMTP / Черный IP серверов отправителей". Попробуйте выполнить авторизацию. Читайте записи в логе.
Добавьте ваш email-адрес в поле "Белые и черные списки SMTP / Черный email отправителей". Попробуйте выполнить авторизацию. Читайте записи в логе.
Белые списки email и IP-адресов¶
Добавьте ваш IP-адрес в поле "Белые и Белые списки SMTP / Белый IP серверов отправителей". Попробуйте выполнить авторизацию. Читайте записи в логе.
Добавьте ваш email-адрес в поле "Белые и Белые списки SMTP / Белый email отправителей". Попробуйте выполнить авторизацию. Читайте записи в логе.
3.5. Восстановление удаленных сообщений¶
Удаленные в почтовом ящике сообщения попадают в "Корзину". Однако, при опустошении Корзины сообщения не удаляются безвозвратно.
Для восстановления сообщения откройте Панель управления сервером https://mail.tegu.online:9999/ с пользовательским аккаунтом.
Откройте опцию меню "Папка восстановления".
Включите опцию "Отображать папку восстановления" и нажмите "Сохранить".
Откройте почтовую программу и синхронизируйте учетную запись.
Наблюдайте появление в списке IMAP-папок новой папки "_RECOVERY_".
Эта папка содержит все письма, удаленные из Корзины, либо удаленные из ящика мимо Корзины.
Сообщения в папке "_RECOVERY_" не могут быть удалены, но вы можете скопировать сообщения для его восстановления.
Управляйте папками "_RECOVERY_", войдя с правами администратора в Панель управления сервером https://mail.tegu.online:9999/ "Хранилище почты / Панель управления / Почтовые ящики".
4. Основные функции подсистемы адресных книг¶
4.1. Тестирование глобального списка адресов (GAL)¶
В большинстве программ (к примеру Thunderbird, Evolutinon, DAVx5) подключение DAV-ресурсов происходит автоматически в том случае, если вы правильно настроили ресурсные записи в доменной зоне. В противном случае используйте для подключения URL, который вы найдете на дашборде Панели управления сервером (как в пользовательском, так и в административном интерфейсах).
Откройте в почтовой программе вкладку "Адресные книги" и проконтролируйте подключение GAL.
Обратите внимание, что все элементы GAL доступны всем пользователям только для чтения (т.к. это по определению доменные данные).
4.2. Персональные сетевые адресные книги¶
По умолчанию в аккаунте каждого пользователя автоматически создается единственная персональная сетевая адресная книга "Персональная".
Откройте в почтовой программе вкладку "Адресные книги" и проконтролируйте подключение адресной книги "Персональная".
Откройте Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами пользователя.
Перейдите в меню "Адресные книги / Мои адресные книги".
С помощью кнопки "Создать" создайте новую сетевую адресную книгу (к примеру "Рабочая").
Откройте в почтовой программе вкладку "Адресные книги" и проконтролируйте подключение адресной книги "Рабочая".
4.3. Общие сетевые адресные книги¶
Пользовательский уровень¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами пользователя.Перейдите в меню "Адресные книги / Мои адресные книги".
С помощью кнопки "Создать" создайте новую сетевую адресную книгу (к примеру "Общая адресная книга Моники").
С помощью кнопки "Редактировать доступ" добавьте доступ для пользователей или групп пользователей.
Для добавления доступа пользователям, введите email-адреса этих пользоваталей, для добавления групп используйте выбор из списка доступных вам групп.
Для каждого пользователя установите уровень доступа к адресной книге. Допускается:
- Полный
- Только чтение
Откройте в почтовой программе вкладку "Адресные книги" и проконтролируйте подключение общей адресной книги "Общая адресная книга Моники" для всех пользователей, которым вы дали права.
В случае если предоставлен полный доступ, записи адресной книги доступны для редактирования. Все книги в любом случае синхронизируются со всеми клиентскими устройствами пользователя.
Уровень администратора¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора.Перейдите в меню "Адресные книги / Общие адресные книги".
С помощью кнопки "Создать" создайте новую сетевую адресную книгу (к примеру "Общая системная адресная книга").
С помощью кнопки "Редактировать доступ" добавьте доступ для пользователей или групп пользователей.
Для добавления доступа пользователям, введите email-адреса этих пользоваталей, для добавления групп используйте выбор из списка доступных вам групп.
Для каждого пользователя установите уровень доступа к адресной книге. Допускается:
- Полный
- Только чтение
Откройте в почтовой программе вкладку "Адресные книги" и проконтролируйте подключение общей адресной книги "Общая системная адресная книга" для всех пользователей, которым вы дали права.
Обратите внимание, что системная адресная книга управляется администратором и не исчезает при удалении пользовательского аккаунта.
В случае если предоставлен полный доступ, записи адресной книги доступны для редактирования. Все книги в любом случае синхронизируются со всеми клиентскими устройствами пользователя.
5. Основные функции подсистемы календарей¶
В большинстве программ (к примеру Thunderbird, Evolutinon, DAVx5) подключение DAV-ресурсов происходит автоматически в том случае, если вы правильно настроили ресурсные записи в доменной зоне. В противном случае используйте для подключения URL, который вы найдете на дашборде Панели управления сервером (как в пользовательском, так и в административном интерфейсах).
Откройте в почтовой программе вкладку "Календари" и проконтролируйте подключение календарей.
5.1. Персональные сетевые календари¶
По умолчанию в аккаунте каждого пользователя автоматически создается единственный сетевой календарь "Персональный".
Откройте в почтовой программе вкладку "Календари" и проконтролируйте подключение календаря "Персональный".
5.2. Общие сетевые календари¶
Пользовательский уровень¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами пользователя.Перейдите в раздел "Календари / Мои календари". Кнопкой "Создать" создайте новый календарь.
Для этого задайте:
- Название - как календарь будет отображаться в программе.
- Предоставлять информацию о занятом времени (Free/Busy) - Если отметить этот пункт, то информация данного календаря будет учитываться в графике занятости.
- Не отображать события старше N недель - TEGU для экономии трафика при синхронизации календарей (в ряде случаев это может привести даже к невозможности синхронизации) умеет показывать не все события, а лишь в заданном диапазоне. Используйте параметр чтобы ограничить глубину показа прошедших событий.
- Не отображать события новее N недель - глубина во времени для показа предстоящих событий.
- Цвет - цвет по умолчанию, который будет использован почтовой программой для данного календаря.
Сохраните свойства календаря.
С помощью кнопки "Редактировать доступ" добавьте доступ для пользователей или групп пользователей.
Для добавления доступа пользователям, введите email-адреса этих пользоваталей, для добавления групп используете выбор из списка доступных вам групп.
Откройте почтовую программу с аккаунтами пользователей, которым предоставлен доступ, и обновите список календарей. Наблюдайте появление общего календаря.
Таким образом, эти два пользователя разделяют общий календарь, созданный пользователем.
Административный уровень¶
Откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора.Перейдите в раздел "Календари / Общие календари / Домен". Кнопкой "Создать" создайте новый календарь.
Для этого задайте:
- Название - как календарь будет отображаться в программе.
- Предоставлять информацию о занятом времени (Free/Busy) - Если отметить этот пункт, то информация данного календаря будет учитываться в графике занятости.
- Не отображать события старше N недель - TEGU для экономии трафика при синхронизации календарей (в ряде случаев это может привести даже к невозможности синхронизации) умеет показывать не все события, а лишь в заданном диапазоне. Используйте параметр чтобы ограничить глубину показа прошедших событий.
- Не отображать события новее N недель - глубина во времени для показа предстоящих событий.
- Цвет - цвет по умолчанию, который будет использован почтовой программой для данного календаря.
Сохраните свойства календаря.
С помощью кнопки "Редактировать доступ" добавьте доступ для пользователей или групп пользователей.
Для добавления доступа пользователям, введите email-адреса этих пользоваталей, для добавления групп используете выбор из списка доступных вам групп.
Откройте почтовую программу с аккаунтами пользователей, которым предоставлен доступ, и обновите список календарей. Наблюдайте появление общего календаря.
Таким образом, эти два пользователя разделяют общий календарь, созданный пользователем.
Обратите внимание, что системный календарь управляется администратором и не исчезает при удалении пользовательского аккаунта.
5.3. Создание событий¶
Создайте событие, при необходимости добавьте описание, приложения и ссылки, задайте периодичность повторов и напоминаний.
Дождитесь периодической синхронизации или синхронизируйте календарь вручную.
Откройте другую почтовую программу (к примеру на мобильном устройстве) и синхронизируйте календарь.
Наблюдайте событие в обоих календарях.
5.4 Приглашение пользователей¶
Создайте событие и пригласите к нему участников.
Если участники являются локальными для данного сервера TEGU наблюдайте их занятость в ближайшем к вашему временном диапазоне.
Отредактируйте время события с учетом занятости всех приглашенных участников.
Сохраните событие.
5.5. Уведомления о событиях¶
В общем случае уведомления о событиях могут быть отправлены как почтовым клиентом, так и сервером TEGU.
Конкретное поведение зависит от диалога между клиентом и сервером (они обмениваются доступными методами).
К примеру Thunderbird для случая, если сервер умеет отправлять уведомления, предлагает это делать серверу, но при необходимости вы можете это изменить на стороне почтовой программы.
Для управления уведомлениями на стороне сервера откройте Панель управления сервером https://mail.tegu.online:9999/ с правами администратора.
Выберите опцию "Календари / Общие настройки".
Здесь задаются параметры по умолчанию для всех календарей системы.
Задайте в параметре "Локальная часть (до @) адреса отправителя оповещений" адрес календаря, от имени которого сервер будет рассылать уведомления.
Создайте событие с приглашенными участниками, наблюдайте получение уведомлений участниками.
5.6. Напоминание о днях рождения¶
Следует понимать, что дни рождения и прочие даты, ассоциированные с контактами, хранятся не в календаре, а в адресных книгах.
Таким образом, их показ в календаре не является функцией сервера, а реализуется непосредственно клиентом.
К примеру, в Thunderbird для этого необходимо установить плагин Birthday Calendar и настроить даты каких именно адресных книг надо показывать в календаре.
Данная функция полностью совместима с Почтовым сервером TEGU.