RainLoop + tomav / docker-mailserver: Невозможно подключиться к серверу из клиента веб-почты RainLoop - PullRequest
0 голосов
/ 30 июня 2018

Для начала я следовал этому руководству до буквы: https://www.davd.eu/byecloud-building-a-mailserver-with-modern-webmail/

Я пытаюсь создать почтовый сервер для своего сервера, но я решил сначала протестировать вышеуказанную реализацию локально. Убедитесь, что я могу все запустить и запустить, по крайней мере, чтобы я мог видеть то, что я должен ожидать, прежде чем пробовать это на сервере. Вот что я сделал:

  1. Добавлен "127.0.0.1 mail.fancydomain.tld" в "/ etc / hosts" (я хотел начать с использования mail.fancydomain.tld, а не моего фактического домена, на котором будет работать почтовый сервер, чтобы минимизировать любые изменения во время следования руководство)
  2. Я создал этот "docker-compose.yml":

       version: "3"
    
        services:
          rainloop:
            image: hardware/rainloop
            links:
              - mail
            volumes:
              - ./data/rainloop:/rainloop/data
    
          mail:
            image: tvial/docker-mailserver:latest
            restart: always
            hostname: mail
            domainname: fancydomain.tld
            container_name: mail
            ports:
              - "25:25"
              - "143:143"
              - "587:587"
              - "993:993"
              - "4190:4190"
            volumes:
              - ./data/mail/data:/var/mail
              - ./data/mail/state:/var/mail-state
              - ./mail/config:/tmp/docker-mailserver/
              - ./data/entry/acme/acme-v01.api.letsencrypt.org/sites/mail.fancydomain.tld:/tmp/ssl:ro
            environment:
              - ENABLE_SPAMASSASSIN=1
              - ENABLE_CLAMAV=1
              - ENABLE_FAIL2BAN=1
              - ENABLE_POSTGREY=1
              - ONE_DIR=1
              - DMS_DEBUG=0
              - ENABLE_MANAGESIEVE=1
            cap_add:
              - NET_ADMIN
    
          entry:
            image: abiosoft/caddy:0.10.4
            restart: always
            privileged: true
            links:
              - rainloop
            ports:
              - "80:80"
              - "443:443"
            volumes:
              - ./entry/Caddyfile:/etc/Caddyfile
              - ./data/entry:/root/.caddy
    

    Существует небольшая разница между этим "docker-compose.yml" и тем, который предоставлен ранее упомянутым сайтом. Все, что я сделал, это удалил переменные среды с префиксом «SSL_», как указано в руководстве для людей, которые просто запускают его локально.

  3. Я создал каталог в текущем рабочем каталоге с именем «entry» и создал «Caddyfile» со следующим содержимым:

       http://mail.fancydomain.tld {
            proxy / rainloop:8888 {
                transparent
            }
        }
    

    Опять же, только небольшое отличие от того, который представлен на сайте. Я поставил перед доменом префикс "http://"" по той же причине, что и в шаге 2.

  4. Я успешно запустил контейнер с docker-compose up -d
  5. Я запустил: curl -o setup.sh https://raw.githubusercontent.com/tomav/docker-mailserver/master/setup.sh; chmod a+x ./setup.sh, чтобы получить скрипт установки.
  6. Я запустил: ./setup.sh email add webmaster@fancydomain.tld fancypassword с этими точными учетными данными, снова, чтобы свести к минимуму изменения для отслеживания.
  7. Я установил записи DKIM, запустив ./setup.sh config dkim, но я не продолжил работу с этими записями ... Поскольку я не уверен, что делать с ними локально.
  8. Я успешно подключился к клиенту RainLoop Webmail через "http://mail.fancydomain.tld/" и перешел к" http://mail.fancydomain.tld/?admin" для входа с учетными данными: Login = пароль администратора = 12345
  9. Я перешел к «Домены»> «Добавить домен» и использовал заполненную форму следующим образом:

    Name: fancydomain.tld
        IMAP
          Server: mail
          Port: 143
          Secure: STARTTLS
        SMTP
          Server: mail
          Port: 587
          Secure: STARTTLS
          Use short login: Checked
          Use authentication: Checked
        SIEVE
          Allow sieve scripts: Checked
          Server: mail
          Port: 4190
          Secure: STARTTLS
    
  10. Отсюда я вернулся к "http://mail.fancydomain.tld" и попытался войти в клиент веб-почты с таким логином: Login=webmaster@fancydomain.tld Пароль = fancypassword

Здесь я получаю сообщение об ошибке: «Не удается подключиться к серверу»

Я не уверен, куда идти отсюда. Я не знаю, как устранить неполадки вообще. Могу ли я получить некоторую помощь о том, что я должен делать, чтобы устранить неполадки и выяснить, где ошибка?

Спасибо!

07/01/18 Обновление: Итак ... Я добавил "127.0.0.1 mail" в "/ etc / hosts", и это сработало! Теперь RainLoop может подключиться к моему почтовому серверу! Это поднимает новый вопрос, хотя. На шаге 9 вместо «mail» для трех полей «Server» я попытался «mail.fancydomain.tld», и согласно тесту соединение отклоняется. Почему будет отказано в соединении для всего домена, а не для короткого домена?

1 Ответ

0 голосов
/ 10 июля 2018

Решение для этого - убедиться, что оба контейнера, RainLoop и Mail, совместно используют мостовую сеть. Тогда все конфигурации могут остаться прежними.

...