Участник:IvanZakharyaschev/Репликация почтового ящика: различия между версиями

Материал из ALT Linux Wiki
Строка 19: Строка 19:


<tr class="wikitable" border="1">
<tr class="wikitable" border="1">
<th scope="col class="wikitable" border="1">хранилище<br />данных почтового ящика</th>
<th scope="col">хранилище<br />данных почтового ящика</th>
<th scope="col" class="wikitable" border="1">ПО<br />сервера почтового ящика</th>
<th scope="col">ПО<br />сервера почтового ящика</th>
<th scope="col" class="wikitable" border="1">дополнительные мета-данные<br />про ящик</th>
<th scope="col">дополнительные мета-данные<br />про ящик</th>
<th scope="col" class="wikitable" border="1">протокол<br />обращения клиентов</th>
<th scope="col">протокол<br />обращения клиентов</th>
</tr>
</tr>


<tr class="wikitable" border="1">
<tr class="wikitable" border="1">
<td rowspan="3" class="wikitable" border="1">внутреннее хранилище</td>
<td rowspan="3">внутреннее хранилище</td>
<td rowspan="3" class="wikitable" border="1">старое ПО (MS Exchange)</td>
<td rowspan="3">старое ПО (MS Exchange)</td>
<td class="wikitable" border="1"><code>UIDVALIDITY</code> <code>UID</code></td>
<td><code>UIDVALIDITY</code> <code>UID</code></td>
<th scope="row" class="wikitable" border="1">IMAP</th>
<th scope="row">IMAP</th>
</tr>
</tr>


<tr class="wikitable" border="1">
<tr class="wikitable" border="1">
<td class="wikitable" border="1"><code>SyncKey</code>, <code>ServerId</code></td>
<td><code>SyncKey</code>, <code>ServerId</code></td>
<th scope="row" class="wikitable" border="1">EAS (Exchange ActiveSync)</th>
<th scope="row">EAS (Exchange ActiveSync)</th>
</tr>
</tr>


<tr class="wikitable" border="1">
<tr class="wikitable" border="1">
<td class="wikitable" border="1">(не интересно)</td>
<td>(не интересно)</td>
<th scope="row" class="wikitable" border="1">MS Exchange</th>
<th scope="row">MS Exchange</th>
</tr>
</tr>


Строка 49: Строка 49:


<tr class="wikitable" border="1">
<tr class="wikitable" border="1">
<th scope="col class="wikitable" border="1">хранилище<br />данных почтового ящика</th>
<th scope="col">хранилище<br />данных почтового ящика</th>
<th colspan="2" scope="col" class="wikitable" border="1">ПО<br />сервера почтового ящика</th>
<th colspan="2" scope="col">ПО<br />сервера почтового ящика</th>
<th scope="col" class="wikitable" border="1">дополнительные мета-данные<br />про ящик</th>
<th scope="col">дополнительные мета-данные<br />про ящик</th>
<th scope="col" class="wikitable" border="1">протокол<br />обращения клиентов</th>
<th scope="col">протокол<br />обращения клиентов</th>
</tr>
</tr>


<tr class="wikitable" border="1">
<tr class="wikitable" border="1">
<td rowspan="3" class="wikitable" border="1">Maildir</td>
<td rowspan="3">Maildir</td>
<td rowspan="2" style="border-right: 0;">dovecot</td>
<td rowspan="2" style="border-right: 0;">dovecot</td>
<td style="border-left: 0;" />
<td style="border-left: 0;" />
<td class="wikitable" border="1"><code>UIDVALIDITY</code> <code>UID</code></td>
<td><code>UIDVALIDITY</code> <code>UID</code></td>
<th scope="row" class="wikitable" border="1">IMAP</th>
<th scope="row">IMAP</th>
</tr>
</tr>


<tr class="wikitable" border="1">
<tr class="wikitable" border="1">
<td class="wikitable" border="1">SOGo</td>
<td>SOGo</td>
<td class="wikitable" border="1"><code>SyncKey</code>, <code>ServerId</code></td>
<td><code>SyncKey</code>, <code>ServerId</code></td>
<th scope="row" class="wikitable" border="1">EAS (Exchange ActiveSync)</th>
<th scope="row">EAS (Exchange ActiveSync)</th>
</tr>
</tr>


<tr class="wikitable" border="1">
<tr class="wikitable" border="1">
<td colspan="2">-</td>
<td colspan="2">-</td>
<td class="wikitable" border="1"><s>(не интересно)</s></td>
<td><s>(не интересно)</s></td>
<th scope="row" class="wikitable" border="1"><s>MS Exchange</s></th>
<th scope="row"><s>MS Exchange</s></th>
</tr>
</tr>


</table>
</table>

Версия от 13:42, 12 июля 2016

Понятно, что сохранение копии "почтового ящика" само по себе не представляет большой ценности: нужно уметь её использовать -- хотя бы читать клиентом, а лучше начать предоставлять сервером клиентам. Такая задача имеет место как при создании резервной копии (которую мы должны уметь начать использовать, если что), так и при миграции со старого ПО на новое ПО сервера почтового ящика.

background

Я раньше уже интересовался близкой задачей --:

  • поле для изучения там было более общее и открытое: искался любой инструмент для сохранения IMAP-ящика, возможно, без иного доступа (кроме IMAP) к внутреннему хранилищу сервера почтового ящика;
  • но задача, касающаяся возобновления работы клиентов с сохранённой резервной копией (со своим иным IMAP-сервером), ставилась только для IMAP-клиентов.

Сейчас в этих заметках нас интересуют более конкретные вещи.

  • Мы как бы обладаем полным доступом к хранилищу текущего сервера (правда, засекреченного -- с одной стороны; с другой стороны -- с возможно несовершенным IMAP).
  • Протоколы общения с клиентами -- не только один IMAP.
  • Какое ПО будет использоваться, чтобы запустить новый наш сервер почтового ящика, тоже более-менее определено.

схема (что в принципе важно)

Было:

хранилище
данных почтового ящика
ПО
сервера почтового ящика
дополнительные мета-данные
про ящик
протокол
обращения клиентов
внутреннее хранилище старое ПО (MS Exchange) UIDVALIDITY UID IMAP
SyncKey, ServerId EAS (Exchange ActiveSync)
(не интересно) MS Exchange

Будет:

хранилище
данных почтового ящика
ПО
сервера почтового ящика
дополнительные мета-данные
про ящик
протокол
обращения клиентов
Maildir dovecot UIDVALIDITY UID IMAP
SOGo SyncKey, ServerId EAS (Exchange ActiveSync)
- (не интересно) MS Exchange