Web Analytics

self-hosted-simplelogin

⭐ 88 stars Russian by springcomp

🌐 Язык

SimpleLogin

Это самохостящийся docker-compose конфиг для SimpleLogin.

Необходимые условия

За исключением настройки DNS, которая обычно выполняется через интерфейс вашего регистратора домена, все последующие шаги необходимо выполнять на вашем сервере. Команды следует запускать в bash (или любой совместимой оболочке, такой как zsh). Если вы используете другие оболочки, например fish, пожалуйста, адаптируйте команды соответственно.

sudo apt update \
  && sudo apt install -y net-tools dnsutils

Настройка DNS

_Обратитесь к референсной документации для получения более подробной информации_

Обратите внимание, что изменения в DNS могут распространяться до 24 часов. На практике это происходит гораздо быстрее (~1 минута или около того по нашим тестам). При настройке DNS мы обычно используем домен с точкой (.) на конце, чтобы принудительно использовать абсолютное доменное имя.

Вам потребуется настроить следующие DNS-записи:

Настройте обязательные политики безопасности:

Дополнительные шаги:

Внимание: настройка записи CAA ограничит, какой центр сертификации сможет успешно выдавать SSL-сертификаты для вашего домена. Это предотвратит выпуск сертификатов с тестовых серверов Let’s Encrypt. Возможно, стоит отложить добавление этой записи до успешного выпуска SSL-сертификатов для вашего домена.

Docker

Если у вас ещё не установлен Docker на сервере, пожалуйста, следуйте инструкциям на странице Docker CE для Ubuntu для установки Docker.

Вы также можете установить Docker, используя скрипт docker-install, который

curl -fsSL https://get.docker.com | sh

Включите IPv6 для сети мост по умолчанию

{
  "ipv6": true,
  "fixed-cidr-v6": "2001:db8:1::/64",
  "experimental": true,
  "ip6tables": true
}

Эта процедура поможет вам запустить весь стек с использованием Docker-контейнеров. Это включает:

Запуск SimpleLogin из Docker-контейнеров:

Postgres SQL

В этом репозитории запускается postgres SQL в Docker-контейнере.

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

Запуск приложения

Запустите приложение с помощью следующих команд:

docker compose up --detach --remove-orphans --build && docker compose logs -f

В этот момент вы можете настроить Авторизацию Центра Сертификации (CAA).

Следующие шаги

Если все вышеперечисленные шаги прошли успешно, откройте и создайте свой первый аккаунт!

По умолчанию новые аккаунты не являются премиальными, поэтому не имеют неограниченных псевдонимов. Чтобы сделать ваш аккаунт премиальным, перейдите в базу данных, таблицу "users" и установите значение столбца "lifetime" на "1" или "TRUE":

docker compose exec -it postgres psql -U myuser simplelogin
UPDATE users SET lifetime = TRUE;
\q

После того как вы создали все необходимые учетные записи для входа, добавьте эти строки в файл .env, чтобы запретить дальнейшую регистрацию:

DISABLE_REGISTRATION=1
DISABLE_ONBOARDING=true

Затем, чтобы перезапустить веб-приложение, выполните: docker compose restart app

Разное

Конфигурация Postfix - Spamhaus

Проект Spamhaus поддерживает надежный список IP-адресов, известных как источники СПАМа. Вы можете проверить, находится ли данный IP-адрес в этом списке, отправляя запросы в инфраструктуру DNS.

Поскольку Spamhaus блокирует запросы, поступающие от публичных (открытых) DNS-резолверов (см.: ), а ваш контейнер postfix может использовать публичный резолвер по умолчанию, рекомендуется зарегистрироваться для бесплатного Spamhaus Data Query Service и получить ключ Spamhaus DQS.

Вставьте этот ключ как SPAMHAUS_DQS_KEY в ваш .env

Если DQS-ключ не предоставлен, ваш контейнер postfix проверит, принимают ли публичные зеркала Spamhaus его запросы, и будет использовать их вместо. Если Spamhaus отклоняет запросы вашего контейнера postfix к публичным зеркалам, сервис будет полностью отключен.

Конфигурация Postfix - Виртуальные алиасы

Конфигурация postfix поддерживает виртуальные алиасы с использованием файлов postfix/conf.d/virtual и postfix/conf.d/virtual-regexp. Эти файлы автоматически создаются при запуске на основе соответствующих шаблонов postfix/templates/virtual.tpl и postfix/templates/virtual-regexp.tpl.

Конфигурация по умолчанию следующая:

#### virtual.tpl

Файл virtual поддерживает настройки postfix virtual_alias_maps. Он включает правило, которое сопоставляет unknown@mydomain.com с contact@mydomain.com, чтобы продемонстрировать получение и электронной почты с определенного адреса, который не соответствует существующему алиасу, на другой, который соответствует.

``postfix-conf unknown@mydomain.com contact@mydomain.com


#### virtual-regexp.tpl

Файл virtual-regexp поддерживает настройки postfix virtual_alias_maps. Он включает правило, которое перенаправляет письма, адресованные на произвольный поддомен, который не соответствует существующему алиасу, на новый алиас, принадлежащий каталогу, имя которого взято из поддомена. Этот алиас может быть создан на лету, если он не существует.

postfix-conf /^([^@]+)@([^.]+)\.mydomain.com/ $2/$1@mydomain.com `

Например, письма, отправленные на someone@directory.mydomain.com, будут перенаправлены postfix на directory/someone@mydomain.com`.

Как обновиться с версии 3.4.0

_Этот раздел был перенесён в справочную документацию_

Как обновиться с предыдущей конфигурации на базе NGinx

_Этот раздел был перенесён в справочную документацию_

--- Tranlated By Open Ai Tx | Last indexed: 2026-03-15 ---