5.5 KiB
Changelog
0.1.0
Logika dopasowana do PostfixAdmin 4.0.5 / master, przygotowanie do pracy produkcyjnej.
Zgodność z PostfixAdmin
- Limity domen:
-1= wyłączone,0= bez limitu (wcześniej-1przy aliasach znaczyło „bez limitu”); licznik aliasów nie obejmuje aliasów skrzynek. - Quota skrzynek liczona jak
check_quota()/allowed_quota(); formularz pokazuje dozwolone maksimum. Wyłączona funkcja quota nie nadpisuje już quota skrzynek zerem. alias_control/alias_control_admindotyczą wyłącznie aliasów skrzynek (przekierowań); wcześniej blokowały tworzenie wszystkich aliasów.- Alias nie może wskazywać na siebie; dozwolone konta lokalne (
root) i@domenadla catch-all; listy administratora pomijają aliasy skrzynek. - Edycja skrzynki zawsze synchronizuje aktywność aliasu skrzynki; edycja częściowa nie resetuje pól (SMTP, telefon, e-mail).
- Edycja domeny bez podanych limitów zachowuje dotychczasowe wartości (wcześniej przywracała domyślne).
- Domena: walidacja
password_expiry(0–36500), konflikt zvacation_domain, usuwanie w transakcji. - Administrator domeny widzi tylko aktywne domeny bez backup MX (
list_domains_for_admin). - Administratorzy: zachowanie listy domen superadmina, ochrona przed odebraniem sobie uprawnień.
- Autoresponder: „Wracam” dezaktywuje zamiast usuwać, czyszczenie
vacation_notification, godziny od/do,vacation_choice_of_reply. - Fetchmail: hasło źródłowe zapisywane base64, jak oczekuje
fetchmail.pl. recipient_delimitertraktowany jako zbiór znaków; status POP/IMAP jak wgen_show_status().edit_mailbox_name: użytkownik skrzynki może zmienić własną nazwę (globalnie lub dla listy domen).- Nowe akcje: przełączanie aktywności (domeny, skrzynki, aliasy, domeny aliasowe, administratorzy), przekierowania skrzynki, wyszukiwanie globalne i w domenie, stronicowanie, filtr aktywności aliasów, dziennik ze stronicowaniem.
Instalacja i utrzymanie
--init-schema [--dry-run](odpowiedniksetup.php/upgrade.php),--create-superadmin,--integrity-check,--refresh-dns,--help.- Baza developerska tworzona tym samym kodem co produkcyjny schemat.
Bezpieczeństwo
trusted_proxies– poprawny adres klienta za reverse proxy (limit logowań, wyjątki TOTP).- Rewalidacja sesji, wylogowanie innych sesji po zmianie hasła, czyszczenie pamięci sesji/limitów, opcjonalny HSTS.
- Logowanie z automatycznym rozpoznaniem konta (administrator, następnie skrzynka).
- Wiadomość powitalna wysyłana w tle, limit czasu SMTP 15 s.
Poprawki
- PostgreSQL: logowanie i listy nie działały (
CAST(boolean AS BIGINT), sumyNUMERIC, parametrytimestamp). - MySQL/PostgreSQL: sumy quota rzutowane na liczbę całkowitą.
Interfejs
- Nowy interfejs: adresy URL widoków (odświeżenie/zakładki/przycisk wstecz), lista wirtualna domeny, wyszukiwarka, stronicowanie, formularze z potwierdzeniem hasła i generatorem, błędy wyświetlane w oknie formularza, widok na telefonie, panel użytkownika (przekierowania, autoresponder, nazwa, 2FA).
- Teksty źródłowe po angielsku, kompletne tłumaczenie polskie (łącznie z komunikatami API).
0.0.3
-
Alias status is shown as a simple
Aliasbadge; catch-all aliases follow PostfixAdmin semantics (*in the form,@domainin the database), including edit/delete compatibility and catch-all domain forwarding to@target-domain. -
Fixed MySQL/MariaDB
TEXT/LONGTEXTdecoding throughsqlx::Any; alias destinations from PostfixAdmin (alias.goto) now render from the real database value instead of falling back to an empty string. -
Alias destination listing now normalizes
gotothrough the database dialect so targets render consistently on MySQL/MariaDB, PostgreSQL and SQLite. -
Static release validation no longer hard-codes the application or Rust version; it validates semantic versioning and Cargo/toolchain consistency instead.
-
Domain workspace now separates user aliases from technical/default aliases instead of mixing them in one table.
-
Alias tables keep the PostfixAdmin-RS data model (address, destination, description, delivery status, active state and actions) while using a clearer full-width layout inspired by classic PostfixAdmin.
-
Mailbox self-alias rows are hidden from the domain alias sections so mailbox-managed routing does not clutter the alias view.
-
Technical alias edit/delete controls follow the existing
special_alias_controland global-admin permissions. -
Release version bumped to 0.0.3.
0.0.2
- Mailbox and alias creation in a selected domain now accepts only the local part; the domain is read-only.
- Admin Vacation UI now searches/selects an existing mailbox and uses the same editor as a mailbox user.
- Vacation save/delete now synchronizes the PostfixAdmin autoreply transport address in
alias.goto, so the mail transport actually receives the vacation copy. - Vacation transport destinations are hidden from alias UI and do not affect alias delivery-status badges.
- Mailbox users can edit only alias destinations, Store & Forward, and Active; the backend also preserves protected fields on crafted requests.
- Default technical aliases (
abuse,hostmaster,postmaster,webmaster, according to config keys) are shown separately from user aliases. - Rspamd DKIM filesystem failures now report the operation and exact path instead of a generic I/O error.
- Debian package includes a one-time Rspamd DKIM permission helper using a dedicated shared group; private keys stay non-world-readable.
- Release version bumped to 0.0.2.