Ho bisogno di aprire la porta per il mio server MySQL all'esterno e da quello che ho letto, la configurazione predefinita non è sicura né crittografata.
Per questo ho alcune soluzioni in mente con la loro ragione, ma mi piacerebbe sapere, da un punto di vista della sicurezza migliore, se mi manca qualcosa.
In primo luogo, l'idea iniziale era di configurare un tuner SSH, ma temo che la connessione possa essere persa di tanto in tanto (anche se ho impostato con il sistema "autossh" per riconnettersi automaticamente quando la connessione si interrompe). La mia preoccupazione principale è che ho paura di perdere qualche richiesta (tra il momento in cui il tuning ssh si interrompe e il tempo autossh riprende una nuova connessione).
Quindi ho pensato di aprire MySQL all'esterno. Sono consapevole che questa non è l'opzione migliore senza lavorare sulla messa in sicurezza, ma se aggiungo questi passaggi, sarebbe meglio?
- Cambia la porta per l'esterno. Questo non impedirà a nessuno di trovare la porta corretta, ma bloccherà almeno i bot che prendono di mira direttamente 3306
- Imposta Mysql SSL. Questa operazione interromperà la trasmissione dei dati in chiaro tra il client e il server ed eviterà gli attacchi MitM.
- Consenti solo da determinati IP. Ciò garantirà che solo gli IP desiderati siano in grado di connettersi. Questo sarebbe gestito da IPtables
- root sarà disponibile solo da localhost . E tutti gli altri utenti avranno accesso limitato (al loro database)
Con questa configurazione in mente, pensi che MySQL sarebbe ancora vulnerabile?
La mia unica idea è se qualcuno acceda al mio server web e conosca il login / password, ma credo che una volta che qualcuno ha il login / password, la sicurezza diventa inutile (perché è già stata violata per ottenere le credenziali)