Come apparirebbe una whitelist di esempio, che autorizzerebbe una lista bianca
intervallo di tutti gli IP da 123.123.0.0 - 123.123.255.255
?
Ho il whitelistfile in
/etc/spamhaus.wl
Ho trascorso una buona mezz'ora a cercare sul Web e non ho trovato alcuna documentazione riguardante la tua domanda, né in inglese né in italiano ( mod_spamhause
autore Luca Ercoli è italiano). Tuttavia, non siamo completamente sfortunati. Il codice mod_spamhause
è stato pubblicato on-line e possiamo dare un'occhiata a come i filtri sono gestiti in questa unità . La parte del codice relativa alla tua domanda è ( in C ++ ):
if ( (strchr(lista[count],'/') == NULL )){
if ( strcmp(lista[count],r->connection->remote_ip) == 0 ) return 1;
}
else {
sscanf(lista[count], "%[^/]/%u", ippi, &bitmask);
sscanf(ippi, "%lu.%lu.%lu.%lu", &a, &b, &c, &d);
first = (a << 24) + (b << 16) + (c << 8) + d;
mask = (0xFFFFFFFF << (32 - bitmask));
last = first + (~mask);
first = htonl(first);
last = htonl(last);
in.s_addr = first;
sscanf(inet_ntoa(in), "%d.%d.%d.%d", &a_min, &b_min, &c_min, &d_min);
in.s_addr = last;
sscanf(inet_ntoa(in), "%d.%d.%d.%d", &a_max, &b_max, &c_max, &d_max);
sscanf(r->connection->remote_ip, "%d.%d.%d.%d", &a_daverificare, &b_daverificare, &c_daverificare, &d_daverificare);
if (
((d_daverificare <= d_max) && (d_daverificare >= d_min)) &&
((c_daverificare <= c_max) && (c_daverificare >= c_min)) &&
((b_daverificare <= b_max) && (b_daverificare >= b_min)) &&
((a_daverificare <= a_max) && (a_daverificare >= a_min))
) return 1;
}
È piuttosto semplice, ma se non leggi C ++, riassumiamo che accetterà sia i singoli IP che CIDR
intervalli, formattati come fa Apache.
Per rispondere alla tua domanda, in base a questo codice, puoi aggiungere un CIDR
intervallo 123.123.0.0/16
( che copre gli IP 123.123.0.0 - 123.123.255.255 ) come una singola riga in /etc/spamhaus.wl
in questo modo:
123.123.0.0/16
Il codice pubblicato gestirà CIDR notation
, tuttavia non abbiamo modo di sapere che questo codice è effettivamente in uso con il tuo mod_spamhaus
build. Se non funziona per te allora ti suggerirei di cercare altre build, o compilare la tua versione usando SourceArchive.com codice pubblicato .
Cheers!
Dopo aver consultato il modulo, c'è ben poca o nessuna documentazione su come si aspetta la whitelist. Mi piacerebbe capire che prenderà valori basati su CIDR o singoli IP.