Установка mailu при занятом порте 443 nginx

Установка и настройка почтового сервера является важной задачей для любой организации или веб-разработчика. Один из популярных вариантов для этих целей — mailu, который предоставляет легкий и удобный в использовании почтовый сервер, основанный на Docker.

Однако, по умолчанию mailu не использует HTTPS для защиты соединения. Вместо этого он работает на открытом порту 80. Но если вы хотите добавить безопасность и использовать порт 443 с SSL/TLS-сертификатом, вам необходимо настроить обратное прокси-соединение с сервером Nginx.

Для начала вам необходимо установить Nginx и сгенерировать SSL/TLS-сертификат для вашего домена. Затем вы должны создать конфигурационный файл Nginx, чтобы указать ему перенаправлять запросы с порта 443 на ваш сервер mailu.

server {

listen 443 ssl;

server_name example.com;

ssl_certificate /путь_к_вашему_сертификату;

ssl_certificate_key /путь_к_вашему_ключу;

location / {

proxy_pass http://mailu;

}

}

В приведенном выше примере, замените «example.com» на ваш домен и укажите пути к вашему SSL/TLS-сертификату и ключу. Затем вам останется только перезапустить Nginx и наслаждаться полной защитой вашего почтового сервера на порту 443!

Установка mailu совместно с nginx на порту 443

Шаг 1: Установка Docker и Docker Compose

Прежде чем продолжить установку Mailu, убедитесь, что на вашем сервере установлены Docker и Docker Compose. Если они отсутствуют, вы можете установить их следующими командами:

$ sudo apt update

$ sudo apt install docker docker-compose

Шаг 2: Установка Nginx

Для установки Nginx воспользуйтесь следующей командой:

$ sudo apt install nginx

Шаг 3: Генерация SSL-сертификата

Для обеспечения безопасного соединения необходимо сгенерировать самоподписанный SSL-сертификат. Для этого выполните следующие команды:

$ sudo openssl req -new -x509 -sha256 -days 365 -nodes -out /etc/nginx/cert.crt -keyout /etc/nginx/cert.key

Шаг 4: Настройка Nginx

Откройте файл конфигурации Nginx:

$ sudo nano /etc/nginx/sites-available/default

В открывшемся файле замените содержимое на следующую конфигурацию:

server {

    listen 443 ssl;

    server_name your_domain.com;

    ssl_certificate /etc/nginx/cert.crt;

    ssl_certificate_key /etc/nginx/cert.key;

    location / {

        proxy_pass http://127.0.0.1:8080;

    }

}

Шаг 5: Установка Mailu

Скачайте файл docker-compose.yml для установки Mailu следующей командой:

$ sudo wget https://raw.githubusercontent.com/Mailu/Mailu/1.7.0/docker-compose.yml

Откройте файл docker-compose.yml:

$ sudo nano docker-compose.yml

Найдите и измените следующие параметры:

mail.your_domain.com – замените «your_domain.com» на доменное имя вашего сервера.

smtp.your_domain.com – замените «your_domain.com» на доменное имя вашего сервера.

admin@your_domain.com – замените «your_domain.com» на доменное имя вашего сервера.

Создайте контейнеры для Mailu с помощью следующей команды:

$ sudo docker-compose up -d

Теперь Mailu должен быть установлен и готов к использованию в комбинации с Nginx на порту 443.