MySQL är ett öppen källkod, kraftfullt och allmänt använt relationsdatabashanteringssystem (RDBMS) som organiserar data i enstaka eller flera datatabeller där datatyper kan vara relaterade till var och en Övrig. Structured Query Language (SQL) fungerar med RDBMS: er, och när någon vill lagra eller hantera en enorm mängd data kommer de att skaffa tjänsten relationsdatabas och SQL.

Den här artikeln visar hur du konfigurerar MySQL på din Ubuntu 18.04-server. Den visar dig också hur du aktiverar autentisering, följt av tjänstehantering. I slutändan kommer du också att lära dig hur du testar tjänsten för att verifiera den framgångsrika konfigurationen.

Steg 1: MySQL-klientinstallation

Installera mysql-klient för att fjärransluta till servern:

sudo apt installera mysql-client -y

Kontrollera klientversionen för att verifiera om installationen lyckades:

mysql -V

Produktion:

mysql Ver 8.0.28-0ubuntu0.20.04.3 för Linux på x86_64 ((Ubuntu))

Nu kan du använda följande kommando för att upprätta en fjärranslutning med MySQL-servern:

instagram viewer
mysql -u  -s -h HOSTNAME_OR_IP

Steg 2: MySQL-serverinstallation

Innan du installerar MySQL, se till att Ubuntu-servern är korrekt installerad och konfigurerad. Ubuntu 18.04-servern innehåller som standard den senaste MySQL-versionen 5.7 i arkiven. Använd kommandot apt för att uppdatera systempaketen från förvaret enligt följande:

sudo apt uppdatering

Använd nu följande kommando för att installera MySQL-serverpaketet:

sudo apt installera mysql-server -y

Steg 3: MySQL-konfiguration

I denna tid av ihållande cybersäkerhetshot är det en standard att ändra standardalternativ efter en lyckad serverinstallation. Det här avsnittet guidar dig om MySQL-serverkonfiguration för att eliminera osäkra standardalternativ som fjärrinloggning för rot, standardanvändarkonton, etc. MySQL förenklar denna uppgift genom att automatiskt göra alla ändringar med hjälp av att köra ett enkelt säkerhetsskript.

sudo mysql_secure_installation

Skriptet uppmanar flera alternativ som begär Ja eller Nej-svar för att ändra MySQL-standardsäkerheten. Till exempel frågar den första uppmaningen om du vill ställa in ett plugin för att validera lösenord, svara Ja och fortsätt.

Nästa uppmaning ombeds ställa in lösenordet för MySQL root-användarkontot. Du kan märka att om du aktiverar insticksprogrammet Validate Password kan du ställa in lösenordsstyrka mot tre nivåer av lösenordssäkerhetspolicy och längd.

Ange numret du vill välja för att ställa in lösenordets styrka. Systemet kommer sedan att be om att ställa in det nya lösenordet och skriva in det igen för bekräftelse, enligt följande:

Du kan märka att efter att ha ställt in lösenordet visar det styrkan och frågar om du vill fortsätta vidare.

Nu kommer det att be om följande frågor:

  1. För att ta bort anonym testanvändare
  2. Inaktivera fjärrinloggning från rotanvändaren
  3. Ta bort testdatabaserna
  4. Ladda om privilegietabellen för att spara alla ändringar

Typ Y för att fortsätta med standardinställningarna för att ställa in säkerhetsregler.

Äldre versioner av MySQL (före 5.7.6) kräver att du manuellt initierar databaskatalogen. Medan för versioner efter det, kör följande kommando:

mysqld –initiera

Steg 4: MySQL-användarautentiseringsjusteringar

Oavsett om du skapar ett lösenord för ett MySQL-användarkonto, inaktiverar standardautentiseringsinställningen användningen av lösenord under upprättande av anslutning. Istället autentiserar den automatiskt användaren med hjälp av auth_socket plugin. Insticksprogrammet är en fantastisk funktion för användbarhet, men det är inte praktiskt om du vill komma åt din databas från en fjärrklient.

Eftersom databasåtkomst utan lösenord komplicerar arbetsprocessen när den nås av ett externt program, sammanfattar detta avsnitt två sätt att autentisera användaren vid upprättande av anslutning:

1. Rotanvändarautentisering med lösenord

För att säkerställa användarautentisering via lösenord kan du ändra plugin från "auth_socket"till"mysql_native_password." För detta ändamål, öppna MySQL-promptskärmen genom att använda sudo mysql kommando och verifiera plugin-programmet som används för användarautentisering, enligt följande:

SELECT user, authentication_string, plugin, host FROM mysql.user;

Ovanstående skärmdump visar att rotklienten autentiserar sig själv genom att använda insticksprogrammet "auth_socket". För att initiera rotklientautentisering med ett lösenord, använd ALTER USER-satsen för att ställa in plugin-programmet "mysql_native_password".

ÄNDRA ANVÄNDARE 'root'@'localhost' IDENTIFIERAD MED mysql_native_password MED 'lösenord';

Spara ändringarna ovan enligt följande:

SPOLA PRIVILEGIER;

MySQL-satsen "FLUSH PRIVILEGES" sparar ändringar i databastabellerna som gjorts av satserna ALTER, INSERT, UPDATE och DELETE.

För att nu verifiera autentiseringsstrategierna som används av varje användare och se till att "auth_socket"-pluginet inte används av rotklienten, kör kommandot igen:

SELECT user, authentication_string, plugin, host FROM mysql.user;

Nu kan rotanvändaren ansluta till servern genom att autentisera via följande kommando:

sudo mysql -u root -s

2. Skapa en dedikerad användare

Ett annat sätt att aktivera autentisering utan att använda mysql_native_password är att skapa en dedikerad användare enligt följande:

sudo mysql

Skapa ett nytt konto och ge alla privilegier för att tilldela administrativ nivåkontroll till den nya användaren. Avsluta sedan MySQL-prompten. Springa det följande SQL-frågor en efter en för att uppnå detta:

SKAPA ANVÄNDARE 'ubuntu'@'localhost' IDENTIFIERAD MED 'lösenord';
BEHANDLA ALLA PRIVILEGIER PÅ *.* TILL 'ubuntu'@'localhost' MED BIDRAG.
utgång

Hantera och testa MySQL-tjänsten med systemctl

Ställ in tjänsten så att den körs vid Ubuntu-serverns start genom att använda systemctl aktivera kommando enligt följande:

sudo systemctl aktivera mysql

Dessutom kan du testa att servern är igång genom att skriva:

sudo systemctl status mysql

Eller

sudo systemctl status mysql.service

Tjänsten körs automatiskt efter MySQL-installationen, men om den inte gör det kan du initiera tjänsten med följande kommando:

sudo systemctl starta mysql

Komma igång med MySQL Server på Ubuntu

MySQL är ett användarvänligt, skalbart och robust databashanteringssystem med öppen källkod. Dessutom är det en integrerad del av LAMP/LEMP stackmodellen eller webbapplikationsteknologier. Detta relationsdatabashanteringssystem (RDBMS) erbjuder enkel installation och enkel konfiguration på sina senaste versioner.

Den här artikeln guidar dig i att bygga en grundläggande MySQL-inställning som hjälper dig komma igång med att lära dig hur MySQL fungerar. Den täcker också några inledande viktiga säkerhetsåtgärder i sin konfiguration för att undvika kryphål i standardinställningen. Du kan lära dig mer om att säkra MySQL genom att följa några avancerade säkerhetstips.

9 avancerade MySQL-säkerhetstips

Läs Nästa

Dela med sigTweetDela med sigE-post

Relaterade ämnen

  • Linux
  • databas
  • SQL
  • Linux-appar
  • Installera programvara
  • Ubuntu

Om författaren

Rumaisa Niazi (21 publicerade artiklar)

Rumaisa är frilansskribent på MUO. Hon har burit många hattar, från en matematiker till en informationssäkerhetsentusiast, och arbetar nu som SOC-analytiker. Hennes intressen inkluderar att läsa och skriva om ny teknik, Linux-distributioner och allt kring informationssäkerhet.

Mer från Rumaisa Niazi

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Klicka här för att prenumerera