Kontakty

Inštalácia Marohadb v systéme Windows. Choďte do MySQL do Marohadb v systéme Windows. Ako konfigurovať MARIADB SSL a nainštalovať Secure Connections z rôznych klientov inštaláciu Marohadb v systéme Windows

Rozhodol som sa opustiť používanie MySQL a presnejšie, aby som úplne preložil všetky svoje servery na jeho vidličku - Marohadb. Užívanie tejto príležitosti, chcem povedať o procese inštalácie MARIADB 10.1 v Debiane 8. Treba poznamenať, že stručný opis Nastavenia Mariadb sú na oficiálnej stránke projektu. Rozhodol som sa prideliť tento problém samostatný príspevok, v ktorom chcem popísať potrebné akcie po inštalácii Marádb na serveri.

Pred začatím inštalácie Mariadb pridajte svoje úložisko. Webová stránka mariadb odporúča inštalovať softvér-reality-common balík. Nevidím žiadny bod v tomto a radšej robiť všetko manuálne.

Zaregistrujeme kľúčové úložisko GPG v systéme:

APT-KEY KEY ROZDELENÝ ROZHODNOSTI --KEYSYSERVER KEYSERVERVERE.UBUNTUCH 0XCBCB082A1BB943DB

Pridajte popis úložiska do súboru zdrojov. Otvorte súbor v programe Nano Editor:

Nano /etc/apt/sources.List

Skopírujte nasledujúce riadky na konci:

Deb http://lon1.mirors.digitalcean.com/mariadb/repo/10.1/debian Jessie MAIN deb-src http://lon1.mirrs.digitalcean.com/mariadb/repo/10.1/debian Jessie Main

Aktualizujeme zoznam dostupných balíkov:

APT-Získajte aktualizáciu

Spustenie inštalácie MARIADB 10.1:

Apt-get nainštalovať mariadb-server

Počas inštalácie budeme vyzvaní na zadanie hesla pre užívateľa root. Na tomto procese inštalácie MARIADB v Debian 8 je úplný. Teraz prejdite na konfiguráciu servera.

Ak chcete zvýšiť spoľahlivosť nášho servera, musíte vykonať minimálne požiadavky bezpečnosť. Zakázať autorizáciu pod užívateľom root zo vzdialených hostiteľov. Ak existuje testovacia základňa a anonymný používateľ, musíte ich odstrániť zo servera. Ak chcete uľahčiť úlohu, použite skript:

Mysql_secure_installation

Predvolený typ skladovania

Ak potrebujete zmeniť predvolený typ Storage, pridajte nasledujúce riadky do súboru My.cNF:

Default-Storage-Engine \u003d InnoDB

Uistite sa, že Mariadb používa predvolené tabuľky InnoDB. Ak to chcete urobiť, vykonajte príkaz:

Ukazovať motory;

Vytvorenie databázy používateľa a mariadb

Ak chcete vytvoriť používateľa v Mariadb, použite príkaz nižšie:

Vytvoriť používateľa "user_name" @ "localhost" identifikovaný "heslom";

Vytvorte novú databázu:

Vytvorte databázu databázy_name;

Dovoľte nám splniť používateľa User_name do databázy databázy:

Udeliť všetky privilégiá na databázu. * Na "user_name" @ "localhost";

Teraz musíte aktualizovať všetky privilégiá:

Spláchnite privilégiá.

Ak chcete zobraziť privilégiá, spustite príkaz:

Zobraziť granty pre "user_name" @ "localhost";

Binárne protokoly

Mariadb zaznamenáva všetky zmeny v BD v binárnom časopise, je potrebné pre prevádzku replikačného mechanizmu. Ak ste neurobili zálohy alebo sú zastarané, na obnovenie údajov môžu byť použité binárne protokoly. Neexistuje však žiadna záruka, že údaje budú úplne alebo čiastočne obnovené. Úspech bude závisieť od veľkosti, času skladovania binárnych guľôčok, frekvencií vrecka.

Ak chcete vypnúť binárne protokoly, komentár k reťazcom v súbore My.CNF:

#Log_bin \u003d / var / log / mysql / mariadb-bin #log_bin_index \u003d /var/log/mysql/mariadb-bin.index

Budem nainštalovať Mariadb SSL (Secure Sockets Layer) bezpečné pripojenia Z aplikácií klienta MySQL a PHP. Ako povoliť SSL pre klienta servera a Mariadb pracujúci v systéme Linux alebo Unix-Like?

MARIADB - Databázový server, ktorý ponúka funkčnosť Sklopenie pre MySQL Server.

Mariadb vytvoril niektorí z pôvodných autorov MySQL, s využitím širšieho stavu voľných vývojárov a druhého softvér open source. Okrem základných funkcií MySQL ponúka Mariadb bohatý súbor vylepšení funkcií, vrátane alternatívnych skladovacích mechanizmov, optimalizáciou serverov a iných korekcií. V tomto návode hovorím o tom, ako nakonfigurovať mariadb server pomocou SSL a ako nainštalovať bezpečné pripojenia Pomocou konzoly a php skriptov.

Pri vytváraní certifikátov SSL je dôležité použiť 192.168.1.100 ako štandardný názov.

Krok 1 - Inštalácia Marohadb

Zadajte príkaz podľa možnosti Linux alebo UNIX.

Inštalácia servera MARIADB / klienta na Ubuntu / Debian Linux

Zadajte jeden z nasledujúcich príkazov: APT-GET príkaz alebo príkaz APT:

$ sudo apt-get nainštalovať mariadb-server mariadb-client

Inštalácia mariadb servera / klienta na centOS / RHEL / FEDORA LINUX

Zadajte nasledujúci príkaz YUM:

$ sudo yum nainštalovať mariadb-server mariadb

Pre užívateľov Fedora Linux musíte zadať príkaz DNF:

$ sudo dnf inštalácia mariadb-server mariadb

Inštalácia mariadb servera / klienta na oblúk Linux

Zadajte nasledujúci príkaz pacman:

$ sudo pacman -s mariadb

Inštalácia mariadbového servera / klienta na FreeBSD UNIX

Ak chcete nainštalovať port, spustiť:

# CD / USR / Porty / Databázy / MARIADB100-Server / && Make Install Clean # CD / USR / Porty / Databázy / MARIADB100-CLIENT / && Uskutočniť inštaláciu

Ak chcete pridať binárny balík, zadajte:

# PKG Nainštalujte Mariadb100-Server Mariadb100-Client

Krok 2 - Bezpečná bezpečná inštalácia mariadb

Zadajte nasledujúci príkaz:

$ mysql_secure_installation

Obrázok 0,01: Obmedzte inštaláciu Mariadb

Krok 3 - Vytvoriť certifikát CA

Vytvorte adresár s názvom SSL IN / ETC / MySQL / Directory:

$ CD / ETC / MYSQL $ SUDDO MKDIR SSL $ CD SSL

Hodnota: Hodnota štandardného názvu (spoločný názov), ktorý sa používa na certifikáty servera a klienta, sa musí líšiť od štandardného mena (spoločného mena) používaného pre certifikát CA. Aby ste sa vyhli akýmkoľvek problémom, nainštalujem ich nasledovne:

Štandardný názov CA: Mariadb admin.
Štandardný názov servera: Server mariadb
Štandardné meno zákazníka: Mariadb klient.

Ak chcete vytvoriť nový príkaz CA, zadajte nasledujúci príkaz:

$ SUDDO OPENSSL GENRSA 2048\u003e CA-KEY.PEK

Príklady možných záverov údajov:


Obrázok 10: Vytvorenie kľúča CA

Ak chcete vytvoriť certifikát pomocou tohto tlačidla, zadajte nasledujúci príkaz:

$ sudo openssl req -new -x509 -Nodes -day 365000 -Key ca-key.Pem -out CA-CERT.PEM
Obrázok 03: Používanie kľúča CA, generovať CA CERTIONAL PRE MARIADB

Príklady možných záverov údajov:

Teraz musíte mať dva nasledujúce súbory ::

  1. /etc/mysql/ssl/ca-cert.pem - súbor certifikátu pre certifikačnú autoritu (certifikačná autorita (CA)).
  2. /Etc/mysql/ssl/ca-key.pem - kľúčový súbor pre certifikačné centrum (certifikačná autorita (CA)).

Budem používať obe súbory na vytvorenie serverov a klientskych certifikátov.

Krok 4 - Vytvorenie certifikátu servera

Ak chcete vytvoriť kľúč servera, spustiť:

$ SUDDO OPENSSL REQ -NEWKEY RSA: 2048 -Doys 365000 -Nodes -Keyout server-keyb.pem -out server-req.pem

Príklady možných záverov údajov:


Obrázok 04: Vytvorenie tlačidla servera pre server Mariadb

Potom zvládnite kľúč RSA Server, zadajte:

$ SUDDO OPENSSL RSA -IN Server-Key.Pem -out Server-Key.PEM

Príklady možných záverov údajov:

Kľúč RSA.

Nakoniec podpíšte certifikát servera, pre tento účel spustiť:

$ SUDDO OPENSSL X509 -REQ -N-IN Server-Req.pem-Days 365000 -CA CA-CERT.PEM -CAKEY CA-KEY.PEK -SET_SERIAL 01 -OUT Server-Cert.Pem

Príklady možných záverov údajov:

Signature OK Subject \u003d / C \u003d AU / ST \u003d Niektoré-State / O \u003d Internet Widegits PTY LTD / CN \u003d Marriadb Server Získanie CA Súkromný kľúč

Teraz sa musíte zobraziť ďalšie súbory:

  1. /etc/mysql/ssl/server-cert.pem. - súbor certifikátu servera MARIADB.
  2. /etc/mysql/ssl/server-key.pem - MARIADB Serverový kľúč.

Musíte použiť aspoň dva súbory na serveri MARIADB a akékoľvek iné uzly, ktoré sa chystáte použiť pre prevádzku klastra / replikácie. Tieto dva súbory chránia pripojenie na strane servera.

Krok 5 - Vytvorenie certifikátu zákazníka

MYSQL CLIENT A APP PHP / PYTHON / PERL / RUBY Bude používať certifikát zákazníka na ochranu pripojenia klienta. Na všetkých svojich klientov musíte nastaviť nasledujúce súbory, vrátane webového servera. Vytvorenie kľúčového kľúča, spustiť:

$ SUDDO OPENSSL REQ -NEWKEKE RSA: 2048 -Day 365000 -Nodes -Keyout klient-kľúč.Pem -out klient-req.pem

Príklady možných záverov údajov:


Obrázok 05: Vytvorenie klienta pre server Mariadb

Potom zvládnuť kľúč RSA Kľúč, pre tento vstup

$ sudo openssl RSA -in klient-kľúč.Pem -out klient-kľúč

Nakoniec podpíšte certifikát klienta, začiatok:

$ SUDDO OPENSSL X509 -REQ -V Client-Req.pem-Day 365000-CA CA-CERT.PEM -CAKEY CA-KEY.PEM -SET_SERIAL 01 -OUT CLIENT-CERT.PEK

Príklady možných záverov údajov:

Signature OK Subject \u003d / C \u003d AU / ST \u003d Niektoré PTY LTD / CN \u003d Mariadb Klient Získanie CA Súkromný kľúč

Krok 6 - Ako skontrolovať certifikáty?

Na overenie certifikátov zadajte nasledujúci príkaz, aby ste sa uistili, že všetko bolo vytvorené správne:

$ Openssl Overiť -Cafile Ca-Cert.Pem Server-Cert.Pem Client-Cert.Pem

Príklady možných záverov údajov:

Server-Cert.Pem: OK Client-Cert.Pem: OK

Nemali by byť žiadne chyby a musíte získať odpoveď na server a klientske certifikáty.

Krok 7 - Konfigurácia servera MARIADB na použitie SSL

Upraviť súbor. vi /etc/mysql/mariadb.conf.d/50-server.cnf alebo /etc/mysql/mariadb.cnf Nasledujúcim spôsobom:

$ sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf

Pridajte nasledovne:

### MySQL Server ### ## Zabezpečenie databázy s možnosťou SSL a certifikátmi ## ## Neexistuje žiadna kontrola nad úrovňou protokolu. ## ## mariadb bude používať TLSV1.0 alebo lepšie. ## SSL SSL-CA \u003d / ETC / MYSQL / SSL / CA-CERT.PEM SSL-CERT \u003d / ETC / MYSQL / SSL / Server-Cert.Pem SSL-KEY \u003d / ETC / MYSQL / SSL / Server-Key. PEM.

Uložte a zatvorte súbor. MARIADB môžete reštartovať nasledovne:

$ sudo /etc/init.d/mysql reštart

$ Sudo systémový počítač reštartujte MySQL

Krok 8 - Konfigurácia klienta MARIADB na použitie SSL

Nakonfigurujte klienta MARIADB ako 192.168.1.200 používať SSL (pridať do /etc/mysql/mariadb.conf.d/50-Myql-clients.cnf.):

$ sudo vi /etc/mysql/mariadb.conf.d/50-Mysql-clients.cnf

Pridať do časti:

## MySQL CLIENT CONTIONURACTURÁCIA ## SSL-CA \u003d / ETC / MYSQL / SSL / CART.PEK SLSL-CERT \u003d / ETC / MYSQL / SSL / CLIENT-CERT.PEK SLSL-KEY \u003d / ETC / MYSQL / SSL / CLIENT- Key.Pem ### Táto možnosť je zakázaná v predvolenom nastavení ### ### SSL-Server-Server-CERT ###

Uložte a zatvorte súbor. Musíte skopírovať súbory /etc/ysql/ssl/ca-cert.pem súbory, /etc/mysql/ssl/client-cert.pem. a /etc/mysql/ssl/client-key.Pem pre všetkých vašich zákazníkov. Napríklad:

{[Chránené e-mail]): rsync /etc/mysql/ssl/ca-cert.pem /etc/mysql/ssl/client-cert.pem /etc/mysql/ssl/client-key.pem \\ t [Chránené e-mail]: / etc / mysql / ssl

Krok 9 - Skontrolujte

Zadajte nasledujúci príkaz:

$ MySQL -U (užívateľ-mena-tu) -h (server-ip-tu) -p (DB-name-tu) $ mySQL -U -U root -h 192.168.1.100 -p MySQL $ MySQL -U ROOK -HH 127,0 .0.1 -p mysql

Zadajte nasledujúce ukazovatele premenné ako '% SSL%'; Príkaz v Marohadb [(None)]\u003e ROW:

MARIADB [(NONE)]\u003e Zobraziť premenné ako "% SSL%";

Alebo vykonajte príkaz status:

Mariadb [(žiadny)]\u003e stav;

Príklady možných záverov údajov:

Obrázok 06: Vytvorenie bezpečného spojenia s konzolou a kontrola

Skontrolujte pripojenia SSL a TLS. Nasledujúci príkaz musí dokončiť zlyhanie, pretože SSL 3 nie je podporovaný a podľa toho nie je nakonfigurovaný na použitie:

$ OPENSSL S_CLIENT -CONNECT 192.168.1.100:3306 -SSL3 140510572795544: Chyba: 140A90C4: SSL RUTINES: SSL_CTX_NEW: NULL SSL Metóda prešiel: SSL_LIB.C: 1878:

Skontrolujte TLS v 1 / 1.1 / 1.2:

$ OPENSSL S_CLIENT -CONNECT 192.168.1.100:3306 -TLS1 $ OPENSSL S_CLIENT -Connect 192.168.1.100:3306 -tls1_1 $ OPENSSL S_CLIENT -Connect 192.168.1.100:3306 -tls1_2

Príklady možných záverov údajov:

Pripojené (00000003) --- NO K dispozícii nie je dostupný partnerský certifikát - - Žiadny certifikát klienta Certifikát CA CAVE SENT - SSL Handshake čítal 5 bajtov a písané 7 bajtov --- nové, (žiadne), šifrovanie je (žiadne) bezpečné opätovné prerokovanie je Nepodporovaná kompresia: Žiadna expanzia: Žiadna žiadna žiadna ALPN dohodnutá SSL-zasadnutí: Protokol: TLSV1 CIPHER: 0000 Session-ID: session-ID-CTX: Master-Key: Key-Arg: Žiadne PSK Identity: Žiadny PSK Identity Titul: Žiadne SRP Užívateľské meno: Žiadne Čas štartu: 1485335036 Časový limit: 7200 (SEC) Overiť návratový kód: 0 (OK) ---

Ako čítať súbor snímania balíkov TCPdump na kontrolu bezpečného pripojenia

Nakoniec môžete použiť analyzátor príkazového balíka TCPDUMP, ktorý beží pod príkazovým riadkom na zobrazenie portu 3306:

$ sudo tcpdump -i eth0 -s 65535 port 3306 -w /tmp/mysql.pcap

Teraz sa pripojte k vašej aplikácii PHP / PYTHON / PERL / RUBY MySQL alebo console Application MySQL:

$ MySQL -U BAR -H 192.168.1.100 -P foo

Použite Tcpdump na overenie, že nie textové informácie, vrátane hesiel, nemení medzi serverom a klientom. Toto sa vykonáva nasledovne:

$ Tcpdump -r /tmp/ysql.pcap | menej

Krok 10 - Pridajte používateľa na server Mariadb

Zadajte nasledujúci príkaz:

$ mysql -u root -p

Vytvorte databázu s názvom FOO:

Vytvoriť databázu foo;

Vytvorte používateľa s baru pre ESTRING pre databázu s názvom FOO:

Udeliť všetko na foo. * [Chránené e-mail] Identifikovaný "mypassword" vyžadujú SSL;

Poskytovanie prístupu z webového servera vyslaného na 192.168.1.200:

Udeliť všetko na foo. * [Chránené e-mail] Identifikovaný "mypassword" vyžadujú SSL;

Vytvorte bezpečnostné pripojenie na bash shell

Môžete sa prihlásiť pomocou konzoly nasledovne:

$ mySQL -U BAR -P -H 192.168.1.100 FOO

Vytvorte bezpečné pripojenie z Pythonu

Najprv nainštalujte rozhranie Python Pre MySQL:

$ sudo apt-get nainštalovať python-mysql.connector

Alebo pre Python v3.x.

$ sudo apt-get nainštalovať python3-mysql.connector

Tu je príklad kódu Python pre bezpečné pripojenie pomocou:

#! / USR / Bin / Python Import MySQLDB SSL \u003d ("CERT": "/etc/mysql/ssl/client-cert.pem", "kľúč": "/etc/mysql/ssl/client-key.pem" ) CONN \u003d MYSQLDB.CONNECT (HOST \u003d "192.168.1.100", User \u003d "Bar", Passwd \u003d "MYPASSWORD", SSL \u003d SSL) Cursor \u003d conn.cursor () Cursor.EXECUTE ("Zobraziť stav ako" SSL_CIPHER "" ) Print Cursor.Fetchone ()

#! / USR / bin / python # poznámka (príklad je platný pre python v2 a v3) z __FUTURE__ Import Print_Function Import Sys Import MySQL.Conmonts z mysql.connector.connacts Import CityFlag Config \u003d ("User": "Bar", " Heslo ":" MYPASSWORD "," HOST ":" 192.168.1.100 "," CLIENT_FLAGS ":," SSL_CA ":" /etc/mysql/ssl/ca-cert.pem "," SSL_CERT ":" / etc / mysql /ssl/client-Cert.Pem "," SSL_KEY ":" /etc/mysql/ssl/client-key.pem ",) cnx \u003d mysql.connector.connect (** Config) Cur \u003d CNX.cursor (pufrovaný \u003d TRUE) CUR.EXECUTE ("Zobraziť stav ako" SSL_CIPHER ") Tlačiť (Cur.Fetchone ()) Cur.Close () CNX.CLOSE ()

Príklady možných záverov údajov:

("SSL_CIPHER", "DHE-RSA-AES256-SHA")

Dnes vezmeme na zvýšenie jednej z najvyhľadávanejších úloh akékoľvek servery Linuxu, ktoré zaberajú vedúcu úlohu v tomto funkčnom segmente. Nastavenie webové servery Centos 7 na základnom taške Populárna HTTP Server apache.Tlmočník php. a databázový server mySQLalebo krátko - nainštalujte lampu. Tento balík je najobľúbenejšou konfiguráciou dnes medzi web hosting. Hoci tá istá spoločnosť nedávno príde na pätu, ale na základe Nginxu to už môže mať dopredu, nemám na tom presné údaje.

Tento článok je súčasťou jednotného cyklu článku o serveri.

Webový server na Centos 7

Takže, naše web server Centos pozostáva z troch hlavných komponentov - http server apache.Programovací jazyk tlmočník php.a databázový server mySQL. Zoznámte sa s každým z nich:

  1. Apache. - http server alebo jednoducho webový server Apache. Je cross-platformový softvér, ktorý podporuje takmer všetky populárne operačný systém, vrátane okien. Je zrejmé predovšetkým pre jeho spoľahlivosť a flexibilitu konfigurácie, ktorá môže byť výrazne rozšírená spojovacími modulmi, ktoré existuje skvelá sada. Nevýhody existujú väčšie požiadavky na zdroje v porovnaní s inými servermi. Ak chcete udržať rovnaké zaťaženie, ako napríklad NGINX, Apache nebude môcť mať podobné parametre železa.
  2. Php. - Programovací jazyk všeobecného účelu, ktorý sa najčastejšie uplatňuje v vývoji webu. K dnešnému dňu je to najobľúbenejší jazyk v tejto oblasti aplikácie. Podporované takmer všetkými poskytovateľmi hostingu.
  3. MySQL - systém správy databáz. \\ T Vyhral svoju popularitu v prostredí malých a stredných aplikácií, ktoré sú na webe veľmi veľa. Takže, ako PHP, dnes je najobľúbenejšia databáza používaná na webových stránkach. Najviac hosting. V Centos namiesto MySQL SET mariadb. - pobočka MySQL. Sú plne kompatibilné, je možné kedykoľvek prechod z jedného DBMS do druhého a späť. V poslednej dobe Stretol som sa s informáciami, ktoré mariadb vojny mysql a ľudia sa pomaly pohybujú. V praxi som to nedodržal, pretože som nikdy nepracoval s naloženými databázami. A za normálnych podmienok nie je rozdiel zrejmý.

Experimentálny server bude konať, nasledujúce vlastnosti:

CPU2 jadrá
Pamäť8 GB.
Disk150 GB SSD.

Toto je vlastné parametre nastavenia. Nie sú optimálne za cenu, ale potreboval som presne to.

Chcem okamžite objasniť, že sa zaoberám základným predvoleným nastavením. Ak chcete zlepšiť rýchlosť, zvýšiť spoľahlivosť a jednoduchosť použitia, musíte nainštalovať niekoľko ďalších nástrojov, ktoré poviem samostatne. Všeobecne platí, že to stačí na organizovanie webového servera, čo je v tomto článku.

Ak stále nemáte server, potom musíte vykonať. A ak je server už nainštalovaný, nezabudnite na to. Odporúčam venovať pozornosť nastaveniu, pretože je veľa užitočná informáciaKtorý, ako súčasť tohto článku, nemám - systém aktualizácie, nastavenie brány firewall, inštalácia editora a oveľa viac.

Konfigurácia Apache v Centos 7

V Centos sa nazýva služba Apache httpd.. Keď som sa s touto distribúciou oboznámil, bol som nezvyčajný. V FreeBSD a Debian, s ktorým som pracoval, služba webového servera sa nazýva Apache, hoci niekde som si všimol, zdá sa, že konfiguračný súbor má názov httpd.conf. Doteraz neviem, prečo sa tieto mená šíria. Bol by som rád, keby niekto so mnou zdieľal informácie o tomto účte v pripomienkach.

Teraz pokračujte inštalácia Apache. V Centos 7 Toto sa robí veľmi jednoduché:

# yum nainštalovať -y httpd

Pridajte Apache na autooload:

# SystemctL Povoliť httpd

Spustíme Apache v Centos 7:

# SystemCTL Spustenie httpd

Skontrolujte, či sa server začal:

# Netstat -tulnp | Grep httpd tcp6 0 ::::: 80 ::: * Počúvajte 21586 / httpd

Všetko je v poriadku, Hoving v 80. prístave, ako by mal byť. Už môžete prejsť na adresu HTTP: // Adresa IP a pozrite si obrázok:

Teraz konfigurujeme Apache. Dávam prednosť nasledujúcej webhostingovej štruktúre:

Vytvorte podobnú štruktúru:

# Mkdir / web && mkdir /web/site1.ru && mkdir/site1.ru/www && mkdir /web/site1.ru/logs # chown -r Apache. / Web.

Zamestnanci conf.d / *. Cons

Ak nie, nekonzulujeme a prejdite na adresár /etc/httpd/conf.d. S i vytiahnem stránku súborov1.ru.conf:

ServerName Site1.ru serverliášov www.site1.ru DOCUMATROOT /WEB/SITE1.RU/WWWW Options FallowsymLinks Oventoverride všetky vyžadujú všetky udelené Errorlog /web/site1.ru/logs/error.log customlog /web/site1.ru/logs/access.log Common

Reštartujte Apache v Centos

Teraz vyrábame reštart Apache:

# SystemCTL reštartujte httpd

Ak existujú nejaké chyby - pozri Apache / Var / Log / httpd / error_log log. Ak je všetko v poriadku, potom skontrolujte, či je náš virtuálny hostiteľ normálny. Ak to chcete urobiť, vytvorte v priečinku /Web/site1.ru/www súboru index.html Ďalší obsah:

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

Apache je nakonfigurovaný!

# Chat apache. /Web/site1.ru/www/index.html

192.168.1.25 Site1.ru.

kde 192.168.1.25 IP adresa nášho webového servera.

Teraz v prehliadači získame adresu http://site1.ru. Ak vidíte obrázok:

takže každý bol správne nakonfigurovaný. Ak nejaké chyby, potom prejdite na sledovanie protokolov. A v tomto prípade nie je spoločný denník httpd, ale protokol chyby virtuálny hostiteľ at /web/site1.ru/logs/error.log.

Ihneď zaplatím svoju pozornosť otáčaniu guľatiny virtuálnych hostiteľov. Často sa to stane, že ak nie ste okamžite zamieňať, potom zabudnete. Ale ak je stránka s dobrou dochádzkou, protokoly budú rýchlo rásť a môžu si vziať veľa priestoru. Je lepšie konfigurovať otáčanie protokolov webového servera ihneď po vytvorení. Nie je ťažké.

Ak chcete konfigurovať otáčanie protokolov virtuálnych hostiteľov, musíte upraviť súbor /etc/lograte.d/httpd. Vytvorí sa počas inštalácie Apache a obsahuje nastavenie otáčania. Štandardná poloha Guľatiny. A keďže sme preniesli protokoly každého virtuálneho hostiteľa do individuálneho priečinka, musíte tieto priečinky pridať do tohto súboru:

# mcedit /etc/lograte.d/httpd. /Web/*/logs/s.log. / VAR / LOG / HTTPD / * LOG (MISICOKOK NOTFYMPTY SHEAREDSIPCIONS ONKCIAMENTYCOMATION POSTTROTATE / BIN / SystemCTL Reload httpd.service\u003e / Dev / null 2\u003e / Dev / null || True Econscript)

V zásade je najjednoduchší webový server pripravený a môžu byť použité. Je však nepravdepodobné, že existujú stránky so statickým obsahom, ktorý stačí na podporu iba HTML. Takže budeme pokračovať v našom prostredí.

Ak potrebujete organizovať prácu stránky protokolom https, Využite softvérový sprievodca.

Inštalovať PHP v Centos 7

Podporovať obsah dynamického obsahu ďalší krok. Inštalácia php. V Centos 7:

# Yum nainštalovať -y php

A niekoľko ďalších užitočných komponentov. Nainštalujeme populárne moduly pre PHP.:

# Yum nainštalovať -y php-mysql php-mbstring php-mcrypt php-devel php-xml php-gd

Poďme reštartovať Apache:

# SystemCTL reštartujte httpd

Vytvorte súbor vo virtuálnom hostiteľskom adresári a skontrolujte php práca:

# Mcedit /web/site1.ru/www/index.php. # Chat apache. /Web/site1.ru/www/index.php.

Ideme na adresu http://site1.ru/index.php

Musíte vidieť výstup informácií o PHP. Ak je niečo zlé, existujú nejaké chyby, pozri virtuálny hostiteľský protokol chýb, chýb PHP tam budú tam tiež.

Kde leží php.ini

Po inštalácii nastane otázka často, a kde je uložené nastavenia PHP? Tradične sú v jednom súbore nastavení. V centiach. php.ini leží v / atď, priamo v koreni. Tam môžete upravovať globálne nastavenia pre všetkých virtuálnych hostiteľov. Osobné nastavenia každej stránky môžu byť vyrobené samostatne vo virtuálnom konfiguračnom súbore hostiteľa, ktorý sme vykonali predtým. Pridajte tam niekoľko užitočných nastavení:

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

Pridajte k najjednoduchšiemu, predtým

Php_admin_Value dátum.timezón "Európa / moscow" php_admin_value max_execution_time 60 php_admin_value upload_max_filesize 30m

Ak chcete použiť nastavenia, ktoré potrebujete na reštart Apache. Teraz v produkte phpinfo môžete vidieť zmenu nastavení.

Aktualizácia na PHP 5,6 v Centos 7

V našom príklade sme nainštalovali na Centos 7 pHP 5.4. Zo štandardného úložiska. A čo ak potrebujeme novšiu verziu, napríklad pHP 5.6.? V tomto prípade musíte vykonať aktualizovať PHP..

# wget http://rpms.Remirepo.net/enterprise/remi-release-7.rpm # rpm -UVH remi-release-7 * .rpm

Teraz obnoviť PHP 5.4 na PHP 5.6:

# Yum -enablerepo \u003d remi, Remi-php56 Inštalácia PHP PHP-Common PHP-MYSQL PHP-MBSTRING PHP-MCRYPT PHP-DEVEL PHP-XML PHP-GD

Reštartujte Apache:

# SystemCTL reštartujte httpd

A ideme sa pozrieť na výstup phpinfo - http://site1.ru/index.php

Vynikajúce, aktualizovali sme PHP na verziu 5.6.

Inštalácia MySQL v Centos 7

Ako som už napísali skôr, vidlice MySQL sa stáva čoraz rozdelením - mariadb.. Má plnú kompatibilitu s MySQL, takže môžete bezpečne používať. Radšej ho používam.

Nainštalujte mariadb. o Centos 7:

# Yum nainštalovať -y mariadb mariadadb-server

Pridáme Mariadb do autorun:

# Systemctl Enable Mariadb.service

Spustiť mariadb:

# Systemctl Start Mariadb

Kontrola, začatie alebo nie:

# Netstat -tulnp | Grep mysqld tcp 0 0 0.0.0.0:3306 0.0.0.0:* Počúvajte 22276 / MySQLD

Upozorňujeme, že sa v systéme dokonca zobrazí ako služba MySQLD. Teraz spustite štandardný skript Security Security

# / usr / bin / mysql_secure_installation

Nebudem dať celý výstup tohto skriptu, všetko je celkom jednoduché a zrozumiteľné. Po prvé, zadáte heslo pre root (aktuálne heslo po inštalácii prázdneho), potom odstránite anonymných používateľov, vypnite možnosť pripojenia koreňa na diaľku, odstrániť testovací užívateľ a databázu.

Spis nastavenie MySQL / Mariadb leží /etc/my.cnf.. Pre normálnu prevádzku je dostatok predvolených nastavení. Ak sa však rozhodnete zmeniť ich, nezabudnite reštartovať databázovú službu.

Reštartovanie mariadb./ MySQL v Centos 7:

# SystemctL Reštartujte Mariadb

To je všetko. Základné funkčné funkčné webové server na Centos 7 je nakonfigurované.

Budem rád komentáre a pripomienky k téme článku. Pripomínam, že tento článok je súčasťou jedného cyklu článku o serveri.

Workshop na Kali Linux

Kurz pre tých, ktorí majú záujem o vykonávanie testov preniknúť a chcú prakticky vyskúšať sa v situáciách blízkemu skutočnému. Kurz je určený pre tých, ktorí nemajú skúsenosti informačná bezpečnosť. Tréning trvá 3 mesiace až 4 hodiny týždenne. Čo vám tento kurz dá:
  • Vyhľadajte a prevádzkujte chyby alebo chyby konfigurácií v firemných sieťach, webových stránkach, servery. Zamerajte sa na pensress Windows a bezpečnosť firemného segmentu.
  • Štúdium nástrojov, ako je Metasploit, SQLMAP, Wireshark, Burp Suite a mnoho ďalších.
  • Vývoj Kali Linux Toolkit v praxi - s ním by mal byť akýkoľvek špecialista na IB.
Skontrolujte si na úvodnej skúške a pozrite si viac softvérového programu.

Počnúc verziou Debian z 9., populárny systém správy databázy MySQL bol nahradený Mariadb. Toto DBMS je pobočka od MySQL vytvorenej jeho počiatočnými vývojármi, ktorí boli nešťastní licencované politiky Oracle a strach, že MySQL by sa mohol stať zatvorenejším produktom. Mariadb je plne kompatibilný s MySQL, čo znamená, že náhrada bude čo najtransparentná a všetky aplikácie, ktoré pracovali s MySQL, bude fungovať aj s Marádbom. A zvážime niektoré vlastnosti tohto prechodu.

Po prvé, povedzme, že všetky tímy, pokyny, skripty atď. atď. Ktorý predtým pracoval s MySQL bude fungovať aj s Marádbom, nie je potrebné vykonať žiadne zmeny a mnohí užívatelia jednoducho nemusia všimnúť, že pracujú s iným DBMS.

Existujú však aj rozdiely, v prvom rade sa týkajú bezpečnosti a vyrábali tímu Debianu. Jedným z hlavných rozdielov je, že Marádb je súčasťou Debian 9 pri inštalácii nepožiada heslo root. Potom, čo užívateľ zostáva v nejakom zmätku, a čo robiť ďalej? Oleje v ohni nalial skutočnosť, že väčšina pokynov na internete uvažuje o MySQL Management, čisto cez ovládací panel PHPMYADMIN, a nebude mať pracovné zručnosti v príkazoch príkazov sú v obzvlášť bezmocnom stave.

"Ako nainštalovať heslo root v mariadb"V rôznych variantoch je jeden z populárnych vyhľadávacie dotazySúvisiace s týmto dbms. Ale nebudeme rozrepávať rameno a najprv sa budeme zaoberať vývojármi Debianu a za čo.

Najväčší bezpečnostný problém MySQL je, že poverenia prístupu databázy sú uložené v konfiguračných súboroch webových aplikácií v otvorenom texte. Berúc do úvahy skutočnosť, že mnohí používatelia neobťažujú a vytvárajú majiteľ všetkých databáz koreňového superuser - problém sa stáva celkom vážnym. A ak sa domnievate, že prístup k súborom webových aplikácií môže mať pomerne širokú škálu osôb, vrátane nielen zamestnancov, ale aj na voľnej nohe - sa stáva veľmi zlým.

Preto, v Debian pre koreňový superuser, Mariadb poskytuje autentifikáciu prostredníctvom zásuvky UNIX a je implementovaný takým spôsobom, že neobmedzený prístup k MARIADB môže dostávať len superfolderový systém a len v režime príkazového riadka. Z hľadiska bezpečnosti je veľmi správna, pretože užívatelia tretích strán a webové aplikácie nebudú môcť pristupovať k root právam, aj keď sa naučili heslo.

To všetko je dobré, ale čo robiť obvyklým používateľom, ktorý dal Marádb na svoj server a chce naletieť na stránke základný výpis? Po prvé, máte používateľa, dokonca ani jeden. Aby ste to urobili, zvýšiť svoje práva do systému na root cez su alebo sudo a vykonajte príkaz:

Mysql -u root.

Potom sa ocitnete na príkazovom riadku Marohadb. Ak chcete vytvoriť nového používateľa na vykonanie príkazu:

Vytvorte používateľa "ANDREY" @ "LOCALHOST" IDENTIVÝT "HESLO);

V našom príklade sme vytvorili používateľa andrey. s heslom heslo..

Teraz ho budeme vymeniť správne. Po prvé, jasne prijímame práva na bázy iných ľudí:

uPOZORNENIE UPOZORNUTIA *. * AKOUTOVAŤ "ANDREY" @ "LOCALHOST";

A vydám plné práva k databáze s šablónom Andrey_Basename, tento prístup automaticky poskytne práva na všetky nové základy, ktoré používateľ vytvorí.

udeliť všetky privilégiá na `Andrey \\ _%`. * Na "Andrey" @ "Localhost";

Všimnite si, že šablóna je zabalená so symbolmi gravis (`)ktorý je na kľúč s ruským písmenom E.

Zostáva len reštartovať privilégiá a opustí konzolu Marohadb.

Spláchnite privilégiá;
ukončiť;

Potom sa môžete vrátiť do známych nástrojov na prácu s MySQL / Mariadb, napríklad phpMyAdmin:


poznač si to táto metódaNa rozdiel od rozsiahlych odporúčaní zahrnúť koreň v Marádbe, umožňuje udržať zvýšenú bezpečnosť systému, ktorá je dôležitá, ak je prístup k nej bude mať tretie strany. Tiež neodporúčame, aby všetky databázy pod jedným užívateľom, ideálne o jednu lokalitu (alebo inú aplikáciu) - jedného používateľa, to umožní dodatočné náklady Čas a úsilie o zmenu hesla v prípade jeho kompromisu alebo jeho potenciálnej príležitosti (povedzme, že ste boli priťahovaní k práci s miestom na voľnej nohe).

MARIADB Inštalácia z úložiska Developer

Operačný systém Debianu má mnoho výhod, jeden z nich, pre ktoré je s najväčšou pravdepodobnosťou, že je stabilita. Nastaviť a zabudnuté - toto je len o ňom, ale otočná strana tohto prístupu je konzervativizmus, mnohé balíky nie sú tak Čerstvé verzieAko by som sa niekedy chcel. Momentálne prichádza MARIADB 10.1 s Debian 9, zatiaľ čo súčasné verzie sú 10,2 a 10.3.

Takže ak potrebujete nejaké nové mariadb funkcie, alebo chcete použiť najnovšie stabilné verzie Softvér, MARIADB môžete nainštalovať priamo z archívu developerov. Je to jednoduché, ale pred potenciálne nebezpečným akciou by ste mali vykonať úplnú zálohu vášho servera.

Ak to chcete urobiť, spustite nasledujúci príkaz v konzole servera pomocou Superuser:

MYSQLDUMP -U ROOKOVÉHO DATABÍNY\u003e ~ / my_backup.sql

Tento príkaz uloží všetky databázy MARIADB vrátane služby, súboru my_backup.sql. v adresároch / root. A ak sa niečo pokazí, môžete vždy obnoviť stav vášho servera v čase vytvorenia kópie.

Návod na inštaláciu môžete získať na špeciálnej stránke oficiálnej stránky.

Je to veľmi pohodlné: vyberiete si distribúciu, jeho vydanie, verziu DBMS a zrkadlo - potom, čo dostanete hotové pokyny na inštaláciu. Aby ste ušetrili čas, ktorú tu dávame (nainštalujeme MariadB 10.3 na Debian 9):

Apt-get nainštalovať softvér-vlastnosti-common dirmngr
aPT-KEY KEY ADVENTOVACIEHO KEYS --KEYSYSERVEROVÉHO KEYSERVERU.UBUNTU.COM 0XF1656F24C74CD1D8
add-apt-archív "deb http://mirror.mephi.ru/mariadb/repo/10.3/debian úsek"

Takže pochopíte, že ste stručne komentovali tieto príkazy. Prvá z nich pridáva potrebné závislosti do systému, druhá saduje kľúč, ku ktorému sú obaly a tretí podpísaný, konečne pridáva do samotného úložiska.

Teraz aktualizujte zoznam balíkov:

APT-Získajte aktualizáciu

a nainštalovať novú verziu Marohadb:

Apt-get nainštalovať mariadb-server

Upozorňujeme, že dávkový manažér bude správne odstrániť predošlá verzia a vytvoriť nový, všetky databázy budú pokračovať a budú pokračovať v práci nová verzia Mariadb.

Druhý bod, pri inštalácii Mariadb od vývojárov, inštalátor vás požiada, aby ste nastavili heslo root, ako v tejto verzii sa autentifikácia cez zásuvku UNIX nepoužíva.

Niekto môže to potešiť, ale ak sa vám podarilo pochopiť a vyhodnotiť všetky výhody metódy depozitného developerov, bude rozumná otázka: je možné vrátiť sa, ako to bolo? Môcť. Pre tento objav konfiguračný súbor. /etc/mysql/mariadb.conf.d/50-server.cnf. a pridajte do časti Riadok:

Plugin-load-add \u003d auth_socket.so

Reštartujte DBMS:

Servis MySQLD Restart.

Pokúsme sa zadať Účet Normálny užívateľ:

Napriek tomu, že sa nám systém pýta heslo a my to správne opravíme - budeme stále odmietnutý prístup k nám. Opakujeme pokus prostredníctvom phpmyadmin:

A tu nebudeme mať úspech. Výborný! Teraz prístup k právam Superuser DBMS má len superuserový systém a nemusíme sa obávať, že heslo Root Mariadb bude známe pre každého.



Páči sa vám článok? Zdieľaj to