Ho un’installazione di Discourse e ne sono molto soddisfatto. Recentemente gli spammer hanno trovato modi per aggirare la protezione antispam integrata. Il problema è che pubblicano immagini nei loro post e poi incorporano immediatamente queste immagini in e-mail di spam che inviano a migliaia di persone. Anche se elimino i post, queste immagini sembrano rimanere disponibili per un bel po’ di tempo.
Ciò ha portato ad alcune lamentele per abuso di spam dal mio hoster.
Attualmente ho disabilitato il caricamento di immagini per i nuovi utenti, ma trattandosi di un forum di supporto, questa non è una soluzione molto gradevole. Le persone spesso hanno bisogno di aggiungere screenshot, ecc. ai loro primi post.
Qualcuno ha trovato una soluzione praticabile a questo problema?
Ho già provato a decommentare il comando valid_referers per ^/uploads, ma non sembra fare nulla. Le immagini possono ancora essere incorporate:
location ~ ^/uploads/ {
# NOTE: è davvero fastidioso che non possiamo semplicemente definire gli header
# a livello superiore e ereditarli.
#
# proxy_set_header NON eredita, per progettazione, dobbiamo ripeterlo,
# altrimenti gli header non sono impostati correttamente
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Request-Start "t=${msec}";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $thescheme;
proxy_set_header X-Sendfile-Type X-Accel-Redirect;
proxy_set_header X-Accel-Mapping $public/=/downloads/;
expires 1y;
add_header Cache-Control public,immutable;
## regole opzionali anti-hotlinking per il caricamento
valid_referers folivora.ai *.folivora.ai *.llo.ai;
if ($invalid_referer) { return 403; }
# CSS personalizzato
location ~ /stylesheet-cache/ {
add_header Access-Control-Allow-Origin *;
try_files $uri =404;
}
# questo ci permette di bypassare rails
location ~* \.(gif|png|jpg|jpeg|bmp|tif|tiff|ico||avif)$ {
add_header Access-Control-Allow-Origin *;
try_files $uri =404;
}
# SVG richiede un header aggiuntivo
location ~* \.(svg)$ {
}
# miniature e immagini ottimizzate
location ~ /_?optimized/ {
add_header Access-Control-Allow-Origin *;
try_files $uri =404;
}
proxy_pass http://discourse;
break;
}
Penso che se modifichi il post per rimuovere l’immagine in modo che non sia inclusa nell’ultima versione di un post (eliminato o meno), e imposti anche clean orphan uploads grace period hours al minimo di 1 ora, ciò potrebbe velocizzare la rimozione.
Tuttavia, non è una soluzione ideale per questo, né per facilità d’uso né per immediatezza.
L’ho già impostato su un’ora, ma sono davvero veloci a inviare le loro e-mail di spam…
Sai se l’uso di S3 invece del mio server per i caricamenti risolverebbe il problema? C’è forse un modo per consentire la visualizzazione delle immagini caricate solo agli utenti connessi?
Forse dovrei pubblicare questa come richiesta di funzionalità.\n\nIn sostanza, credo che avrei bisogno di due cose\n- possibilità di rimuovere immediatamente le immagini se un utente viene eliminato (inclusa l’immagine del profilo)\n- possibilità di rimuovere o proteggere immediatamente le immagini se un utente viene segnalato per revisione
Penso che elimini i post e gli upload vengano gestiti in modo simile al metodo sopra utilizzando clean orphan uploads grace period hours.
C’è anche un ritardo integrato di 5 minuti tra l’eliminazione logica e l’eliminazione permanente da parte dello stesso amministratore (anche se un secondo amministratore non affronterebbe la stessa attesa).
Sì. E come ha detto l’altro ragazzo qui sopra. Devi aspettare 5 minuti. Basta usare un altro account amministratore per farlo istantaneamente. Eliminerà definitivamente l’immagine.
Penso che ci sia qualcosa che non va nella tua configurazione NGINX. Quando provo ad aprire un’immagine dal tuo forum in una nuova scheda, si carica correttamente anche se non dovrebbe, dato che non ho passato alcun referer
Se riesci a farlo funzionare, risolverà la maggior parte dei tuoi problemi di spam poiché non saranno in grado di collegare in hotlink a nessuna delle immagini del tuo forum.