Roundcube od wielu lat pozostaje jednym z najpopularniejszych webmaili wykorzystywanych na własnych serwerach pocztowych. Korzystają z niego zarówno małe firmy utrzymujące pojedynczy VPS, jak i większe środowiska hostingowe obsługujące setki lub tysiące skrzynek email. Popularność Roundcube wynika przede wszystkim z prostoty, niskich wymagań oraz ogromnej kompatybilności z klasycznymi środowiskami Linux, Apache, Nginx, OpenLiteSpeed czy cPanel.
Mimo ogromnej popularności Roundcube nadal nie posiada natywnej obsługi BIMI, czyli Brand Indicators for Message Identification. W praktyce oznacza to, że nawet jeśli domena posiada poprawnie skonfigurowany rekord BIMI, użytkownik Roundcube nie zobaczy oficjalnego logo firmy obok wiadomości email tak jak ma to miejsce w Gmailu czy Apple Mail.
Właśnie dlatego powstał BIMI Plugin for Roundcube.
Projekt został przygotowany z myślą o administratorach serwerów pocztowych, środowiskach hostingowych oraz firmach korzystających z własnej infrastruktury mailowej. Plugin dodaje pełną obsługę BIMI do Roundcube 1.6.x i pozwala wyświetlać logo nadawców bezpośrednio w interfejsie webmaila.
Rozwiązanie powstało między innymi na bazie doświadczeń związanych z utrzymaniem infrastruktury pocztowej dla klientów DataHouse oraz Hostilla, gdzie Roundcube nadal pozostaje jednym z najczęściej wykorzystywanych webmaili. Wraz ze wzrostem popularności BIMI, DMARC oraz nowoczesnych metod uwierzytelniania poczty pojawił się problem braku wsparcia dla identyfikacji wizualnej nadawców w klasycznych instalacjach self-hosted.
BIMI Plugin for Roundcube rozwiązuje właśnie ten problem.
Plugin automatycznie wykrywa rekord BIMI domeny nadawcy, pobiera wskazane logo SVG, zapisuje je lokalnie w cache i wyświetla bezpośrednio w interfejsie Roundcube. Obsługiwane są zarówno standardowe rekordy BIMI bez certyfikatów, jak i bardziej rygorystyczne konfiguracje wykorzystujące certyfikaty VMC lub CMC.
Przykładowy rekord BIMI wygląda następująco:
default._bimi.example.com TXT "v=BIMI1; l=https://example.com/logo.svg;"
Dla domen wykorzystujących certyfikaty BIMI rekord może wyglądać tak:
default._bimi.example.com TXT "v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/cert.pem;"
Plugin analizuje rekord BIMI, pobiera logo z pola l= oraz opcjonalnie obsługuje certyfikat wskazany w polu a=. Następnie logo może zostać wyświetlone użytkownikowi wraz z dodatkowymi oznaczeniami zaufania.
Jednym z głównych założeń projektu było przygotowanie rozwiązania, które będzie mogło działać zarówno w środowiskach bardziej restrykcyjnych, jak i w konfiguracjach bardziej liberalnych. W praktyce wiele domen posiada już poprawne rekordy BIMI oraz logo SVG, ale nadal nie korzysta jeszcze z płatnych certyfikatów VMC/CMC. Z tego powodu plugin umożliwia administratorowi lub użytkownikowi wybór sposobu działania.
Dostępne są trzy tryby pracy:
całkowite wyłączenie BIMI,
wyświetlanie logo wyłącznie po poprawnej walidacji certyfikatu,
wyświetlanie logo również dla domen bez certyfikatu BIMI.
Domyślnie plugin działa w trybie bardziej liberalnym, dzięki czemu użytkownicy mogą widzieć większą liczbę logo BIMI nawet wtedy, gdy nadawca nie wdrożył jeszcze pełnej certyfikacji wymaganej przez największych dostawców poczty.
W środowiskach hostingowych takich jak DataHouse czy Hostilla takie podejście okazało się szczególnie praktyczne, ponieważ pozwala prezentować branding klientów jeszcze przed pełnym wdrożeniem certyfikatów VMC. Dzięki temu administratorzy mogą stopniowo rozwijać obsługę BIMI bez konieczności natychmiastowego przechodzenia na najbardziej rygorystyczne modele walidacji.
Plugin został przygotowany z dużym naciskiem na bezpieczeństwo. W przeciwieństwie do wielu prostych implementacji BIMI przeglądarka użytkownika nie pobiera bezpośrednio zewnętrznego pliku SVG z domeny nadawcy. Logo pobierane jest po stronie serwera, zapisywane lokalnie w cache i udostępniane przez własny mechanizm proxy.
Dzięki temu możliwe jest:
ograniczenie ryzyka prywatności,
zmniejszenie możliwości śledzenia użytkowników,
lokalna analiza bezpieczeństwa SVG,
pełniejsza kontrola nad pobieranymi zasobami.
Plugin może opcjonalnie wykonywać dodatkowe kontrole bezpieczeństwa, między innymi:
walidację struktury SVG,
analizę XML pobranego pliku,
sprawdzanie nagłówka Content-Type,
kontrolę polityki DMARC,
lokalną walidację certyfikatów BIMI przez OpenSSL,
skanowanie pobranych plików SVG przy użyciu ClamAV.
W środowiskach produkcyjnych zalecane jest włączenie pełnej walidacji SVG oraz sprawdzania DMARC. Administrator może również aktywować skanowanie ClamAV, jeżeli serwer posiada lokalny silnik antywirusowy.
Plugin obsługuje także system oznaczania zaufanych domen przy użyciu zielonej obwódki wokół logo BIMI. Zielona obwódka może zostać aktywowana automatycznie po poprawnej walidacji certyfikatu BIMI albo na podstawie lokalnej listy zaufanych domen administratora.
Domyślna lista przykładowych domen zawiera między innymi:
datahouse.pl
hostilla.pl
etop.pl
Pozwala to tworzyć bardziej elastyczne polityki zaufania w środowiskach hostingowych, firmowych oraz prywatnych instalacjach pocztowych.
BIMI Plugin for Roundcube został przygotowany przede wszystkim dla środowisk self-hosted oraz klasycznych serwerów Linux. Plugin dobrze współpracuje z Apache, Nginx, OpenLiteSpeed, PHP-FPM oraz instalacjami cPanel. Rozwiązanie było rozwijane i testowane między innymi na środowiskach wykorzystywanych przez DataHouse oraz Hostilla, dzięki czemu zachowuje kompatybilność z typowymi konfiguracjami hostingowymi używanymi przez firmy i administratorów VPS.
Sama instalacja pluginu jest stosunkowo prosta i sprowadza się do dodania katalogu pluginu do folderu plugins w Roundcube oraz aktywacji modułu w pliku konfiguracyjnym. Plugin może działać zarówno w małych środowiskach prywatnych, jak i większych instalacjach obsługujących rozbudowaną infrastrukturę pocztową.
Ważnym elementem projektu było także zachowanie kompatybilności z klasycznym wyglądem Roundcube. Logo BIMI może być wyświetlane zarówno na liście wiadomości, jak i bezpośrednio przy polu nadawcy w otwartym emailu. Administrator może zdecydować, czy logo ma pojawiać się obok nagłówka wiadomości, czy w osobnym obszarze interfejsu.
Plugin posiada również wielojęzyczny interfejs użytkownika i obecnie dostępny jest między innymi w języku polskim oraz angielskim.
Coraz większa liczba firm wdraża obecnie BIMI, DMARC oraz nowoczesne zabezpieczenia poczty email. Dotyczy to zarówno dużych platform, jak i mniejszych środowisk korzystających z własnych serwerów pocztowych. Problem polega na tym, że wiele klasycznych webmaili nadal nie nadąża za tymi zmianami i nie oferuje użytkownikom nowoczesnej identyfikacji wizualnej nadawców.
BIMI Plugin for Roundcube pozwala wdrożyć obsługę BIMI we własnym webmailu bez konieczności przebudowy całego systemu pocztowego. Rozwiązanie zostało stworzone z myślą o realnych potrzebach administratorów, hostingów oraz środowisk self-hosted wykorzystujących Roundcube jako podstawowy interfejs pocztowy.
Projekt jest rozwijany jako niezależne rozwiązanie związane ze środowiskami Linux hosting, self-hosted mail oraz nowoczesną infrastrukturą pocztową. Za projektem stoją doświadczenia zdobyte przy administracji i utrzymaniu środowisk pocztowych DataHouse, Hostilla oraz eTop.