Подробный гайд: как предотвратить уход почты в спящий режим на Astra Linux

Астра Линукс: гайд по настройке почты без ухода в спящий режим. Keepalive, systemd, клиенты и сервера.

2026.04.04                  


Подробный гайд: как предотвратить уход почты в спящий режим на Astra LinuxПодробный гайд: как предотвратить уход почты в спящий режим на Astra Linux Ваш вопрос может касаться нескольких сценариев. Ниже приведены решения для каждого из них.

Сценарий 1: Почтовый клиент (Thunderbird, Evolution) теряет соединение при простое

Проблема

Почтовые клиенты могут терять IMAP/SMTP-соединение, когда система переходит в режим энергосбережения или когда сетевое соединение «засыпает».

Решение

1. Настройка keepalive для сетевого стека

Откройте /etc/sysctl.conf и добавьте:

# Keepalive для поддержания активных соединений
net.ipv4.tcp_keepalive_time = 60
net.ipv4.tcp_keepalive_intvl = 10
net.ipv4.tcp_keepalive_probes = 6
net.ipv4.tcp_keepalive_idle = 30

Примените настройки:

sudo sysctl -p

2. Настройка почтового клиента

Для Thunderbird:

  1. В адресной строке введите about:config

2. Найдите и измените параметры:

   mail.server.default.check_new_mail = true
   mail.server.default.check_time = 1
   mail.imap.idle_response_timeout = 29

3. Отключите спящий режим для Thunderbird через systemd:

# Создайте override-файл для пользователя
mkdir -p ~/.config/systemd/user/thunderbird.service.d/
cat > ~/.config/systemd/user/thunderbird.service.d/no-sleep.conf << 'EOF'
[Service]
Environment="SYSTEMD_INHIBIT=1"
EOF
systemctl --user daemon-reexec

Для Evolution:

  • Включите IMAP IDLE: Правка → Настройки → Учётные записи → Ваш аккаунт → Приём почты → Использовать IMAP IDLE
  • Уменьшите интервал проверки: Проверять новые сообщения каждые: 1 минута

3. Запрет спящего режима для процесса почты

Используйте systemd-inhibit для предотвращения сна во время работы клиента:

# Запуск Thunderbird с ингибитором сна
systemd-inhibit --what=idle:sleep --who="Thunderbird Mail" --why="Поддержание почтового соединения" \
  /usr/bin/thunderbird

Сценарий 2: Почтовые службы (Postfix, Dovecot) останавливаются при сне системы

Проблема

Службы могут быть остановлены при переходе системы в режим suspend/hibernate.

Решение

1. Запрет перехода системы в спящий режим (если сервер должен работать 24/7)

# Маскировка целей сна в systemd
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

Проверка статуса:

systemctl list-unit-files | grep -E 'sleep|suspend|hibernate'

2. Настройка служб для игнорирования событий сна

Для Dovecot (/etc/systemd/system/dovecot.service.d/no-sleep.conf):

[Service]
# Запрет остановки службы при сне
IgnoreOnIsolate=true
# Перезапуск после пробуждения
ExecStartPost=/bin/sleep 5
ExecStartPost=/usr/bin/systemctl restart dovecot

Для Postfix аналогично:

sudo mkdir -p /etc/systemd/system/postfix.service.d/
sudo tee /etc/systemd/system/postfix.service.d/no-sleep.conf << 'EOF'
[Service]
IgnoreOnIsolate=true
EOF
sudo systemctl daemon-reload

3. Настройка keepalive в Dovecot

В /etc/dovecot/conf.d/20-imap.conf:

# Поддержание долгоживущих IMAP-соединений
imap_idle_notify_interval = 2 mins
mail_max_userip_connections = 50
login_trusted_networks = 0.0.0.0/0

В /etc/dovecot/conf.d/10-master.conf:

service imap-login {
  inet_listener imap {
    port = 143
    # Keepalive для клиентов
    tcp_keepalive = yes
  }
}

Перезапустите службы:

sudo systemctl restart dovecot postfix

Сценарий 3: Мобильные устройства Astra Linux (режим "Мобильный")

Если вы используете Astra Linux в мобильном режиме, настройте энергосбережение через графический интерфейс:

  1. Откройте Настройки → Энергосбережение

2. В разделе Питание от батареи:

  • Установите «Перейти в режим сна через» → Никогда
  • Отключите автоматическое отключение экрана

3. Для почтовых приложений:

  • Добавьте их в исключения энергосбережения
  • Включите фоновую синхронизацию

Важно:

  • В Astra Linux Special Edition с включённым МРД (мандатным управлением) некоторые настройки могут быть заблокированы политиками безопасности. Согласуйте изменения с администратором ИБ.

Дополнительные рекомендации

1. Мониторинг активности сети

Установите powertop для диагностики энергопотребления:

sudo apt install powertop
sudo powertop --auto-tune
sudo powertop --html

2. Использование TLP для тонкой настройки

Если в вашей версии Astra Linux доступен tlp:

sudo apt install tlp tlp-rdw
sudo systemctl enable tlp
sudo systemctl start tlp

В /etc/default/tlp добавьте исключения для почтовых портов:

# Не отключать WiFi при работе от батареи, если используется почта
WIFI_PWR_ON_BAT=off
# Разрешить пробуждение по сети для почтового сервера
WOL_DISABLE=N

3. Настройка таймаутов SSH/сетевых соединений

Для предотвращения разрыва соединений при простое:

# /etc/ssh/sshd_config
ClientAliveInterval 60
ClientAliveCountMax 3

# /etc/ssh/ssh_config (для клиента)
ServerAliveInterval 60
ServerAliveCountMax 3

Проверка работоспособности

1. Тест IMAP IDLE:

openssl s_client -connect mail.yourdomain.ru:993 -quiet
a login "user@domain" "password"
a select INBOX
# Оставьте соединение открытым на 30+ минут — оно не должно разорваться

2. Проверка активности служб:

systemctl status dovecot postfix --no-pager
journalctl -u dovecot -u postfix -f

3. Тест на «засыпание»:

# Запустите в фоне и оставьте на час
watch -n 60 'date; netstat -tn | grep ESTABLISHED | grep -E ":(143|993|25|587)"'

Примечание:

  • Если вы используете Astra Linux Special Edition с сертифицированными СКЗИ, любые изменения в конфигурации должны проходить процедуру аттестации. Рекомендуется тестировать настройки на изолированном стенде перед внедрением в продуктивную среду.