Wymagane jest napisanie skryptu bash dla Ubuntu 22.04, który powinien być uruchamiany na czystym systemie operacyjnym i wykonywać następujące zadania bez udziału użytkownika:
Warunki początkowe: użytkownik przesyła do /root pliki tekstowe z danymi dotyczącymi domen, skrzynek pocztowych i adresów IP:
- domains.txt - lista nazw domen, które należy zarejestrować na serwerze, a także adresy IP dla każdej domeny.
- mailbox.txt - lista skrzynek pocztowych, które należy utworzyć dla każdej domeny.
- mailpass.txt - hasło dla tworzonych skrzynek (jedno wspólne dla wszystkich).
- site.zip - archiwum, którego zawartość należy rozpakować w katalogu głównym każdej domeny.
Zadanie skryptu:
- Zarejestrować domeny na serwerze z odpowiednimi adresami IP. W katalogu głównym każdej domeny rozpakować archiwum zip.
- Domeny powinny działać przez zwykły protokół HTTP. SSL nie jest potrzebny. Zainstalować Apache i wersję PHP 5.6
- Utworzyć w imieniu każdej domeny potrzebne skrzynki pocztowe z listy mailbox.txt i hasłem z mailpass.txt
- Wygenerować prywatne i publiczne klucze DKIM dla każdej domeny (na tę zadanie JUŻ istnieje przykład oddzielnego skryptu bash, który generuje klucze i tworzy dla każdej domeny prywatny i publiczny klucz w oddzielnych plikach txt). Można użyć tego gotowego skryptu bash, zintegrować go w jeden skrypt bash lub napisać osobno.
- Zainstalować i skonfigurować serwer SMTP poczty na bazie exim (lub inny), który będzie mógł wysyłać pocztę.
- Zainstalować klienta poczty do dostępu do dowolnej skrzynki pocztowej (na przykład Roundcube lub inny, który pozwoli na logowanie się przez przeglądarkę do skrzynek w celu sprawdzenia przychodzącej poczty).
- Zainstalować serwer baz danych MySql 10.3
Serwer proxy Nginx NIE jest potrzebny! Powinno działać przez plik .htaccess
P.S> Do tworzenia i wprowadzania niezbędnych wpisów w DNS już istnieje oddzielny skrypt bash do pracy z DNSmanager od ISPsystem. Żadne operacje z DNS nie są potrzebne.
Ostateczny wynik działania: w przeglądarce otwiera się przez http każda domena i wyświetla zawartość rozpakowanego archiwum zip. Pod oddzielnym adresem możliwe jest zalogowanie się w kliencie poczty i sprawdzenie zawartości wybranej skrzynki pocztowej. Możliwość wysłania poczty w imieniu dowolnej skrzynki przy połączeniu z SMTP przez zewnętrzny program do obsługi poczty.
WAŻNE: po uruchomieniu skrypt powinien działać automatycznie bez dalszego udziału użytkownika. Tzn. nie powinno być żadnych dialogów "Czy chcesz to - naciśnij tutaj". Tzn. jeśli odbywa się instalacja jakiegoś modułu, to odbywa się automatycznie bez dodatkowej interwencji użytkownika.
Praca przez "safe" i tylko z bezpośrednim wykonawcą bez pośredników (firm, zespołów itp.)
Proszę w swoich ofertach od razu podać budżet i terminy pracy.