Puncte:1

automatizați scriptul mysql mysql_secure_installation, dar nu așa cum era de așteptat

drapel ky

mysql este 5.7.34 ubuntu 18.04

Scriptul l-am scris meu.sh

#!/usr/bin/expect

generează mysql_secure_installation


așteaptă {
             „Apăsați y|Y pentru Da, orice altă tastă pentru Nu” { trimiteți „n\r”; exp_continue }
             „Parolă nouă” { trimite „123456\r”; exp_continue }
             „Reintroduceți parola nouă” { trimite „123456\r”; exp_continue }
             „Eliminați utilizatorii anonimi?” { trimite „y\r”; exp_continue }
             „Nu permiteți conectarea la root de la distanță” { trimiteți „n\r”; exp_continue }
             „Eliminați baza de date de testare și accesați-o” { trimiteți „Y\r”; exp_continue }
             „Reîncarcă acum tabelele de privilegii” { trimite „Y\r”; exp_continue }
     }

./my.sh

Rezultatele operației sunt următoarele

De ce scriptul nu s-a executat așa cum era de așteptat

root@fa244a50dc06:/# ./my.sh
generează mysql_secure_installation

Securizarea implementării serverului MySQL.

Conectarea la MySQL folosind o parolă goală.

VALIDATE PAROLA PLUGIN poate fi folosit pentru a testa parolele
și îmbunătățirea securității. Verifică puterea parolei
și permite utilizatorilor să seteze numai acele parole care sunt
suficient de sigur. Doriți să configurați pluginul VALIDATE PAROLA?

Apăsați y|Y pentru Da, orice altă tastă pentru Nu: n
Vă rugăm să setați aici parola pentru root.

Parolă Nouă:

Reintroduceți parola nouă:
În mod implicit, o instalare MySQL are un utilizator anonim,
permițând oricui să se conecteze la MySQL fără a fi nevoie să aibă
un cont de utilizator creat pentru ei. Acest lucru este destinat numai pentru
testare și pentru ca instalarea să meargă un pic mai lină.
Ar trebui să le eliminați înainte de a trece într-o producție
mediu inconjurator.

Eliminați utilizatori anonimi? (Apăsați y|Y pentru Da, orice altă tastă pentru Nu) : n

 ... sărind peste.


În mod normal, root ar trebui să aibă voie să se conecteze numai de la
'gazdă locală'. Acest lucru asigură că cineva nu poate ghici
parola de root din rețea.

Nu permiteți conectarea la root de la distanță? (Apăsați y|Y pentru Da, orice altă tastă pentru Nu) : n

 ... sărind peste.
În mod implicit, MySQL vine cu o bază de date numită „test” asta
oricine poate accesa. Acesta este, de asemenea, destinat doar testării,
și ar trebui eliminate înainte de a intra într-o producție
mediu inconjurator.


Eliminați baza de date de testare și accesul la ea? (Apăsați y|Y pentru Da, orice altă tastă pentru Nu) : n

 ... sărind peste.
Reîncărcarea tabelelor de privilegii va asigura că toate modificările
făcute până acum vor intra în vigoare imediat.

Reîncărcați acum tabelele de privilegii? (Apăsați y|Y pentru Da, orice altă tastă pentru Nu) : n

 ... sărind peste.
Totul este gata!

Puncte:0
drapel ky
#!/usr/bin/expect

generează mysql_secure_installation


așteaptă {
             „VALIDATE PAROLA PLUGIN poate fi folosit pentru a testa parolele” { trimite „n\r”; exp_continue }
             „Parolă nouă” { trimite „123456\r”; exp_continue }
             „Reintroduceți parola nouă” { trimiteți „123456\r”; exp_continue }
             „Eliminați utilizatorii anonimi?” { trimite „y\r”; exp_continue }
             „Nu permiteți conectarea la root de la distanță” { trimiteți „n\r”; exp_continue }
             „Eliminați baza de date de testare și accesați-o” { trimiteți „Y\r”; exp_continue }
             „Reîncarcă acum tabelele de privilegii” { trimite „Y\r”; exp_continue }
        }
Puncte:0
drapel in

Prima linie din dvs aştepta trece peste orice altceva:

Apăsați y|Y pentru Da, orice altă tastă pentru Nu

Acest șir se potrivește cu fiecare linie, deci trimite „n\r”; exp_continue va fi condus. Prin urmare, toate n răspunsuri.

Cea mai simplă soluție ar fi probabil să puneți această linie la sfârșitul aştepta matrice, astfel încât să acționeze ca un catch-all implicit.

qqPPPPbb avatar
drapel ky
mulțumesc pentru răspuns, am selectat potrivirea greșită

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.