E-post RFC-protokollstöd - Komplett guide för standarder & specifikationer

RFC Email Protocol Library Scene

Om detta dokument

Detta dokument beskriver RFC (Request for Comments) protokollstöd för Forward Email. Eftersom Forward Email använder WildDuck under huven för IMAP/POP3-funktionalitet, speglar protokollstödet och begränsningarna som dokumenteras här WildDucks implementation.

Important

Forward Email använder SQLite för meddelandelagring istället för MongoDB (som WildDuck ursprungligen använde). Detta påverkar vissa implementeringsdetaljer som dokumenteras nedan.

Källkod: https://github.com/forwardemail/forwardemail.net

Arkitekturöversikt


Jämförelse av e-posttjänster - Protokollstöd & RFC-standarders efterlevnad

Important

Sandboxad och kvantsäker kryptering: Forward Email är den enda e-posttjänsten som lagrar individuellt krypterade SQLite-mailboxar med ditt lösenord (som bara du har). Varje mailbox är krypterad med sqleet (ChaCha20-Poly1305), självständig, sandboxad och portabel. Om du glömmer ditt lösenord förlorar du din mailbox – inte ens Forward Email kan återställa den. Se Quantum-Safe Encrypted Email för detaljer.

Jämför e-postprotokollstöd och RFC-standarders implementering hos stora e-postleverantörer:

Funktion Forward Email Postfix/Dovecot Gmail iCloud Mail Outlook.com Fastmail Yahoo/AOL (Verizon) ProtonMail Tutanota
Pris för egen domän Gratis Gratis $7.20/mån $0.99/mån $7.20/mån $5/mån $3.19/mån $4.99/mån $3.27/mån
IMAP4rev1 (RFC 3501) Stöds Stöds Stöds Stöds Stöds Stöds Stöds ⚠️ Via Bridge ❌ Stöds inte
IMAP4rev2 (RFC 9051) ⚠️ Delvis ⚠️ Delvis ⚠️ 31% ⚠️ 92% ⚠️ 46% ⚠️ 69% ⚠️ 85% ⚠️ Via Bridge ❌ Stöds inte
POP3 (RFC 1939) Stöds Stöds Stöds ❌ Stöds inte Stöds Stöds Stöds ⚠️ Via Bridge ❌ Stöds inte
SMTP (RFC 5321) Stöds Stöds Stöds Stöds Stöds Stöds Stöds ⚠️ Via Bridge ❌ Stöds inte
JMAP (RFC 8620) Stöds inte ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte Stöds ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte
DKIM (RFC 6376) Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds
SPF (RFC 7208) Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds
DMARC (RFC 7489) Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds
ARC (RFC 8617) Stöds Stöds Stöds ❌ Stöds inte Stöds Stöds Stöds Stöds ❌ Stöds inte
MTA-STS (RFC 8461) Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds
DANE (RFC 7671) Stöds Stöds ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte Stöds Stöds
DSN (RFC 3461) Stöds Stöds ❌ Stöds inte Stöds Stöds ⚠️ Okänt ❌ Stöds inte ⚠️ Via Bridge ❌ Stöds inte
REQUIRETLS (RFC 8689) Stöds Stöds ⚠️ Okänt ⚠️ Okänt ⚠️ Okänt ⚠️ Okänt ⚠️ Okänt ⚠️ Via Bridge ❌ Stöds inte
ManageSieve (RFC 5804) Stöds Stöds ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte Stöds ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte
OpenPGP (RFC 9580) Stöds ⚠️ Via Plugins ⚠️ Tredjepart ⚠️ Tredjepart ⚠️ Tredjepart ⚠️ Tredjepart ⚠️ Tredjepart Inbyggt ❌ Stöds inte
S/MIME (RFC 8551) Stöds Stöds Stöds Stöds Stöds ⚠️ Delvis ❌ Stöds inte Stöds ❌ Stöds inte
CalDAV (RFC 4791) Stöds Stöds Stöds Stöds ❌ Stöds inte Stöds ❌ Stöds inte Via Bridge ❌ Stöds inte
CardDAV (RFC 6352) Stöds Stöds Stöds Stöds ❌ Stöds inte Stöds ❌ Stöds inte Via Bridge ❌ Stöds inte
Uppgifter (VTODO) Stöds Stöds ❌ Stöds inte Stöds ❌ Stöds inte Stöds ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte
Sieve (RFC 5228) Stöds Stöds ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte Stöds ❌ Stöds inte ❌ Stöds inte ❌ Stöds inte
Catch-All Stöds ✅ Stöds Stöds ❌ Stöds inte Stöds inte Stöds ❌ Stöds inte ❌ Stöds inte Stöds
Obegränsade alias Stöds ✅ Stöds Stöds Stöds Stöds Stöds ❌ Stöds inte Stöds Stöds
Tvåfaktorsautentisering Stöds ✅ Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds
Push-notiser Stöds ⚠️ Via plugins Stöds Stöds Stöds Stöds ❌ Stöds inte Stöds Stöds
Kalender-/kontaktprogram Stöds ✅ Stöds Stöds Stöds Stöds Stöds ❌ Stöds inte Stöds ❌ Stöds inte
Avancerad sökning Stöds ✅ Stöds Stöds Stöds Stöds Stöds Stöds Stöds Stöds
API/Integrationer 39 Endpoints ✅ Stöds Stöds ❌ Stöds inte Stöds Stöds ❌ Stöds inte Stöds ❌ Stöds inte

Protocol Support Visualization


Kärnprotokoll för e-post

Flöde för e-postprotokoll

IMAP4 e-postprotokoll och tillägg

Note

Forward Email stödjer IMAP4rev1 (RFC 3501) med delvis stöd för IMAP4rev2 (RFC 9051) funktioner.

Forward Email erbjuder robust IMAP4-stöd genom WildDuck-mailserver-implementeringen. Servern implementerar IMAP4rev1 (RFC 3501) med delvis stöd för IMAP4rev2 (RFC 9051) tillägg.

Forward Emails IMAP-funktionalitet tillhandahålls av beroendet WildDuck. Följande e-post-RFC:er stöds:

RFC Titel Implementationsanteckningar
RFC 3501 Internet Message Access Protocol (IMAP) - Version 4rev1 Fullt stöd med avsiktliga skillnader (se nedan)
RFC 2177 IMAP4 IDLE-kommando Push-stil notifikationer
RFC 2342 IMAP4 Namespace Stöd för mailbox-namnrymder
RFC 2087 IMAP4 QUOTA-tillägg Hantering av lagringskvoter
RFC 2971 IMAP4 ID-tillägg Klient/server identifiering
RFC 5161 IMAP4 ENABLE-tillägg Aktivera IMAP-tillägg
RFC 4959 IMAP-tillägg för SASL Initial Client Response (SASL-IR) Initial klientrespons
RFC 3691 IMAP4 UNSELECT-kommando Stäng mailbox utan EXPUNGE
RFC 4315 IMAP UIDPLUS-tillägg Förbättrade UID-kommandon
RFC 7162 IMAP-tillägg: Snabba flaggändringsresynkronisering (CONDSTORE) Villkorlig STORE
RFC 6154 IMAP LIST-tillägg för specialanvända mailboxar Specialattribut för mailboxar
RFC 6851 IMAP MOVE-tillägg Atomiskt MOVE-kommando
RFC 6855 IMAP-stöd för UTF-8 UTF-8-stöd
RFC 3348 IMAP4 Child Mailbox-tillägg Information om underordnade mailboxar
RFC 7889 IMAP4-tillägg för annonsering av maximal uppladdningsstorlek (APPENDLIMIT) Maximal uppladdningsstorlek
Stödda IMAP-tillägg:
Tillägg RFC Status Beskrivning
IDLE RFC 2177 ✅ Stöds Push-stil notifikationer
NAMESPACE RFC 2342 ✅ Stöds Stöd för mailbox-namnrymder
QUOTA RFC 2087 ✅ Stöds Hantering av lagringskvoter
ID RFC 2971 ✅ Stöds Klient/server identifiering
ENABLE RFC 5161 ✅ Stöds Aktivera IMAP-tillägg
SASL-IR RFC 4959 ✅ Stöds Initial klientrespons
UNSELECT RFC 3691 ✅ Stöds Stäng mailbox utan EXPUNGE
UIDPLUS RFC 4315 ✅ Stöds Förbättrade UID-kommandon
CONDSTORE RFC 7162 ✅ Stöds Villkorlig STORE
SPECIAL-USE RFC 6154 ✅ Stöds Speciella mailbox-attribut
MOVE RFC 6851 ✅ Stöds Atomiskt MOVE-kommando
UTF8=ACCEPT RFC 6855 ✅ Stöds UTF-8-stöd
CHILDREN RFC 3348 ✅ Stöds Information om undermappar
APPENDLIMIT RFC 7889 ✅ Stöds Maximal uppladdningsstorlek
XLIST Icke-standard ✅ Stöds Gmail-kompatibel mapp-listning
XAPPLEPUSHSERVICE Icke-standard ✅ Stöds Apple Push Notification Service

IMAP-protokollskillnader från RFC-specifikationer

Warning

Följande skillnader från RFC-specifikationer kan påverka klientkompatibilitet.

Forward Email avviker medvetet från vissa IMAP RFC-specifikationer. Dessa skillnader ärvdes från WildDuck och dokumenteras nedan:

  • Ingen \Recent-flagga: \Recent-flaggan är inte implementerad. Alla meddelanden returneras utan denna flagga.
  • RENAME påverkar inte undermappar: Vid namnbyte av en mapp byts inte undermappar automatiskt. Mappstrukturen är platt i databasen.
  • INBOX kan inte bytas namn på: RFC 3501 tillåter namnbyte av INBOX, men Forward Email förbjuder detta uttryckligen. Se WildDuck källkod.
  • Inga oombedda FLAGS-svar: När flaggor ändras skickas inga oombedda FLAGS-svar till klienten.
  • STORE returnerar NO för borttagna meddelanden: Försök att ändra flaggor på borttagna meddelanden returnerar NO istället för att tyst ignorera.
  • CHARSET ignoreras i SEARCH: CHARSET-argumentet i SEARCH-kommandon ignoreras. Alla sökningar använder UTF-8.
  • MODSEQ metadata ignoreras: MODSEQ-metadata i STORE-kommandon ignoreras.
  • SEARCH TEXT och SEARCH BODY: Forward Email använder SQLite FTS5 (Full-Text Search) istället för MongoDB:s $text-sökning. Detta ger:
    • Stöd för NOT-operatorn (MongoDB stödjer inte detta)
    • Rankade sökresultat
    • Sökprestanda under 100 ms på stora mailboxar
  • Autoexpunge-beteende: Meddelanden markerade med \Deleted rensas automatiskt när mailboxen stängs.
  • Meddelandetrohet: Vissa ändringar av meddelanden kan göra att den exakta ursprungliga meddelandestrukturen inte bevaras.

Delvis stöd för IMAP4rev2:

Forward Email implementerar IMAP4rev1 (RFC 3501) med delvis stöd för IMAP4rev2 (RFC 9051). Följande IMAP4rev2-funktioner stöds inte ännu:

  • LIST-STATUS - Kombinerade LIST- och STATUS-kommandon
  • LITERAL- - Icke-synkroniserande literals (minusvariant)
  • OBJECTID - Unika objektidentifierare
  • SAVEDATE - Attribut för spardatum
  • REPLACE - Atomisk meddelandeersättning
  • UNAUTHENTICATE - Avsluta autentisering utan att stänga anslutningen

Avslappnad hantering av meddelandekroppsstruktur:

Forward Email använder "avslappnad kroppshantering" för felaktiga MIME-strukturer, vilket kan skilja sig från strikt RFC-tolkning. Detta förbättrar kompatibiliteten med verkliga e-postmeddelanden som inte helt följer standarderna. METADATA Extension (RFC 5464):

IMAP METADATA-tillägget stöds inte. För mer information om detta tillägg, se RFC 5464. Diskussion om att lägga till denna funktion finns i WildDuck Issue #937.

IMAP Extensions NOT Supported

Följande IMAP-tillägg från IANA IMAP Capabilities Registry stöds INTE:

RFC Titel Orsak
RFC 2086 IMAP4 ACL extension Delade mappar är inte implementerade. Se WildDuck Issue #427
RFC 5256 IMAP SORT and THREAD Extensions Trådning implementerad internt men inte via RFC 5256-protokollet. Se WildDuck Issue #12
RFC 5162 IMAP4 Extensions for Quick Mailbox Resynchronization (QRESYNC) Ej implementerat
RFC 5464 IMAP METADATA Extension Metadataoperationer ignoreras. Se WildDuck documentation
RFC 5258 IMAP4 LIST Command Extensions Ej implementerat
RFC 5267 Contexts for IMAP4 Ej implementerat
RFC 5465 IMAP NOTIFY Extension Ej implementerat
RFC 5466 IMAP4 FILTERS Extension Ej implementerat
RFC 6203 IMAP4 Extension for Fuzzy Search Ej implementerat
RFC 6785 IMAP4 Implementation Recommendations Rekommendationer följda inte fullt ut
RFC 7162 IMAP Extensions: Quick Flag Changes Resynchronization (CONDSTORE) and Quick Mailbox Resynchronization (QRESYNC) Ej implementerat
RFC 8437 IMAP UNAUTHENTICATE Extension for Connection Reuse Ej implementerat
RFC 8438 IMAP Extension for STATUS=SIZE Ej implementerat
RFC 8457 IMAP "$Important" Keyword and "\Important" Special-Use Attribute Ej implementerat
RFC 8474 IMAP Extension for Object Identifiers Ej implementerat
RFC 9051 Internet Message Access Protocol (IMAP) - Version 4rev2 Forward Email implementerar IMAP4rev1 (RFC 3501)

POP3 Email Protocol and Extensions

Note

Forward Email stöder POP3 (RFC 1939) med standardförlängningar för e-posthämtning.

Forward Emails POP3-funktionalitet tillhandahålls av beroendet WildDuck. Följande e-post-RFC:er stöds:

RFC Titel Implementationsanteckningar
RFC 1939 Post Office Protocol - Version 3 (POP3) Fullt stöd med avsiktliga skillnader (se nedan)
RFC 2595 Using TLS with IMAP, POP3 and ACAP STARTTLS-stöd
RFC 2449 POP3 Extension Mechanism CAPA-kommandostöd

Forward Email tillhandahåller POP3-stöd för klienter som föredrar detta enklare protokoll framför IMAP. POP3 är idealiskt för användare som vill ladda ner e-post till en enhet och ta bort dem från servern.

Stödda POP3-förlängningar:

Förlängning RFC Status Beskrivning
TOP RFC 1939 ✅ Stöds Hämta meddelandehuvuden
USER RFC 1939 ✅ Stöds Användarautentisering
UIDL RFC 1939 ✅ Stöds Unika meddelandeidentifierare
EXPIRE RFC 2449 ✅ Stöds Policy för meddelandeutgång

POP3 Protocol Differences from RFC Specifications

Warning

POP3 har inneboende begränsningar jämfört med IMAP.

Important

Kritisk skillnad: Forward Email vs WildDuck POP3 DELE-beteende

Forward Email implementerar RFC-kompatibel permanent borttagning för POP3 DELE-kommandon, till skillnad från WildDuck som flyttar meddelanden till papperskorgen.

Forward Email-beteende (källkod):

  • DELEQUIT tar permanent bort meddelanden
  • Följer RFC 1939 specifikation exakt
  • Matchar beteendet hos Dovecot (standard), Postfix och andra standardkompatibla servrar

WildDuck-beteende (diskussion):

  • DELEQUIT flyttar meddelanden till papperskorgen (Gmail-liknande)
  • Avsiktligt designbeslut för användarsäkerhet
  • Icke-RFC-kompatibelt men förhindrar oavsiktlig dataförlust

Varför Forward Email skiljer sig:

  • RFC-efterlevnad: Följer RFC 1939 specifikation
  • Användarförväntningar: Nedladdnings-och-radera-arbetsflöde förväntar sig permanent borttagning
  • Lagringshantering: Korrekt återvinning av diskutrymme
  • Interoperabilitet: Konsekvent med andra RFC-kompatibla servrar

Note

POP3 Meddelandelista: Forward Email listar ALLA meddelanden från INBOX utan begränsning. Detta skiljer sig från WildDuck som som standard begränsar till 250 meddelanden. Se källkod.

Enhetsåtkomst:

POP3 är designat för åtkomst från en enhet. Meddelanden laddas vanligtvis ner och tas bort från servern, vilket gör det olämpligt för synkronisering över flera enheter.

Ingen mappstöd:

POP3 ger endast åtkomst till INBOX-mappen. Andra mappar (Skickat, Utkast, Papperskorg etc.) är inte tillgängliga via POP3.

Begränsad meddelandehantering:

POP3 erbjuder grundläggande hämtning och borttagning av meddelanden. Avancerade funktioner som flaggning, flyttning eller sökning av meddelanden är inte tillgängliga.

POP3 Extensions NOT Supported

Följande POP3-förlängningar från IANA POP3 Extension Mechanism Registry stöds INTE:

RFC Titel Orsak
RFC 6856 Post Office Protocol Version 3 (POP3) Support for UTF-8 Inte implementerad i WildDuck POP3-server
RFC 2595 STLS-kommandot Endast STARTTLS stöds, inte STLS
RFC 3206 The SYS and AUTH POP Response Codes Inte implementerad

SMTP Email Protocol and Extensions

Note

Forward Email stöder SMTP (RFC 5321) med moderna tillägg för säker och pålitlig e-postleverans.

Forward Emails SMTP-funktionalitet tillhandahålls av flera komponenter: smtp-server (nodemailer), zone-mta och egna implementationer. Följande e-post-RFC:er stöds:

RFC Titel Implementationsanteckningar
RFC 5321 Simple Mail Transfer Protocol (SMTP) Fullt stöd
RFC 3207 SMTP Service Extension for Secure SMTP over Transport Layer Security (STARTTLS) TLS/SSL-stöd
RFC 4954 SMTP Service Extension for Authentication (AUTH) PLAIN, LOGIN, CRAM-MD5, XOAUTH2
RFC 6531 SMTP Extension for Internationalized Email (SMTPUTF8) Inbyggt stöd för Unicode-e-postadresser
RFC 3461 SMTP Service Extension for Delivery Status Notifications (DSN) Fullt DSN-stöd
RFC 3463 Enhanced Mail System Status Codes Förbättrade statuskoder i svar
RFC 1870 SMTP Service Extension for Message Size Declaration (SIZE) Maximal meddelandestorlek annonsering
RFC 2920 SMTP Service Extension for Command Pipelining (PIPELINING) Stöd för kommandopipelining
RFC 1652 SMTP Service Extension for 8bit-MIMEtransport (8BITMIME) Stöd för 8-bitars MIME
RFC 6152 SMTP Service Extension for 8-bit MIME Transport Stöd för 8-bitars MIME
RFC 2034 SMTP Service Extension for Returning Enhanced Error Codes (ENHANCEDSTATUSCODES) Förbättrade statuskoder

Forward Email implementerar en fullfjädrad SMTP-server med stöd för moderna tillägg som förbättrar säkerhet, tillförlitlighet och funktionalitet.

Stödda SMTP-tillägg:

Tillägg RFC Status Beskrivning
PIPELINING RFC 2920 ✅ Stöds Kommandopipelining
SIZE RFC 1870 ✅ Stöds Meddelandestorleksdeklaration (52MB gräns)
ETRN RFC 1985 ✅ Stöds Fjärrköhantering
STARTTLS RFC 3207 ✅ Stöds Uppgradering till TLS
ENHANCEDSTATUSCODES RFC 2034 ✅ Stöds Förbättrade statuskoder
8BITMIME RFC 6152 ✅ Stöds 8-bitars MIME-transport
DSN RFC 3461 ✅ Stöds Leveransstatusmeddelanden
CHUNKING RFC 3030 ✅ Stöds Uppdelad meddelandeöverföring
SMTPUTF8 RFC 6531 ⚠️ Delvis UTF-8 e-postadresser (delvis)
REQUIRETLS RFC 8689 ✅ Stöds Kräver TLS för leverans

Leveransstatusmeddelanden (DSN)

Tip

DSN ger detaljerad information om leveransstatus för skickade e-postmeddelanden.

Forward Email stödjer fullt ut DSN (RFC 3461), vilket tillåter avsändare att begära leveransstatusmeddelanden. Denna funktion ger:

  • Meddelanden om framgång när meddelanden levereras
  • Meddelanden om fel med detaljerad felinformation
  • Meddelanden om fördröjning när leverans tillfälligt försenas

DSN är särskilt användbart för:

  • Bekräftelse av leverans av viktiga meddelanden
  • Felsökning av leveransproblem
  • Automatiserade e-posthanteringssystem
  • Efterlevnad och revisionskrav

Stöd för REQUIRETLS

Important

Forward Email är en av få leverantörer som uttryckligen annonserar och tillämpar REQUIRETLS.

Forward Email stödjer REQUIRETLS (RFC 8689), vilket säkerställer att e-postmeddelanden endast levereras över TLS-krypterade anslutningar. Detta ger:

  • End-to-end-kryptering för hela leveransvägen
  • Användarvänlig tillämpning via kryssruta i e-postkompositören
  • Avvisande av okrypterade leveransförsök
  • Förbättrad säkerhet för känslig kommunikation

SMTP-tillägg som INTE stöds

Följande SMTP-tillägg från IANA SMTP Service Extensions Registry stöds INTE:

RFC Titel Orsak
RFC 4865 SMTP Submission Service Extension for Future Message Release (FUTURERELEASE) Ej implementerat
RFC 6710 SMTP Extension for Message Transfer Priorities (MT-PRIORITY) Ej implementerat
RFC 7293 The Require-Recipient-Valid-Since Header Field and SMTP Service Extension Ej implementerat
RFC 7372 Email Auth Status Codes Ej fullt implementerat
RFC 4468 Message Submission BURL Extension Ej implementerat
RFC 3030 SMTP Service Extensions for Transmission of Large and Binary MIME Messages (CHUNKING, BINARYMIME) Ej implementerat
RFC 2852 Deliver By SMTP Service Extension Ej implementerat

JMAP E-postprotokoll

Caution

JMAP stöds inte för närvarande av Forward Email.

RFC Titel Status Orsak
RFC 8620 The JSON Meta Application Protocol (JMAP) ❌ Ej stödd Forward Email använder istället IMAP/POP3/SMTP och ett omfattande REST API

JMAP (JSON Meta Application Protocol) är ett modernt e-postprotokoll designat för att ersätta IMAP.

Varför JMAP inte stöds:

"JMAP är ett odjur som aldrig borde ha uppfunnits. Det försöker konvertera TCP/IMAP (redan ett dåligt protokoll enligt dagens standarder) till HTTP/JSON, bara med en annan transport medan andan bevaras." — Andris Reinman, HN Discussion "JMAP är mer än 10 år gammalt, och det finns nästan ingen adoption alls" – Andris Reinman, GitHub Discussion

Se även ytterligare kommentarer på https://hn.algolia.com/?dateRange=all&page=0&prefix=true&query=jmap andris&sort=byDate&type=comment.

Forward Email fokuserar för närvarande på att erbjuda utmärkt IMAP-, POP3- och SMTP-stöd, tillsammans med ett omfattande REST API för e-posthantering. JMAP-stöd kan övervägas i framtiden baserat på användarnas efterfrågan och ekosystemets adoption.

Alternativ: Forward Email erbjuder ett Fullständigt REST API med 39 endpoints som ger liknande funktionalitet som JMAP för programmatisk e-poståtkomst.


E-postsäkerhet

E-postsäkerhetsarkitektur

E-postmeddelandeautentiseringsprotokoll

Note

Forward Email implementerar alla större e-postautentiseringsprotokoll för att förhindra förfalskning och säkerställa meddelandets integritet.

Forward Email använder biblioteket mailauth för e-postautentisering. Följande RFC:er stöds:

RFC Titel Implementationsanteckningar
RFC 6376 DomainKeys Identified Mail (DKIM) Signaturer Fullständig DKIM-signering och verifiering
RFC 8463 En ny kryptografisk signaturmetod för DKIM (Ed25519-SHA256) Stöder både RSA-SHA256 och Ed25519-SHA256 signeringsalgoritmer
RFC 7208 Sender Policy Framework (SPF) Validering av SPF-poster
RFC 7489 Domain-based Message Authentication, Reporting, and Conformance (DMARC) DMARC-policyimplementering
RFC 8617 Authenticated Received Chain (ARC) ARC-sigillering och verifiering

E-postautentiseringsprotokoll verifierar att meddelanden verkligen kommer från den angivna avsändaren och att de inte har manipulerats under överföringen.

Stöd för autentiseringsprotokoll

Protokoll RFC Status Beskrivning
DKIM RFC 6376 ✅ Stöds DomainKeys Identified Mail - Kryptografiska signaturer
SPF RFC 7208 ✅ Stöds Sender Policy Framework - Auktorisation av IP-adress
DMARC RFC 7489 ✅ Stöds Domain-based Message Authentication - Policyimplementering
ARC RFC 8617 ✅ Stöds Authenticated Received Chain - Bevarar autentisering över vidarebefordringar

DKIM (DomainKeys Identified Mail)

DKIM lägger till en kryptografisk signatur i e-posthuvuden, vilket gör det möjligt för mottagare att verifiera att meddelandet auktoriserats av domänägaren och inte har ändrats under överföringen.

Forward Email använder mailauth för DKIM-signering och verifiering.

Huvudfunktioner:

  • Automatisk DKIM-signering för alla utgående meddelanden
  • Stöd för RSA- och Ed25519-nycklar
  • Stöd för flera selektorer
  • DKIM-verifiering för inkommande meddelanden

SPF (Sender Policy Framework)

SPF tillåter domänägare att specificera vilka IP-adresser som är auktoriserade att skicka e-post för deras domän.

Huvudfunktioner:

  • SPF-postvalidering för inkommande meddelanden
  • Automatisk SPF-kontroll med detaljerade resultat
  • Stöd för mekanismerna include, redirect och all
  • Konfigurerbara SPF-policyer per domän

DMARC (Domain-based Message Authentication, Reporting & Conformance)

DMARC bygger på SPF och DKIM för att tillhandahålla policytillämpning och rapportering.

Huvudfunktioner:

  • Tillämpning av DMARC-policy (none, quarantine, reject)
  • Kontroll av anpassning för SPF och DKIM
  • DMARC-aggregerade rapporter
  • DMARC-policyer per domän

ARC (Authenticated Received Chain)

ARC bevarar autentiseringsresultat för e-post över vidarebefordran och ändringar i mailinglistor.

Forward Email använder mailauth-biblioteket för ARC-verifiering och försegling.

Huvudfunktioner:

  • ARC-försegling för vidarebefordrade meddelanden
  • ARC-validering för inkommande meddelanden
  • Kedjeverifiering över flera hopp
  • Bevarar ursprungliga autentiseringsresultat

Authentication Flow


Email Transport Security Protocols

Important

Forward Email implementerar flera lager av transportskydd för att skydda e-post under överföring.

Forward Email implementerar moderna transportskyddsprotokoll:

RFC Titel Status Implementationsanteckningar
RFC 8461 SMTP MTA Strict Transport Security (MTA-STS) ✅ Supported Används omfattande på IMAP-, SMTP- och MX-servrar. Se create-mta-sts-cache.js och get-transporter.js
RFC 8460 SMTP TLS Reporting ✅ Supported Via mailauth-biblioteket
RFC 7671 The DNS-Based Authentication of Named Entities (DANE) Protocol: Updates and Operational Guidance ✅ Supported Fullständig DANE-verifiering för utgående SMTP-anslutningar. Se mx-connect PR #22
RFC 6698 The DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS) Protocol: TLSA ✅ Supported Fullt stöd för RFC 6698: PKIX-TA, PKIX-EE, DANE-TA, DANE-EE användartyper. Se mx-connect PR #22
RFC 8314 Cleartext Considered Obsolete: Use of Transport Layer Security (TLS) for Email Submission and Access ✅ Supported TLS krävs för alla anslutningar
RFC 8689 SMTP Service Extension for Requiring TLS (REQUIRETLS) ✅ Supported Fullt stöd för REQUIRETLS SMTP-tillägg och "TLS-Required"-header
Transport säkerhetsprotokoll säkerställer att e-postmeddelanden är krypterade och autentiserade under överföring mellan e-postservrar.

Transport Security Support

Protokoll RFC Status Beskrivning
TLS RFC 8314 ✅ Stöds Transport Layer Security - Krypterade anslutningar
MTA-STS RFC 8461 ✅ Stöds Mail Transfer Agent Strict Transport Security
DANE RFC 7671 ✅ Stöds DNS-baserad autentisering av namngivna enheter
REQUIRETLS RFC 8689 ✅ Stöds Kräver TLS för hela leveransvägen

TLS (Transport Layer Security)

Forward Email kräver TLS-kryptering för alla e-postanslutningar (SMTP, IMAP, POP3).

Nyckelfunktioner:

  • Stöd för TLS 1.2 och TLS 1.3
  • Automatisk certifikathantering
  • Perfect Forward Secrecy (PFS)
  • Endast starka chifferuppsättningar

MTA-STS (Mail Transfer Agent Strict Transport Security)

MTA-STS säkerställer att e-post endast levereras över TLS-krypterade anslutningar genom att publicera en policy via HTTPS.

Forward Email implementerar MTA-STS med hjälp av create-mta-sts-cache.js.

Nyckelfunktioner:

  • Automatisk publicering av MTA-STS-policy
  • Policylagring för bättre prestanda
  • Skydd mot nedgraderingsattacker
  • Tvingad certifikatvalidering

DANE (DNS-based Authentication of Named Entities)

Note

Forward Email erbjuder nu fullständigt DANE-stöd för utgående SMTP-anslutningar.

DANE använder DNSSEC för att publicera TLS-certifikatinformation i DNS, vilket gör det möjligt för e-postservrar att verifiera certifikat utan att förlita sig på certifikatutfärdare.

Nyckelfunktioner:

  • ✅ Fullständig DANE-verifiering för utgående SMTP-anslutningar
  • ✅ Fullt stöd för RFC 6698: PKIX-TA, PKIX-EE, DANE-TA, DANE-EE användartyper
  • ✅ Certifikatverifiering mot TLSA-poster vid TLS-uppgradering
  • ✅ Parallell TLSA-upplösning för flera MX-värdar
  • ✅ Automatisk upptäckt av inbyggd dns.resolveTlsa (Node.js v22.15.0+, v23.9.0+)
  • ✅ Stöd för anpassad resolver för äldre Node.js-versioner via Tangerine
  • Kräver DNSSEC-signerade domäner

Tip

Implementeringsdetaljer: DANE-stöd lades till via mx-connect PR #22, som tillhandahåller omfattande DANE/TLSA-stöd för utgående SMTP-anslutningar.

REQUIRETLS

Tip

Forward Email är en av få leverantörer med användarvänligt REQUIRETLS-stöd.

REQUIRETLS säkerställer att e-postmeddelanden endast levereras över TLS-krypterade anslutningar för hela leveransvägen.

Nyckelfunktioner:

  • Användarvänlig kryssruta i e-postkompositören
  • Automatisk avvisning av okrypterad leverans
  • End-to-end TLS-tillämpning
  • Detaljerade felmeddelanden

Tip

Användarvänlig TLS-tillämpning: Forward Email erbjuder en kryssruta under Mitt konto > Domäner > Inställningar för att tvinga TLS för alla inkommande anslutningar. När den är aktiverad avvisar denna funktion all inkommande e-post som inte skickas över en TLS-krypterad anslutning med felkod 530, vilket säkerställer att all inkommande post är krypterad under överföring.

Transport Security Flow

E-postmeddelande Kryptering

Note

Forward Email stöder både OpenPGP och S/MIME för end-to-end e-postkryptering.

Forward Email stöder OpenPGP och S/MIME-kryptering:

RFC Titel Status Implementationsanteckningar
RFC 9580 OpenPGP (ersätter RFC 4880) ✅ Stöds Via OpenPGP.js v6+ integration. Se FAQ
RFC 8551 Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Meddelandespecifikation ✅ Stöds Både RSA och ECC-algoritmer stöds. Se FAQ

Meddelandekrypteringsprotokoll skyddar e-postinnehåll från att läsas av någon annan än den avsedda mottagaren, även om meddelandet fångas upp under överföringen.

Krypteringsstöd

Protokoll RFC Status Beskrivning
OpenPGP RFC 9580 ✅ Stöds Pretty Good Privacy - Offentlig nyckelkryptering
S/MIME RFC 8551 ✅ Stöds Secure/Multipurpose Internet Mail Extensions
WKD Draft ✅ Stöds Web Key Directory - Automatisk nyckelupptäckt

OpenPGP (Pretty Good Privacy)

OpenPGP tillhandahåller end-to-end-kryptering med hjälp av offentlig nyckelkryptografi. Forward Email stöder OpenPGP genom protokollet Web Key Directory (WKD).

Huvudfunktioner:

  • Automatisk nyckelupptäckt via WKD
  • PGP/MIME-stöd för krypterade bilagor
  • Nyckelhantering via e-postklient
  • Kompatibel med GPG, Mailvelope och andra OpenPGP-verktyg

Hur man använder:

  1. Generera ett PGP-nyckelpar i din e-postklient
  2. Ladda upp din offentliga nyckel till Forward Emails WKD
  3. Din nyckel blir automatiskt upptäckbar av andra användare
  4. Skicka och ta emot krypterade e-postmeddelanden smidigt

S/MIME (Secure/Multipurpose Internet Mail Extensions)

S/MIME tillhandahåller e-postkryptering och digitala signaturer med hjälp av X.509-certifikat.

Huvudfunktioner:

  • Certifikatbaserad kryptering
  • Digitala signaturer för meddelandeautentisering
  • Inbyggt stöd i de flesta e-postklienter
  • Säkerhet i företagsklass

Hur man använder:

  1. Skaffa ett S/MIME-certifikat från en certifikatutfärdare
  2. Installera certifikatet i din e-postklient
  3. Konfigurera din klient för att kryptera/signera meddelanden
  4. Byt certifikat med mottagare

SQLite Mailbox Kryptering

Important

Forward Email erbjuder ett extra säkerhetslager med krypterade SQLite-postlådor.

Utöver meddelandenivå-kryptering krypterar Forward Email hela postlådor med hjälp av sqleet (ChaCha20-Poly1305).

Huvudfunktioner:

  • Lösenordsbaserad kryptering - Endast du har lösenordet
  • Kvantresistent - ChaCha20-Poly1305-chiffer
  • Zero-knowledge - Forward Email kan inte dekryptera din postlåda
  • Sandboxad - Varje postlåda är isolerad och portabel
  • Oåterkallelig - Om du glömmer ditt lösenord går din postlåda förlorad

Krypteringsjämförelse

Funktion OpenPGP S/MIME SQLite Encryption
End-to-End ✅ Ja ✅ Ja ✅ Ja
Nyckelhantering Självhanterad CA-utgiven Lösenordsbaserad
Klientstöd Kräver plugin Inbyggt Transparent
Användningsfall Personligt Företag Lagring
Kvantresistent ⚠️ Beror på nyckel ⚠️ Beror på certifikat ✅ Ja

Krypteringsflöde


Utökad Funktionalitet

Standarder för e-postmeddelandeformat

Note

Forward Email stödjer moderna standarder för e-postformat för rikt innehåll och internationalisering.

Forward Email stödjer standardformat för e-postmeddelanden:

RFC Titel Implementationsanteckningar
RFC 5322 Internetmeddelandeformat Fullt stöd
RFC 2045 MIME Del Ett: Format för Internetmeddelandekroppar Fullt MIME-stöd
RFC 2046 MIME Del Två: Mediatyper Fullt MIME-stöd
RFC 2047 MIME Del Tre: Meddelandehuvudtillägg för icke-ASCII-text Fullt MIME-stöd
RFC 2048 MIME Del Fyra: Registreringsprocedurer Fullt MIME-stöd
RFC 2049 MIME Del Fem: Konformitetskriterier och exempel Fullt MIME-stöd

E-postformatstandarder definierar hur e-postmeddelanden struktureras, kodas och visas.

Stöd för formatstandarder

Standard RFC Status Beskrivning
MIME RFC 2045-2049 ✅ Stöds Multipurpose Internet Mail Extensions
SMTPUTF8 RFC 6531 ⚠️ Delvis Internationaliserade e-postadresser
EAI RFC 6530 ⚠️ Delvis Internationalisering av e-postadresser
Meddelandeformat RFC 5322 ✅ Stöds Internetmeddelandeformat
MIME-säkerhet RFC 1847 ✅ Stöds Säkerhetsmultipart för MIME

MIME (Multipurpose Internet Mail Extensions)

MIME tillåter att e-post innehåller flera delar med olika innehållstyper (text, HTML, bilagor, etc.).

Stödda MIME-funktioner:

  • Multipart-meddelanden (mixed, alternative, related)
  • Content-Type-rubriker
  • Content-Transfer-Encoding (7bit, 8bit, quoted-printable, base64)
  • Inbäddade bilder och bilagor
  • Rikt HTML-innehåll

SMTPUTF8 och internationalisering av e-postadresser

Warning

SMTPUTF8-stödet är delvis – inte alla funktioner är fullt implementerade. SMTPUTF8 tillåter e-postadresser att innehålla icke-ASCII-tecken (t.ex. 用户@例え.jp).

Aktuell status:

  • ⚠️ Delvis stöd för internationaliserade e-postadresser
  • ✅ UTF-8-innehåll i meddelandekroppar
  • ⚠️ Begränsat stöd för icke-ASCII lokala delar

Kalender- och kontaktprotokoll

Note

Forward Email erbjuder fullständigt stöd för CalDAV och CardDAV för kalender- och kontaktsynkronisering.

Forward Email stödjer CalDAV och CardDAV via caldav-adapter-biblioteket:

RFC Titel Status Implementationsanteckningar
RFC 4791 Kalenderförlängningar till WebDAV (CalDAV) ✅ Stöds Kalenderåtkomst och hantering
RFC 6352 CardDAV: vCard-förlängningar till WebDAV ✅ Stöds Kontaktåtkomst och hantering
RFC 5545 Internetkalender och schemaläggning Kärnobjektspecifikation (iCalendar) ✅ Stöds Stöd för iCalendar-format
RFC 6350 vCard-formatspecifikation ✅ Stöds Stöd för vCard 4.0-format
RFC 6638 Schemaläggningsförlängningar till CalDAV ✅ Stöds CalDAV-schemaläggning med iMIP-stöd. Se commit c4d1629
RFC 5546 iCalendar Transportoberoende Interoperabilitetsprotokoll (iTIP) ✅ Stöds iTIP-stöd för REQUEST, REPLY, CANCEL och VFREEBUSY-metoder. Se commit c4d1629
RFC 6047 iCalendar Meddelandebaserat Interoperabilitetsprotokoll (iMIP) ✅ Stöds E-postbaserade kalenderinbjudningar med svarslänkar. Se commit c4d1629

CalDAV och CardDAV är protokoll som tillåter kalender- och kontaktdata att nås, delas och synkroniseras över enheter.

Stöd för CalDAV och CardDAV

Protokoll RFC Status Beskrivning
CalDAV RFC 4791 ✅ Stöds Kalenderåtkomst och synkronisering
CardDAV RFC 6352 ✅ Stöds Kontaktåtkomst och synkronisering
iCalendar RFC 5545 ✅ Stöds Kalenderdataformat
vCard RFC 6350 ✅ Stöds Kontaktdatformat
VTODO RFC 5545 ✅ Stöds Stöd för uppgifter/påminnelser
CalDAV Scheduling RFC 6638 ✅ Stöds Kalender-schemaläggningsförlängningar
iTIP RFC 5546 ✅ Stöds Transportoberoende interoperabilitet
iMIP RFC 6047 ✅ Stöds E-postbaserade kalenderinbjudningar

CalDAV (Kalendertillgång)

CalDAV låter dig komma åt och hantera kalendrar från vilken enhet eller applikation som helst.

Huvudfunktioner:

  • Synkronisering över flera enheter
  • Delade kalendrar
  • Kalenderprenumerationer
  • Evenemangsinbjudningar och svar
  • Återkommande evenemang
  • Stöd för tidszoner

Kompatibla klienter:

  • Apple Kalender (macOS, iOS)
  • Mozilla Thunderbird
  • Evolution
  • GNOME Kalender
  • Alla CalDAV-kompatibla klienter

CardDAV (Kontaktåtkomst)

CardDAV låter dig komma åt och hantera kontakter från vilken enhet eller applikation som helst.

Huvudfunktioner:

  • Synkronisering över flera enheter
  • Delade adressböcker
  • Kontaktgrupper
  • Fotostöd
  • Anpassade fält
  • Stöd för vCard 4.0

Kompatibla klienter:

  • Apple Kontakter (macOS, iOS)
  • Mozilla Thunderbird
  • Evolution
  • GNOME Kontakter
  • Alla CardDAV-kompatibla klienter

Uppgifter och Påminnelser (CalDAV VTODO)

Tip

Forward Email stödjer uppgifter och påminnelser via CalDAV VTODO.

VTODO är en del av iCalendar-formatet och möjliggör uppgiftshantering via CalDAV.

Huvudfunktioner:

  • Skapa och hantera uppgifter
  • Förfallodatum och prioriteringar
  • Spårning av uppgiftsavslut
  • Återkommande uppgifter
  • Uppgiftslistor/kategorier

Kompatibla klienter:

  • Apple Påminnelser (macOS, iOS)
  • Mozilla Thunderbird (med Lightning)
  • Evolution
  • GNOME To Do
  • Alla CalDAV-klienter med VTODO-stöd

CalDAV/CardDAV Synkroniseringsflöde

Kalenderförlängningar SOM INTE stöds

Följande kalenderförlängningar stöds INTE:

RFC Titel Orsak
RFC 4918 HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV) CalDAV använder WebDAV-koncept men implementerar inte hela RFC 4918
RFC 6578 Collection Synchronization for WebDAV Ej implementerat
RFC 3744 WebDAV Access Control Protocol Ej implementerat

E-postmeddelandefiltrering

Important

Forward Email erbjuder fullt stöd för Sieve och ManageSieve för serverbaserad e-postfiltrering. Skapa kraftfulla regler för att automatiskt sortera, filtrera, vidarebefordra och svara på inkommande meddelanden.

Sieve (RFC 5228)

Sieve är ett standardiserat, kraftfullt skriptspråk för serverbaserad e-postfiltrering. Forward Email implementerar omfattande stöd för Sieve med 24 tillägg.

Källkod: helpers/sieve/

Stödda kärn-Sieve RFC:er

RFC Titel Status
RFC 5228 Sieve: An Email Filtering Language ✅ Fullt stöd
RFC 5429 Sieve Email Filtering: Reject and Extended Reject Extensions ✅ Fullt stöd
RFC 5230 Sieve Email Filtering: Vacation Extension ✅ Fullt stöd
RFC 6131 Sieve Vacation Extension: "Seconds" Parameter ✅ Fullt stöd
RFC 5232 Sieve Email Filtering: Imap4flags Extension ✅ Fullt stöd
RFC 5173 Sieve Email Filtering: Body Extension ✅ Fullt stöd
RFC 5229 Sieve Email Filtering: Variables Extension ✅ Fullt stöd
RFC 5231 Sieve Email Filtering: Relational Extension ✅ Fullt stöd
RFC 4790 Internet Application Protocol Collation Registry ✅ Fullt stöd
RFC 3894 Sieve Extension: Copying Without Side Effects ✅ Fullt stöd
RFC 5293 Sieve Email Filtering: Editheader Extension ✅ Fullt stöd
RFC 5260 Sieve Email Filtering: Date and Index Extensions ✅ Fullt stöd
RFC 5435 Sieve Email Filtering: Extension for Notifications ✅ Fullt stöd
RFC 5183 Sieve Email Filtering: Environment Extension ✅ Fullt stöd
RFC 5490 Sieve Email Filtering: Extensions for Checking Mailbox Status ✅ Fullt stöd
RFC 8579 Sieve Email Filtering: Delivering to Special-Use Mailboxes ✅ Fullt stöd
RFC 7352 Sieve Email Filtering: Detecting Duplicate Deliveries ✅ Fullt stöd
RFC 5463 Sieve Email Filtering: Ihave Extension ✅ Fullt stöd
RFC 5233 Sieve Email Filtering: Subaddress Extension ✅ Fullt stöd
draft-ietf-sieve-regex Sieve Email Filtering: Regular Expression Extension ✅ Fullt stöd

Stödda Sieve-tillägg

Tillägg Beskrivning Integration
fileinto Placera meddelanden i specifika mappar Meddelanden lagras i angiven IMAP-mapp
reject / ereject Avvisa meddelanden med ett fel SMTP-avvisning med returmeddelande
vacation Automatiska semester-/frånvarosvar Köas via Emails.queue med hastighetsbegränsning
vacation-seconds Finjusterade intervall för semester-svar TTL från :seconds-parametern
imap4flags Sätt IMAP-flaggor (\Seen, \Flagged, etc.) Flaggor appliceras vid meddelandelagring
envelope Testa avsändare/mottagare i kuvertet Tillgång till SMTP-kuvertdatan
body Testa meddelandets innehåll i kroppen Fullständig textmatchning i meddelandekroppen
variables Spara och använd variabler i skript Variabelexpansion med modifierare
relational Relationella jämförelser :count, :value med gt/lt/eq
comparator-i;ascii-numeric Numeriska jämförelser Numerisk strängjämförelse
copy Kopiera meddelanden vid omdirigering :copy-flagga på fileinto/redirect
editheader Lägg till eller ta bort meddelandehuvuden Huvuden modifieras före lagring
date Testa datum-/tidvärden currentdate och datumtest i huvuden
index Åtkomst till specifika förekomster av huvud :index för flervärda huvuden
regex Reguljära uttrycksmatchningar Fullt regex-stöd i tester
enotify Skicka aviseringar mailto:-aviseringar via Emails.queue
environment Åtkomst till miljöinformation Domän, värd, remote-ip från session
mailbox Testa om brevlåda finns mailboxexists-test
special-use Placera i specialanvända brevlådor Kartlägger \Junk, \Trash, etc. till mappar
duplicate Upptäck dubblettmeddelanden Redis-baserad dubblettspårning
ihave Testa tillgänglighet av tillägg Kontroll av kapabilitet i körning
subaddress Åtkomst till delar av user+detail-adress :user och :detail adressdelar

Sieve-tillägg som INTE stöds

Tillägg RFC Orsak
include RFC 6609 Säkerhetsrisk (skriptinjektion), kräver global skriptlagring
mboxmetadata / servermetadata RFC 5490 Kräver IMAP METADATA-tillägg
fcc RFC 8580 Kräver integration med Skickat-mapp
encoded-character RFC 5228 Parserändringar krävs för ${hex:}-syntax
foreverypart / mime / extracttext RFC 5703 Komplex MIME-trädmanipulation

Sieve Processing Flow

Security Features

Forward Email's Sieve-implementering inkluderar omfattande säkerhetsskydd:

  • CVE-2023-26430-skydd: Förhindrar omdirigeringsloopar och mailbombningsattacker
  • Begränsning av hastighet: Begränsningar för omdirigeringar (10/meddelande, 100/dag) och semester-svar
  • Kontroll av nekad lista: Omdirigeringsadresser kontrolleras mot nekad lista
  • Skyddade rubriker: DKIM, ARC och autentiseringsrubriker kan inte ändras via editheader
  • Begränsningar för skriptstorlek: Maximal skriptstorlek upprätthålls
  • Timeout för exekvering: Skript avslutas om exekvering överskrider tidsgräns

Example Sieve Scripts

Filtrera nyhetsbrev till en mapp:

require ["fileinto"];

if header :contains "List-Id" "newsletter" {
    fileinto "Newsletters";
}

Semester-autosvar med finjusterad tid:

require ["vacation", "vacation-seconds"];

vacation :seconds 3600 :subject "Out of Office"
    "I'm currently away and will respond within 24 hours.";

Spamfiltrering med flaggor:

require ["fileinto", "imap4flags"];

if header :contains "X-Spam-Status" "Yes" {
    setflag "\\Seen";
    fileinto "Junk";
}

Komplex filtrering med variabler:

require ["variables", "fileinto", "regex"];

if header :regex "From" "(.+)@example\\.com" {
    set :lower "sender" "${1}";
    fileinto "Contacts/${sender}";
}

Tip

För fullständig dokumentation, exempel på skript och konfigurationsinstruktioner, se FAQ: Do you support Sieve email filtering?

ManageSieve (RFC 5804)

Forward Email erbjuder fullständigt stöd för ManageSieve-protokollet för fjärrhantering av Sieve-skript.

Källkod: managesieve-server.js

RFC Titel Status
RFC 5804 Ett protokoll för fjärrhantering av Sieve-skript ✅ Fullt stöd

ManageSieve Server Configuration

Inställning Värde
Server imap.forwardemail.net
Port (STARTTLS) 2190 (rekommenderat)
Port (Implicit TLS) 4190
Autentisering PLAIN (över TLS)

Notera: Port 2190 använder STARTTLS (uppgradering från plain till TLS) och är kompatibel med de flesta ManageSieve-klienter inklusive sieve-connect. Port 4190 använder implicit TLS (TLS från anslutningsstart) för klienter som stödjer det.

Supported ManageSieve Commands

Kommando Beskrivning
AUTHENTICATE Autentisera med PLAIN-mekanism
CAPABILITY Lista serverns kapabiliteter och tillägg
HAVESPACE Kontrollera om skript kan sparas
PUTSCRIPT Ladda upp ett nytt skript
LISTSCRIPTS Lista alla skript med aktiv status
SETACTIVE Aktivera ett skript
GETSCRIPT Ladda ner ett skript
DELETESCRIPT Ta bort ett skript
RENAMESCRIPT Byt namn på ett skript
CHECKSCRIPT Validera skriptsyntax
NOOP Håll anslutningen aktiv
LOGOUT Avsluta session

Kompatibla ManageSieve-klienter

  • Thunderbird: Inbyggt Sieve-stöd via Sieve-tillägg
  • Roundcube: ManageSieve-plugin
  • KMail: Inbyggt ManageSieve-stöd
  • sieve-connect: Kommandoradsklient
  • Vilken som helst RFC 5804-kompatibel klient

ManageSieve-protokollflöde

Webbgränssnitt och API

Utöver ManageSieve erbjuder Forward Email:

  • Webbpanel: Skapa och hantera Sieve-skript via webbgränssnittet under Mitt konto → Domäner → Aliaser → Sieve-skript
  • REST API: Programmerbar åtkomst till hantering av Sieve-skript via Forward Email API

Tip

För detaljerade installationsinstruktioner och klientkonfiguration, se FAQ: Stöder ni Sieve e-postfiltrering?


Lagringsoptimering

Important

Branschens första lagringsteknologi: Forward Email är den enda e-postleverantören i världen som kombinerar bilagdeduplicering med Brotli-komprimering på e-postinnehåll. Denna dubbellagersoptimering ger dig 2-3 gånger mer effektiv lagring jämfört med traditionella e-postleverantörer.

Forward Email implementerar två revolutionerande lagringsoptimeringstekniker som dramatiskt minskar brevlådans storlek samtidigt som full RFC-efterlevnad och meddelandets integritet bibehålls:

  1. Bilagdeduplicering - Eliminerar dubbletter av bilagor över alla e-postmeddelanden
  2. Brotli-komprimering - Minskar lagringsbehovet med 46-86 % för metadata och 50 % för bilagor

Arkitektur: Dubbellagers lagringsoptimering


Bilagdeduplicering

Forward Email implementerar bilagdeduplicering baserat på WildDucks beprövade metod, anpassad för SQLite-lagring.

Note

Vad som dedupliceras: "Bilaga" avser de kodade MIME-nodinnehållen (base64 eller quoted-printable), inte den avkodade filen. Detta bevarar giltigheten för DKIM- och GPG-signaturer.

Hur det fungerar

WildDucks ursprungliga implementation (MongoDB GridFS):

Wild Duck IMAP-server deduplicerar bilagor. "Bilaga" i detta fall betyder de base64- eller quoted-printable-kodade MIME-nodinnehållen, inte den avkodade filen. Även om användning av kodat innehåll innebär många falska negativa (samma fil i olika e-postmeddelanden kan räknas som olika bilagor) är det nödvändigt för att garantera giltigheten för olika signaturscheman (DKIM, GPG etc.). Ett meddelande hämtat från Wild Duck ser exakt likadant ut som det meddelande som lagrades, även om Wild Duck analyserar meddelandet till ett trädliknande objekt och bygger upp meddelandet igen vid hämtning. Forward Emails SQLite-implementering:

Forward Email anpassar detta tillvägagångssätt för krypterad SQLite-lagring med följande process:

  1. Hashberäkning: När en bilaga hittas beräknas en hash med hjälp av biblioteket rev-hash från bilagans innehåll
  2. Uppslagning: Kontrollera om en bilaga med matchande hash finns i tabellen Attachments
  3. Referensräkning:
    • Om finns: Öka referensräknaren med 1 och magiräknaren med ett slumpmässigt tal
    • Om ny: Skapa ny bilagepost med räknare = 1
  4. Säker borttagning: Använder ett dubbelt räknarsystem (referens + magi) för att förhindra falska positiva
  5. Skräpinsamling: Bilagor tas bort omedelbart när båda räknarna når noll

Källkod: helpers/attachment-storage.js

Dedupliceringsflöde

Magitalssystem

Forward Email använder WildDucks "magitalssystem" (inspirerat av Mail.ru) för att förhindra falska positiva vid borttagning:

  • Varje meddelande tilldelas ett slumpmässigt tal
  • Bilagans magiräknare ökas med det slumpmässiga talet när meddelandet läggs till
  • Magiräknaren minskas med samma tal när meddelandet tas bort
  • Bilagan tas endast bort när båda räknarna (referens + magi) når noll

Detta dubbla räknarsystem säkerställer att om något går fel vid borttagning (t.ex. krasch, nätverksfel) tas inte bilagan bort i förtid.

Viktiga skillnader: WildDuck vs Forward Email

Funktion WildDuck (MongoDB) Forward Email (SQLite)
Lagringsbackend MongoDB GridFS (uppdelad) SQLite BLOB (direkt)
Hash-algoritm SHA256 rev-hash (baserad på SHA-256)
Referensräkning ✅ Ja ✅ Ja
Magital ✅ Ja (Mail.ru-inspirerat) ✅ Ja (samma system)
Skräpinsamling Fördröjd (separat jobb) Omedelbar (vid nollräknare)
Komprimering ❌ Ingen ✅ Brotli (se nedan)
Kryptering ❌ Valfri ✅ Alltid (ChaCha20-Poly1305)

Brotli-komprimering

Important

Världens första: Forward Email är den enda e-posttjänsten i världen som använder Brotli-komprimering på e-postinnehåll. Detta ger 46-86% lagringsbesparing utöver bilagededuplicering.

Forward Email implementerar Brotli-komprimering för både bilageinnehåll och meddelandemetadata, vilket ger enorma lagringsbesparingar samtidigt som bakåtkompatibilitet bibehålls.

Implementering: helpers/msgpack-helpers.js

Vad som komprimeras

1. Bilageinnehåll (encodeAttachmentBody)

  • Gamla format: Hex-kodad sträng (2x storlek) eller rå Buffer
  • Nytt format: Brotli-komprimerad Buffer med "FEBR" magirubrik
  • Komprimeringsbeslut: Komprimerar endast om det sparar utrymme (räknar med 4-bytes rubrik)
  • Lagringsbesparing: Upp till 50% (hex → native BLOB) 2. Meddelandemetadata (encodeMetadata)

Inkluderar: mimeTree, headers, envelope, flags

  • Gammalt format: JSON-textsträng
  • Nytt format: Brotli-komprimerad Buffer
  • Lagringsbesparing: 46-86% beroende på meddelandets komplexitet

Komprimeringskonfiguration

// Brotli-komprimeringsalternativ optimerade för hastighet (nivå 4 är en bra balans)
const BROTLI_COMPRESS_OPTIONS = {
  params: {
    [zlib.constants.BROTLI_PARAM_QUALITY]: 4
  }
};

Varför nivå 4?

  • Snabb komprimering/dekomprimering: Under millisekund i bearbetningstid
  • Bra komprimeringsförhållande: 46-86% besparing
  • Balanserad prestanda: Optimalt för realtids-e-posthantering

Magisk header: "FEBR"

Forward Email använder en 4-byte magisk header för att identifiera komprimerade bilagor:

"FEBR" = Forward Email BRotli
Hex: 0x46 0x45 0x42 0x52

Varför en magisk header?

  • Formatdetektion: Identifiera om data är komprimerad eller okomprimerad direkt
  • Bakåtkompatibilitet: Gamla hex-strängar och råa Buffers fungerar fortfarande
  • Kollisionundvikande: "FEBR" är osannolikt att förekomma i början av legitim bilagedata

Komprimeringsprocess

Dekomprimeringsprocess

Bakåtkompatibilitet

Alla avkodningsfunktioner upptäcker automatiskt lagringsformatet:

Format Upptäcktsmetod Hantering
Brotli-komprimerad Kontrollera "FEBR" magisk header Dekomprimera med zlib.brotliDecompressSync()
Rå Buffer Buffer.isBuffer() utan magisk header Returnera som den är
Hex-sträng Kontrollera jämn längd + [0-9a-f] tecken Avkoda med Buffer.from(value, 'hex')
JSON-sträng Kontrollera om första tecknet är { eller [ Parsas med JSON.parse()

Detta säkerställer noll dataförlust vid migrering från gamla till nya lagringsformat.

Statistik över lagringsbesparingar

Uppmätta besparingar från produktionsdata:

Datatyp Gammalt format Nytt format Besparing
Bilageinnehåll Hex-kodad sträng (2x) Brotli-komprimerad BLOB 50%
Meddelandemetadata JSON-text Brotli-komprimerad BLOB 46-86%
Mailbox-flaggor JSON-text Brotli-komprimerad BLOB 60-80%

Källa: helpers/migrate-storage-format.js

Migreringsprocess

Forward Email erbjuder automatisk, idempotent migrering från gamla till nya lagringsformat: // Migreringsstatistik spårad: { attachmentsMigrated: 0, messagesMigrated: 0, mailboxesMigrated: 0, bytesSaved: 0 // Totalt antal byte sparade från komprimering }


**Migreringssteg:**

1. Bilagorsinnehåll: hex-kodning → inbyggd BLOB (50% besparing)
2. Meddelandemetadata: JSON-text → brotli-komprimerad BLOB (46-86% besparing)
3. Brevlådeflaggor: JSON-text → brotli-komprimerad BLOB (60-80% besparing)

**Källa:** [`helpers/migrate-storage-format.js`](https://github.com/forwardemail/forwardemail.net/blob/master/helpers/migrate-storage-format.js)

---

### Kombinerad lagringseffektivitet {#combined-storage-efficiency}

> \[!TIP]
> **Verklig påverkan:** Med bilagorsdeduplicering + Brotli-komprimering får Forward Email-användare **2-3x mer effektiv lagring** jämfört med traditionella e-postleverantörer.

**Exempelscenario:**

Traditionell e-postleverantör (1GB brevlåda):

* 1GB diskutrymme = 1GB e-post
* Ingen deduplicering: Samma bilaga lagrad 10 gånger = 10x lagringsspill
* Ingen komprimering: Full JSON-metadata lagrad = 2-3x lagringsspill

Forward Email (1GB brevlåda):

* 1GB diskutrymme ≈ **2-3GB e-post** (effektiv lagring)
* Deduplicering: Samma bilaga lagrad en gång, refererad 10 gånger
* Komprimering: 46-86% besparing på metadata, 50% på bilagor
* Kryptering: ChaCha20-Poly1305 (ingen lagringsöverbelastning)

**Jämförelsetabell:**

| Leverantör       | Lagringsteknologi                            | Effektiv lagring (1GB brevlåda) |
| ---------------- | -------------------------------------------- | ------------------------------- |
| Gmail            | Ingen                                        | 1GB                             |
| iCloud           | Ingen                                        | 1GB                             |
| Outlook.com      | Ingen                                        | 1GB                             |
| Fastmail         | Ingen                                        | 1GB                             |
| ProtonMail       | Endast kryptering                            | 1GB                             |
| Tutanota         | Endast kryptering                            | 1GB                             |
| **Forward Email**| **Deduplicering + Komprimering + Kryptering** | **2-3GB** ✨                     |

### Tekniska implementeringsdetaljer {#technical-implementation-details}

**Prestanda:**

* Brotli nivå 4: Komprimering/dekomprimering under millisekund
* Ingen prestandapåverkan från komprimering
* SQLite FTS5: Sökning under 50 ms med NVMe SSD

**Säkerhet:**

* Komprimering sker **efter** kryptering (SQLite-databasen är krypterad)
* ChaCha20-Poly1305-kryptering + Brotli-komprimering
* Zero-knowledge: Endast användaren har dekrypteringslösenordet

**RFC-efterlevnad:**

* Hämtade meddelanden ser **exakt likadana** ut som lagrade
* DKIM-signaturer förblir giltiga (kodad innehåll bevaras)
* GPG-signaturer förblir giltiga (ingen ändring av signerat innehåll)

### Varför ingen annan leverantör gör detta {#why-no-other-provider-does-this}

**Komplexitet:**

* Kräver djup integration med lagringslager
* Bakåtkompatibilitet är utmanande
* Migrering från gamla format är komplex

**Prestandabekymmer:**

* Komprimering lägger till CPU-belastning (lösts med Brotli nivå 4)
* Dekomprimering vid varje läsning (lösts med SQLite-cache)

**Forward Emails fördel:**

* Byggt från grunden med optimering i åtanke
* SQLite tillåter direkt BLOB-manipulation
* Krypterade användardatabaser möjliggör säker komprimering

---

---


## Moderna funktioner {#modern-features}


## Komplett REST API för e-posthantering {#complete-rest-api-for-email-management}

> \[!TIP]
> Forward Email erbjuder ett omfattande REST API med 39 endpoints för programmatisk e-posthantering.

> \[!TIP]
> **Unik branschfunktion:** Till skillnad från alla andra e-posttjänster erbjuder Forward Email fullständig programmatisk åtkomst till din brevlåda, kalender, kontakter, meddelanden och mappar via ett omfattande REST API. Detta är direkt interaktion med din krypterade SQLite-databasfil som lagrar all din data.

Forward Email erbjuder ett komplett REST API som ger enastående åtkomst till dina e-postdata. Ingen annan e-posttjänst (inklusive Gmail, iCloud, Outlook, ProtonMail, Tuta eller Fastmail) erbjuder denna nivå av omfattande, direkt databasåtkomst.
**API-dokumentation:** <https://forwardemail.net/en/email-api>

### API-kategorier (39 slutpunkter) {#api-categories-39-endpoints}

**1. Meddelanden API** (5 slutpunkter) - Fullständiga CRUD-operationer på e-postmeddelanden:

* `GET /v1/messages` - Lista meddelanden med 15+ avancerade sökparametrar (ingen annan tjänst erbjuder detta)
* `POST /v1/messages` - Skapa/skicka meddelanden
* `GET /v1/messages/:id` - Hämta meddelande
* `PUT /v1/messages/:id` - Uppdatera meddelande (flaggor, mappar)
* `DELETE /v1/messages/:id` - Radera meddelande

*Exempel: Hitta alla fakturor från förra kvartalet med bilagor:*

```bash
curl -u "alias@domain.com:password" \
  "https://api.forwardemail.net/v1/messages?q=subject:invoice+has:attachment+after:2024-01-01+before:2024-04-01"

Se Avancerad sökdokumentation

2. Mappar API (5 slutpunkter) - Fullständig IMAP-mapphantering via REST:

  • GET /v1/folders - Lista alla mappar
  • POST /v1/folders - Skapa mapp
  • GET /v1/folders/:id - Hämta mapp
  • PUT /v1/folders/:id - Uppdatera mapp
  • DELETE /v1/folders/:id - Radera mapp

3. Kontakter API (5 slutpunkter) - CardDAV kontaktlagring via REST:

  • GET /v1/contacts - Lista kontakter
  • POST /v1/contacts - Skapa kontakt (vCard-format)
  • GET /v1/contacts/:id - Hämta kontakt
  • PUT /v1/contacts/:id - Uppdatera kontakt
  • DELETE /v1/contacts/:id - Radera kontakt

4. Kalendrar API (5 slutpunkter) - Hantering av kalenderbehållare:

  • GET /v1/calendars - Lista kalenderbehållare
  • POST /v1/calendars - Skapa kalender (t.ex. "Arbetskalender", "Personlig kalender")
  • GET /v1/calendars/:id - Hämta kalender
  • PUT /v1/calendars/:id - Uppdatera kalender
  • DELETE /v1/calendars/:id - Radera kalender

5. Kalenderhändelser API (5 slutpunkter) - Schemaläggning av händelser inom kalendrar:

  • GET /v1/calendar-events - Lista händelser
  • POST /v1/calendar-events - Skapa händelse med deltagare
  • GET /v1/calendar-events/:id - Hämta händelse
  • PUT /v1/calendar-events/:id - Uppdatera händelse
  • DELETE /v1/calendar-events/:id - Radera händelse

Exempel: Skapa en kalenderhändelse:

curl -u "alias@domain.com:password" \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{"title":"Team Meeting","start":"2024-12-20T10:00:00Z","attendees":["team@example.com"],"calendar_id":"calendar123"}' \
  https://api.forwardemail.net/v1/calendar-events

Tekniska detaljer

  • Autentisering: Enkel alias:password autentisering (ingen OAuth-komplexitet)
  • Prestanda: Svarstider under 50 ms med SQLite FTS5 och NVMe SSD-lagring
  • Noll nätverksfördröjning: Direkt databasåtkomst, inte proxad via externa tjänster

Verkliga användningsfall

  • E-postanalys: Bygg anpassade instrumentpaneler som spårar e-postvolym, svarstider, avsändarstatistik

  • Automatiserade arbetsflöden: Trigga åtgärder baserat på e-postinnehåll (fakturahantering, supportärenden)

  • CRM-integration: Synkronisera e-postkonversationer med ditt CRM automatiskt

  • Efterlevnad & upptäckt: Sök och exportera e-post för juridiska/efterlevnadskrav

  • Anpassade e-postklienter: Bygg specialiserade e-postgränssnitt för ditt arbetsflöde

  • Business Intelligence: Analysera kommunikationsmönster, svarsfrekvenser, kundengagemang

  • Dokumenthantering: Extrahera och kategorisera bilagor automatiskt

  • Fullständig dokumentation

  • Fullständig API-referens

  • Guide för avancerad sökning

  • 30+ integrations-exempel

  • Teknisk arkitektur

Forward Email erbjuder ett modernt REST API som ger full kontroll över e-postkonton, domäner, alias och meddelanden. Detta API fungerar som ett kraftfullt alternativ till JMAP och erbjuder funktionalitet utöver traditionella e-postprotokoll.

Kategori Slutpunkter Beskrivning
Kontohantering 8 Användarkonton, autentisering, inställningar
Domänhantering 12 Anpassade domäner, DNS, verifiering
Alias-hantering 6 E-postalias, vidarebefordran, catch-all
Meddelandehantering 7 Skicka, ta emot, söka, radera meddelanden
Kalender & Kontakter 4 CalDAV/CardDAV-åtkomst via API
Loggar & Analys 2 E-postloggar, leveransrapporter

Viktiga API-funktioner

Avancerad sökning:

API:et erbjuder kraftfulla sökfunktioner med frågesyntax liknande Gmail:

GET /v1/messages?q=subject:invoice+has:attachment+after:2024-01-01+before:2024-04-01

Stödda sökoperatorer:

  • from: - Sök efter avsändare
  • to: - Sök efter mottagare
  • subject: - Sök efter ämne
  • has:attachment - Meddelanden med bilagor
  • is:unread - Olästa meddelanden
  • is:starred - Stjärnmärkta meddelanden
  • after: - Meddelanden efter datum
  • before: - Meddelanden före datum
  • label: - Meddelanden med etikett
  • filename: - Bilagans filnamn

Hantera kalenderhändelser:

GET /v1/calendar-events
POST /v1/calendar-events
PUT /v1/calendar-events/:id
DELETE /v1/calendar-events/:id

Webhook-integrationer:

API:et stödjer webhooks för realtidsnotifikationer av e-posthändelser (mottaget, skickat, studsat, etc.).

Autentisering:

  • API-nyckelautentisering
  • OAuth 2.0-stöd
  • Hastighetsbegränsning: 1000 förfrågningar/timme

Dataformat:

  • JSON för förfrågningar/svar
  • RESTful design
  • Stöd för paginering

Säkerhet:

  • Endast HTTPS
  • Rotation av API-nycklar
  • IP-vitlistning (valfritt)
  • Signering av förfrågningar (valfritt)

API-arkitektur


iOS Push-notiser

Tip

Forward Email stödjer inbyggda iOS push-notiser via XAPPLEPUSHSERVICE för omedelbar e-postleverans.

Important

Unik funktion: Forward Email är en av få open-source e-postservrar som stödjer inbyggda iOS push-notiser för e-post, kontakter och kalendrar via XAPPLEPUSHSERVICE IMAP-tillägget. Detta är omvänt konstruerat från Apples protokoll och ger omedelbar leverans till iOS-enheter utan batteriförbrukning.

Forward Email implementerar Apples proprietära XAPPLEPUSHSERVICE-tillägg, vilket ger inbyggda push-notiser för iOS-enheter utan behov av bakgrunds-polling.

Hur det fungerar

XAPPLEPUSHSERVICE är ett icke-standard IMAP-tillägg som tillåter iOS Mail-app att ta emot omedelbara push-notiser när nya e-postmeddelanden anländer.

Forward Email implementerar Apples proprietära Push Notification service (APNs) integration för IMAP, vilket gör att iOS Mail-app kan ta emot omedelbara push-notiser när nya e-postmeddelanden anländer.

Viktiga funktioner

Omedelbar leverans:

  • Push-notiser anländer inom sekunder
  • Ingen batterikrävande bakgrundspolling
  • Fungerar även när Mail-appen är stängd
  • Omedelbar leverans: E-post, kalenderhändelser och kontakter visas på din iPhone/iPad direkt, inte enligt ett pollingschema

  • Batterisnål: Använder Apples push-infrastruktur istället för att upprätthålla ständiga IMAP-anslutningar

  • Ämnesbaserad push: Stödjer push-notiser för specifika brevlådor, inte bara INBOX

  • Inga tredjepartsappar krävs: Fungerar med de inbyggda iOS-apparna Mail, Kalender och Kontakter Inbyggd integration:

  • Inbyggd i iOS Mail-app

  • Inga tredjepartsappar krävs

  • Sömlös användarupplevelse

Integritet i fokus:

  • Enhetstoken är krypterade
  • Inget meddelandeinnehåll skickas via APNS
  • Endast "nytt mail"-notifikation skickas

Batterisnål:

  • Ingen konstant IMAP-polling
  • Enheten sover tills notifikation anländer
  • Minimal batteripåverkan

Vad gör detta speciellt

Important

De flesta e-postleverantörer stödjer inte XAPPLEPUSHSERVICE, vilket tvingar iOS-enheter att poll:a efter nytt mail var 15:e minut.

De flesta open-source e-postservrar (inklusive Dovecot, Postfix, Cyrus IMAP) stödjer INTE iOS push-notifikationer. Användare måste antingen:

  • Använda IMAP IDLE (håller anslutningen öppen, tömmer batteri)
  • Använda polling (kontrollerar var 15-30:e minut, fördröjda notifikationer)
  • Använda proprietära e-postappar med egen push-infrastruktur

Forward Email erbjuder samma omedelbara push-notifikationsupplevelse som kommersiella tjänster som Gmail, iCloud och Fastmail.

Jämförelse med andra leverantörer:

Leverantör Push-stöd Pollingintervall Batteripåverkan
Forward Email ✅ Inbyggd Push Omedelbar Minimal
Gmail ✅ Inbyggd Push Omedelbar Minimal
iCloud ✅ Inbyggd Push Omedelbar Minimal
Yahoo ✅ Inbyggd Push Omedelbar Minimal
Outlook.com ❌ Polling 15 minuter Måttlig
Fastmail ❌ Polling 15 minuter Måttlig
ProtonMail ⚠️ Endast Bridge Via Bridge Hög
Tutanota ❌ Endast app N/A N/A

Implementeringsdetaljer

IMAP CAPABILITY-svar:

* CAPABILITY IMAP4rev1 ... XAPPLEPUSHSERVICE ...

Registreringsprocess:

  1. iOS Mail-app upptäcker XAPPLEPUSHSERVICE-funktionalitet
  2. Appen registrerar enhetstoken hos Forward Email
  3. Forward Email sparar token och kopplar den till konto
  4. När nytt mail anländer skickar Forward Email push via APNS
  5. iOS väcker Mail-appen för att hämta nya meddelanden

Säkerhet:

  • Enhetstoken är krypterade i vila
  • Token går ut och förnyas automatiskt
  • Inget meddelandeinnehåll exponeras för APNS
  • End-to-end-kryptering bibehålls
  • IMAP Extension: XAPPLEPUSHSERVICE
  • Källkod: WildDuck Issue #711
  • Installation: Automatisk - ingen konfiguration behövs, fungerar direkt med iOS Mail-app

Jämförelse med andra tjänster

Tjänst iOS Push-stöd Metod
Forward Email ✅ Ja XAPPLEPUSHSERVICE (reverse-engineered)
Gmail ✅ Ja Proprietär Gmail-app + Google push
iCloud Mail ✅ Ja Inbyggd Apple-integration
Outlook.com ✅ Ja Proprietär Outlook-app + Microsoft push
Fastmail ✅ Ja XAPPLEPUSHSERVICE
Dovecot ❌ Nej Endast IMAP IDLE eller polling
Postfix ❌ Nej Endast IMAP IDLE eller polling
Cyrus IMAP ❌ Nej Endast IMAP IDLE eller polling

Gmail Push:

Gmail använder ett proprietärt push-system som endast fungerar med Gmail-appen. iOS Mail-app måste poll:a Gmail IMAP-servrar.

iCloud Push:

iCloud har inbyggt push-stöd liknande Forward Email, men endast för @icloud.com-adresser.

Outlook.com:

Outlook.com stödjer inte XAPPLEPUSHSERVICE, vilket kräver att iOS Mail poll:ar var 15:e minut.

Fastmail:

Fastmail stödjer inte XAPPLEPUSHSERVICE. Användare måste använda Fastmail-appen för push-notifikationer eller acceptera 15-minuters pollingfördröjningar.


Testning och verifiering

Protokollkapacitetstester

Note

Denna sektion visar resultaten från våra senaste tester av protokollfunktioner, utförda den 22 januari 2026.

Denna sektion innehåller de faktiska CAPABILITY/CAPA/EHLO-svaren från alla testade leverantörer. Alla tester kördes den 22 januari 2026.

Dessa tester hjälper till att verifiera den annonserade och faktiska stödet för olika e-postprotokoll och tillägg hos stora leverantörer.

Testmetodik

Testmiljö:

  • Datum: 22 januari 2026 kl 02:37 UTC
  • Plats: AWS EC2-instans
  • IPv4: 54.167.216.197
  • IPv6: 2600:4040:46da:9a00:b19e:3ad4:426c:2f48
  • Verktyg: OpenSSL s_client, bash-skript

Testade leverantörer:

  • Forward Email
  • Gmail
  • Outlook.com
  • iCloud
  • Fastmail
  • Yahoo/AOL (Verizon)

Testskript

För full transparens tillhandahålls de exakta skripten som användes för dessa tester nedan.

IMAP Capability Test Script

#!/bin/bash
# IMAP Capability Test Script
# Tests IMAP CAPABILITY for various email providers

echo "========================================="
echo "IMAP CAPABILITY TEST"
echo "Date: $(date -u +"%Y-%m-%d %H:%M:%S UTC")"
echo "========================================="
echo ""

# Gmail
echo "--- Gmail (imap.gmail.com:993) ---"
echo -e "a001 CAPABILITY\na002 LOGOUT" | timeout 10 openssl s_client -connect imap.gmail.com:993 -crlf -quiet 2>&1 | grep -A 20 "CAPABILITY"
echo ""

# Outlook.com
echo "--- Outlook.com (outlook.office365.com:993) ---"
echo -e "a001 CAPABILITY\na002 LOGOUT" | timeout 10 openssl s_client -connect outlook.office365.com:993 -crlf -quiet 2>&1 | grep -A 20 "CAPABILITY"
echo ""

# iCloud
echo "--- iCloud (imap.mail.me.com:993) ---"
echo -e "a001 CAPABILITY\na002 LOGOUT" | timeout 10 openssl s_client -connect imap.mail.me.com:993 -crlf -quiet 2>&1 | grep -A 20 "CAPABILITY"
echo ""

# Fastmail
echo "--- Fastmail (imap.fastmail.com:993) ---"
echo -e "a001 CAPABILITY\na002 LOGOUT" | timeout 10 openssl s_client -connect imap.fastmail.com:993 -crlf -quiet 2>&1 | grep -A 20 "CAPABILITY"
echo ""

# Yahoo
echo "--- Yahoo (imap.mail.yahoo.com:993) ---"
echo -e "a001 CAPABILITY\na002 LOGOUT" | timeout 10 openssl s_client -connect imap.mail.yahoo.com:993 -crlf -quiet 2>&1 | grep -A 20 "CAPABILITY"
echo ""

# Forward Email
echo "--- Forward Email (imap.forwardemail.net:993) ---"
echo -e "a001 CAPABILITY\na002 LOGOUT" | timeout 10 openssl s_client -connect imap.forwardemail.net:993 -crlf -quiet 2>&1 | grep -A 20 "CAPABILITY"
echo ""

echo "========================================="
echo "Test completed"
echo "========================================="

POP3 Capability Test Script

#!/bin/bash
# POP3 Capability Test Script
# Tests POP3 CAPA for various email providers

echo "========================================="
echo "POP3 CAPABILITY TEST"
echo "Date: $(date -u +"%Y-%m-%d %H:%M:%S UTC")"
echo "========================================="
echo ""

# Gmail
echo "--- Gmail (pop.gmail.com:995) ---"
echo -e "CAPA\nQUIT" | timeout 10 openssl s_client -connect pop.gmail.com:995 -crlf -quiet 2>&1 | grep -A 20 "CAPA"
echo ""

# Outlook.com
echo "--- Outlook.com (outlook.office365.com:995) ---"
echo -e "CAPA\nQUIT" | timeout 10 openssl s_client -connect outlook.office365.com:995 -crlf -quiet 2>&1 | grep -A 20 "CAPA"
echo ""

# iCloud (Note: iCloud does not support POP3)
echo "--- iCloud (No POP3 support) ---"
echo "iCloud stöder inte POP3"
echo ""

# Fastmail
echo "--- Fastmail (pop.fastmail.com:995) ---"
echo -e "CAPA\nQUIT" | timeout 10 openssl s_client -connect pop.fastmail.com:995 -crlf -quiet 2>&1 | grep -A 20 "CAPA"
echo ""

# Yahoo
echo "--- Yahoo (pop.mail.yahoo.com:995) ---"
echo -e "CAPA\nQUIT" | timeout 10 openssl s_client -connect pop.mail.yahoo.com:995 -crlf -quiet 2>&1 | grep -A 20 "CAPA"
echo ""

# Forward Email
echo "--- Forward Email (pop3.forwardemail.net:995) ---"
echo -e "CAPA\nQUIT" | timeout 10 openssl s_client -connect pop3.forwardemail.net:995 -crlf -quiet 2>&1 | grep -A 20 "CAPA"
echo ""

echo "========================================="
echo "Test completed"
echo "========================================="

SMTP Capability Test Script

#!/bin/bash
# SMTP Capability Test Script
# Tests SMTP EHLO for various email providers

echo "========================================="
echo "SMTP KAPABILITETSTEST"
echo "Datum: $(date -u +"%Y-%m-%d %H:%M:%S UTC")"
echo "========================================="
echo ""

# Gmail
echo "--- Gmail (smtp.gmail.com:587) ---"
echo -e "EHLO test.com\nQUIT" | timeout 10 openssl s_client -connect smtp.gmail.com:587 -starttls smtp -crlf -quiet 2>&1 | grep -A 30 "250-"
echo ""

# Outlook.com
echo "--- Outlook.com (smtp.office365.com:587) ---"
echo -e "EHLO test.com\nQUIT" | timeout 10 openssl s_client -connect smtp.office365.com:587 -starttls smtp -crlf -quiet 2>&1 | grep -A 30 "250-"
echo ""

# iCloud
echo "--- iCloud (smtp.mail.me.com:587) ---"
echo -e "EHLO test.com\nQUIT" | timeout 10 openssl s_client -connect smtp.mail.me.com:587 -starttls smtp -crlf -quiet 2>&1 | grep -A 30 "250-"
echo ""

# Fastmail
echo "--- Fastmail (smtp.fastmail.com:587) ---"
echo -e "EHLO test.com\nQUIT" | timeout 10 openssl s_client -connect smtp.fastmail.com:587 -starttls smtp -crlf -quiet 2>&1 | grep -A 30 "250-"
echo ""

# Yahoo
echo "--- Yahoo (smtp.mail.yahoo.com:587) ---"
echo -e "EHLO test.com\nQUIT" | timeout 10 openssl s_client -connect smtp.mail.yahoo.com:587 -starttls smtp -crlf -quiet 2>&1 | grep -A 30 "250-"
echo ""

# Forward Email
echo "--- Forward Email (smtp.forwardemail.net:587) ---"
echo -e "EHLO test.com\nQUIT" | timeout 10 openssl s_client -connect smtp.forwardemail.net:587 -starttls smtp -crlf -quiet 2>&1 | grep -A 30 "250-"
echo ""

echo "========================================="
echo "Test slutförd"
echo "========================================="

Test Results Summary

IMAP (CAPABILITY)

Forward Email

* CAPABILITY IMAP4rev1 AUTH=PLAIN AUTH=PLAIN-CLIENTTOKEN CHILDREN ENABLE ID IDLE NAMESPACE QUOTA SASL-IR UNSELECT XLIST XAPPLEPUSHSERVICE

Gmail

* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT LIST-EXTENDED LIST-STATUS LITERAL- SPECIAL-USE

iCloud

* OK [CAPABILITY XAPPLEPUSHSERVICE IMAP4 IMAP4rev1 SASL-IR AUTH=ATOKEN AUTH=PLAIN AUTH=ATOKEN2 AUTH=XOAUTH2]

Outlook.com

* CAPABILITY IMAP4rev1 AUTH=PLAIN AUTH=XOAUTH2 SASL-IR UIDPLUS ID UNSELECT CHILDREN IDLE NAMESPACE LITERAL+

Fastmail

* CAPABILITY IMAP4rev1 ACL ANNOTATE-EXPERIMENT-1 CATENATE CONDSTORE ENABLE ESEARCH ESORT I18NLEVEL=1 ID IDLE LIST-EXTENDED LIST-STATUS LITERAL+ LOGINDISABLED MULTIAPPEND NAMESPACE QRESYNC QUOTA RIGHTS=ektx SASL-IR SORT SPECIAL-USE THREAD=ORDEREDSUBJECT UIDPLUS UNSELECT WITHIN X-RENAME XLIST

Yahoo/AOL (Verizon)

* CAPABILITY IMAP4rev1 IDLE NAMESPACE QUOTA ID XLIST CHILDREN UIDPLUS MOVE CONDSTORE ESEARCH ENABLE LIST-EXTENDED LIST-STATUS LITERAL- SPECIAL-USE UNSELECT XAPPLEPUSHSERVICE

POP3 (CAPA)

Forward Email

+OK
CAPA
TOP
USER
UIDL
EXPIRE 30
IMPLEMENTATION ForwardEmail
.

Gmail

+OK
CAPA
TOP
USER
UIDL
EXPIRE 30
IMPLEMENTATION Gpop
.

Outlook.com

+OK
CAPA
TOP
USER
UIDL
SASL PLAIN XOAUTH2
.

Fastmail

+OK
CAPA
TOP
USER
UIDL
EXPIRE 30
IMPLEMENTATION Cyrus
.

SMTP (EHLO)

Forward Email

250-smtp.forwardemail.net
250-PIPELINING
250-SIZE 52428800
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 CHUNKING

Gmail

250-smtp.gmail.com at your service
250-SIZE 35882577
250-8BITMIME
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8

Outlook.com

250-SN4PR13CA0005.outlook.office365.com Hello [x.x.x.x]
250-SIZE 157286400
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-STARTTLS
250-8BITMIME
250-BINARYMIME
250-CHUNKING
250 SMTPUTF8

Fastmail

250-smtp.fastmail.com
250-PIPELINING
250-SIZE 78643200
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 CHUNKING

Yahoo/AOL (Verizon)

250-smtp.mail.yahoo.com
250-PIPELINING
250-SIZE 41943040
250-8BITMIME
250-ENHANCEDSTATUSCODES
250-STARTTLS

Detaljerade testresultat

IMAP-testresultat

Gmail: * CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1 XYZZY SASL-IR AUTH=XOAUTH2 AUTH=PLAIN AUTH=PLAIN-CLIENTTOKEN AUTH=OAUTHBEARER

Outlook.com: * CAPABILITY IMAP4 IMAP4rev1 AUTH=PLAIN AUTH=XOAUTH2 SASL-IR UIDPLUS ID UNSELECT CHILDREN IDLE NAMESPACE LITERAL+

iCloud: * CAPABILITY XAPPLEPUSHSERVICE IMAP4 IMAP4rev1 SASL-IR AUTH=ATOKEN AUTH=PLAIN AUTH=ATOKEN2 AUTH=XOAUTH2

Fastmail: Anslutningen tidsutlöste. Se anteckningar nedan.

Yahoo: * CAPABILITY IMAP4rev1 SASL-IR AUTH=PLAIN AUTH=XOAUTH2 AUTH=OAUTHBEARER ID MOVE NAMESPACE XYMHIGHESTMODSEQ UIDPLUS LITERAL+ CHILDREN UNSELECT X-MSG-EXT OBJECTID IDLE ENABLE UIDONLY X-ALL-MAIL X-UIDONLY LIST-EXTENDED LIST-STATUS SPECIAL-USE PARTIAL APPENDLIMIT=41697280

Forward Email: * CAPABILITY XAPPLEPUSHSERVICE IMAP4rev1 APPENDLIMIT=52428800 AUTH=PLAIN AUTH=PLAIN-CLIENTTOKEN CHILDREN CONDSTORE ENABLE ID IDLE MOVE NAMESPACE QUOTA SASL-IR SPECIAL-USE UIDPLUS UNSELECT UTF8=ACCEPT XLIST

POP3-testresultat

Gmail: Anslutningen returnerade inte CAPA-svar utan autentisering.

Outlook.com: Anslutningen returnerade inte CAPA-svar utan autentisering.

iCloud: Ej stöd.

Fastmail: Anslutningen tidsutlöste. Se anteckningar nedan.

Yahoo: +OK CAPA list follows... SASL PLAIN XOAUTH2

Forward Email: Anslutningen returnerade inte CAPA-svar utan autentisering.

SMTP-testresultat

Gmail: 250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH

Outlook.com: 250-DSN

iCloud: 250-DSN

Fastmail: 250 AUTH PLAIN LOGIN XOAUTH2 OAUTHBEARER

Yahoo: 250 AUTH PLAIN LOGIN XOAUTH2 OAUTHBEARER

Forward Email: 250-DSN, 250-REQUIRETLS

Anteckningar om testresultaten

Note

Viktiga observationer och begränsningar från testresultaten.

  1. Fastmail-tidsutlösningar: Fastmail-anslutningar tidsutlöste under testningen, sannolikt på grund av hastighetsbegränsningar eller brandväggsrestriktioner från testserverns IP. Fastmail är känt för att ha robust IMAP/POP3/SMTP-stöd baserat på deras dokumentation.

  2. POP3 CAPA-svar: Flera leverantörer (Gmail, Outlook.com, Forward Email) returnerade inte CAPA-svar utan autentisering. Detta är en vanlig säkerhetspraxis för POP3-servrar.

  3. DSN-stöd: Endast Outlook.com, iCloud och Forward Email annonserar uttryckligen DSN-stöd i sina SMTP EHLO-svar. Detta betyder inte nödvändigtvis att andra leverantörer inte stödjer DSN, men de annonserar det inte.

  4. REQUIRETLS: Endast Forward Email annonserar uttryckligen REQUIRETLS-stöd med en användarvänlig kryssruta för efterlevnad. Andra leverantörer kan stödja det internt men annonserar det inte i EHLO.

  5. Testmiljö: Tester genomfördes från en AWS EC2-instans (IP: 54.167.216.197 IPv4, 2600:4040:46da:9a00:b19e:3ad4:426c:2f48 IPv6) den 22 januari 2026 kl. 02:37 UTC.


Sammanfattning

Forward Email erbjuder omfattande RFC-protokollstöd över alla större e-poststandarder:

  • IMAP4rev1: 16 stödda RFC:er med avsiktliga skillnader dokumenterade
  • POP3: 4 stödda RFC:er med RFC-kompatibel permanent borttagning
  • SMTP: 11 stödda tillägg inklusive SMTPUTF8, DSN och PIPELINING
  • Autentisering: DKIM, SPF, DMARC, ARC fullt stöd
  • Transport Säkerhet: MTA-STS och REQUIRETLS fullt stöd, DANE delvis stöd
  • Kryptering: OpenPGP v6 och S/MIME stöd
  • Kalender: CalDAV, CardDAV och VTODO fullt stöd
  • API-åtkomst: Komplett REST API med 39 slutpunkter för direkt databasåtkomst
  • iOS-push: Inbyggda push-notiser för e-post, kontakter och kalendrar via XAPPLEPUSHSERVICE

Viktiga differentierare

Tip

Forward Email utmärker sig med unika funktioner som inte finns hos andra leverantörer.

Vad som gör Forward Email unikt:

  1. Quantum-säker kryptering – Enda leverantören med ChaCha20-Poly1305-krypterade SQLite-postlådor
  2. Zero-Knowledge-arkitektur – Ditt lösenord krypterar din postlåda; vi kan inte dekryptera den
  3. Gratis anpassade domäner – Inga månadsavgifter för e-post med anpassad domän
  4. REQUIRETLS-stöd – Användarvänlig kryssruta för att kräva TLS för hela leveransvägen
  5. Omfattande API – 39 REST API-slutpunkter för full programmatisk kontroll
  6. iOS-pushnotiser – Inbyggt XAPPLEPUSHSERVICE-stöd för omedelbar leverans
  7. Öppen källkod – Full källkod tillgänglig på GitHub
  8. Integritetsfokuserad – Ingen datainsamling, inga annonser, ingen spårning
  • Sandboxad kryptering: Enda e-posttjänsten med individuellt krypterade SQLite-postlådor
  • RFC-efterlevnad: Prioriterar standardefterlevnad över bekvämlighet (t.ex. POP3 DELE)
  • Fullständig API: Direkt programmatisk åtkomst till all e-postdata
  • Öppen källkod: Fullt transparent implementation

Sammanfattning av protokollstöd:

Kategori Stödnivå Detaljer
Kärnprotokoll ✅ Utmärkt IMAP4rev1, POP3, SMTP fullt stöd
Moderna protokoll ⚠️ Delvis IMAP4rev2 delvis stöd, JMAP ej stöd
Säkerhet ✅ Utmärkt DKIM, SPF, DMARC, ARC, MTA-STS, REQUIRETLS
Kryptering ✅ Utmärkt OpenPGP, S/MIME, SQLite-kryptering
CalDAV/CardDAV ✅ Utmärkt Fullständig kalender- och kontakt-synkronisering
Filtrering ✅ Utmärkt Sieve (24 tillägg) och ManageSieve
API ✅ Utmärkt 39 REST API-endpoints
Push ✅ Utmärkt Inbyggda push-notiser för iOS