So blockieren Sie "über" Absender in Google Mail


16

Ich habe dieses ärgerliche Problem in Google Mail. Spammer umgehen die Gmail-Spamfilter und sind so clever, dass ich keinen eigenen manuellen Filter erstellen kann, um sie zu blockieren. Sie senden mir Junk-Mails von E-Mail-IDs des Formulars:

Jewelskart@greatestjewels.in via watchstore.cleanmail.in

Shoppingkart@shoppers.in via watchstore.cleanmail.in

Allgemein,

something@somethingelse.in via watchstore.cleanmail.in

Jetzt kann ich keinen Filter für jede E-Mail festlegen, da sie von verschiedenen IDs stammen. Der gemeinsame Teil ist die Via- Adresse, die ist watchstore.cleanmail.in. Aber wenn ich versuche , einen Filter mit dem Erstellen von watchstore.cleanmail.inin From Feld, Gmail Liste nicht über diese E - Mails. Kurz gesagt, der Filter kann über Adressen nicht erkennen .

Die Optionen zum Melden von Spam / Abbestellen funktionieren nicht.

Wie kann ich diese lästigen Spammer loswerden?


2
Sind Sie sicher, dass Sie jede E-Mail , die Sie erhalten haben, Report as Spamdurch Klicken auf die Google Mail-Schaltfläche erhalten haben? Dies sollte für weitere Mails funktionieren. Übrigens: Melden Sie sich niemals von Spam ab. Es wird lediglich bestätigt, dass Ihre Adresse korrekt ist.
JMax

@JMax Danke für die Antwort. Obwohl nicht jede Mail, aber ich habe viele solche Mails als Spam markiert. Und danke, dass du mich an die Abmeldefalle erinnert hast!
Pavan Manjunath

1
Ich bin nicht sicher, ob GMail diese Art von Funktionalität hat. Es wäre eine gute Funktion für sie, sie zu Google hinzuzufügen . Was das Report as SpamProblem angeht, sind meine Gedanken, dass es nur Spam von der scheinbaren Domain blockiert, nicht von der Domain, über die es gesendet wurde. Auch dies kann ein gutes Feature sein.
njallam

Antworten:


6

Der Grund, warum die in Google Mail integrierten Filter in dieser Situation nicht funktionieren, ist, dass sie nicht auf den "X-Forwarded-For" -Header angewendet werden können. In diesem Header werden die "via" -Domaininformationen gespeichert.

Meine Lösung bestand darin, alle paar Minuten meinen Posteingang mit einem Google Apps-Skript zu überprüfen und über eine bestimmte Domain gesendete Nachrichten automatisch herauszufiltern. Es funktioniert wirklich sehr gut. Seit der Implementierung des Skripts musste ich mich überhaupt nicht mehr mit dieser Art von Spam auseinandersetzen. Sie können meine vollständige Anleitung hier lesen: http://www.geektron.com/2014/01/how-to-filter-gmail-using-email-headers-and-stop-via-spam/


+ 1, Hervorragende Problemumgehung !! Aber ich konnte den "X-Forwarded-For" -Header nicht finden. Und andere "Header-Site-Namen" sind nicht in leicht durchsuchbaren Formaten. Beispiel: "Return-Path: <campaign-value4shop-10213-2596-859268-pavan8085=gmail.com@mails.cratusservices.in>". Die Täterdomäne "mails.cratus .." ist in die Headerdaten eingebettet. Können wir reguläre Ausdrücke verwenden, um nach Zeichenfolgen in den Headern zu suchen? Ab sofort suche ich direkt nach "mail.cratus ..", was für mich gut genug ist, aber in Zukunft zu Fehlalarmen führen kann.
Pavan Manjunath

string.search()kann Regex-Suche tun! Jetzt funktioniert mein Code einwandfrei! Danke für Ihre Hilfe. Ihre Antwort hat mich dazu gebracht, mich für Google-App-Skripte zu interessieren :) Bis Google selbst eine Funktion zum Blockieren von Adressen entwickelt hat, werde ich Ihre Antwort als richtig markieren :)
Pavan Manjunath

Ich bin froh, dass es für dich funktioniert hat, Pavan! Ich habe kürzlich auch angefangen, mit Google App Scripts zu experimentieren, und es gibt viele nützliche Dinge, die Sie damit tun können!
Chris Z

@PavanManjunath Kannst du deine eigene Antwort posten, wie du dies ohne X-Forwarded-For-Eintrag gemacht hast? Brauche das dringend. Vielen Dank.
zar

1

Ich habe von einem Freund gehört, dass es eine Chrome-Erweiterung gibt, die eine E-Mail-Adresse oder sogar die gesamte Domain mit nur einem Klick blockieren kann. Ich habe es noch nicht ausprobiert, aber ich hoffe, das hilft. Hier ist der Link: Absender blockieren


0

Ich habe ein ähnliches Skript erstellt, das nach "Received From:" sucht. Sie können der domainsVariablen so viele Domänen hinzufügen, wie erforderlich .

//without http:// etc, just domain-name.com or domainname.com ....
var domains = [
  'secureserver.net',
];

  //This is not the best solution, a better solution would be to add a filter like this for example => From: #domainname.com
  //and then this app would read your GMail filters and test whether it begins with # to apply the next function if so.. but I couldn't find a way to read GMail settings from here

function filterVia() {
  // get all threads in inbox
  var threads = GmailApp.getInboxThreads();

  for (var i = 0; i < threads.length; i++) {
    Utilities.sleep(100);
    // get all messages in a given thread
    var messages = threads[i].getMessages();
    // iterate over each message
    for (var j = 0; j < messages.length; j++) {
      // log message subject
      var content = messages[j].getRawContent();

      for (var k = 0; k < domains.length; k++) {
        //make domain name as regexp
        var re = new RegExp('\\.|\\-', 'gi');
        var b = domains[k].replace(re, '\\$&');
        var regex = new RegExp("Received\: from .*" + b,'gim');
        var does_match = regex.test(content);

        if(does_match){
          //MARK AS READ (maybe spares you an unnecessary notification)
          messages[j].markRead();
          //DELETE THE MESSAGE
          messages[j].moveToTrash();          
        }

      }
    }
  }
}

0

Wenn hier jemand nach einer Möglichkeit sucht, empfangene E-Mails nach einem Etikett zu filtern und sie im Ordner des Etiketts zu speichern, anstatt sie als Spam zu markieren und in den Papierkorb zu werfen, ist hier ein Skript, das genau das tut (Bearbeitet das von @ChrisZ bereitgestellte).

function filterByVia() {
  var threads = GmailApp.getInboxThreads(0, 5);
  var label = GmailApp.getUserLabelByName("yourlabel");
  for (var i = 0; i < threads.length; i++) {
    var messages=threads[i].getMessages();
    for (var j = 0; j < messages.length; j++) {
      var message=messages[j];
      var body=message.getRawContent();
      if (body.indexOf("the domain after via") > -1) {
        label.addToThread(threads[i]);
      }
      Utilities.sleep(1000);
    }

   }
 }

Hoffe, es hilft jemandem eines Tages


Können Sie bitte erläutern, was das Etikett ist? Ich möchte per via Domain filern.
zar

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.