Hur man konfigurerar MariaDB SSL och upprättar säkra anslutningar från olika klienter. Installera MariaDB på Debian Installera mariadb

Hallå!

Jag stöder ditt beslut fullt ut! Jag migrerade mina servrar till MariaDB från MySQL för 3 år sedan och inte på ett bra sätt. MySQL-versionerna blev sämre och sämre efter att Oracle köpte den. Ständiga krascher och fel i tabeller hade en negativ inverkan på tillgängligheten av sajter, så beslutet togs att byta till MariaDB.

Resultatet är helt berättigat; MariaDB är mycket stabilt och väl optimerat. En treårig drifttid utan avbrott på flera servrar bevisar detta perfekt.

Väljer MariaDB-version

  • Ska /var/run/php5-fpm.sock redan finnas på servern? i ubuntu 16.04 hittade jag inte en sådan fil i /var/run
  • Det finns 2 grenar av MariaDB - 5.x och 10.x.

    5.x är versioner som är så nära de senaste versionerna av MySQL som möjligt, de är helt kompatibla med MySQL. Om du bara ska flytta till MariaDB från MySQL är den här versionen för dig.

    10.x - ny linje versioner som startade efter version 5.5. Dessa versioner kopierar inte helt alla nya funktioner i de senaste versionerna av MySQL, utan innehåller sina egna unika funktioner. De är fortfarande kompatibla med MySQL, men om du precis har börjat använda MariaDB är det bättre att börja med version 5.5.

    Installera MariaDB på en Linux-server

    MariaDB-distributioner ingår vanligtvis inte i arkiven för större Linux-distributioner (till exempel CentOS 6 och CentOS 7). Men även om det fanns, är det bättre att installera det inbyggda MariaDB-förrådet på systemet för att alltid ha nuvarande versioner. För att installera yum-förvaret, följ instruktionerna:

    1. Skapa ny fil repository med kommandot:

    vi /etc/yum.repos.d/MariaDB.repo

    Tryck på i-tangenten för att gå in i vi-redigerarens redigeringsläge.

    2. Hämta textfilen för din version av Linux-distribution från den här länken. Du måste välja namnet på distributionen, dess version och bitness:

    Kopiera texten för förvarsfilen, klistra in den i din fil och tryck ":wq" för att avsluta vi-redigeraren och spara.

    Nu kan du installera MariaDB Server och miljöprogram med yum:

    mums installera MariaDB-server MariaDB-klient

    Bibliotek för olika programmeringsspråk kan installeras för MySQL och är helt kompatibla. Till exempel för PHP:

    Nu måste du starta den installerade MariaDB-servern och fortsätta med att konfigurera den:

    Om du gjorde allt korrekt, kommer du att se detta meddelande:

    Konfigurera MariaDB

    För att komma igång med MariaDB normalt måste du ställa in ett root-lösenord. Jag kommer att berätta i detalj om justering och optimering av databasen i en speciell artikel. Dessa är inte prioriterade saker.

    Initial MySQL root-lösenordsinställning:

    Det enklaste sättet att ställa in root-lösenordet är att använda ett speciellt skript, det ingår i MariaDB-distributionen:

    /usr/bin/mysql_secure_installation

    Följ instruktionerna och ställ in ett root-lösenord.

    Om du har några frågor eller behöver förtydliganden, ställ gärna en fråga eller lämna en kommentar.

    Jag hjälper alltid gärna till!

    Jag tror att alla vet att MariaDB är en gren av MySQL. MariaDB är utvecklat och stöds av MariaDB Corporation Ab och MariaDB Foundation. Huvudutvecklaren av MariaDB är den välkände Michael Widenius, författaren till den ursprungliga versionen av MySQL.

    Den nuvarande versionen är den som släpptes den 13 februari 2018. I den nya versionen av MariaDB uppdaterades InnoDB-butiken för att släppa 5.7.21, och mer än 100 buggar fixades, inklusive de som kunde användas för att initiera en fjärrnedsättning av tjänster.

    Låt oss försöka installera den nya versionen på ett rent Debian 9.3 (Stretch)-system.

    Jag kommer inte att dölja det faktum att jag verkligen gillar MariaDB och jag övergav för länge sedan att använda Oracle MySQL till förmån för MariaDB eller Percona Server för MySQL, och jag ångrar det inte ett dugg. MariaDB används som ersättning för Oracle MySQL i många Linux-distributioner. MariaDB används också som databas på ett stort antal stora sajter, faktiskt är min blogg inget undantag - jag använder MariaDB 10.2 som databas.

    Inledande data: OS Debian 9.3 (Stretch);
    Uppgift: Installera MariaDB 10.2.13 med ett minimum av ansträngning och utför grundläggande databasinstallation;

    Du kan hitta många artiklar på Internet om hur man installerar MariaDB på Debian, men de erbjuder alla ganska besvärliga lösningar.
    Det finns också, men det innehåller inte heller enkel lösning, men det finns!

    Installera MariaDB 10.2.13 på Debian 9:

    1. Installation av nödvändig extrautrustning. paket:

    Apt-get update apt-get install dirmngr wget -y

    2. Och nu den enkla magin som det inte skrivs om någonstans - att ladda ner och köra installationsskriptet för förvaret:

    Wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup && chmod a+x mariadb_repo_setup ./mariadb_repo_setup --mariadb-server-version=10.2

    Efter information:
    Detta skript kommer att analysera ditt system, installera GPG-nycklar och lägga till arkivet till filen /etc/apt/sources.list.d/mariadb.list
    Skriptet är officiellt och stöder distributioner: RHEL/CentOS 6 & 7, Ubuntu 16.04 LTS (xenial) & 18.04 (bionic), Debian 8 (jessie) & 9 (stretch) och SLES 12 och 15
    Skriptet stöder också installation av arkiv för olika versioner av MariaDB, MaxScale och MariaDB Tools. Du kan ladda ner det och se alla startalternativ:

    ./mariadb_repo_setup --hjälp

    P.S. För dig som gillar att göra allt för hand, där du mer flexibelt kan välja önskat förråd beroende på den geografiska platsen för din server.

    3. Uppdatera listan över paket:

    Apt-get uppdatering

    4. Installera senaste versionen MariaDB 10.2.x:

    Apt-get installera mariadb-server -y

    Under installationsprocessen kommer installationsprogrammet att be oss skapa ett lösenord. användarrot, i detta skede kommer vi att lämna det tomt och ändra det senare.

    Efter installationen, kontrollera statusen för MariaDB:

    # systemctl status mariadb ● mariadb.service - MariaDB 10.2.13 databasserver Laddad: laddad (/lib/systemd/system/mariadb.service; aktiverad; leverantörsförinställning: aktiverad) Drop-In: /etc/systemd/system/mariadb. service.d └─migrated-from-my.cnf-settings.conf Aktiv: aktiv (kör) sedan tors 2018-02-15 12:14:17 +05; För 19s sedan Dokument: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Huvud-PID: 7270 (mysqld) Status: "Taker dina SQL-förfrågningar nu..." CGroup: /system. slice/mariadb.service └─7270 /usr/sbin/mysqld # netstat -ltupn | grep mysql tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 7270/mysqld # ps -ef | grep [m]ysql mysql 7270 1 0 12:14 ? 00:00:00 /usr/sbin/mysqld

    Vi kommer också att försöka ansluta till databasen med mysql-kommandot (eftersom vi i installationsstadiet lämnade root-lösenordet tomt, kommer vi inte att använda -u root -p-alternativen):

    # mysql Välkommen till MariaDB-skärmen. Kommandon slutar med ; eller\g. Ditt MariaDB-anslutnings-id är 10 Serverversion: 10.2.13-MariaDB-10.2.13+maria~stretch-log mariadb.org binär distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab och andra. Skriv "hjälp;" eller "\h" för hjälp. Skriv "\c" för att rensa den aktuella inmatningssatsen. MariaDB [(ingen)]>

    Vi har framgångsrikt anslutit till MariaDB-servern.

    5. Låt oss nu starta guiden för säkerhetskonfiguration:

    Mysql_secure_installation

    Till frågan:
    Ange nuvarande lösenord för root (enter för ingen):
    Tryck på Enter, det aktuella root-lösenordet är tomt.

    Och den sista frågan:
    Ladda om privilegietabeller nu?
    skriv in Y, ja, vi vill ladda om privilegietabellen för att de ska träda i kraft.

    Efter detta utförde vi minimala säkerhetsåtgärder på vår MariaDB-instans.

    Låt oss nu försöka ansluta till databasen:

    # mysql ERROR 1045 (28000): Åtkomst nekad för användaren "root"@"localhost" (med lösenord: NO)

    Som vi kan se, med ett tomt root-lösenord får vi inte längre in.

    Låt oss ansluta genom att ange ytterligare alternativ och ange ett lösenord:

    # mysql -u root -p Ange lösenord: Välkommen till MariaDB-monitorn. Kommandon slutar med ; eller\g. Ditt MariaDB-anslutnings-id är 20 Serverversion: 10.2.13-MariaDB-10.2.13+maria~stretch-log mariadb.org binär distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab och andra. Skriv "hjälp;" eller "\h" för hjälp. Skriv "\c" för att rensa den aktuella inmatningssatsen. MariaDB [(ingen)]>

    Jättebra, allt löste sig.

    Det var allt, vi ses snart. Om du har några frågor eller vill att jag ska hjälpa dig kan du alltid.

    I den här artikeln kommer vi att titta på hur man installerar och konfigurerar Linux, Apache, MariaDB, PHP på Centos7 / RHEL 7. Det finns många ändringar i den nya versionen av Centos7 / RHEL 7.

    Vad är LAMPA?

    LAMPA - set programvara på ett OS som består av operativsystemet Linux, Apache webbserver, MySQL databasserver och språk PHP programmering(eller Perl/Python). LAMP används för att köra tunga dynamiska webbplatser som helt består av gratis programvara med öppen källkod källkod. I den här artikeln kommer jag att förklara hur Linux, Apache, MySQL/MariaDB (ersättning för MySQL), PHP (LAMP) är installerade på CentOS 7 eller RHEL 7.

    • Installera RHEL 7 eller CentOS 7 server. Öppna en terminal till servern via ssh, du måste ha root-superanvändarrättigheter.
    • Du behöver också kunskap om yum-kommandon
    • Du behöver IP-adressen för din server, använd följande kommando för att bestämma IP-adressen för eth0-gränssnittet
    ifconfig eth0 eller ip a visa eth0 eller ip-adresslista eth0 | awk "/inet /(sub(/\/+/,"",$2); print $2)" eller ifconfig eth0 | awk "/inet /(print $2)" 10.180.10.10
    • Vi kommer att använda den resulterande IP-adressen 10.180.10.10 för att testa installationen

    Så låt oss börja

    Installera Apache på en CentOS 7 /RHEL 7-server

    För att installera webbservern använder vi kommandot

    Yum installera httpd

    Aktivera HTTPd-tjänst vid start

    systemctl aktivera httpd.service ln -s "/usr/lib/systemd/system/httpd.service" "/etc/systemd/system/multi-user.target.wants/httpd.service"

    För att inaktivera automatiska nedladdningar

    Systemctl inaktivera httpd.service rm "/etc/systemd/system/multi-user.target.wants/httpd.service"

    Starta HTTPd-tjänsten på CentOS 7/RHEL 7

    systemctl starta httpd.service

    Vid det här laget kan du peka din webbläsare till IP-adressen för din server, http://10.180.10.10. Du får se startsida apache:

    Stoppar HTTPd-tjänsten på CentOS 7 / RHEL 7

    systemctl stoppa httpd.service

    Startar om HTTPd-tjänsten på CentOS 7 / RHEL 7

    Visa apache-tjänststatus på CentOS 7/RHEL 7

    Se till att webbservern är igång

    Systemctl-status httpd.service

    Även omstart av webbservern kan göras med följande kommando

    Apachectl graciös

    Kontrollerar apache/httpd för konfigurationsfel på Centos 7/RHEL 7

    Apachectl configtest

    Standard HTTPD-serverkonfiguration:

    1. Standardkonfigurationsfil: /etc/httpd/conf/httpd.conf
    2. Konfigurationsfiler för laddningsbara moduler: /etc/httpd/conf.modules.d/ (till exempel PHP)
    3. Välj MPM som laddningsbara moduler och händelser: /etc/httpd/conf.modules.d/00-mpm.conf
    4. Standardportar: 80 och 443 (SSL)
    5. Standardloggfiler: /var/log/httpd/(access_log,error_log)

    Installera MariaDB på en CentOS 7/RHEL-server

    MariaDB är en uppdaterad ersättare för MySQL-server. På RHEL/CentOS 7 används MariaDB databashanteringssystem istället för MySQL. Ange följande yum-kommando för att installera MariaDB-servern:

    Yum installera mariadb-server mariadb

    För att starta MariaDB, använd kommandot:

    Systemctl starta mariadb.service

    För att säkerställa att MariaDB-tjänsten startar automatiskt under uppstart anger du:

    Systemctl aktivera mariadb.service

    Kommandoutgång

    Ln -s "/usr/lib/systemd/system/mariadb.service" "/etc/systemd/system/multi-user.target.wants/mariadb.service"

    För att stoppa/starta om och inaktivera MariaDB använd följande kommandon:

    Sudo systemctl stoppa mariadb.service #-- Stoppa mariadb server sudo systemctl starta om mariadb.service #-- Starta om mariadb server sudo systemctl disable mariadb.service #-- Inaktivera autoload mariadb server sudo systemctl är aktiv mariadb.service #-- Kontrollera att köra finns det en server?

    Första lanseringen av MariaDB

    Ange följande kommando:

    /usr/bin/mysql_secure_installation

    Genom att svara på frågorna kommer du att kunna konfigurera den initiala säkerheten för databasen

    Verifierar din MariaDB-installation

    Ange följande kommando

    Mysql -u root -s

    Exempel på utdata:

    Installera PHP på CentOS 7 / RHEL 7

    För att installera PHP och moduler som GD/mysql anger du följande kommando

    Yum installera php php-mysql php-gd php-pear

    Du måste starta om HTTPD (Apache)-servern, ange:

    Systemctl starta om httpd.service

    Så här söker du efter alla andra PHP-moduler:

    Mums sök php-

    För att få mer detaljerad information om modulen:

    Mums info php-pgsql

    Kontrollerar PHP på servern

    Skapa en fil som heter /var/www/html/test.php så här:

    Vi /var/www/html/test.php

    Lägg till följande kod:

    LAMP-servern är installerad, om du har problem med att sätta upp servern utför vi engångsarbete med att installera och konfigurera LAMP-webbservern.

    Idag ska vi lyfta upp en av de mest eftertraktade rollerna av någon linux-servrar, som har en ledande roll i detta funktionella segment. Webbinställningar CentOS 7-server baserad på en kombination av den populära http-servern apache, tolk php och databasservrar mysql, eller kort - installera lampa. Denna kombination är den mest populära konfigurationen bland webbhotell idag. Även om samma företag har varit hett på sistone, men baserat på nginx kan det redan ha kommit framåt, jag har inte exakta uppgifter om denna fråga.

    Den här artikeln är en del av en enda serie artiklar om servern.

    Webbserver på CentOS 7

    Så vår centos-webbserver kommer att bestå av tre huvudkomponenter - http-server apache, programmeringsspråkstolk php och databasservrar mysql. Låt oss lära känna var och en av dem lite:

    1. Apache- http-server eller helt enkelt Apache-webbserver. Det är plattformsoberoende programvara som stöder nästan alla populära OS, inklusive Windows. Det värderas främst för sin tillförlitlighet och konfigurationsflexibilitet, som kan utökas avsevärt tack vare plug-in-moduler, som det finns väldigt många av. Bland nackdelarna noterar de att de kräver mer resurser jämfört med andra servrar. Apache kommer inte att kunna stödja samma belastning som till exempel nginx med liknande hårdvaruparametrar.
    2. PHPär ett allmänt programmeringsspråk som oftast används i webbutveckling. Idag är det det mest populära språket i detta applikationsområde. Stöds av nästan alla värdleverantörer.
    3. mysql— Databashanteringssystem. Det har blivit populärt bland små och medelstora applikationer, som det finns många av på webben. Så, precis som php, är det idag den mest populära databasen som används på webbplatser. Stöds av de flesta värdleverantörer. På CentOS är det installerat istället för mysql mariadb- mysql gaffel. De är helt kompatibla du kan växla från en databas till en annan och tillbaka när som helst. Den senaste tiden har jag stött på information om att mariadb fungerar snabbare än mysql och att folk sakta flyttar till det. I praktiken hade jag inte möjlighet att observera detta, eftersom jag aldrig har arbetat med laddade databaser. Men under normala förhållanden är skillnaden inte märkbar.

    Den experimentella servern kommer att vara , egenskaperna är följande:

    CPU2 kärnor
    Minne8 Gb
    Disk150 Gb SSD

    Detta är en anpassad inställning. De är inte optimala i pris, men dessa är precis vad jag behövde.

    Jag skulle genast vilja förtydliga att jag analyserar den grundläggande standardinställningen. För att förbättra prestanda, öka tillförlitligheten och användarvänligheten måste du installera flera verktyg, som jag kommer att diskutera separat. I allmänhet räcker det som står i den här artikeln för att organisera en webbserver.

    Om du inte har en server ännu måste du köra . Och om servern redan är installerad, glöm inte det. Jag rekommenderar att du uppmärksammar inställningarna, eftersom det finns mycket användbar information som jag inte tillhandahåller i den här artikeln - uppdatering av systemet, konfigurering av en brandvägg, installation av en redigerare och mycket mer.

    Konfigurera apache på CentOS 7

    På CentOS kallas apache-tjänsten httpd. När jag först blev bekant med denna distribution var det ovanligt för mig. I Freebsd och Debian, som jag tidigare arbetat med, kallades webbservertjänsten apache, även om jag märkte någonstans, det verkar i programvaran, att konfigurationsfilen heter httpd.conf. Än idag vet jag inte varför båda dessa namn har spridits. Jag skulle bli glad om någon delade information om detta med mig i kommentarerna.

    Nu sätter vi igång installera apache. I CentOS 7 görs detta väldigt enkelt:

    # yum installera -y httpd

    Lägg till apache till start:

    # systemctl aktivera httpd

    Starta apache på CentOS 7:

    # systemctl starta httpd

    Kontrollera om servern har startat:

    # netstat -tulnp | grep httpd tcp6 0 0:::80:::* LISTEN 21586/httpd

    Allt är bra, det hängde på port 80, som förväntat. Nu kan du gå till http://ip-adress och se bilden:

    Låt oss nu ställa in apache. Jag föredrar följande webbhotellstruktur:

    Låt oss skapa en struktur så här:

    # mkdir /web && mkdir /web/site1.ru && mkdir /web/site1.ru/www && mkdir /web/site1.ru/logs # chown -R apache. /webb

    IncludeOptionalconf.d/*.conf

    Om inte, avkommentera den och gå till katalogen /etc/httpd/conf.d. Låt oss skapa en fil site1.ru.conf där:

    Servernamn site1.ru ServerAlias ​​​​www.site1.ru DocumentRoot /web/site1.ru/www Alternativ FöljSymLinks AllowOverride All Kräver alla beviljade ErrorLog /web/site1.ru/logs/error.log CustomLog /web/site1.ru/logs/access.log common

    Startar om apache på centos

    Nu startar vi om apache:

    # systemctl starta om httpd

    Om några fel uppstår, titta på apacheloggen /var/log/httpd/error_log. Om allt är i sin ordning kommer vi att kontrollera om vår virtuella värd är konfigurerad normalt. För att göra detta, skapa i mappen /web/site1.ru/www fil index.html följande innehåll:

    # mcedit /web/site1.ru/www/index.html

    Apache är klart!

    # chown apache. /web/site1.ru/www/index.html

    192.168.1.25 site1.ru

    där 192.168.1.25 är IP-adressen till vår webbserver.

    Nu i webbläsaren skriver vi adressen http://site1.ru. Om vi ​​ser bilden:

    det betyder att allt är korrekt konfigurerat. Om det finns några fel, gå och titta på loggarna. Dessutom, i det här fallet, inte den allmänna httpd-loggen, utan felloggen för en specifik virtuell värd på /web/site1.ru/logs/error.log.

    Jag kommer omedelbart att uppmärksamma dig på att ställa in rotationen av virtuella värdloggar. Det händer ofta att om du inte ställer in det direkt, så glömmer du det. Men om webbplatsen har bra trafik, kommer loggarna att växa snabbt och kan ta mycket utrymme. Det är bättre att ställa in rotation av webbserverloggar direkt efter skapandet. Det är inte svårt att göra det här.

    För att konfigurera rotation av virtuell värdlogg måste du redigera filen /etc/logrotate.d/httpd. Den skapas under apache-installationer och inkluderar att ställa in rotationen av standardloggplatsen. Och eftersom vi överförde loggarna för varje virtuell värd till en individuell mapp, måste vi lägga till dessa mappar till den här filen:

    # mcedit /etc/logrotate.d/httpd /web/*/logs/*.log/var/log/httpd/*log (missingok notifempty sharedscripts delaycompress postrotate /bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true endscript)

    I princip är den enklaste webbservern redan klar och kan användas. Men det är osannolikt att det nu kommer att finnas sajter med statiskt innehåll som endast html-stöd är tillräckligt för. Så låt oss fortsätta med vår installation.

    Om du behöver organisera driften av webbplatsen enligt protokollet https, använd sedan manualen för .

    Installera php på CentOS 7

    Låt oss ta nästa steg för att stödja dynamiskt webbplatsinnehåll. Låt oss installera php på CentOS 7:

    # yum installera -y php

    Och så några fler användbara komponenter. Låt oss installera populära moduler för php:

    # yum install -y php-mysql php-mbstring php-mcrypt php-devel php-xml php-gd

    Låt oss starta om apache:

    # systemctl starta om httpd

    Låt oss skapa en fil i den virtuella värdkatalogen och kontrollera php jobb:

    # mcedit /web/site1.ru/www/index.php# chown apache. /web/site1.ru/www/index.php

    Gå till http://site1.ru/index.php

    Du bör se php-informationsutdata. Om något är fel har några fel uppstått, titta på den virtuella värdfelloggen, php-fel kommer också att finnas där.

    Var är php.ini?

    Efter installationen uppstår ofta frågan: var förvaras de? php-inställningar? Traditionellt finns de i en enda inställningsfil. På CentOS php.ini finns i /etc, precis vid roten. Där kan du redigera globala inställningar för alla virtuella värdar. Personliga inställningar för varje webbplats kan göras separat i den virtuella värdkonfigurationsfilen som vi gjorde tidigare. Låt oss lägga till några där användbara inställningar:

    # mcedit /etc/httpd/conf.d/site1.ru.conf

    Lägg till i slutet, innan

    Php_admin_value date.timezone "Europe/Moscow" php_admin_value max_execution_time 60 php_admin_value upload_max_filesize 30M

    För att tillämpa inställningarna måste du starta om Apache. Du kan nu se inställningarna ändras i phpinfo-utgången.

    Uppgradering till php 5.6 på CentOS 7

    I vårt exempel installerade vi på CentOS 7 php 5,4 från standardförvaret. Tänk om vi behöver mer en ny version, Till exempel php 5,6? I det här fallet måste du uppdatera php.

    # wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm # rpm -Uvh remi-release-7*.rpm

    Nu uppdatera php 5.4 till php 5.6:

    # yum --enablerepo=remi,remi-php56 installera php php-common php-mysql php-mbstring php-mcrypt php-devel php-xml php-gd

    Starta om apache:

    # systemctl starta om httpd

    Och låt oss titta på utdata från phpinfo - http://site1.ru/index.php

    Bra, vi har uppdaterat php till version 5.6.

    Installera MySQL på CentOS 7

    Som jag skrev tidigare, mysql-gaffeln blir nu allt mer utbredd - mariadb. Den är helt kompatibel med mysql, så du kan använda den med tillförsikt. Jag föredrar att använda den.

    Installerar mariadb på CentOS 7:

    # yum install -y mariadb mariadb-server

    Lägg till mariadb till autostart:

    # systemctl aktivera mariadb.service

    Starta mariadb:

    # systemctl starta mariadb

    Vi kontrollerar om det har startat eller inte:

    # netstat -tulnp | grep mysqld tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 22276/mysqld

    Observera att den till och med visas i systemet som en mysqld-tjänst. Nu kör vi standardskriptet för säkerhetskonfiguration:

    # /usr/bin/mysql_secure_installation

    Jag kommer inte att ge hela produktionen av detta skript, allt är ganska enkelt och tydligt. Först ställer vi in ​​ett lösenord för root (det nuvarande lösenordet efter installationen är tomt), sedan tar vi bort anonyma användare, inaktiverar möjligheten att ansluta root på distans och tar bort testanvändaren och databasen.

    Fil inställningar mysql/mariadb är inne /etc/my.cnf. För normalt arbete är standardinställningarna tillräckliga. Men om du bestämmer dig för att ändra dem, glöm inte att starta om databastjänsten.

    Starta om mariadb/mysql på CentOS 7:

    # systemctl starta om mariadb

    Det är allt. Den grundläggande funktionaliteten för webbservern på CentOS 7 är konfigurerad.

    Jag kommer gärna att få kommentarer om ämnet för artikeln. Låt mig påminna dig om att den här artikeln är en del av en enda serie artiklar om servern.

    Kali Linux Workshop

    Kursen vänder sig till dig som är intresserad av att genomföra penetrationstester och vill praktiskt pröva sig fram i situationer nära verkliga. Kursen riktar sig till dig som ännu inte har erfarenhet av informationssäkerhet. Utbildningen pågår i 3 månader, 4 timmar per vecka. Vad den här kursen ger dig:
    • Sök efter och utnyttja sårbarheter eller konfigurationsfel i företagsnätverk, webbplatser, servrar. Betoning på pentestning av Windows OS och säkerhet för företagssegmentet.
    • Inlärningsverktyg som metasploit, sqlmap, wireshark, burp suite och många andra.
    • Att bemästra verktygen Kali Linux i praktiken bör alla specialister på informationssäkerhet vara bekanta med det.
    Testa dig själv på inträdesprovet och se programmet för mer detaljer.

    Nu ska jag berätta hur du installerar MariaDB på Debian. Jag kommer också att berätta hur du använder det i mitt ämne "Installera MariaDB på Debian" allt detta kommer att beskrivas i detalj.

    MariaDB är en lätt ersättning för MySQL. MariaDB liknar MySQL och det syftar till att vara det bästa valet för databasproffs som letar efter pålitliga, skalbara SQL Server. Den här guiden hjälper nybörjare att installera och förstå MariaDB på Debian 7 och 6. För att uppnå detta mål arbetar MariaDB Foundation nära och samarbetar med en stor grupp användare och utvecklare i den sanna andan av fri och öppen programvara, och släpper programvara i ett sätt att det var mycket tillförlitligt.

    Drivkraften till dess skapelse var behovet av att säkerställa DBMS:s fria status (under GPL-licensen), i motsats till den vaga licenspolicyn för MySQL av Oracle. Huvudutvecklaren är Michael Widenius, författare till originalversionen av MySQL och grundare av Monty Program AB.

    MariaDB övergav InnoDB-lagringsundersystemet och ersatte det med XtraDB. Dessutom ingår undersystemen Aria (en:Aria (lagringsmotor)), PBXT och FederateX.

    Låt oss först uppdatera OS (så att allt är nytt):

    # apt-get update # apt-get upgrade

    Installera Python-tillägg:

    # sudo apt-get install python-software-properties

    Installerar MariaDB

    Först måste du importera GPG-nyckeln så att APT kontrollerar paketens integritet och laddar ner allt:

    # apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db

    Vi skapar vår egen MariaDB sources.list-fil för att lägga till arkivet till det:

    # vim /etc/apt/sources.list

    Installerar MariaDB 5.5 för Debian 7 wheezy

    # MariaDB 5.5 repository list - skapad 2014-11-15 17:08 UTC deb http://mirror.23media.de/mariadb/repo/5.5/debian wheezy main deb-src http://mirror.23media.de/mariadb /repo/5.5/debian wheezy main

    Installerar MariaDB 5.5 för Debian 6 squeeze

    # MariaDB 5.5 repository list - skapad 2014-11-15 17:14 UTC deb http://mirror.23media.de/mariadb/repo/5.5/debian squeeze main deb-src http://mirror.23media.de/mariadb /repo/5.5/debian squeeze main

    Installerar MariaDB 10.0 för Debian 7 wheezy

    # MariaDB 10.0 repository list - skapad 2014-11-15 17:21 UTC deb http://mirror.23media.de/mariadb/repo/10.0/debian wheezy main deb-src http://mirror.23media.de/mariadb /repo/10.0/debian wheezy main

    Installerar MariaDB 10.0 för Debian 6 squeeze

    # MariaDB 10.0 repository list - skapad 2014-11-15 17:22 UTC deb http://mirror.23media.de/mariadb/repo/10.0/debian squeeze main deb-src http://mirror.23media.de/mariadb /repo/10.0/debian squeeze main

    Installerar MariaDB 10.1 för Debian 7 wheezy

    # MariaDB 10.1 repository list - skapad 2014-11-15 17:23 UTC deb http://mirror.23media.de/mariadb/repo/10.1/debian wheezy main deb-src http://mirror.23media.de/mariadb /repo/10.1/debian wheezy main

    Installerar MariaDB 10.1 för Debian 6 squeeze

    # MariaDB 10.1 repository list - skapad 2014-11-15 17:23 UTC deb http://mirror.23media.de/mariadb/repo/10.1/debian squeeze main deb-src http://mirror.23media.de/mariadb /repo/10.1/debian squeeze main

    Efter det uppdaterar vi systemet (lista över alla förråd) och installerar servern med MariaDB:

    # sudo apt-get update # sudo apt-get installera mariadb-server

    Därefter börjar installationen av MariaDB-servern. Jag valde version 10.0 och av denna anledning kommer jag att ge ett installationsexempel. Under installationen kommer du att bli ombedd att ange lösenordet för MariaDB-användaren - root.

    Ange lösenordet och klicka på OK. Du måste också ange andra gången (bekräftelse). Installationsprocessen tar ett par minuter.

    Använder MariaDB

    I det här avsnittet kommer du att lära dig hur du ansluter till MariaDB och hur du använder grundläggande SQL-kommandon.

    Standardverktyget för att interagera med MariaDB är MySQL-klientprogrammet. För att komma igång, kör följande kommando för att ansluta till MariaDB som root:

    # mysql -u rot -p

    Ange lösenordet som du angav (skapade) under installationen.

    Låt oss försöka skapa en enkel databas som vi senare kommer att fylla med data. Ange följande kommandon för att skapa en databas med namnet TEST_DB, som ägs av Ny användare Test_User, vi kommer också att ställa in lösenordet secret_password för användaren med kommandot:

    MariaDB [(ingen)]> SKAPA DATABAS test_db; MariaDB [(inget)]> GE ALLA PRIVILEGIER PÅ test_db.* TILL test_user@localhost IDENTIFIERAD AV "hemligt_lösenord"; MariaDB [(ingen)]> SPOLA PRIVILEGIER; MariaDB [(ingen)]> avsluta

    Den sista raden (kommandot) kommer ut från rotanvändaren på MariaDB. Och låt oss nu logga in som användare test_user:

    # mysql -u testanvändare -s

    Låt oss ange kommandot för att använda den nyskapade databasen (test_db):

    MariaDB [(ingen)]> ANVÄND test_db;

    Skapa en ny tabell och fyll den med lite data:

    MariaDB [(ingen)]> CREATE TABLE-produkter (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, namn VARCHAR(255), pris DECIMAL(6,2)); MariaDB [(inget)]> INSERT INTO products (namn, pris) VALUES ("MacBook_Pro", 3200.0); MariaDB [(inget)]> INSERT INTO products (namn, pris) VÄRDEN ("Asus", 340.0); MariaDB [(inget)]> INSERT INTO products (namn, pris) VÄRDEN ("HP", 745.0);

    Se till att den nya datan är korrekt införd:

    MariaDB [(ingen)]> VÄLJ * FRÅN produkter;

    Avsluta MariaDB-klienten genom att köra:

    MariaDB [(ingen)]> avsluta

    För att få ytterligare information O SQL-kommandon do:

    MariaDB [(ingen)]>\h

    Konfigurera MariaDB

    För att konfigurera MariaDB måste du redigera konfigurationsfilen. Den här filen kontrollerar de flesta av serverns systemvariabler, som du normalt skulle lämna som standard.

    # vim /etc/mysql/my.cnf

    starta om servern genom att köra följande kommando:

    # tjänst mysql omstart

    MariaDB säkerhet

    # mysql_secure_installation

    Du kommer att uppmanas att ändra administratörslösenordet, ta bort anonyma användare, inaktivera inloggningar utanför den lokala värden, ta bort alla anonyma användare och ta bort testdatabasen. Det rekommenderas att du svarar "Y" på alla frågor.

    Fjärranslutningar för användare

    Låt oss ta en titt på hur man tillåter den tidigare skapade Test_User att ansluta till MariaDB på distans (som standard tillåter MariaDB endast anslutningar från den lokala värden).

    Att exponera MariaDB-servern för Internet gör den mindre säker. Om du behöver ansluta från en annan server, se till att du tillämpar brandväggsregler som endast tillåter anslutningar från vissa IP-adresser.
    Först måste vi tillhandahålla anpassade anslutningar till fjärrvärdar för Test_user-användaren genom att logga in på MariaDB som root:

    # mysql -u rot -p

    Tillåt Test_User-användaren att ansluta från fjärrvärdar:

    MariaDB [(ingen)]> GE ALLA PRIVILEGIER PÅ test_db.* TILL test_user@"%" IDENTIFIERAD AV "hemligt_lösenord"; MariaDB [(ingen)]> SPOLA PRIVILEGIER; MariaDB [(ingen)]> avsluta

    Ställer in MariaDB för att lyssna på allt nätverksgränssnitt. Öppna filen /etc/mysql/my.cnf:

    # vim /etc/mysql/my.cnf

    […]
    bind-adress = 0.0.0.0
    […]

    Starta om servern:

    # tjänst mysql omstart

    Kontrollerar anslutning med lokal dator på din MariaDB-server, ersätter Test_User med ditt användarnamn och test_domain.com med din domän eller IP-adress:

    # mysql -u test_user -h test_domän.com -s

    Om du loggade in framgångsrikt bör du se MariaDB-hälsningen och skalprompten.

    Tuning MariaDB

    MySQL-tuner är användbart verktyg, som ansluter till en körande MariaDB-instans och ger konfigurationsrekommendationer baserat på arbetsbelastningen. Du måste låta din MariaDB-instans köras i minst 24 timmar innan du kör tunern. Ju längre instansen har körts, desto bästa råd Tunern kommer att erbjuda dig.

    Installera MySQL-tunern genom att köra följande kommando:

    # apt-get installera mysqltuner

    Starta MySQL-tunern med följande kommando:

    # mysqltuner

    Därefter kommer han att ge dig mycket mycket användbar information. Observera rekommendationerna i slutet. Detta kommer att berätta vad som behöver ändras (vilka variabler som måste konfigureras) i /etc/mysql/my.cnf-delen av din fil.

    Hur återställer jag MariaDB root-lösenord?

    Om du har glömt ditt superanvändarlösenord (rootlösenord) kan du enkelt återställa det genom att följa instruktionerna nedan.

    Stoppa MariaDB-servern:

    # tjänst mysql stopp

    Starta servern med skip-grant-tabeller så att du kan logga in på MariaDB utan lösenord:

    # mysqld_safe --skip-grant-tables &

    Du kan nu ansluta till MariaDB-servern som root utan lösenord:

    # mysql -u rot

    I MariaDB-klienten anger du följande kommandon för att återställa root-lösenordet och avsluta:

    MariaDB [(inget)]> ANVÄND mysql MariaDB [(inget)]> UPPDATERA användare SET lösenord=LÖSENORD("dittnya lösenord") WHERE user="root"; MariaDB [(ingen)]> SPOLA PRIVILEGIER; MariaDB [(ingen)]> avsluta

    Starta om MariaDB-servern:

    # tjänst mysql omstart

    Anslut till MariaDB-servern med det nya lösenordet:

    # mysql -u rot -p

    Installationen av MariaDB på Debian är klar. Jag hoppas att det var tydligt.



    
    Topp