Позднее Ctrl + ↑

Обновляем clamav на территории РФ

Есть проблемы с антивирусом clamav на территории РФ, после первоначальной установки он у вас просто не запустится, т. к. не сможет обновить свои базы, как решить?

sudo mcedit /etc/clamav/freshclam.conf

редактируем конец файла, указав зеркало «pivotal-clamav-mirror.s3.amazonaws.com»

Checks 24
#DatabaseMirror db.local.clamav.net
#DatabaseMirror database.clamav.net
DatabaseMirror pivotal-clamav-mirror.s3.amazonaws.com

удалим старый файл с данными об обновлении баз

sudo rm /var/lib/clamav/freshclam.dat

останавливаем службу обновления антивируса

sudo systemctl stop clamav-freshclam.service

запускаем обновление баз вручную

sudo freshclam

запускаем службу обновления антивируса

sudo systemctl start clamav-freshclam.service

Увеличиваем размер принимаемого сообщения в iRedMail

Увеличим размер почтового сообщения до 35Мб

меняем настройки postfix

postconf -e message_size_limit=36700160
postconf -e mailbox_size_limit=36700160

перечитываем изменения службой postfix

sudo systemctl reload postfix

редактируем php.ini

sudo mcedit /etc/php/7.4/fpm/php.ini

ищем переменные и меняем значения на нужные нам

memory_limit = 256M;
upload_max_filesize = 35M;
post_max_size = 37M;

рестартим php

sudo systemctl restart php7.4-fpm

редактируем конфиг roundcube

sudo mcedit /opt/www/roundcubemail/config/config.inc.php

ищем настройку максимального размера сообщения и меняем значение

$config['max_message_size'] = '35M';

редактируем конфиг nginx

sudo mcedit /etc/nginx/conf-enabled/client_max_body_size.conf

ищем переменную и меняем значение на своё

client_max_body_size 100m;

проверяем правильность конфига

sudo nginx -t

перечитываем изменения службой nginx

sudo systemctl reload nginx

Выпускаем сертификат Let’s encrypt и настраиваем автоматический перевыпуск в iRedMail

устанавливаем certbot

sudo apt update
sudo apt install certbot

запрашиваем новый сертификат для домена mail.{domain}.ru

sudo certbot certonly --webroot --agree-tos --email postmaster@{domain}.ru -d mail.{domain}.ru -w /var/www/html/

открываем конфиги nginx и если нужно вносим изменения, сначала для http

sudo mcedit /etc/nginx/sites-enabled/00-default.conf

убедились, чтобы эти поля были раскомментированы

enable listen [::]:80;

затем для https

sudo mcedit /etc/nginx/sites-enabled/00-default-ssl.conf

убедились, чтобы эти поля были раскомментированы

add listen [::]:443 ssl http2;

проверяем правильность конфига

sudo nginx -t

перечитываем изменения службой nginx

sudo systemctl reload nginx

редактируем поти к сертификатам, самоподписанные меняем на let’s encrypt

sudo mcedit /etc/nginx/templates/ssl.tmpl

находим

ssl_certificate /etc/ssl/certs/iRedMail.crt;
ssl_certificate_key /etc/ssl/private/iRedMail.key;

меняем на это

ssl_certificate /etc/letsencrypt/live/mail.{domain}.ru/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mail.{domain}.ru/privkey.pem;

проверяем правильность конфига

sudo nginx -t

перечитываем изменения службой nginx

sudo systemctl reload nginx

правим кофиг postfix

sudo mcedit /etc/postfix/main.cf

находим

smtpd_tls_key_file = /etc/ssl/private/iRedMail.key
smtpd_tls_cert_file = /etc/ssl/certs/iRedMail.crt
smtpd_tls_CAfile = /etc/ssl/certs/iRedMail.crt

заменяем

smtpd_tls_key_file = /etc/letsencrypt/live/mail.{domain}.ru/privkey.pem
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.{domain}.ru/cert.pem
smtpd_tls_CAfile = /etc/letsencrypt/live/mail.{domain}.ru/chain.pem

перечитываем изменения службой postfix

sudo systemctl reload postfix

правим другой кофиг postfix, указываем на необходимость использования tls

sudo mcedit /etc/postfix/master.cf

добавляем

465     inet  n       -       n       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o content_filter=smtp-amavis:[127.0.0.1]:10026

перечитываем изменения службой postfix

sudo systemctl reload postfix

правим конфиг dovecot

sudo mcedit /etc/dovecot/dovecot.conf

находим

ssl_cert = </etc/ssl/certs/iRedMail.crt
ssl_key = </etc/ssl/private/iRedMail.key

заменяем

ssl_cert = </etc/letsencrypt/live/mail.{domain}.ru/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.{domain}.ru/privkey.pem

перечитываем изменения службой dovecot

sudo systemctl reload dovecot

осталось добавить в ротацию перевыпуск сертификата, для этого редактируем crontab

sudo crontab -e

add

# перевыпуск сертификатов Let's Encrypt
43 3 9 * * /usr/bin/certbot renew --post-hook "/usr/bin/systemctl reload nginx; /usr/bin/systemctl reload dovecot; /usr/bin/systemctl reload postfix"
45 3 9 * * /usr/sbin/service nginx reload
46 3 9 * * /usr/sbin/service postfix reload
47 3 9 * * /usr/sbin/service dovecot reload

не забудьте оставить пустую строку в конце (такие требования синтаксиса crontab)

Ранее Ctrl + ↓