Ho 2 macchine virtuali. (Vmware esxi 6)
Sono entrambi opensuse 42.3 (tumbleweed)
- Firewall (solo iptables, ipset, dhcpd, dns)
- mail / web server. (Apache, colombaia, postfix)
Il server web non può comunicare con il firewall, tranne che il traffico lo attraversa per raggiungere il server di posta / web.
Il firewall ha un elenco di blocchi di indirizzi IP a cui viene automaticamente aggiunto. Tuttavia, è relativamente semplice e non decodifica SMTP, IMAP, HTTP o HTTPS. Il secondo ha le sue protezioni per i servizi di cui sopra e ha una sua lista di blocchi.
Ora supponiamo che qualcuno comprenda il mio server di posta che potrebbe cancellare facilmente la mia block list, e così via, ma solo dal server di posta.
Come faccio a mandare mail / web server ai suoi block list al firewall senza interrompere la separazione tra DMZ e tutto il resto (o almeno, nella misura più piccola possibile) in tempo reale?
Non voglio utilizzare un servizio esterno, come caricare su cloud, poiché potrebbero DDOS me e l'elenco sarebbe accessibile.
Ho pensato di configurare una terza VM come intermediario (privato, ma sottorete condivise, schede di rete separate), ma se compromettono il web server, cosa impedisce loro di entrare nella macchina intermedia e poi il firewall. Se l'ho fatto, che tipo di protezione posso implementare per verificare che un hacker non stia inviando i propri dati attraverso il mio canale (overflow del buffer o attacco etc) invece della sola lista di blocco.
come si determina quale IP deve essere bloccato:
In generale, qualsiasi comportamento scorretto. Esempio tutte le chiamate di errore Apache sono state associate a uno script php. Lo script php registra i dettagli su mysql. Alla fine, avrò a disposizione un sistema di punteggio pieno. Ogni cosa invalida che fai aumenta il tuo punteggio, e certe cose hanno punteggi più alti.
Per quanto tempo? Soglia basata, ma alla fine per sempre. Ottieni 100 punti o qualsiasi addio per sempre.
Come si aggiungono le regole? ipset aggiunge bad_guys 1.2.3.4
se mi sento generoso, aggiungo il timeout ###### a quello.