Password radice MySql memorizzata in .my.cnf

5

Prima di avviare un progetto, reimpostare la password di root mysql del server. Il colo che ospita il progetto vuole che la password del database root del server sia memorizzata nel file .my.cnf, in testo normale, con le autorizzazioni impostate su 400. Non riesco a vedere come sia una buona pratica di sicurezza, ma ha detto che era qualcosa che veniva fatto comunemente.

È sicuro memorizzare una password del database di root in testo normale nel file .my.cnf?

    
posta Joseph at SwiftOtter 12.11.2014 - 22:48
fonte

2 risposte

8

Ovviamente qualsiasi password memorizzata in testo normale è una cattiva idea, ma la posizione del file si trova in /etc/my.cnf, quindi se un utente remoto avesse accesso a quel file penso che ci sarebbero più cose da temere su di aver rubato la tua password mysql. D'altra parte, se non sei l'unico ad avere un accesso fisico al sistema, sei ancora al sicuro da altri che leggono il tuo file dato che le tue autorizzazioni di file sono 400, supponendo che nessuno abbia privilegi intensificati sul sistema. Ho fatto delle ricerche su come avere la tua password nel file my.cnf ed è vero che in realtà è una pratica abbastanza comune.

Dal modo in cui devi assicurarti di non modificare il file che si trova nel file /etc/my.cnf che il server mysql usa per avviarsi perché se qualcuno lo fa può usare il server con TUTTI i privilegi e TUTTI database senza password. Quindi, invece, crea un file nella tua directory locale / root chiamalo my.cnf e assicurati che solo root possa leggerlo (ovviamente)

Il modo più semplice per farlo è usare una sezione client del file ~ / .my.cnf e aggiungere le credenziali all'interno di quel file.

[client] 
user=root
password=somepassword

Come ho detto assicurati che il file sia SOLO leggibile da root. -

    
risposta data 13.11.2014 - 05:23
fonte
1

Mi dispiace ma se mi hanno detto che volevano che facessi testo in chiaro nella mia password del database direi "no". Ora ho sentito sui server di cPanel che eseguono phpMyAdmin usare quel file per installare e disinstallare il software del sito, cosa che capisco, penso ancora che possa essere fatto meglio. Non ho mai inserito la mia password di DB nel file .my.cnf che richiede solo un semplice attacco LFI.

Secondo me non è sicuro, anche con le autorizzazioni impostate su 600. chmod 600 .my.cnf

Modifica: ho pensato a questo di più e posso vedere che questo potrebbe essere un metodo accettabile per il richiamo di un client da uno script che viene eseguito in modo non interattivo, non vi è alcuna possibilità di inserire la password dalla tastiera. Su alcuni sistemi, la prima riga dello script viene letta e interpretata (erroneamente) come password.

Ma con aria di sfida mantengo quel file impostato su 600. a prescindere, continuo a sentire le sue cattive abitudini.

    
risposta data 13.11.2014 - 04:25
fonte

Leggi altre domande sui tag