Wie blockiere ich eine IP-Adresse oder einen Netzwerkblock mit Varnish VCL?

7

Wie blockiert man eine der IP-Adressen des Netzwerkbereichs in der VCL-Datei von Varnish?

Alexus
quelle

Antworten:

7
acl unwanted {
    "69.60.116.0"/24;
    "69.90.119.207";
}

sub vcl_recv {
    if (client.ip ~ unwanted) {
        error 410;
    }
...
}
Alexus
quelle
1
Ich benutze Lack Version 4 und ich habe diesen Fehler beim erneuten Laden von vcl config erhalten: Nachricht vom VCC-Compiler: Erwartet eine Aktion, 'if', '{' oder '}' ('input' Line 40 Pos 1) error 410; ##### -----
Risnandar
Gleiche sie, um es herauszufinden. Werde zurück berichten
Eirik H
@risnandar Dies ist die Syntax von Version 3. Seit Version 4 gibt es eine neue, siehe meine Antwort.
Totor
1

Seit Lack 4 hat sich die Syntax geändert!

Anstelle von :

error 403;

Sie müssen verwenden :

return(synth(403, "Access denied"));

Am Beispiel von Alexus :

acl unwanted {
    "69.60.116.0"/24;
    "69.90.119.207";
}

sub vcl_recv {
    if (client.ip ~ unwanted) {
        return(synth(403, "Access denied"));
    }
}
Totor
quelle