Необходимо написать bash скрипт под Ubuntu 22.04, который должен запускаться на чистой ОС и выполнять следующие задачи без участия юзера:
Начальные условия: юзер закачивает в /root текстовые файлы с данными по доменам, почтовым ящикам и IP:
- domains.txt - список доменных имен, которые нужно прописать на сервере, а также IP для каждого домена.
- mailbox.txt - список почтовых ящиков, которые необходимо создать для каждого домена.
- mailpass.txt - пароль для создаваемых ящиков (один общий для всех).
- site .zip - архив, содержимое которого нужно распаковать в корень каждого домена.
Задача скрипта:
- Прописать домены на сервере со своими IP. В корень каждого домена распаковать zip архив.
- Домены должны работать через обычный HTTP протокол. SSL не нужен. Установить Apache и версию php 5.6
- Создать от имени каждого домена нужные почтовые ящики из списка mailbox.txt и паролем из mailpass.txt
- Сгенерировать приватные и публичные DKIM ключи для каждого домена (для этой задачи УЖЕ есть пример отдельного bash скрипта, который генерирует ключи и создает под каждый домен приватный и публичный ключ в отдельных txt файлах для каждого домена). Можно использовать этот готовый bash, или интегрируйте его в единый bash скрипт, или напишите сами отдельно.
- Установить и настроить почтовый smtp сервер на базе exim (или любой другой), который сможет отправлять почту.
- Установить почтовый клиент для доступа к любому почтовому ящику (например Roundcube, или любой другой, который позволит из браузера через авторизацию заходить в ящики для проверки входящей почты).
- Установить сервер баз данных MySql 10.3
Прокси сервер Nginx НЕ нужен ! Работать должно через файл .htaccess
P.S> Для создания и внесения необходимых записей в DNS уже есть отдельный bash скрипт для работы с DNSmanager от ISPsystem. Никаких операций с DNS писать НЕ нужно.
Конечный результат отработки: в браузере открывается по http каждый домен и отображается содержимое распакованного zip архива. По отдельному адресу возможно авторизоваться в почтовом клиенте и проверить содержимое выбранного почтового ящика. Возможность отправить почту от имени любого ящика при подключении к smtp через внешнюю программу работы с почтой.
ВАЖНО: после запуска скрипт должен выполняться автоматически без дальнейшего участия юзера. Т.е. не должно быть каких-то диалогов "Желаете это - нажмите сюда". Т.е. если выполняется установка какого-то модуля, то она происходит автоматически без дополнительного вмешательства юзера.
Работа через "сейф" и только с непосредственным исполнителем без посредников (компаний, команд и т.п.)
Прошу в ваших предложениях сразу указывать бюджет и сроки работы.