No description
Find a file
2025-08-03 13:13:45 +02:00
templates feat(core): Przebudowa na zintegrowaną platformę wielousługową (v5.0) 2025-08-03 13:11:54 +02:00
.gitattributes Initial commit 2025-08-03 12:17:39 +02:00
autoscript.conf.example feat(core): Przebudowa na zintegrowaną platformę wielousługową (v5.0) 2025-08-03 13:11:54 +02:00
README.md Update README.md 2025-08-03 13:13:45 +02:00
start.sh feat(core): Przebudowa na zintegrowaną platformę wielousługową (v5.0) 2025-08-03 13:11:54 +02:00

AutoScript Version License

AutoScript: Zintegrowana Platforma Serwerowa

AutoScript to w pełni zintegrowane, zautomatyzowane i bezpieczne rozwiązanie do wdrażania i zarządzania kompletną, wielousługową platformą serwerową. Ten projekt przekształca "surowy" serwer w gotowe do pracy, zabezpieczone i monitorowane środowisko, zdolne do hostowania szerokiej gamy aplikacji jednocześnie.


Spis Treści

  1. Architektura Platformy: Przegląd Usług
  2. Przewodnik Konfiguracyjny: Zdobywanie Kluczy
  3. Instalacja (Szybki Start)
  4. Przewodnik po Komendach
  5. Kopie Zapasowe i Odtwarzanie
  6. Aspekty Bezpieczeństwa
  7. Licencja

1. Architektura Platformy: Przegląd Usług

AutoScript buduje kompleksowy ekosystem usług, gotowych do użycia zaraz po instalacji:

Kategoria Usługa Rola w Systemie
Sieci Społecznościowe Mastodon Zdecentralizowana, federacyjna sieć społecznościowa.
Forum Dyskusyjne Discourse Nowoczesna, w pełni funkcjonalna platforma do prowadzenia forów internetowych.
System Blogowy WordPress Najpopularniejszy na świecie system zarządzania treścią (CMS), idealny do prowadzenia bloga lub strony.
Czytnik RSS FreshRSS Osobisty agregator wiadomości i czytnik kanałów RSS, hostowany na własnym serwerze.
Poczta E-mail Własny serwer poczty Kompletny, samowystarczalny serwer pocztowy (IMAP/SMTP) z panelem administracyjnym.
Synchronizacja Poczty imapsync Narzędzie do masowej migracji i synchronizacji kont e-mail między serwerami.
Monitoring i Status Uptime Kuma Pulpit do monitorowania dostępności wszystkich Twoich usług z publiczną stroną statusu.
Infrastruktura Traefik, Docker, PostgreSQL, etc. Solidny fundament składający się z reverse proxy, konteneryzacji i baz danych.

2. Przewodnik Konfiguracyjny: Zdobywanie Kluczy

(Ta sekcja pozostaje taka sama jak w poprzedniej wersji, opisując pozyskiwanie klucza SSH i tokenu Cloudflare. Dodatkowo należy opisać pozyskiwanie kluczy do Backblaze B2).

Klucze do Kopii Zapasowych (Backblaze B2)

  1. Zaloguj się na swoje konto Backblaze.
  2. Przejdź do sekcji "B2 Cloud Storage" > "Buckets" i stwórz nowy, prywatny bucket.
  3. Przejdź do "App Keys" i wygeneruj nowy klucz aplikacyjny z dostępem do Twojego bucketa. Będziesz potrzebował applicationKeyId (jako B2_ACCOUNT_ID) oraz applicationKey (jako B2_ACCOUNT_KEY).

3. Instalacja (Szybki Start)

Proces instalacji pozostaje taki sam jak w poprzednich wersjach, ale teraz wdraża znacznie więcej usług!

4. Przewodnik po Komendach

Do istniejącej listy komend dochodzą nowe, dedykowane dla każdej usługi:

  • deploy_discourse, deploy_wordpress, deploy_freshrss, deploy_mail, deploy_status
  • backup:init, backup:run, backup:restore <snapshot_id>

5. Kopie Zapasowe i Odtwarzanie

AutoScript jest w pełni zintegrowany z Restic i Backblaze B2, aby zapewnić bezpieczeństwo Twoich danych.

  • Automatyzacja: Po poprawnej konfiguracji, skrypt automatycznie tworzy zadanie cron, które codziennie wykonuje szyfrowaną kopię zapasową całego folderu /opt/services (zawierającego wszystkie dane aplikacji) do Twojego bucketa B2.
  • Odtwarzanie: W razie awarii, możesz użyć komendy sudo ./start.sh backup:restore <ID_MIGAWKI>, aby przywrócić dane.

6. Aspekty Bezpieczeństwa: Architektura "Secure by Default"

AutoScript nie traktuje bezpieczeństwa jako opcji, ale jako fundamentalny element wbudowany w każdy aspekt platformy. Oto kluczowe mechanizmy obronne, które są wdrażane automatycznie:

Poziom Systemu Operacyjnego

  • Minimalizacja Powierzchni Ataku: Skrypt instaluje tylko niezbędne pakiety. Nie ma zbędnego oprogramowania, które mogłoby stanowić potencjalne zagrożenie.
  • Wzmocnione Uwierzytelnianie: Logowanie hasłem do SSH jest całkowicie wyłączone. Dostęp jest możliwy tylko za pomocą kluczy kryptograficznych. Dodatkowo, dostęp do uprawnień root (przez sudo) jest chroniony przez uwierzytelnianie dwuetapowe (TOTP).
  • Ograniczenie Dostępu: Logowanie na konto root jest zablokowane. Dedykowany użytkownik admin ma ograniczone uprawnienia, które może podnieść tylko za pomocą sudo (z weryfikacją 2FA).
  • Firewall (UFW): Zapora sieciowa jest skonfigurowana w trybie "blokuj wszystko, zezwalaj na wybrane". Otwierane są tylko porty niezbędne do działania wdrożonych usług.

Poziom Aplikacji i Sieci

  • Proaktywna Ochrona przed Włamaniami (IPS): CrowdSec analizuje zachowanie w sieci i proaktywnie blokuje adresy IP znane ze złośliwej aktywności na całym świecie. Fail2ban dodatkowo monitoruje logi w poszukiwaniu prób ataków brute-force.
  • Szyfrowanie End-to-End: Cały ruch do Twoich usług jest automatycznie szyfrowany za pomocą certyfikatów SSL/TLS od Let's Encrypt, zarządzanych przez Traefik.
  • Izolacja Kontenerów: Wszystkie usługi działają w kontenerach Docker, co izoluje je od siebie i od systemu hosta. Dodatkowo, włączenie userns-remap mapuje użytkownika root wewnątrz kontenera na zwykłego użytkownika na hoście, co drastycznie ogranicza potencjalne szkody w razie "ucieczki" z kontenera.

Poziom Danych

  • Zarządzanie Sekretami (sops): Wszystkie wrażliwe dane klucze API, hasła do baz danych, tokeny są szyfrowane na dysku za pomocą sops i klucza age. Nigdy nie są przechowywane jako jawny tekst.
  • Szyfrowane Kopie Zapasowe: Wszystkie kopie zapasowe tworzone przez Restic są szyfrowane end-to-end przed wysłaniem ich do zewnętrznej lokalizacji (Backblaze B2). Bez hasła do repozytorium nikt nie jest w stanie odczytać Twoich danych.

7. Licencja

Projekt jest udostępniany na licencji MIT.