Zum Inhalt springen

Sender Rewriting Scheme

aus Wikipedia, der freien Enzyklopädie

Das Sender Rewriting Scheme (kurz SRS) ist eine Methode, um den Absender (genauer: den Envelope Sender) einer E-Mail so umzuschreiben, dass Sender Policy Framework (SPF) auch mit Mail-Umleitung funktioniert.

Bei einer Mail-Umleitung werden nicht nur die Absenderdaten im Header unverändert gelassen, sondern auch der im SMTP vorgesehene Envelope Sender, der mit SPF überprüft wird. In so einem Fall ist der weiterleitende Mailserver möglicherweise nicht im Sinne von SPF berechtigt, die Mail zu versenden.

Wird als Lösung jedoch der Envelope Sender einfach umgeschrieben, kann es passieren, dass Fehlermeldungen nicht mehr ankommen.

Beispiel: a@d1.example schreibt an b@d2.example; b@d2.example wird an c@d3.example weitergeleitet. Der Mailserver von d2.example ist nicht berechtigt, Mail von d1.example zu versenden, also ist die Mail aus Sicht von d3.example ungültig. Würde der Mailserver von d2.example die Adresse b@d2.example als Absender nehmen, könnte d3.example den ursprünglichen Absender a@d1.example nicht informieren, wenn ein Fehler bei der Zustellung stattfände, denn d3.example würde die Fehlernachricht an b@d2.example versenden, was wieder weitergeleitet und wieder fehlschlagen würde.

SRS löst das Problem dadurch, dass der ursprüngliche Absender im neuen Absender kodiert wird, im obigen Beispiel z. B. in der Form a#d1.example-b@d2.example.

Da das aber dazu führt, dass man Mails mit gefälschtem Absender über SRS einschmuggeln könnte, ist in der SRS-Adresse ein zusätzlicher kryptographischer Hash vorgesehen, der die Adresse sichert. Eine vollständige SRS-Adresse hat die Form

SRS0=HHH=TT=hostname=local-part@domain

wobei HHH für den Hash und TT für einen Zeitstempel steht.

Aus Sicht eines Mailversenders ist SRS eine unbefriedigende Lösung, da er zwar mit SPF bestimmen kann, welche Server mit der eigenen Absenderadresse senden dürfen, er aber darauf angewiesen ist, dass alle weiterleitenden Mailserver SRS implementieren, damit die Mail sicher zugestellt wird, was außerhalb seines Einflussbereiches liegt.

Weblinks

      | {{#ifeq: 20050404084937 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: Ursprünglicher Draft für SRS | {{#invoke:WLink|getEscapedTitle|Ursprünglicher Draft für SRS}} | {{#invoke:Webarchiv|getdomain|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20050404084937}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: Ursprünglicher Draft für SRS | {{#invoke:WLink|getEscapedTitle|Ursprünglicher Draft für SRS}} | {{#invoke:Webarchiv|getdomain|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20050404084937}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: Ursprünglicher Draft für SRS | {{#invoke:WLink|getEscapedTitle|Ursprünglicher Draft für SRS}} | {{#invoke:Webarchiv|getdomain|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: Ursprünglicher Draft für SRS | {{#invoke:WLink|getEscapedTitle|Ursprünglicher Draft für SRS}} | {{#invoke:Webarchiv|getdomain|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: Ursprünglicher Draft für SRS | {{#invoke:WLink|getEscapedTitle|Ursprünglicher Draft für SRS}} | {{#invoke:Webarchiv|getdomain|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt}} }} (Memento{{#if: {{#if:  | {{{archiv-bot}}} |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: Ursprünglicher Draft für SRS | {{#invoke:WLink|getEscapedTitle|Ursprünglicher Draft für SRS}} | {{#invoke:Webarchiv|getdomain|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt}} }}  
                 }}}}}}}}{{#if:
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20050404084937|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt}}
    || {{#if:  || }}
  }}{{#if: Ursprünglicher Draft für SRS
    | {{#if: {{#invoke:WLink|isBracketedLink|Ursprünglicher Draft für SRS}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://www.libsrs.org/draft-mengwong-sender-rewrite-01.txt }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }} (englisch)