Strategia di sicurezza Robots.txt?

6

C'è un modo per avere sostanzialmente un permesso per tutti i criteri sul tuo dominio di primo livello, e tutti i sottodomini non possono tutti? Preferirei che i miei server di app pubblici non venissero indicizzati, ma da quello che posso dire, nessun robot sta nemmeno interrogando per robots.txt quando salta dal nostro dominio di primo livello a un sottodominio attraverso un collegamento.

Mi sono sempre sentito come mappare tutti i posti off limits per robots.txt sta dando via una roadmap a chiunque voglia sapere dove sono le cose buone.

Quale tipo di strategia di sicurezza Robots.txt sarebbe la soluzione migliore per un ambiente webapp?

    
posta neil 31.01.2012 - 04:44
fonte

5 risposte

7

Non sei corretto nel presupposto che il robots.txt sui sottodomini sia ignorato. La maggior parte dei motori di ricerca prenderà e obbedirà al robots.txt per singoli sottodomini.

Se lo desideri, puoi istruire gli spider a non indicizzare gli elementi del tuo sito web senza elencarli in robots.txt, tramite:

  1. Aggiunta di <meta name="robots" content="noindex" /> al codice HTML delle pagine web
  2. Aggiunta di X-Robots-Tag: noindex alle intestazioni HTTP

Maggiori dettagli disponibili qui

Tuttavia, indipendentemente da ciò, non dovresti affidarti a robots.txt per sicurezza. Quello che ti stai proponendo qui è sicurezza attraverso l'oscurità che è ampiamente considerata una cattiva idea.

    
risposta data 31.01.2012 - 10:41
fonte
6

Per quanto riguarda la sicurezza, l'utilizzo di robots.txt ha due regole.

  1. Non tentare di implementare alcuna sicurezza tramite robots.txt . Il file robots non è altro che un suggerimento gentile, e mentre la maggior parte dei crawler dei motori di ricerca lo rispettano, i crawler maligni fanno una bella risata e continuano la loro attività. Se è collegato, può essere trovato.
  2. Non esporre informazioni interessanti tramite robots.txt . Nello specifico, se ti affidi all'URL per controllare l'accesso a determinate risorse (che è un enorme campanello di allarme da solo), aggiungerlo a robots.txt non farà che peggiorare il problema: un utente malintenzionato che esegue la scansione di robots.txt vedrà ora il segreto URL che cercavi di nascondere e concentrare gli sforzi su quella parte del tuo sito (non vuoi indicizzarla, e si chiama 'sekrit-admin-part-do-not-tell-anyone', quindi è probabilmente interessante).

Quindi, con tutti i mezzi, usa robots.txt per dire ai motori di ricerca quali parti del tuo sito vuoi che indicizzino e quando rivederle, ma non usarle mai per sicurezza. Se hai cose da nascondere, usa la protezione effettiva (e se non vuoi che qualcosa compaia nei risultati dei motori di ricerca, è probabile che dovresti proteggerlo comunque).

    
risposta data 31.01.2012 - 13:32
fonte
5

Non dovresti mai fare affidamento su robots.txt per offrirti qualsiasi tipo di discrezione o sicurezza.

Certo, i grandi motori lo rispetteranno, ma chiunque può scrivere un crawler e trovare "le cose buone", come hai chiamato tu.

Se sul tuo server web c'è una risorsa a cui non vuoi che tutti possano accedere, devi limitare le autorizzazioni usando .htaccess o un meccanismo simile, a seconda del server.

    
risposta data 31.01.2012 - 07:51
fonte
2

Come ha detto Kenny, non fare affidamento su robots.txt per sicurezza. Se non vuoi che una pagina venga indicizzata, hai tre opzioni ( se il crawler segue le linee guida, alcune no):

  1. aggiungi un rel=nofollow,noindex per collegare i tag che un crawler non deve seguire o indicizzare.
  2. Aggiungi un robots.txt a ciascun dominio e imposta il file robots.txt sui sottodomini a deny /
  3. Aggiungi il tag dell'intestazione <meta name="robots" content="noindex,nofollow" /> a ciascuna pagina che i crawler non devono indicizzare.
  4. (opzionale) Esiste anche un'intestazione HTTP X-Robots-Tag: noindex,nofollow che fa lo stesso del tag dell'intestazione.

Ci saranno crawler che ignorano questo, ma i più grandi dovrebbero seguire queste regole e non indicizzare queste pagine.

    
risposta data 31.01.2012 - 08:50
fonte
0

Come tutti hanno menzionato, il tuo file robots.txt non fornisce un meccanismo per la sicurezza e, se vuoi che i crawler NON indicizzino i tuoi sottodomini, puoi utilizzare singoli file robots.txt per ogni sottodominio. Ecco come appare uno di questi file robots.txt:

User-agent: *
Non consentire: /

Per ulteriori informazioni su robots.txt, qui ci sono alcune risorse:

risposta data 05.02.2012 - 09:11
fonte

Leggi altre domande sui tag