MySQL yra atviro kodo, galinga ir plačiai naudojama reliacinė duomenų bazių valdymo sistema (RDBMS). kuri suskirsto duomenis į vieną arba kelias duomenų lenteles, kuriose duomenų tipai gali būti susiję su kiekviena kitas. Struktūrinė užklausų kalba (SQL) veikia su RDBMS, o kai kas nors nori saugoti ar valdyti didžiulį duomenų kiekį, jis įsigys reliacinės duomenų bazės ir SQL paslaugą.

Šiame straipsnyje parodyta, kaip sukonfigūruoti MySQL Ubuntu 18.04 serveryje. Jame taip pat parodyta, kaip įjungti autentifikavimą ir paslaugų valdymą. Galiausiai taip pat sužinosite, kaip išbandyti paslaugą, kad patikrintumėte sėkmingą konfigūraciją.

1 veiksmas: „MySQL“ kliento diegimas

Įdiekite mysql klientas Norėdami nuotoliniu būdu prisijungti prie serverio:

sudo apt install mysql-client -y

Patikrinkite kliento versiją, kad patikrintumėte, ar diegimas buvo sėkmingas:

mysql -V

Išvestis:

mysql Ver 8.0.28-0ubuntu0.20.04.3, skirta Linux x86_64 ((Ubuntu))

Dabar galite naudoti šią komandą nuotoliniam ryšiui su MySQL serveriu užmegzti:

instagram viewer
mysql -u  -p -h HOSTNAME_OR_IP

2 veiksmas: „MySQL Server“ diegimas

Prieš diegdami MySQL įsitikinkite, kad Ubuntu serveris yra tinkamai įdiegtas ir sukonfigūruotas. Pagal numatytuosius nustatymus Ubuntu 18.04 serverio saugyklose yra naujausia MySQL versija 5.7. Norėdami atnaujinti sistemos paketus iš saugyklos, naudokite komandą apt taip:

sudo apt atnaujinimas

Dabar naudokite šią komandą, kad įdiegtumėte MySQL serverio paketą:

sudo apt install mysql-server -y

3 veiksmas: „MySQL“ konfigūracija

Šioje nuolatinių kibernetinio saugumo grėsmių epochoje sėkmingai įdiegus serverį įprasta pakeisti numatytąsias parinktis. Šiame skyriuje pateikiama informacija apie „MySQL“ serverio konfigūraciją, kad būtų pašalintos nesaugios numatytosios parinktys, pvz., nuotoliniai šakniniai prisijungimai, numatytosios vartotojo paskyros ir kt. „MySQL“ palengvina šią užduotį automatiškai atlikdama visus pakeitimus, paleidus paprastą saugos scenarijų.

sudo mysql_secure_installation

Scenarijus ragina keletą parinkčių, kuriose prašoma atsakyti „Taip“ arba „Ne“, kad pakeistumėte numatytąją „MySQL“ apsaugą. Pavyzdžiui, pirmas raginimas prašo, jei norite nustatyti papildinį slaptažodžiams patvirtinti, atsakykite Taip ir tęskite.

Kitas raginimas prašo nustatyti MySQL root vartotojo abonemento slaptažodį. Galite pastebėti, kad įjungus papildinį Patvirtinti slaptažodį galima nustatyti slaptažodžio stiprumą pagal tris slaptažodžio saugos politikos ir ilgio lygius.

Įveskite numerį, kurį norite pasirinkti, kad nustatytumėte slaptažodžio stiprumą. Tada sistema paprašys nustatyti naują slaptažodį ir pakartotinai jį patvirtinti, kaip nurodyta toliau:

Galite pastebėti, kad nustačius slaptažodį, jis rodo stiprumą ir klausia, ar norite tęsti.

Dabar ji užduos tolesnius klausimus:

  1. Norėdami pašalinti anoniminį bandomąjį vartotoją
  2. Išjungti nuotolinį prisijungimą iš root vartotojo
  3. Pašalinkite bandomąsias duomenų bazes
  4. Iš naujo įkelkite privilegijų lentelę, kad išsaugotumėte visus pakeitimus

Tipas Y jei norite tęsti numatytuosius nustatymus ir nustatyti saugos taisykles.

Senesnėse MySQL versijose (iki 5.7.6) reikia rankiniu būdu inicijuoti duomenų bazės katalogą. Po to versijose paleiskite šią komandą:

mysqld – inicijuoti

4 veiksmas: MySQL vartotojo autentifikavimo koregavimai

Nepriklausomai nuo MySQL vartotojo abonemento slaptažodžio nustatymo, numatytasis autentifikavimo nustatymas neleidžia naudoti slaptažodžių užmezgant ryšį. Vietoj to, jis automatiškai autentifikuoja vartotoją naudodamas auth_socket prijungti. Papildinys yra puiki naudojimosi funkcija, tačiau ji nėra praktiška, jei norite pasiekti savo duomenų bazę iš nuotolinio kliento.

Kadangi prieiga prie duomenų bazės be slaptažodžio apsunkina darbo procesą, kai ją pasiekia išorinė programa, šiame skyriuje apibendrinami du būdai, kaip autentifikuoti vartotoją prisijungiant:

1. Root vartotojo autentifikavimas naudojant slaptažodį

Norėdami užtikrinti vartotojo autentifikavimą naudojant slaptažodį, galite pakeisti papildinį iš "auth_socket"į"mysql_native_password." Šiuo tikslu atidarykite MySQL raginimo ekraną naudodami sudo mysql komandą ir patikrinkite papildinį, kuris naudojamas vartotojo autentifikavimui, kaip nurodyta toliau:

PASIRINKITE vartotoją, autentifikavimo_stringą, įskiepį, pagrindinį kompiuterį IŠ mysql.user;

Aukščiau pateiktoje ekrano kopijoje rodoma, kad pagrindinis klientas autentifikuoja save naudodamas „auth_socket“ papildinį. Norėdami inicijuoti pagrindinio kliento autentifikavimą slaptažodžiu, naudokite teiginį ALTER USER, kad nustatytumėte papildinį „mysql_native_password“.

ALTER USER 'root'@'localhost' ATPAŽINTAS mysql_native_password BY 'slaptažodis';

Išsaugokite aukščiau nurodytus pakeitimus taip:

FLUSH PRIVILEGIJOS;

„FUSH PRIVILEGES“ MySQL sakinys išsaugo duomenų bazės lentelių pakeitimus, padarytus pagal ALTER, INSERT, UPDATE ir DELETE sąlygas.

Dabar norėdami patikrinti kiekvieno vartotojo naudojamas autentifikavimo strategijas ir įsitikinti, kad šakninis klientas nenaudoja „auth_socket“ papildinio, iš naujo paleiskite komandą:

PASIRINKITE vartotoją, autentifikavimo_stringą, įskiepį, pagrindinį kompiuterį IŠ mysql.user;

Dabar pagrindinis vartotojas gali prisijungti prie serverio autentifikuodamas šią komandą:

sudo mysql -u root -p

2. Sukurkite atsiduotą vartotoją

Kitas būdas įjungti autentifikavimą nenaudojant mysql_native_password yra sukurti tam skirtą vartotoją taip:

sudo mysql

Sukurkite naują paskyrą ir suteikite visas teises, kad naujam vartotojui priskirtumėte administravimo lygio valdymą. Tada išeikite iš MySQL raginimo. Paleiskite po SQL užklausų po vieną, kad tai pasiektumėte:

KURTI VARTOTOJĄ 'ubuntu'@'localhost' ATPAŽINTAS 'slaptažodžiu';
SUTEIKITE VISAS PRIVILEGIJUS *.* 'ubuntu'@'localhost' SU SUTEIKIMO OPTION;
išeiti

Tvarkykite ir patikrinkite MySQL paslaugą naudodami systemctl

Nustatykite paslaugą, kad ji veiktų paleidžiant Ubuntu serverį, naudodami systemctl įgalinti komandą taip:

sudo systemctl įgalinti mysql

Be to, galite patikrinti, ar serveris yra parengtas ir veikia, įvesdami:

sudo systemctl būsena mysql

Arba

sudo systemctl būsena mysql.service

Paslauga paleidžiama automatiškai įdiegus MySQL, tačiau jei ne, galite inicijuoti paslaugą naudodami šią komandą:

sudo systemctl start mysql

Darbo su „MySQL Server“ pradžia „Ubuntu“.

MySQL yra atviro kodo, patogi vartotojui, keičiamo dydžio ir patikima duomenų bazių valdymo sistema. Be to, tai yra neatsiejama LAMP/LEMP kamino modelio arba žiniatinklio taikomųjų programų technologijų dalis. Ši reliacinė duomenų bazių valdymo sistema (RDBMS) siūlo paprastą įdiegimą ir lengvą konfigūraciją naujausiose versijose.

Šis straipsnis padės jums sukurti pagrindinę MySQL sąranką, kuri jums padės pradėkite mokydami, kaip veikia MySQL. Ji taip pat apima kai kurias pradines svarbias konfigūracijos saugos priemones, kad būtų išvengta numatytosios sąrankos spragų. Galite sužinoti daugiau apie MySQL apsaugą vadovaudamiesi keliais išplėstiniais saugos patarimais.

9 išplėstiniai MySQL saugos patarimai

Skaitykite toliau

DalintisTviteryjeDalintisEl. paštas

Susijusios temos

  • Linux
  • duomenų bazėje
  • SQL
  • Linux programos
  • Įdiegti programinę įrangą
  • Ubuntu

Apie autorių

Rumaisa Niazi (Paskelbtas 21 straipsnis)

Rumaisa yra laisvai samdoma rašytoja MUO. Ji dėvėjo daugybę skrybėlių – nuo ​​matematikės iki informacijos saugumo entuziastės, o dabar dirba SOC analitike. Jos pomėgiai apima skaitymą ir rašymą apie naujas technologijas, Linux platinimą ir viską, kas susiję su informacijos saugumu.

Daugiau iš Rumaisa Niazi

Prenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kad gautumėte techninių patarimų, apžvalgų, nemokamų el. knygų ir išskirtinių pasiūlymų!

Spauskite čia norėdami užsiprenumeruoti