Un pass proxy inverso mantiene anonimo il server back-end?

2

Se ho un server NGINX a 1.1.1.1 e nel server NGINX hai la configurazione che inoltra il traffico http a 2.2.2.2 :

upstream 123 {
    server 2.2.2.2;
}

server {
    listen 80 default_server;
    location / {
        proxy_pass http://123;
        proxy_set_header        Host            $host;
        proxy_set_header        X-Real-IP       $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Per un estraneo che conosce solo l'indirizzo 1.1.1.1 . È possibile per loro scoprire che l'indirizzo IP 2.2.2.2 è quello a cui viene reindirizzato?

    
posta maxisme 22.04.2016 - 22:34
fonte

3 risposte

2

Se configurato correttamente, allora sì, l'indirizzo IP del server back-end sarebbe nascosto. Questo è il principio operativo dei servizi di protezione DDoS come Cloudflare : nascondere il vero server dietro un server proxy che può tollerare un grande volume di traffico mentre filtrare le richieste non valide.

Detto questo, se è imperativo che l'IP del tuo server di backend rimanga nascosto, devi assicurarti che non venga trapelato, né dalla tua applicazione web né dai tuoi record DNS. Se il server back-end è pubblicamente raggiungibile, è necessario configurare il firewall in modo che accetti solo le richieste dal server proxy. Ciò impedirà che venga scoperto tramite una scansione di tutti gli indirizzi IP pubblici alla ricerca di un server che serve la stessa pagina Web del proxy.

    
risposta data 13.06.2016 - 22:51
fonte
1

Presumo che tu stia dicendo che 1.1.1.1 sta inoltrando tutte le richieste alla 2.2.2.2 nel tentativo di mantenere anonimo l'IP / posizione del server 2.2.2.2. Corretto?

In tal caso, l'utente penserebbe che stessero comunicando con 1.1.1.1. Finché stavi servendo solo HTML statico o documenti che dovrebbero andare bene. Il problema si verifica quando si lancia qualcosa che esegue il backend processing nel mix come PHP. Se esiste una vulnerabilità nel PHP che un utente malintenzionato potrebbe sfruttare per eseguire $ _SERVER ['SERVER_ADDR']; quindi l'utente vedrebbe 1.1.1.1 segnalando l'indirizzo ip nascosto 2.2.2.2.

NOTA: Ho modificato questa risposta, la risposta precedente non era corretta in quanto ho interpretato erroneamente questa domanda.

    
risposta data 23.04.2016 - 08:33
fonte
0

L'utilizzo di un proxy inverso nei server Web ti offre molte funzionalità. Uno di questi è l'attraversamento automatico dei dati verso più server tramite proxy inversi e bilanciamento del carico. Il server dovrebbe essere completamente anonimo a questo punto. L'unico modo in cui l'utente malintenzionato può scoprire il server proxy è se c'era una vulnerabilità nel framework che consentiva loro di eseguire codice che avrebbe perso l'indirizzo IP. Questo porta a una domanda molto più grande che dovresti cercare di ottenere una risposta:

Il mio server back-end è sicuro contro gli attacchi di iniezione?

  • SÌ: i tuoi server di back-end sono anonimi
  • No: allora il tuo server di backend potrebbe essere divulgato a individui molto determinati
risposta data 13.06.2016 - 20:57
fonte

Leggi altre domande sui tag