<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>почта &#8902; Clip-Clap</title>
	<atom:link href="https://clip-clap.ru/tag/%d0%bf%d0%be%d1%87%d1%82%d0%b0/feed/" rel="self" type="application/rss+xml" />
	<link>https://clip-clap.ru/tag/почта/</link>
	<description></description>
	<lastBuildDate>Tue, 05 Jan 2021 22:44:17 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.5.8</generator>

<image>
	<url>https://clip-clap.ru/wp-content/uploads/2020/07/cropped-favicon-32x32.png</url>
	<title>почта &#8902; Clip-Clap</title>
	<link>https://clip-clap.ru/tag/почта/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Как восстановить старый адрес электронной почты</title>
		<link>https://clip-clap.ru/%d1%81%d0%be%d0%b2%d0%b5%d1%82%d1%8b/%d0%ba%d0%b0%d0%ba-%d0%b2%d0%be%d1%81%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-%d1%81%d1%82%d0%b0%d1%80%d1%8b%d0%b9-%d0%b0%d0%b4%d1%80%d0%b5%d1%81-%d1%8d%d0%bb%d0%b5%d0%ba%d1%82%d1%80/</link>
					<comments>https://clip-clap.ru/%d1%81%d0%be%d0%b2%d0%b5%d1%82%d1%8b/%d0%ba%d0%b0%d0%ba-%d0%b2%d0%be%d1%81%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-%d1%81%d1%82%d0%b0%d1%80%d1%8b%d0%b9-%d0%b0%d0%b4%d1%80%d0%b5%d1%81-%d1%8d%d0%bb%d0%b5%d0%ba%d1%82%d1%80/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Tue, 05 Jan 2021 22:44:15 +0000</pubDate>
				<category><![CDATA[Советы]]></category>
		<category><![CDATA[почта]]></category>
		<guid isPermaLink="false">https://clip-clap.ru/?p=3274</guid>

					<description><![CDATA[<p>У каждого пользователя сети интернет обязательном должен электронный ящик, для того чтобы регистрироваться на различных сайтах, делать покупки в интернет-магазинах</p>
<p>Сообщение <a href="https://clip-clap.ru/%d1%81%d0%be%d0%b2%d0%b5%d1%82%d1%8b/%d0%ba%d0%b0%d0%ba-%d0%b2%d0%be%d1%81%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-%d1%81%d1%82%d0%b0%d1%80%d1%8b%d0%b9-%d0%b0%d0%b4%d1%80%d0%b5%d1%81-%d1%8d%d0%bb%d0%b5%d0%ba%d1%82%d1%80/">Как восстановить старый адрес электронной почты</a> появились сначала на <a href="https://clip-clap.ru">Clip-Clap</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>У каждого пользователя сети интернет обязательном должен электронный ящик, для того чтобы регистрироваться на различных сайтах, делать покупки в интернет-магазинах и получать уведомления со всевозможных ресурсах. Следует отметить, что без электронной посты невозможно завести даже личную страницу в социальной сети.</p>



<p>Для того чтобы создать электронный почтовый ящик, можно воспользоваться такими сервисами как Google, Яндекс, Mail или Rambler. Также существует еще множество других менее популярных сервисом. Иногда случается так, что пользователь не может войти в сою почту, так забыл от нее пароль. Однако это не является проблемой, так восстановить электронную посту не так уж и сложно.</p>


</br>



<p>Быстрая навигация по статье</p>



<p>Для того чтобы восстановить пароль от электронной почты Mail, необходимо:</p>



<ul><li>Перейти на сайт mail.ru.</li><li>В левой части экрана под формой для входа нажать на кнопку «Забыли пароль?».</li><li>Ввести адрес электронной почты, которую требуется восстановить.</li><li>Ответить на секретный вопрос или же заполнить требуемые данные, если при регистрации не был выбран секретный вопрос.</li><li>Ввести код с картинки и нажать на кнопку «Восстановить пароль».</li><li>Придумать новый пароль для входа на почту.</li></ul>



<p>Также для восстановления доступа к электронной почте можно использовать номер телефона, если он указывался при регистрации.</p>



<h2 class="wp-block-heading">Яндекс</h2>



<p>Для того чтобы восстановить доступ к электронной почте на сайте Яндекса, необходимо в первую очередь перейти на сайт yandex.ru. После того, как главная страница Яндекс загрузиться, нажать на кнопку «Вспомнить пароль» в правом верхнем углу. Ввести в соответствующие поля логин и код с картинки, после чего нажать на кнопку «Дальше». Ввести код, полученный на телефон, который указывался при регистрации почтового ящика. Нажать на кнопку «Отправить». Придумать вый пароль для входа.</p>


</br>



<h2 class="wp-block-heading">Google</h2>



<p>Для того чтобы восстановить доступ к посте на сервисе Google, требуется перейти по адресу google.ru, а затем нажать на кнопку «Войти» в верхнем правом углу. Выбрать нужный аккаунт, в который необходимо осуществить вход и кликнуть по кнопке «Нужна помощь?». На следующей странице выбрать вариант «Я не помню пароль» и нажать «Продолжить». Далее пользователю предоставят возможность ввести пароль, который он помнит или нажать на кнопку «Затрудняюсь ответить». Для восстановления пароль на номер телефона будет отправлен код, для это нужно нажать продолжить. Ввести код в соответствующие поле и придумать новый пароль, который будет использоваться для входа в аккаунт.</p>



<p>В том случае, если при регистрации не указывался номер телефона или к нему нет на данный момент доступа, требуется нажать на кнопку «Я не могу воспользоваться телефоном». Пароль можно будет восстановить при помощи дополнительной почты. Получив доступ к аккаунт, можно будет перейти в почтовый ящик.</p>



<p><strong>Поделитесь этой статьёй</strong>&nbsp;с друзьями в соц. сетях:</p>



<p>Случалось ли вам наблюдать пустой почтовый ящик после того, как вы настроили почтовый клиент через pop3, и забыли поставить галочку «хранить почту на сервере»?</p>



<p>Это код для смены пароля от Вашей страницы ВКонтакте.</p>



<p>Если вы решили удалить почту на mail, помните, что всегда можете зарегистрироваться вновь, только под другим адресом. Лично у меня с этим проблем не возникло&nbsp;— пишут журналисты, которые рекомендуют сайт сделать свое радио . В процессе регистрации почтового ящика один из обязательных пунктов&nbsp;— это секретный вопрос. Либо вам вышлют информацию для восстановления пароля на телефон или дополнительный почтовый ящик, или же попросят ответить на секретный вопрос. Электронная почта Mail.ru имеет техническую поддержку, поэтому вы можете обратиться прямо туда с вопросом о восстановлении своего почтового ящика.</p>



<p>Перовое место, где вы оказываетесь&nbsp;— это главная страница. Нажимаем «Дальше». Примечание: логин лучше придумать самому.</p>



<p>Если вы заполняли эти данные, то легко сможете себя найти. Потом уже нужно ввести новый пароль, а также повторить уже и второй раз пароль, если вы все-таки неправильно его ввели.</p>


</br>



<p>Представьте себе такую ситуацию, так случилось, что вы потеряли данные к своей электронной почте.</p>



<p>«Ваш пароль был изменен»&nbsp;— гласит появившееся сообщение.</p>



<p>После открываем документацию к роутеру и смотрим какой логин и пароль идет по умолчанию. Прокрутив страницу вниз в небольшом окне необходимо ввести причину удаления вашего аккаунта почты, после чего в правом нижнем углу страницы нажать кнопку «Удалить». Рядом с окошком ввода логина и пароля для входа на почту находится ссылка «Забыли пароль?».</p>



<p>Заходим на сайт mail.ru. При получении доступа к электронному ящику у взломщика появляется шанс восстановить пароли ко всем аккаунтам, к которым в качестве почтового ящика установлен взломанный e-mail.</p>



<p>Нажмите на нее, после чего вам будет предложен один из способов восстановления пароля в зависимости от того, который из них был выбран вами при регистрации. Обратите внимание, что данные варианты стоит воспринимать как восстановление пароля от роутера. Если номер будет введен вами правильно, тогда спустя несколько минут вы получите СМС-сообщение с кратким контрольным кодом.</p>



<p>Следующим шагом останется войти в почту используя новый пароль.</p>



<p>Это так сказать, самая простая из проблем.</p>



<p>Если вы забыли пароль к своей странице в контакте, то вы можете его восстановить. О том, как восстановить пароль к аккаунту на YouTube я и хочу рассказать в этой заметке. Например, в Windows XP нажмите кнопку «Пуск», далее «Все программы», «Стандартные», «Служебные», «Восстановление системы». Процедура восстановления страницы несложна и занимает несколько секунд.</p>


</br>



<h2 class="wp-block-heading">Последнее в рубрике</h2>



<p>eBay и Ко.: Даже крупные интернет-концерны делают ставку на незамысловатую комбинацию из логина и пароля для входа в их системы. Если вы забыли пароль, просто отправьте себе ссылку для восстановления. Зачастую соответствующая кнопка находится рядом.</p>



<p>Ситуация, когда утерян доступ к электронной почте, гораздо сложнее. В этом случае ничего не остается, кроме как создать с нуля новый аккаунт. Это подтвердил и eBay в ответ на наш запрос. Таким образом, это сбережет ваши нервы, с другой&nbsp;— все же существуют способы получить доступ к своей электронной почте.</p>



<p>У аккаунтов с двухступенчатой аутентификацией восстановление пароля сложнее. Поскольку сам пароль можно легко восстановить по электронной почте, второй ключ, то есть одноразовый код, необходимо получить с помощью SMS или генератора.</p>



<p>При смене номера сотового телефона или удалении приложения для генерации кодов существует ключ восстановления или так называемые резервные коды. Они сообщаются при создании аккаунта. Благодаря им можно отключить запрос второго фактора. Если же и эти коды канули в Лету, без новой учетной записи не обойтись. Советы, как не забыть коды, вы найдете в нижнем блоке.</p>



<p>Электронная почта: при утрате пароля к своему почтовому клиенту, к примеру, когда вы используете для всех служб один и тот же код и не можете его вспомнить, доступ к своим аккаунтам получить сложно. За одним исключением: данные легко восстановить, если для обмена сообщениями на вашем компьютере используется почтовый клиент. Программа Mail PassView (nirsoft.net/utils/mailpv.html) сканирует все популярные клиенты и отображает сохраненные в них пароли.</p>



<figure class="wp-block-image"><img decoding="async" src="https://droidd.ru/assets/9983118f946522e1d051c35c2-530x966.jpg" alt=""/></figure>



<p>Если же вы заходите в свой аккаунт через браузер, поможет лишь один способ&nbsp;— горячая линия вашего провайдера. Если вы задали секретный вопрос и знаете на него ответ, новый пароль будет выдан вам незамедлительно. Если же эта информация утрачена, в большинстве случаев для сброса пароля потребуется предъявить удостоверение личности.</p>



<figure class="wp-block-image"><img decoding="async" src="https://droidd.ru/assets/2330253.jpg" alt=""/></figure>



<p>В принципе, всегда необходимо указывать альтернативные способы, по которым с вами может связаться почтовый провайдер, например, номер телефона или другой электронный ящик. Это позволит задать новый пароль.</p>



<p>Сегодня электронные письма практически полностью заменили бумажные. С их помощью можно не только обмениваться новостями с друзьями и родственниками в других странах, но и регистрироваться на сайтах, форумах, получать новости с различных сервисов и т.д. Кроме того, электронные ящики делятся на личные и корпоративные. Соответственно, у одного пользователя интернета может быть несколько почтовых ящиков. И где-то нужно хранить пароли и логины к каждому из них. Если эта информация утеряна, то приходится восстанавливать электронную почту.</p>


</br>



<h2 class="wp-block-heading">Как пошагово восстановить электронную почту</h2>



<p>У каждого почтового сервиса имеется своя схема восстановления. Сначала происходит процедура идентификации пользователя, затем сброс пароля и восстановление данных.</p>



<h3 class="wp-block-heading">На Яндексе</h3>



<p><strong>Яндекс</strong>&nbsp;— это самая популярная, система поиска, включающая большое количество программ, а также почтовый сервер. Чтобы восстановить электронную почту пользователю необходимо:</p>



<ul><li>открыть браузер;</li><li>ввести логин, пароль (если пароль утерян, достаточно ввести любую комбинацию цифр);</li><li>нажать кнопку «Войти».</li></ul>



<p>Поскольку пароль неверный, то внизу появится ссылка «<strong>Восстановить пароль</strong>».</p>



<p>В окне восстановления доступа нужно указать логин, цифры с картинки и нажать кнопку «<strong>Далее</strong>».</p>



<p>Система запросит проверочное слово….</p>



<p>Или номер телефона, на который был зарегистрирован почтовый ящик. На него будет отправлен пароль с доступом.</p>



<h3 class="wp-block-heading">Mail.ru</h3>



<p>Восстановить электронную почту на mail.ru можно следующим образом:</p>



<p><strong>1)</strong> Перейти на страницу авторизации.</p>



<p><strong>2)</strong>&nbsp;Нажать ссылку «<strong>Забыл пароль?</strong>»</p>



<p><strong>3)</strong> В новом окне указать почтовый ящик.</p>



<p><strong>4)</strong> Ответить на секретный вопрос и ввести проверочное слово с картинки.</p>



<p>Если вся информация введена правильно, то доступ к электронной почте будет восстановлен.</p>


</br>



<h3 class="wp-block-heading">Gmail</h3>



<p>Чтобы восстановить электронную почту в Гугле, необходимо:</p>



<p>В окне авторизации нажать кнопку «<strong>Я не помню пароль</strong>».</p>



<p>Ввести адрес почтового ящика и нажать кнопку «<strong>Продолжить</strong>».</p>



<p>Указать способ восстановления пароля: по СМС или в виде сообщения на другой почтовый ящик.</p>



<p>Ввести полученный код.</p>



<p>Нажать на ссылку сброса пароля, а затем придумать новый пароль.</p>



<h2 class="wp-block-heading">Как восстановить электронную почту, если забыл логин или пароль</h2>



<p>В процессе создания почтового ящика указываются дополнительные контактные данные: номер телефона, другой почтовый ящик и ответ на контрольный вопрос. Эта информация потребуется для идентификации пользователя в случае сброса пароля.</p>



<h3 class="wp-block-heading">По номеру телефона</h3>



<p>Следует сразу отметить, что восстановить почту по номеру телефона могут только те пользователи, которые указывали его при регистрации. Если мобильный телефон не был прикреплен к почтовому ящику, то ссылки на такой способ восстановления пользователь не увидит.</p>



<p>Рассмотрим детально, как восстановить почту, используя номер телефона на популярном сервисе Майл.ру. После неудачной попытке авторизоваться появится ссылка «<strong>Забыли пароль</strong>». Нужно перейти по этой ссылке на страницу восстановления доступа.</p>



<p>Пользователю нужно будет указать пароль, номер телефона и код с картинки.</p>



<p>Через несколько секунд на указанный номер будет отправлено <strong>СМС</strong> с кодом. Последний нужно ввести в форму на странице. Пользователю нужно будет сразу придумать новый пароль для почтового ящика.</p>



<p>После чего будет восстановлен доступ к почтовому ящику.</p>



<p>Таким же способом можно восстановить почту Яндекс. ру. На странице поисковика нажмите на знак вопроса в поле ввода пароля. Появится страница восстановления доступа. Укажите логин и символы с капчи. В следующем окне нужно будет ввести <strong>10 цифр номера</strong>, который ранее был привязан к почтовому ящику, и нажать кнопку «<strong>Получить код</strong>». На телефон придет сообщение, которые нужно ввести в строке формы. После сброса данных система предложит ввести новый пароль.</p>



<p>Чтобы иметь возможность быстро восстановить почту по номеру телефона, необходимо в настройках е-майл в разделе личных данных указать действующий номер. В течение 5 минут на него будет отправлен код подтверждения. Его следует ввести в соответствующее поле. Так будет подтвержден номер телефона и у пользователя появится возможность использовать его для восстановления доступа.</p>


</br>



<h3 class="wp-block-heading">Без номера телефона</h3>



<p>Пользователь может забыть не только пароль, но и логин от электронной почты. Как быть в таком случае?</p>



<ul><li>В большинстве случаев для работы в интернете используется один браузер. При первом посещении новой страницы появляется окно с сообщением «Запомнить данные». Большинство пользователей подтверждают данный запрос. В такой ситуации, если утерян логин, достаточно нажать на пустое окошко для ввода адреса, как сразу отобразится список логинов, которые используются на ПК. Воспользоваться такой схемой можно, если в конце предыдущей сессии не были очищены данные браузера.</li><li>Обычно один и тот же почтовый ящик используется для регистрации в разных сервисах, социальных сетях. Например, Вконтакте e-mail часто заменяет логин. Чтобы восстановить почту, необходимо зайти в ВК и в настройках посмотреть название почтового ящика. В рамках безопасности логин отображается не полностью, а только первые несколько букв. Даже этой информации может быть достаточно для восстановления названия часто применяемого почтового ящика.</li><li>Сегодня на мобильных телефонах также устанавливаются почтовые клиенты. Если не удалось открыть электронный ящик на ПК, можно посмотреть его название в учетной записи на ОС Андроид или в почтовом клиенте на смартфоне.</li><li>Чтобы не заниматься восстановление почты лучше всего использовать один почтовый ящик. В таком случае, есть вероятность, что он будет переполнен спамом (ненужной рекламной информацией). Если возникает потребность завести несколько e-mail, то логины и пароли доступа к ним следует хранить в письменном виде в отдельном блокноте.</li></ul>


</br>
<p>Сообщение <a href="https://clip-clap.ru/%d1%81%d0%be%d0%b2%d0%b5%d1%82%d1%8b/%d0%ba%d0%b0%d0%ba-%d0%b2%d0%be%d1%81%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-%d1%81%d1%82%d0%b0%d1%80%d1%8b%d0%b9-%d0%b0%d0%b4%d1%80%d0%b5%d1%81-%d1%8d%d0%bb%d0%b5%d0%ba%d1%82%d1%80/">Как восстановить старый адрес электронной почты</a> появились сначала на <a href="https://clip-clap.ru">Clip-Clap</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://clip-clap.ru/%d1%81%d0%be%d0%b2%d0%b5%d1%82%d1%8b/%d0%ba%d0%b0%d0%ba-%d0%b2%d0%be%d1%81%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-%d1%81%d1%82%d0%b0%d1%80%d1%8b%d0%b9-%d0%b0%d0%b4%d1%80%d0%b5%d1%81-%d1%8d%d0%bb%d0%b5%d0%ba%d1%82%d1%80/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Перенос почтового сервера postfix</title>
		<link>https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%bf%d0%b5%d1%80%d0%b5%d0%bd%d0%be%d1%81-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b3%d0%be-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80%d0%b0-postfix/</link>
					<comments>https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%bf%d0%b5%d1%80%d0%b5%d0%bd%d0%be%d1%81-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b3%d0%be-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80%d0%b0-postfix/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 27 Jul 2020 05:31:45 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[почта]]></category>
		<category><![CDATA[Почтовый сервер]]></category>
		<guid isPermaLink="false">https://clip-clap.ru/?p=1326</guid>

					<description><![CDATA[<p>Сегодня расскажу о том, как на практике перенести почтовый сервер postfix на другое железо или виртуальную машину. Поделюсь своим подходом</p>
<p>Сообщение <a href="https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%bf%d0%b5%d1%80%d0%b5%d0%bd%d0%be%d1%81-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b3%d0%be-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80%d0%b0-postfix/">Перенос почтового сервера postfix</a> появились сначала на <a href="https://clip-clap.ru">Clip-Clap</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Сегодня расскажу о том, как на практике перенести почтовый сервер postfix на другое железо или виртуальную машину. Поделюсь своим подходом к решению подобной задачи с минимальным простоем.</p>



<p>Версии софта принципиального значения не имеют. Важно, что почтовая база хранится в формате maildir, все письма на сервере. Основная проблема переноса таких серверов &#8212; очень долгая синхронизация почтовой базы сообщений, состоящей из десятков и сотен тысяч мелких файлов. Если у вас обычные sata диски, просто взять и перенести почтовый сервер на новое место с минимальным простоем не получится. Надо что-то придумывать.</p>


</br>



<p>Я придумал такую схему переноса:</p>



<ol><li>Подготовка системы на новом месте.</li><li>Копирование основной почтовой базы на новое место.</li><li>Остановка старого сервера, заливка изменений в базе на новый сервер.</li><li>Запуск нового почтового сервера как основного.</li></ol>



<p>Я всегда настраиваю сервера так, что системный диск небольшого размера &#8212; 30-50 гб. Все данные, будь то почтовая база, файловый сервер, база данных, сайты и т.д. находятся на отдельном диске. Главное, не экономить сильно и не делать системные диски очень маленькими, как однажды сделал я, сэкономив место на дорогих ssd дисках. Потом пришлось на ходу&nbsp;расширять системный раздел. Оптимально на моей практике это не меньше 30 гб. Если меньше, то приходится ужиматься с логами, кэшами и т.д. Не очень удобно. Все, что больше 30 уже не проблема. Если надо больше места, подключаются отдельные диски и символьными ссылками расширяются проблемные места.</p>



<p>С таким подходом удобно бэкапить виртуальные машины. Я на уровне гипервизоров делаю бэкап только системных дисков. Для данных использую другие способы, например&nbsp;rsync. Иногда и то, и другое. Бэкапить только гипервизором огромные диски по несколько ТБ данных не удобно. А в некоторых случаях практически невозможно, так как нет возможности сделать инкрементный бэкап. Например, в proxmox мне не известен способ централизованного управления и создания инкрементных бэкапов. Для других гипервизоров какие-то решения есть.</p>



<h2 class="wp-block-heading">Подготовка нового сервера</h2>



<p>В данном случае не имеет принципиального значения, переносите вы старый сервер на новое место, или готовите новый обновленный почтовый сервер. Основная проблема все равно с переносом базы, ее и надо отдельно решать. Если просто переносите старый сервер, то перенесите на новое место системный диск. Если это другой гипервизор, то убедитесь, что система нормально стартует в новом гипервизоре. Обновите утилиты интеграции, убедитесь, что определены сетевые карты, корректы записи в fstab. В общем, проверьте все, чтобы система стабильно работала.</p>



<p>Тут важно не торопиться и все проверить тщательно. У меня была ситуация, когда после переноса почтового сервера с одного гипервизора на другой, на сервере стало очень сильно убегать вперед время. Буквально на 1-2 минуты в час. Я это сразу не заметил, не обратил внимание. А когда запустил в работу новый сервер, увидел, что к концу рабочего дня время убежало уже на 15 минут. Синхронизация тут не спасала, так как dovecot, замечая большие изменения во времени после синхронизации, просто аварийно завершал работу. Для него это типовое поведение в таком случае.</p>



<p>Было очень неприятно словить такую ошибку на рабочем сервере. Потом в итоге разобрался, в чем дело. Изменил настройки grub для данной виртуалки, связанные с прерываниями процессора, и время перестало убегать. Но это потребовало тестов и перезагрузок уже на рабочем сервере, что было неудобно. Лучше бы я все отладил с самого начала, благо время было. Я все это к тому, что не торопитесь с переносом. После того, как поднимите систему на новом железе, оставьте ее поработать некоторое время, убедитесь, что все в порядке.</p>



<p>Как я уже сказал, не важно, переносите вы текущий сервер или настраиваете новый. Если новый &#8212; то так же настройте все, отладьте, проверьте. Дальше назначьте какие-то ip адреса новому серверу, чтобы был сетевой доступ к старому. Если переносите старый сервер, не забудьте на новом месте сменить MAC и IP адрес у сетевого интерфейса. Бывало, что я забывал сменить MAC. Начинались непонятные сетевые проблемы с обрывами соединений. Не сразу догадался, в чем было дело.</p>



<p>Когда все готово, оба сервера работают и видны в сети, можно переходить к переносу почтовой базы.</p>


</br>



<h2 class="wp-block-heading">Перенос почтовой базы</h2>



<p>Перед переносом почтовой базы, я рекомендую выполнить ее&nbsp;очистку. Зачастую в почте хранится огромное количество не нужной информации. Чтобы сократить время переноса почты, лучше заранее ее почистить. После того, как это сделаете, приступайте к переносу.</p>



<p>Для этого на новом сервере подключите и смонтируйте новый диск, где будете хранить почту. Дальше без остановки старого сервера выполните синхронизацию каталогов с базой. Я обычно использую&nbsp;<strong>rsync</strong>&nbsp;для этого. Вот простой пример команды, которую запускаю с нового сервера.</p>



<pre class="wp-block-preformatted">#&nbsp;/usr/bin/rsync -av root@10.1.4.22:/data/mail /data</pre>



<p>Здесь мы просто копируем почтовый архив со старого сервера 10.1.4.22 из директории&nbsp;<em>/data/mail</em>&nbsp;на новый сервер в эту же директорию. Не ошибитесь со слешами в конце путей. Я иногда путаюсь, после запуска сразу останавливаю процесс и проверяю, что все копируется именно оттуда и именно туда, куда надо. Чтобы команда точно отработала даже при обрыве ssh соединения, запускаю ее в&nbsp;<strong>screen</strong>.Копирование почтовой базы лучше запустить в самое наименее нагруженное время, хотя и не обязательно. Важно не пересечься с временем планового бэкапа. Бывает, запланируешь перенос на ночь, запускаешь копирование, а оно совпадает с плановым бэкапом. В итоге оба задания жутко тормозят. При этом еще и сам сервер работает медленно.</p>



<p>Копирование огромного количества файлов почтовых писем длится значительное время. Редко меньше нескольких часов. Иногда за ночь не успеваешь все скопировать, днем останавливаешь, а ночью продолжаешь. Можно растянуть этот процесс на любое время, если нет спешки. Нам важно перенести основную массу писем не останавливая сервер.</p>



<p>После того, как скопировали основную часть почтового архива, переходим к переключению на новый сервер.</p>



<h2 class="wp-block-heading">Переключение на новый сервер</h2>



<p>Самый важный и ответственный этап переноса почтового сервера. Здесь нужно еще раз хорошенько все проверить, убедиться, что все работает нормально. Непосредственно перед переключением на новый сервер, можно еще раз накатить изменения почтовой базы без остановки старого. Это позволит максимально уменьшить время простоя. Когда все готово, останавливаем службы dovecot и postfix почтового сервера. После этого сразу же запускаем синхронизацию каталогов между старым и новым сервером. Мы накатываем все изменения почтовой базы, делая ее полностью актуальной в новом сервере. Для этого надо добавить ключ &#8212;delete к rsync.</p>



<pre class="wp-block-preformatted">#&nbsp;/usr/bin/rsync --delete -av root@10.1.4.22:/data/mail /data</pre>



<p>Важно не перепутать источник с приемником. Сначала идет старый сервер, потом новый. Перед запуском хорошенько проверяйте команды. Один раз я угробил новый сервер, ошибившись в команде и удалив с корня системы некоторые каталоги. Просто слешом ошибся на источнике, когда копировал в корень приемника. Это было не страшно, так как повредил новый сервер. Пришлось отложить перенос и восстановить его.</p>



<p>Ждёте окончания синхронизации. Она должна быть не долгой, так как перед остановкой почтового сервера вы и так накатили все изменения. Обычно несколько минут занимает процесс финального копирования. Когда он закончен, выключаете старый сервер, убираете его из автозагрузки гипервизора. На новом сервере меняете IP на адреса старого сервера и перезагружаете его. Можно и не перезагружать, но я для проверки всегда перезагружаю. Можно не менять IP адрес, если у вас все завязано на dns имена, отредактируйте dns запись. Но я обычно все же меняю ip, так надежнее. Обязательно найдется какое-нибудь старое оборудование, типа сканера, где адрес указан в виде ip адреса и т.д. Эти лишние проблемы потом не нужны. Лучше все сделать максимально незаметно и надежно.</p>



<p>После запуска нового сервера, убедитесь, что все службы работают, почта ходит, мониторинг не показывает проблем. Если все прошло гладко и по плану, то время простоя будет несколько минут. В ночное время этого могут и не заметить.</p>


</br>



<p>Бывает, что не все идет гладко. У меня были ситуации, когда после перехода уже на новый сервер, начинались проблемы, которые предусмотреть заранее было нельзя. Новое хранилище начинало тормозить или возникали еще какие-то проблемы. Например, с блокировками на nfs. Вы это не проверили заранее. С работой dovecot на nfs есть свои&nbsp;нюансы. Если вы понимаете, что оставить в работе новый сервер нельзя и надо откатываться, то нужно опять синхронизировать почтовую базу, если для вас важна та корреспонденция, которая была доставлена в то время, как поработал новый сервер. Для этого останавливаете почтовые службы на новом сервере, меняете на нем ip, запускаете старый и выполняете синхронизацию в обратном порядке &#8212; с нового на старый. Не ошибитесь в параметрах rsync! После этого оставляете старый сервер в работе, а с новым спокойно разбираетесь и готовите его еще раз к переносу.</p>



<p>Вот, в принципе, и все по переносу почтового сервера из моей практики. Я их переносил штук 10 за все время админства. Можно сказать руку набил.</p>



<p>Для того, чтобы любые работы на prod сервере прошли успешно, я всегда соблюдаю несколько правил:</p>



<ol><li>Никогда не тороплюсь. Если реально нет необходимости спешить, я всегда довожу до руководства, что спешка не нужна. Она вредит и мешает все сделать хорошо. Пусть лучше я спокойно неделю или две подготовлюсь, все обдумаю, проверю и перенесу без проблем, нежели я буду спешить для соблюдения бессмысленных сроков.</li><li>Тщательно все проверяю и перепроверяю. Делаю все максимально незаметно. Если простой ожидается маленький, не шлю никому никаких уведомлений. Если вы предупредите, что будут работы с почтовым сервером, на следующие дни обязательно кто-то нажалуется, что после переноса все сломалось. Это мешает снимать реальные обратные связи. Когда никто не знает о переносе, отзывы будут только на реальные проблемы, а не надуманные.</li><li>У меня всегда есть запасной план на случай, если что-то пойдет не так. Всегда под рукой актуальные бэкапы и подменные системы. Я точно знаю, что буду делать, если новый сервер не будет введен в эксплуатацию.</li></ol>



<p>Этого достаточно, чтобы успешно проводить любые работы на серверах. Главное, все запланировать заранее, чтобы не было спешки.</p>
<p>Сообщение <a href="https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%bf%d0%b5%d1%80%d0%b5%d0%bd%d0%be%d1%81-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b3%d0%be-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80%d0%b0-postfix/">Перенос почтового сервера postfix</a> появились сначала на <a href="https://clip-clap.ru">Clip-Clap</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%bf%d0%b5%d1%80%d0%b5%d0%bd%d0%be%d1%81-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b3%d0%be-%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80%d0%b0-postfix/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Очистка и обслуживание почтовой базы postfix</title>
		<link>https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%be%d1%87%d0%b8%d1%81%d1%82%d0%ba%d0%b0-%d0%b8-%d0%be%d0%b1%d1%81%d0%bb%d1%83%d0%b6%d0%b8%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b9-%d0%b1%d0%b0%d0%b7%d1%8b-pos/</link>
					<comments>https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%be%d1%87%d0%b8%d1%81%d1%82%d0%ba%d0%b0-%d0%b8-%d0%be%d0%b1%d1%81%d0%bb%d1%83%d0%b6%d0%b8%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b9-%d0%b1%d0%b0%d0%b7%d1%8b-pos/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 27 Jul 2020 05:26:58 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[почта]]></category>
		<category><![CDATA[Почтовый сервер]]></category>
		<category><![CDATA[Сервер]]></category>
		<guid isPermaLink="false">https://clip-clap.ru/?p=1321</guid>

					<description><![CDATA[<p>Мне приходится много работать с почтовыми серверами на базе postfix с базой почты формата maildir. За несколько лет работы накопилось</p>
<p>Сообщение <a href="https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%be%d1%87%d0%b8%d1%81%d1%82%d0%ba%d0%b0-%d0%b8-%d0%be%d0%b1%d1%81%d0%bb%d1%83%d0%b6%d0%b8%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b9-%d0%b1%d0%b0%d0%b7%d1%8b-pos/">Очистка и обслуживание почтовой базы postfix</a> появились сначала на <a href="https://clip-clap.ru">Clip-Clap</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Мне приходится много работать с почтовыми серверами на базе postfix с базой почты формата maildir. За несколько лет работы накопилось множество различных приемов по оптимизации работы и настройке. Сегодня решил собрать в кучу все более ли менее универсальные и полезные скрипты по автоматической очистке почтовой базы в postfix.</p>



<h2 class="wp-block-heading">Введение</h2>


</br>



<p>Данная статья будет актуальна для тех, кто сам выполнил&nbsp;установку и настройку postfix&nbsp;или воспользовался готовой сборкой на базе&nbsp;iredmail. Это что касается материалов моего сайта. А в целом все описанное ниже будет актуально для любого почтового сервера, который хранит почту в формате&nbsp;<strong>maildir</strong>.</p>



<p>Скажу пару слов, почему именно <a href="https://ru.wikipedia.org/wiki/Maildir" target="_blank" rel="noreferrer noopener nofollow">maildir</a>. Лично я этот формат использую за его удобство. В нем каждое письмо это отдельный файл, который можно посмотреть любым текстовым редактором. Эти файлы удобно бэкапить, анализировать содержимое, сортировать по каким-то признакам. В общем, с ними можно работать как с обычными текстовыми файлами. На основе этих плюсов и выполняется вся дальнейшая работа в статье. Из минусов вижу только один &#8212; огромное количество мелких файлов создают большую нагрузку на дисковую подсистему.</p>



<p>Приведу для наглядности пример, который позволит оценить нагрузку на диски. Для синхронизации с помощью rsync почтовой базы объемом примерно 1 терабайт, расположенной на raid10 обычных 3.5 sata дисков, на одиночный такой же диск для бэкапа, уходит где-то пару часов в основном на сравнение файлов между источником и приемником. Само копирование файлов проходит быстро, но чтобы сравнить изменения за день, приходится выполнять длительную операцию. При этом в целом работа пользователей (~30-40 человек) с этой базой вполне комфортна, каких-то тормозов не наблюдается.</p>



<p>То есть по сути, для такого количества пользователей, сервером может быть обычный десктопный компьютер с 2-4 обычными sata дисками. Хватит производительности любого процессора и примерно 2-4 гигабайта оперативной памяти. Отдельный вопрос, конечно, к надежности обычного системника. Я сервера на них не рекомендую собирать, но при большом желании можно.Приведенные далее скрипты для очистки почтовой базы писались в разное время на разных серверах. Иногда может показаться, что все сделано нелогично или как-то сложно. Громоздкие конструкции часто возникали там, где появлялись проблемы с пробелами или спецсимволами в именах папок на русском языке, которые при переводе в UTF-7 (кодировка названия imap папок в dovecot) превращаются в весьма неудобные для обработки строки. Дальше будет понятно, что я имею ввиду.</p>



<p>Перейдем теперь к конкретным примерам.</p>



<h2 class="wp-block-heading">Простое удаление старых писем из ящика</h2>



<p>Начнем с самого простого примера. Допустим, у вас есть какой-то ящик, хранить письма в котором старше определенного срока не имеет смысла. К примеру, это может быть ящик для оповещений системы мониторинга. После того, как оповещение было прочитано, оно теряет актуальность. Все события и так фиксируются и хранятся на самом сервере, поэтому хранить долго письма нет никакого смысла. Очистим этот ящик, удалив из него все письма, старше 30 дней.</p>



<pre class="wp-block-preformatted">/usr/bin/find /data/mail/virtual/zabbix@mailsrv.ru/Maildir/*/ -type f -mtime +30 -exec rm {} \;</pre>



<figure class="wp-block-table"><table><tbody><tr><td>/usr/bin/find</td><td>Путь до утилиты find. Проверьте его актуальность в своем дистрибутиве.</td></tr><tr><td>/data/mail/virtual/reports@eme.ru/Maildir/*/</td><td>Путь до конкретного ящика. Конструкция /*/ позволяет сразу проверить обе папки new и cur.</td></tr><tr><td>-type f</td><td>Говорим find, что ищем только файлы.</td></tr><tr><td>-mtime +30</td><td>Указываем срок более 30 дней с последнего изменения файла. То есть все файлы старше 30-ти дней.</td></tr><tr><td>-exec rm {} \;</td><td>Выполняем удаление.</td></tr></tbody></table></figure>


</br>



<p>В данном случае мы просто используем стандартный синтаксис утилиты для поиска файлов&nbsp;<strong>find</strong>. Подробности ее использования можно найти в интернете, примеров масса. Во время отладки я рекомендую не использовать удаление, а просто направить вывод в файл, чтобы можно было оценить, что утилита нашла и собирается удалить. В простых примерах, как этот, может показаться, что нет смысла проверять, но в более сложных конструкциях рекомендую всегда это делать, например, вот так.</p>



<pre class="wp-block-preformatted">/usr/bin/find /data/mail/virtual/zabbix@mailsrv.ru/Maildir/*/ -type f -mtime +30 &gt;&gt; /root/dellist.txt</pre>



<p>После этого смотрите файл&nbsp;<em>/root/dellist.txt</em>&nbsp;и проверяйте, что собираетесь удалить. После того, как проверили, не обязательно заново выполнять поиск по базе и лишний раз нагружать диски. Можно удалить все указанные в&nbsp;<em>dellist.txt</em>&nbsp;письма следующим скриптом.</p>



<pre class="wp-block-preformatted">#!/bin/bash

cat /root/dellist.txt | while read i ; do 
rm -f "$i" 
done</pre>



<p>Сам процесс поиска по почтовой базе postfix не такой длительный, как поиск и удаление. На сильно нагруженных базах я рекомендую выполнять удаление, когда сервер нагружен меньше всего, а поиск в любое время. Конечно, искать тоже лучше в нерабочее время, но мне не нравится работать ночью, поэтому все, что можно, я делаю днем, а на ночь оставляю по возможности минимум работы.</p>



<h2 class="wp-block-heading">Массовая очистка корзин в почтовой базе postfix</h2>



<p>Рассмотрим более сложный пример. Нам нужно автоматически очистить все корзины пользователей от писем, старше 30-ти дней. Я рекомендую всегда настраивать такую очистку. Дело в том, что если сервер сильно нагружен, то он не всегда корректно удаляет содержимое корзины. Например, пользователь отправил в корзину очень много писем (десятки тысяч), нажал &#171;очистить корзину&#187; и закрыл почтовый imap клиент. Есть вероятность, что реально письма не удалятся, а так и будут висеть в корзине. Imap сервер dovecot не удаляет мгновенно письма, а ставит их в очередь и потихоньку удаляет. Иногда этот процесс прерывается и удаление не происходит. Можно попытаться это сделать снова и рано или поздно они таки удалятся.</p>



<p>Есть пользователи, которые сами не чистят корзины, за годы работы у них накапливается там солидное количество бесполезных писем, которые только занимают место на сервере и замедляют работу тех же бэкапов или скриптов очистки. Надо помочь расстаться с этой почтой раз и навсегда.</p>



<p>Сложность с очисткой корзин в том, что названий папок для удаленной почты может быть много. Каждый почтовый клиент создает какую-то свою папку, имя которой может не совпадать с уже существующими. Сейчас могут использоваться одновременно 3 вида почтовых клиентов: web, десктопная или мобильная программа. Каждая из них создает свой набор папок. Ко всему прочему, русские имена imap папок хранятся в кодировке UTF-7, что осложняет работу скриптов. Необходимо экранировать спецсимволы и пробелы.</p>


</br>



<p>Вот мой список возможных названий папок для удаленной почты.</p>



<figure class="wp-block-table"><table><tbody><tr><td>Удаленные</td><td>.&amp;BCMENAQwBDsENQQ9BD0ESwQ1-</td></tr><tr><td>Удаленные элементы</td><td>.&amp;BCMENAQwBDsENQQ9BD0ESwQ1- &amp;BE0EOwQ1BDwENQQ9BEIESw-</td></tr><tr><td>Корзина</td><td>.&amp;BBoEPgRABDcEOAQ9BDA-</td></tr><tr><td>Deleted Messages</td><td>.Deleted Messages</td></tr><tr><td>Deleted Items</td><td>.Deleted Items</td></tr><tr><td>Trash</td><td>.Trash</td></tr></tbody></table></figure>



<p>Я обычно выполняю поиск по такому набору папок. Если у вас есть дополнение этого списка, прошу поделиться. А вот скрипт для автоматической очистки корзин с указанными именами папок.</p>



<pre class="wp-block-preformatted">#!/bin/bash

# текущая дата в формате Год-месяц-день
data=`date +"%Y-%m-%d"`
# формируем список почтовых ящиков для поиска
mailbox=`ls -l /data/mail/virtual | grep vmail | awk '{print $9}'`

for box1 in $mailbox
    do
	/usr/bin/find /data/mail/virtual/$box1/Maildir/'.&amp;BCMENAQwBDsENQQ9BD0ESwQ1-'/*/ -type f -mtime +30 | while read a ; do
	ls "$a" &gt;&gt; /root/mailclean/trashclean-log/$data.txt
	done
    done

for box2 in $mailbox
    do
	/usr/bin/find /data/mail/virtual/$box2/Maildir/'.Deleted Messages'/*/ -type f -mtime +30 | while read b ; do
	ls "$b" &gt;&gt; /root/mailclean/trashclean-log/$data.txt
	done
    done

for box3 in $mailbox
    do
	/usr/bin/find /data/mail/virtual/$box3/Maildir/.Trash/*/ -type f -mtime +30 | while read c ; do
	ls "$c" &gt;&gt; /root/mailclean/trashclean-log/$data.txt
	done
    done

for box4 in $mailbox
    do
	/usr/bin/find /data/mail/virtual/$box4/Maildir/'.&amp;BCMENAQwBDsENQQ9BD0ESwQ1- &amp;BE0EOwQ1BDwENQQ9BEIESw-'/*/ -type f -mtime +30 | while read d ; do
	ls "$d" &gt;&gt; /root/mailclean/trashclean-log/$data.txt
	done
    done

for box5 in $mailbox
    do
	/usr/bin/find /data/mail/virtual/$box5/Maildir/'.&amp;BBoEPgRABDcEOAQ9BDA-'/*/ -type f -mtime +30 | while read e ; do
	ls "$e" &gt;&gt; /root/mailclean/trashclean-log/$data.txt
	done
    done

for box6 in $mailbox
    do
	/usr/bin/find /data/mail/virtual/$box6/Maildir/'.Deleted Items'/*/ -type f -mtime +30 | while read f ; do
	ls "$f" &gt;&gt; /root/mailclean/trashclean-log/$data.txt
	done
    done

cat /root/mailclean/trashclean-log/$data.txt | while read i ; do
    rm -f "$i"
    done</pre>



<p>Конечно, тут для компактности можно было сделать еще один вложенный цикл и перебирать имена папок. Я не стал этого делать для наглядности. К тому же список небольшой, можно оставить так. Некоторые комментарии к скрипту.</p>


</br>



<p>Конструкция</p>



<pre class="wp-block-preformatted">mailbox=`ls -l /data/mail/virtual | grep vmail | awk '{print $9}'`</pre>



<p>формирует список ящиков для очистки. В данном случае берутся все существующие ящики.&nbsp;<strong>vmail</strong>&nbsp;тут владелец директорий с ящиками. Получить список актуальных ящиков можно разными способами. Я сделал это вот так. Вы можете вручную составить список ящиков в текстовом файле в формате один ящик в каждой новой строке и работать по своему списку. Примерно вот так:</p>



<pre class="wp-block-preformatted">mailbox=/root/mailclean/mailboxlist.txt</pre>



<p>Возможно путь к файлу нужно взять в кавычки, сейчас точно не помню, надо проверять. Я логирую списки удаленных писем на всякий случай, чтобы можно было из архива быстро восстановить удаленные письма, если вдруг это будет необходимо. Во время отладки я рекомендую закомментировать последний этап работы скрипта, где выполняется удаление. Для начала просто сформируйте списки файлов на удаление и убедитесь, что там не попало ничего лишнего, что поиск по папкам прошел корректно.</p>



<p>Аналогичным образом можно очистить папки со спамом. Вот мой список для таких папок.</p>



<figure class="wp-block-table"><table><tbody><tr><td>Нежелательная почта</td><td>.&amp;BB0ENQQ2BDUEOwQwBEIENQQ7BEwEPQQwBE8- &amp;BD8EPgRHBEIEMA-</td></tr><tr><td>Spam</td><td>.Spam</td></tr><tr><td>Junk E-mail</td><td>.Junk E-mail</td></tr><tr><td>Junk</td><td>.Junk</td></tr></tbody></table></figure>



<p>Более подробно вопрос автоматического удаления спама рассмотрим отдельно.</p>



<h2 class="wp-block-heading">Удаление писем на основе содержимого письма</h2>



<p>Перейдем к еще более сложному примеру, но в самой простой его модификации. Допустим, вам нужно удалить все письма, адресованные на какой-то адрес. Это может быть актуально в тех случаях, если используется алиас, а с него идет перенаправление на множество ящиков. В итоге, письма, адресованные на этот алиас распространяются по всей почтовой базе в разные ящики. При этом данные письма теряют актуальность со временем, и хранить их нет необходимости.</p>


</br>



<p>В данном примере я сделаю еще одно усложнение. Мало того, что мы будем логировать все удаления писем из базы, мы еще будем их сохранять и раскладывать по папкам с названиями ящиков, из которых они были удалены. Дополнительно, удаленные письма будут складываться в директории с именами в виде даты удаления. Таким образом мы полностью застрахуем себя от удаления нужного письма. Даже если это произойдет, то быстро сможем найти это удаленное письмо. Дополнительно будем записывать в лог файл время начала и завершения поиска и удаления. Так как процесс поиска по содержимому достаточно длительный, рекомендую следить за временем его выполнения, чтобы укладываться в окна с малой нагрузкой сервера.</p>



<pre class="wp-block-preformatted">#!/bin/bash

# формируем список ящиков для очистки
mailbox=`ls -l /data/mail/virtual | grep vmail | awk '{print $9}'`
# дата в формате Год-месяц-день_час-минута-секунда
data_full=`date +"%Y-%m-%d_%H-%M-%S"`
# дата в формате Год-месяц-день
data=`date +"%Y-%m-%d"`
# директория для хранения копий удаленных писем
copydir=/backup/mailclean
# адрес лог файла с информацией о времени работы скрипта
logfile=/backup/mailclean/log.txt

echo "============`date +"%Y-%m-%d"`============" &gt;&gt; $logfile
echo "`date +"%H-%M-%S"` Start mail clean" &gt;&gt; $logfile

for box in $mailbox
    do
    # создаем директории с именами ящиков и текущей даты для копий удаленных писем
    mkdir -p $copydir/$box/mail/$data
    # формируем список всех писем в ящике
    /usr/bin/find /data/mail/virtual/$box/Maildir -type f -name "*mailsrv*" -mtime +30 -daystart | while read a ; do
    # ищем в содержимом письма адрес получателя zabbix@mailsrv.ru и записываем имена таких писем в индивидуальный файл для каждого ящика
        grep -E -R -l -I "*for &lt;zabbix@mailsrv.ru&gt;;*" "$a" &gt;&gt; $copydir/$box/copy-$data_full.txt
        done
    # пишем название ящика в общий лог файл
    echo "=========$box=========" &gt;&gt; $copydir/$data_full-all.txt
    # записываем в общий лог файл все удаленные письма каждого ящика за конкретную дату очистки	
    cat $copydir/$box/copy-$data_full.txt &gt;&gt; $copydir/$data_full-all.txt
    # формируем список писем ящика на удаление	
    cat $copydir/$box/copy-$data_full.txt | while read i ; do
    # копируем письмо из реального ящика в папку архива (рекомендую использовать во время отладки)
        cp -p "$i" $copydir/$box/mail/$data
    # перемещаем письмо из реального ящика в архив (использовать после отладки)
    #   mv "$i" $copydir/$box/mail/$data
        done
    done
# записываем время завершения работы скрипта
echo "`date +"%H-%M-%S"` End mail clean" &gt;&gt; $logfile
echo "==================================" &gt;&gt; $logfile</pre>



<p>Поясню основные моменты. В строке с поиском писем по всему ящику есть маска:</p>



<pre class="wp-block-preformatted">/usr/bin/find /data/mail/virtual/$box/Maildir -type f -name <strong>"*mailsrv*"</strong> -mtime +30 -daystart | while read a ; do</pre>



<p>В данном случае mailsrv это часть имени сервера. В формате maildir в именах файлов писем всегда присутствует имя сервера. Эта маска позволяет найти только файлы почты, отбросив остальные служебные файлы, которые могут там быть. А они там точно будут, например, индексы dovecot, правила sieve и др. Не забудьте поменять эту маску на свою в соответствии с именем сервера.</p>



<p>Строка для поиска получателя письма&nbsp;<strong>*for &lt;zabbix@mailsrv.ru&gt;;*</strong>&nbsp;именно в таком видевзята из служебных заголовков. Даже если письма различными фильтрами будут перемещаться в другие ящики, первоначальный получатель писем все равно будет зафиксирован этой строкой.Предупреждаю, что не нужно слепо использовать этот и другие скрипты. Они приведены в основном для того, чтобы показать принципы и идеи, которые я использую. Эти скрипты нужно внимательно посмотреть, понять, что происходит в каждой строке, и изменить под свои нужды. В готовом виде вряд ли вам нужен будет именно такой скрипт. Тут все очень индивидуально и требует осознания всех выполняемых действий.</p>



<p>Если вам нужно автоматом удалить в почтовом архиве все спам письма, которые ваша антиспам система помечает как спам, то можете взять служебный заголовок, который ставит эта система и использовать его. Например, Касперский антиспам вот так помечает все спамовые письма:</p>



<pre class="wp-block-preformatted">X-KLMS-AntiSpam-Status: spam</pre>


</br>



<p>Соответственно я ищу все письма с таким служебным заголовком и что-то с ними делаю. Например, перемещаю в папку spam или удаляю. Но тут нужно быть внимательным и делать все аккуратно. Например, если какое-то письмо фильтр по ошибке пометил спамом, у пользователя не будет никакой возможности его сохранить, если вы будете автоматически удалять эти письма. Тут нужно думать в конкретной ситуации как поступить. На текущий момент я не использую подобные правила для удаления или перемещения почты, только для поиска, чтобы оценить объем спамовой почты. Если он слишком велик и его чистка позволит высвободить значительные объемы дискового пространства, то я начинаю что-то делать с ящиками пользователей. Чаще всего напрягать админов на местах, чтобы они стимулировали пользователей к самостоятельной ручной очистке спама. Если же спама не много, то я просто ничего не делаю.</p>



<h2 class="wp-block-heading">Фильтрация писем на основе темы письма</h2>



<p>Рассмотрим более сложный вариант предыдущего скрипта. Там мы фильтровали письма на основе содержимого служебных заголовков. Но если мы захотим отфильтровать почту по теме письма, то сходу у нас ничего не получится. С темой письма возникают сложности из-за того, что она закодирована в base64, если в ней используются русский язык. Вот простой пример. У нас есть письмо с темой &#171;Как дела?&#187;. Используем&nbsp;<a href="http://base64.ru/" target="_blank" rel="noreferrer noopener">base64 декодер</a>&nbsp;и смотрим, как будет выглядеть тема сообщения в исходнике письма.</p>



<pre class="wp-block-preformatted">Как дела? -&nbsp;0JrQsNC6INC00LXQu9CwPw==</pre>



<p>А вот, что вы увидите в заголовке письма со всеми служебными добавлениями:</p>



<pre class="wp-block-preformatted">Subject: =?UTF-8?B?0JrQsNC6INC00LXQu9CwPw==?=</pre>



<p>Вам нужно будет отбросить сначала кодировку&nbsp;<strong>=?UTF-8?</strong>, потом не знаю, что означающие символы&nbsp;<strong>B?</strong>, затем в конце еще вот это&nbsp;<strong>?=</strong>. Так вы получаете искомую фразу. Теперь представьте, что кто-то ответит на это письмо. Тема сообщения станет&nbsp;<strong>Re: Как дела?</strong>. В base64 эта фраза будет выглядеть совершенно по-иному:</p>



<pre class="wp-block-preformatted">Re: Как дела?UmU6INCa0LDQuiDQtNC10LvQsD8=</pre>



<p>И вот как в реальном заголовке:</p>



<pre class="wp-block-preformatted">Subject: =?UTF-8?B?UmU6INCa0LDQuiDQtNC10LvQsD8=?=</pre>



<p>Сложность добавляет еще то, что разные почтовые клиенты используют разную кодировку в теме письма. Мне встречались как UTF-8, так и WIN-1251. То есть для того, чтобы нормально раскодировать и читать тему сообщения, вам нужно сделать обработку на декодирование, на отбрасывание служебных символов. Еще в процессе тестирования я заметил, что если вы используете не весь текст темы, а только ее часть, то закодированная строка поиска может немного не совпадать с той, что будет в теме письма. Изменения могут возникнуть из-за заглавных/строчных букв, пробелов, запятых и т.д. В общем, я не осилил эту тему, так как надо очень плотно погрузиться в предмет и написать много различных проверок и условий. У меня просто не хватило терпения все сделать красиво, чтобы скрипт работал надежно.</p>



<p>Поступил я в итоге по-другому, более просто и топорно, зато надежно. Допустим, вам нужно, чтобы какая-то переписка не хранилась на сервере дольше определенного времени. Это может быть конфиденциальная информация. Например, вы сканируете документы с отправкой на почту и вам нужно, чтобы сканы там не хранились бесконечно долго. Настраиваете на МФУ шаблон темы сообщения, добавляя в начало такую строку &#8212;&nbsp;<strong>!del</strong>. Затем переводите его в base64, добавляя еще фразы с Re: и Fwd: на случай, если эти письма могут куда-то пересылаться или писаться ответы. Конечно, сканеру вряд ли кто-то будет отвечать, но, возможно, для вашей темы сообщения это будет актуально.</p>



<figure class="wp-block-table"><table><tbody><tr><td>!del</td><td>IWRlbA==</td></tr><tr><td>Re: !del</td><td>UmU6ICFkZWw=</td></tr><tr><td>Fwd: !del</td><td>RndkOiAhZGVs</td></tr></tbody></table></figure>



<p>Дальше берете скрипт из предыдущего примера и меняете там строку поиска на новую:</p>



<pre class="wp-block-preformatted">grep -E -R -l -I <strong>"Subject:.*IWRlb.*|Subject:.*RndkOiAhZGVs.*|Subject:.*UmU6ICFkZWw.*"</strong> "$a" &gt;&gt; $copydir/$box/copy-$data_full.txt</pre>


</br>



<p>Эта строка найдет во всех письмах, сформированных в список предыдущей командой, темы сообщения !del, Re: !del, Fwd: !del и скопирует пути и имена файлов в список. Потом вы можете на свое усмотрение работать с этим списком.</p>



<h2 class="wp-block-heading">Еще несколько примеров работы с почтовой базой</h2>



<p>Этот пример будет актуален, если вы используете почтовые ящики, куда копируется абсолютно вся переписка вашего сервера. Допустим, у вас есть ящик out@mailsrv.ru, куда сохраняется вся уходящая корреспонденция. Если на сервере идет активная переписка, то писем в ящике будет много и искать с помощью какого-то imap клиента будет неудобно, так как он может либо тормозить на большом списке писем, либо вообще отваливаться по таймауту и поиск или сортировка будут невозможны с его помощью. Тогда на помощь придут простые скрипты в консоли сервера. Найдем в этом ящике все письма, отправленные в период между первым и седьмым сентября 2017 года и скопируем их в отдельный ящик.</p>



<pre class="wp-block-preformatted">find /data/mail/virtual/out@mailsrv.ru/Maildir/*/ -newerBt '2017-09-01 00:00' -and -not -newerBt '2017-09-07 00:00' -and -type f | cpio -pdmv /data/mail/virtual/user@mailsrv.ru/Maildir/new</pre>



<p>По сути тут просто использовались ключи к команде find. У нее их так много, что я для всех прикладных задач всегда храню готовые конструкции, чтобы заново не вспоминать все ключи и возможности.</p>



<p>Еще полезно бывает посмотреть размер почтовых ящиков. Некоторые пользователи имеют в разы больший объем ящика, чем все остальные. Есть любители хранить в почте презентации, пересылать разбитые на части архивы и т.д. Иногда приходится вручную проверять размеры ящиков, чтобы отдать команду на очистку заполненных сверх меры. Сделать это можно простой командой в директории с ящиками:</p>



<pre class="wp-block-preformatted"># du --max-depth=1 | sort -n -r</pre>



<p>Команда выведет размеры всех ящиков и отсортирует их по мере увеличения объема, но при этом объем покажет в байтах, что не очень удобно. Можно вывести директории по алфавиту, но с размером в привычных мегабайтах или гигабайтах, но уже без сортировки.</p>



<pre class="wp-block-preformatted">#&nbsp;du -h --max-depth=1</pre>



<p>Еще удобнее отправить сразу вывод в текстовый файл с датой в имени файла, чтобы потом было удобно сравнить с тем, что получилось после чистки почтовой базы.</p>



<pre class="wp-block-preformatted"># du -h --max-depth=1 &gt;&gt; "dirsize_`date +"%Y-%m-%d_%H:%M"`.txt"</pre>



<p>Тут можно придумать много всяких способов отсортировать данные для более удобного восприятия, или потом автоматически сравнить размеры ящиков. Я не занимался этим.</p>


</br>



<h2 class="wp-block-heading">Заключение</h2>



<p>Поделился тем, что использовал последнее время в работе с почтовыми серверами. По большому счету &#8212; ничего особенного. Почтовые сервера на postfix + dovecot чаще всего не требуют частого присмотра. Работают надежно, не требуют к себе повышенного внимания. Достаточно настроить&nbsp;мониторинг postfix&nbsp;и следить за свободным местом, периодически очищая почтовую базу, которая представляет из себя набор обычных файлов.</p>
<p>Сообщение <a href="https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%be%d1%87%d0%b8%d1%81%d1%82%d0%ba%d0%b0-%d0%b8-%d0%be%d0%b1%d1%81%d0%bb%d1%83%d0%b6%d0%b8%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b9-%d0%b1%d0%b0%d0%b7%d1%8b-pos/">Очистка и обслуживание почтовой базы postfix</a> появились сначала на <a href="https://clip-clap.ru">Clip-Clap</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://clip-clap.ru/it/%d1%81%d0%be%d1%84%d1%82-%d0%b8-%d0%be%d1%81/linux/%d0%be%d1%87%d0%b8%d1%81%d1%82%d0%ba%d0%b0-%d0%b8-%d0%be%d0%b1%d1%81%d0%bb%d1%83%d0%b6%d0%b8%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%87%d1%82%d0%be%d0%b2%d0%be%d0%b9-%d0%b1%d0%b0%d0%b7%d1%8b-pos/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Кэширование страницы с использованием Disk: Enhanced 
Минифицировано с помощью Disk
Кэширование БД с использованием Disk (Request-wide (широкий запрос) modification query)

Served from: clip-clap.ru @ 2026-05-18 19:14:41 by W3 Total Cache
-->