Mariadb telepítése Windows rendszerbe. Menjen a MySQL-re a MariadB-re a Windows rendszerben. Hogyan kell konfigurálni a Mariadb SSL-t és telepítheti a biztonságos csatlakozásokat a különböző ügyfelekről a Mariadb telepítése ablakokban
Úgy döntöttem, hogy elhagyom a MySQL használatát, és pontosabban, hogy teljesen lefordítsa az összes szerveremet a villáján - Mariadb. Ezt a lehetőséget, meg akarok mondani a Mariadb 10.1 telepítési folyamatról a Debian-ban 8. Meg kell jegyezni, hogy rövid leírás A Mariadb beállítások a hivatalos projekt oldalon vannak. Úgy döntöttem, hogy ezt a kérdést külön hozzászólás, amelyben meg szeretném leírni a szükséges lépéseket a Mariadb telepítése után a szerveren.
A Mariadb telepítése előtt adja hozzá a tárolóját. A Mariadb weboldal javasolja a szoftver-tulajdonságok közös csomagjának telepítését. Nem látok semmit ebben, és azt szeretném, ha mindent manuálisan csinál.
Regisztrálunk egy GPG kulcs tárolóat a rendszerben:
APT-KEY ADV --RECV-KEYS --KEYSERVER KEYSERVER.UBUNTU.com 0xCBCB082A1BB943DB
Adja hozzá a tároló leírását a forrásokhoz.lista fájlhoz. Nyissa meg a fájlt a Nano szerkesztőben:
Nano /etc/apt/sources.list.
Másolja a következő sorokat a végén:
DEB: http://lon1.mirrors.gitalcean.com/mariadb/repo/10.1/debian jessie main deb-src http://lon1.mirrors.digitalcean.com/mariadb/repo/10.1/debian jessie fő
Frissítjük a rendelkezésre álló csomagok listáját:
Apt-get frissítés
A MariadB 10.1 telepítési folyamata:
APT-Get Install MARIADB-SERVER
A telepítés során meg kell adnunk egy jelszót a root felhasználó számára. Ezen a folyamatban, hogy telepítse a Mariadb-t a Debian 8-ban. Most menjen a kiszolgáló konfigurációjához.
A szerverünk megbízhatóságának növelése érdekében végre kell hajtania minimális követelmények Biztonság. Tiltja az engedélyt a root felhasználó alatt a távoli gépek. Ha van egy tesztbázis és névtelen felhasználó, akkor el kell távolítania őket a szerverről. A feladat megkönnyítése érdekében használja a szkriptet:
Mysql_secure_installation
Alapértelmezett tároló típusa
Ha meg kell változtatnia az alapértelmezett tárolótípust, adja hozzá a következő sorokat a My.CNF fájlhoz:
Alapértelmezett tárológép \u003d Innodb
Győződjön meg róla, hogy a Mariadb az alapértelmezett innodb asztalokat használja. Ehhez hajtsa végre a parancsot:
Motorok megjelenítése;
Hozzon létre egy felhasználót és egy Mariadb adatbázisot
A MARADB felhasználó létrehozásához használja az alábbi parancsot:
Hozzon létre felhasználó "user_name" @ "localhost" által azonosított "Jelszó";
Új adatbázis létrehozása:
Adatbázis-adatbázis létrehozása;
Teljesítsuk a felhasználói user_name-t az adatbázisnév adatbázishoz:
Adja meg az összes jogosultságot az adatbázis_nevén. * "User_name" @ "localhost";
Most frissítenie kell az összes jogosultságot:
Flush jogosultságok.
A jogosultságok megtekintéséhez futtassa a parancsot:
Megmutatja a "user_name" @ "localhost" -t;
Bináris naplók
A Mariadb nyilvántartja a BD összes változását a bináris magazinban, szükség van a replikációs mechanizmus működésére. Ha nem készített biztonsági másolatot, vagy elavult, a bináris naplók felhasználhatók az adatok helyreállítására. Azonban nincs garancia arra, hogy az adatok teljes mértékben vagy részlegesen helyreállnak. A siker a bináris naplók méretétől, tárolási idejétől, a táska frekvenciáitól függ.
A bináris naplók letiltásához kommentálja a húrokat a my.cnf fájlban:
#Log_bin \u003d / var / log / mysql / mariadb-bin #log_bin_index \u003d /var/log/mysql/mariadb-bin.index
Telepítem a Mariadb SSL-t (Secure Sectets Layer) is biztonságos csatlakozások A MySQL ügyfél és a PHP alkalmazásokból. Hogyan engedélyezze az SSL-t a kiszolgáló és a Mariadb kliens számára, amely egy Linux vagy UNIX-szerű rendszerben dolgozik?
Mariadb - adatbázis-kiszolgáló, amely kínál funkcionalitás A MySQL szerver számára.
Mariadb-t a MySQL eredeti szerzői, a szabad fejlesztők szélesebb állapotával és a másik szélesebb állapotával hozták létre szoftver nyílt forráskód. A MySQL alapfunkciói mellett a Mariadb gazdag funkciók fejlesztése, beleértve az alternatív tárolási mechanizmusokat, a szerverek optimalizálását és egyéb korrekciókat is. Ebben a kézikönyvben beszélni fogok arról, hogyan kell konfigurálni a Mariadb kiszolgálót az SSL használatával és a biztonságos csatlakozások telepítéséhez A konzol és a PHP parancsfájlok használata.
SSL-tanúsítványok létrehozásakor fontos a 192.168.1.100 szabványos névként.
1. lépés - Telepítés Mariadb
Írja be a parancsot a Linux vagy a UNIX opció szerint.
A Mariadb szerver / kliens telepítése az Ubuntu / Debian Linuxon
Adja meg az alábbi parancsok egyikét: apt-get parancs vagy apt parancs:
$ sudo apt-get Install MARIADB-SERVER Mariadb-Client
A Mariadb Server / Client telepítése a Centos / Rhel / Fedora Linuxon
Adja meg a következő yum parancsot:
$ sudo yum telepítése Mariadb-Server Mariadb
A Fedora Linux felhasználók számára be kell írnia a DNF parancsot:
$ sudo dnf telepítse a Mariadb-Server Mariadb-t
A Mariadb Server / Client telepítése az Arch Linuxra
Adja meg a következő PACMAN parancsot:
$ sudo pacman -s mariadb
A Mariadb Server / Client telepítése a FreeBSD UNIX rendszeren
A port telepítése, futtatás:
# CD / usr / portok / adatbázisok / mariadb100-kiszolgáló / && telepítése tiszta # CD / usr / portok / adatbázisok / Mariadb100-Client / &&
Bináris csomag hozzáadásához írja be:
# Pkg telepítse a Mariadb100-Server Mariadb100-ügyfelet
2. lépés - Biztonságos Mariadb biztonságos telepítés
Adja meg a következő parancsot:
$ mysql_secure_installation
.01. Ábra: Confine Mariadb telepítés3. lépés - CA tanúsítvány létrehozása
Hozzon létre egy SSL nevű könyvtárat az / etc / mysql / könyvtárban:
$ CD / etc / mysql $ sudo mkdir ssl $ cd ssl
Érték: A kiszolgáló és az ügyfél-tanúsítványok szabványos névértéke (közös neve) eltér a CA tanúsítványhoz használt szabvány nevétől (közös név). A problémák elkerülése érdekében a következőképpen telepítem őket:
Standard név CA: Mariadb admin.
Standard szerver neve: Mariadb szerver
Standard ügyfélnév: Mariadb kliens.
Adja meg a következő parancsot egy új CA gomb létrehozásához:
$ sudo openssl GenRsa 2048\u003e CA-KEY.PEM
Példák a lehetséges adat következtetésekre:
10. ábra: CA kulcs létrehozása
Adja meg a következő parancsot, hogy létrehozzon egy tanúsítványt a gomb segítségével:
$ sudo openssl req -new -x509 -nodes -ddays 365000 -Key ca-key.pem -out ca-cert.pem
03. ábra: A CA-kulcs használata, CA tanúsítvány létrehozása a MariadB számára
Példák a lehetséges adat következtetésekre:
Most már két következő fájlja van ::
- /etc/mysql/ssl/ca-cert.pem - tanúsítványfájl a tanúsító hatósághoz (tanúsítványtámogatás (CA)).
- /etc/mysql/ssl/ca-key.pem - kulcsfőfájl a tanúsítási központhoz (tanúsítványtámogatás (CA)).
Mindkét fájlt használok a kiszolgáló és az ügyfél tanúsítványok létrehozásához.
4. lépés - Szerver tanúsítvány létrehozása
Szerverkulcs létrehozásához futtassa:
$ sudo openssl req -newkey RSA: 2048 -ddays 365000 -Nodes-NOT -KEYOUT SERVER-KEY.PEM -OUT SERVER-REQ.PEM
Példák a lehetséges adat következtetésekre:
04. ábra: Szerverkulcs létrehozása a Mariadb kiszolgálóhoz
Ezután kezelje az RSA-kiszolgálót, írja be:
$ sudo openssl rsa -in server-key.pem -out server-key.pem
Példák a lehetséges adat következtetésekre:
RSA kulcs írása
Végül írja alá a kiszolgálói tanúsítványt, fuss:
$ Sudo openssl x509 -req -in server-req.pem-napok 365000 -ddays 365000 -A ca-cert.pem -cakey ca-key.pem -set_serial 01 -Out szerver-cert.pem
Példák a lehetséges adat következtetésekre:
Aláírás OK Tárgy \u003d / c \u003d au / st \u003d non-state / o \u003d Internet widgits pty ltd / cn \u003d Mariadb szerver Getting CA privát kulcs
Most további fájlokat kell megjeleníteni:
- /etc/mysql/sl/server-cert.pem. - Mariadb szerver tanúsítványfájl.
- /etc/mysql/ssl/server-key.pem - Mariadb szerver kulcsfájl.
Legalább két fájlt kell használnia a Mariadb szerveren és bármely más csomóponton, amelyet a klaszter / replikációs forgalomhoz fog használni. Ez a két fájl megvédi a kapcsolatot a szerver oldalon.
5. lépés - Ügyfél-tanúsítvány létrehozása
MySQL ügyfél és alkalmazás PHP / Python / Perl / Ruby az ügyfélbizonyítványt használja az ügyfélkapcsolat védelmére. Be kell állítania a következő fájlokat az összes ügyfelünkre, beleértve a webszervert is. Ügyfélkulcs létrehozása: Futtatás:
$ sudo openssl req -newkey RSA: 2048 -ddays 365000 -Nodes -Kkeyout client-key.pem -out client-req.pem
Példák a lehetséges adat következtetésekre:
05. ábra: Az ügyfélkulcs létrehozása a Mariadb kiszolgálóhoz
Ezután kezelje az RSA kliens kulcsot, erre az euther
$ sudo openssl rsa -in client-bey.pem -out client-key.pem írás RSA kulcs
Végül írja alá az ügyfél tanúsítványt, kezdje el:
$ Sudo openssl x509 -req -in client-req.pem-nap 365000 -ddays 365000 -A ca-cert.pem -cakey ca-key.pem -set_serial 01 -out client-cert.pem
Példák a lehetséges adat következtetésekre:
Aláírás OK Tárgy \u003d / C \u003d AU / ST \u003d Néhány PTY LTD / CN \u003d Mariadb kliens Ca privát kulcs
6. lépés - A tanúsítványok ellenőrzése?
Adja meg a következő parancsot, hogy ellenőrizze a tanúsítványokat, hogy megbizonyosodjon arról, hogy minden helyes létrejött:
$ Openssl Verify -Cafile ca-cert.pem server-cert.pem client-cert.pem
Példák a lehetséges adat következtetésekre:
Server-Cert.PEM: OK CLIENT-CERT.PEM: OK
Nem lehet hibás, és meg kell kapnia egy OK választ a kiszolgáló és az ügyfél tanúsítványok számára.
7. lépés - Állítsa be a Mariadb kiszolgálót az SSL használatához
Fájl szerkesztése. vi /etc/mysql/mariadb.conf.d/50-server.cnf vagy /etc/mysql/mariadb.cnf A következőképpen:
$ sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf
Add hozzá a következőképpen:
### mysql szerver ### ## Az adatbázis biztosítása SSL opcióval és tanúsítványokkal ## ## Nincs ellenőrzés a használt protokollszint felett. ## ## Mariadb használ a tlsv1.0 vagy jobb. ## SSL SSL-CA \u003d / etc / mysql / ssl / ca-cert.pem ssl / ca-cert.pem ssl / server-cert.pem ssl-billentyű \u003d / etc / mysql / ssl / kiszolgáló-kulcs. PEM.
Mentse és zárja be a fájlt. Az alábbiakban újraindíthatja a Mariadb-t:
$ sudo /etc/init.d/mysql újraindítása
$ Sudo systemctl indítsa újra a mysql-t
8. lépés - Állítsa be a Mariadb klienst az SSL használatához
Állítsa be a Mariadb klienst 192.168.1.200-as beállításához az SSL használatához (add hozzá /etc/mysql/mariadb.conf.d/50-mysql-cants.cnf.):
$ sudo vi /etc/mysql/mariadb.conf.d/50-mysql-clients.cnf
Hozzáadás a szakaszhoz:
## mysql ügyfélkonfiguráció ## SSL-CA \u003d / etc / mysql / ssl / cart.pem ssl-cert \u003d / etc / mysql / ssl / client-cert.pem ssl-billentyű \u003d / etc / mysql / ssl / client- Key.pem ### Ez az opció alapértelmezés szerint (### ### SSL-VERIFE-SERVER-CERT ###
Mentse és zárja be a fájlt. Meg kell másolnia az /etc/mysql/ssl/ca-cert.pem fájlokat, /etc/mysql/sl/client-cert.pem. és /etc/mysql/ssl/client-key.pem az összes ügyfele számára. Például:
{[E-mail védett]): rsync /etc/mysql/ssl/ca-cert.pem /etc/mysql/sl/client-cert.pem /etc/mysql/ssl/client-keyKey.pem \\ [E-mail védett]: / etc / mysql / ssl
9. lépés - Ellenőrizze
Adja meg a következő parancsot:
$ Mysql -u (felhasználói név) -h (Server-IP-here) -h (db-name-here) $ mysql -u root -h 192.168.1.100 -p mysql $ mysql -u root -h 127.0 .0.1 -p mysql
Adja meg a következő megjelenítési változókat, mint a "% ssl%"; Parancs a Mariadb [(sem)]\u003e sor:
Mariadb [(sem)]\u003e Változók megjelenítése, mint a "% ssl%";
Vagy hajtsa végre az állapotparancsot:
Mariadb [(sem)]\u003e Állapot;
Példák a lehetséges adat következtetésekre:
06. ábra: Biztonságos kapcsolat létrehozása a konzollal és ellenőrziEllenőrizze az SSL és a TLS kapcsolatokat. A következő parancsnak teljesítenie kell a hibát, mivel az SSL 3 nem támogatott, és ennek megfelelően nincs konfigurálva:
$ OpenSSL S_Client -Csatlakoztassa 192.168.1.100:3306 -ssl3 140510572795544: Hiba: 140A90C4: SSL rutinok: ssl_ctx_new: NULL SSL módszer elmúlt: SSL_LIB.C: 1878:
Ellenőrizze a 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
Példák a lehetséges adat következtetésekre:
Csatlakoztatott (00000003) --- nincs szakító tanúsítvány elérhető --- nincs kliens tanúsítvány CA nevek küldése --- SSL kézfogás olvasta 5 bájt és írt 7 bájt --- (None), Cipher (nincs) Biztonságos újratárgyalás Nem támogatott tömörítés: Nincs Bővítés: Nincs Alpn Tárgyalásos SSL-Session: Protocol: TLSV1 Cipher: 0000 Session-ID: Session-ID-CTX: Mester-kulcs: Key-Arg: Nincs PSK Identity: Nincs PSK Identity Tipp: Nincs SRP Felhasználónév: Nincs kezdési idő: 1485335036 Timeout: 7200 (SEC) Ellenőrizze a visszatérési kódot: 0 (OK) ---
Hogyan olvashatunk egy TCPDUMP csomag rögzítőfájlját a biztonságos kapcsolat ellenőrzéséhez
Végül használhatja a TCPDUMP parancscsomag-analizátort, amely a parancssor alatt fut, hogy megtekinthesse a 3306 portot:
$ sudo tcpdump -i eth0 -s 65535 port 3306 -W /tmp/mysql.pcap
Most csatlakozzon az alkalmazáshoz PHP / Python / Perl / Ruby Mysql vagy konzol alkalmazás Mysql:
$ Mysql -u bar -h 192.168.1.100-P foo
Használja a tcpdump-t, hogy ellenőrizze, hogy nincs szöveges információk, beleértve a jelszavakat, nem cseréli a szerver és az ügyfél között. Ez az alábbiak szerint történik:
$ Tcpdump -r /tmp/mysql.pcap | Kevésbé
10. lépés - Felhasználó hozzáadása a Mariadb kiszolgálóhoz
Adja meg a következő parancsot:
$ mysql -u root -p
Hozzon létre egy Foo nevű adatbázist:
Adatbázis létrehozása;
Hozzon létre egy felhasználót a bárhoz az ESTRING számára egy Foo nevű adatbázishoz:
Adjon meg mindent a foo-on [E-mail védett] Az "MyPassword" azonosítása SSL-t igényel;
Hozzáférés biztosítása a 192.168.1.18-án közzétett webszerverről:
Adjon meg mindent a foo-on [E-mail védett] Az "MyPassword" azonosítása SSL-t igényel;
Hozzon létre egy biztonságos bash shell kapcsolatot
A konzollal a következőképpen jelentkezhet be:
$ mysql -u bar -p -h 192.168.1.100 foo
Hozzon létre egy biztonságos kapcsolatot a Python-tól
Először telepítse az interfészt Piton A mysql esetében:
$ sudo apt-get install python-mysql.connector
Vagy a Python v3.x.
$ sudo apt-get install python3-mysql.connector
Itt van egy példa a Python kódra a biztonságos kapcsolathoz:
#! / usr / bin / python importálja a mysqldb ssl \u003d ("cert": "/etc/mysql/ssl/client-cert.pem", "gombot": "/etc/mysql/ssl/client-keykey.pem" ) Conn \u003d mysqldb.connect (host \u003d "192.168.1.100", felhasználó \u003d "bar", passwd \u003d "mypassword", ssl \u003d ssl) kurzor \u003d conn.cursor () kurzor.Execute ("SHOUR STATUSE" SSL_CIPHER " ) Nyomtatás kurzor.Fetchone ()
#! / Usr / bin / python # MEGJEGYZÉS (példa a Python V2 és a V3-ra érvényes) a __future__ importálásról. Jelszó ":" 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 (puffered \u003d TRUE) CUR.EXECUTE ("SHOUND állapot" SSL_CIPHER "") Nyomtatás (Cur.Fetchone ()) Cur.Close () cnx.close ()
Példák a lehetséges adat következtetésekre:
("Ssl_cipher", "DHE-RSA-AES256-SHA)
Ma vállaljuk a Linux szerverek egyik legkeresettebb szerepét, amely vezető szerepet játszik ebben a funkcionális szegmensben. Beállítás webszerverek Centos 7 az alaptáska népszerű HTTP szerveren apache.Tolmács pHP. és adatbázis-kiszolgáló mysql, vagy röviden - telepítse a lámpát. Ez a csomag a legnépszerűbb konfiguráció ma a web hosting. Bár ugyanaz a vállalat, a közelmúltban jön a sarokba, de Nginx alapján már előreláthat, nincs pontos adatok erre.
Ez a cikk része a cikk egységes ciklusának a szerverről.
Webes szerver a Centos 7-en
Szóval, az internetünk centos szerver három fő alkatrészből áll - http szerver apache., Nyelv-tolmács programozása pHP.és adatbázis-kiszolgáló mysql. Mindegyikük egy kicsit megismerkedünk:
- Apache. - HTTP-kiszolgáló vagy egyszerűen Web Server Apache. Egy olyan keresztplatformos szoftver, amely szinte minden népszerű operációs rendszer, beleértve az ablakokat. Nyilvánvaló, hogy elsősorban a konfiguráció megbízhatósága és rugalmassága, amely jelentősen bővíthető a modulok összekötő modulokkal, amelyek nagyszerűen vannak. A hátrányok miatt nagyobb igények merülnek fel az erőforrásokhoz képest más szerverekhez képest. Ahhoz, hogy ugyanolyan terhelést tartsanak, mint például a Nginx, az Apache nem lesz képes hasonló vas paraméterek.
- PHP. - Általános célú programozási nyelv, amelyet leggyakrabban a webfejlesztésben alkalmaznak. Eddig ez a legnépszerűbb nyelv ezen alkalmazás területén. Szinte minden hosting szolgáltató támogatja.
- Mysql - Adatbázis kezelő rendszer. Nyerte meg népszerűségét a kis és közepes méretű alkalmazások környezetében, amelyek nagyon sokak az interneten. Tehát, mint például a PHP, ma a webhelyeken használt legnépszerűbb adatbázis. A legtöbb tárhely támogatja. A mysql készlet helyett a centoszokban mariadb. - Branch MySQL. Teljesen kompatibilisek, bármikor lehetséges, hogy az átmenet az egyik DBM-ről a másikra és vissza. Utóbbi időben Találkoztam azokkal az információkkal, amelyeket a Mariadb Wars MySQL és az emberek lassan mozognak rajta. A gyakorlatban nem tartottam meg ezt, mivel soha nem dolgoztam betöltött adatbázisokkal. És normál körülmények között a különbség nem észrevehető.
A kísérleti szerver cselekszik, a következő jellemzők:
processzor | 2 mag |
memória | 8 GB. |
Korong | 150 GB SSD. |
Ez az egyéni beállítási paraméterek. Nem optimálisak az árhoz, de pontosan szükségem volt rá.
Szeretném azonnal tisztázni, hogy foglalkozom az alapértelmezett beállítással. A sebesség javítása, a megbízhatóság és a könnyű használat érdekében több eszközt kell telepítenie, amit külön fogok mondani. Általában elegendő lesz a webszerver megszervezéséhez, ami ebben a cikkben van.
Ha még mindig nincs szerver, akkor végre kell hajtania. És ha a szerver már telepítve van, ne felejtse el. Azt javaslom, hogy figyeljen a beállításra, mert sokat van hasznos információAmi e cikk részeként nem adom meg a rendszerfrissítést, tűzfal beállítást, telepítve a szerkesztőt és még sok másot.
Apache konfigurálása a Centos 7-ben
A CENTOS-ban az Apache szolgáltatást hívják httpd.. Amikor csak megismertem ezt az elosztást, szokatlan voltam. A FreeBSD-ben és a Debianban, akivel dolgoztam, a webszerver szolgáltatást Apache-nak hívták, bár valahol észrevettem, úgy tűnik, hogy a konfigurációs fájl neve httpd.conf. Mostanáig nem tudom, miért terjedt mindkét név. Örülnék, ha valaki megosztott velem a számlát a megjegyzésekben.
Most folytassa telepítés Apache. A CENTOS 7-ben ez nagyon egyszerű:
# yum telepítése -y httpd
Add hozzá az Apache autoload-hoz:
# Systemctl Engedélyezze a httpd
Az Apache-t a Centos 7-ben indítjuk:
# Systemctl Start httpd
Ellenőrizze, hogy kezdődött-e a szerver:
# Netstat -tulnp | GREP httpd tcp6 0 0 :::: 80 ::: * figyelj 21586 / httpd
Minden rendben van, a 80. kikötőben a hoving, ahogy kell. Már meg tudod menni a http: // IP-címre, és nézze meg a képet:
Most beállítjuk az Apache-t. Én inkább a következő web hosting struktúrát választom:
Hasonló struktúra létrehozása:
# Mkdir / web && mkdir /web/site1.ru && mkdir /web/site1.ru/www && mkdir /web/site1.ru/logs # Chown -r Apache. / Web.
Inptional conf.d / *. Conf
Ha nem, beállítjuk és menjünk az /etc/httpd/conf.d könyvtárba. Ha húzom egy fájlt site1.ru.conf:
Indítsa újra az Apache-t a Centosz-ban
Most újraindítjuk az Apache-t:
# Systemctl újraindítás httpd
Ha vannak hibák - lásd az Apache / var / log / httpd / error_log naplót. Ha minden rendben van, akkor ellenőrizze, hogy a virtuális gazda normális. Ehhez hozzon létre a mappában /Web/site1.ru/www fájl index.html Következő tartalom:
# Mcedit /web/site1.ru/www/index.html
Apache konfigurálva van!
# Chown Apache. /Web/site1.ru/www/index.html192.168.1.25 Site1.ru.
ahol a webszerverünk IP-címe 192.168.1.25 IP-címe.
Most a böngészőben toborozzuk a címet http://site1.ru. Ha megjelenik egy kép:
Így mindenki helyesen volt konfigurálva. Ha bármilyen hibát, majd nézd meg a naplókat. És ebben az esetben nem egy közös napló httpd, de a napló hiba naplója virtuális állomás at /web/site1.ru/logs/error.log.
Közvetlenül a virtuális házigazdák naplók forgatásához fogom fizetni. Gyakran előfordul, hogy ha nem zavarja azonnal, akkor elfelejtette. De ha a webhely jó részvétele van, akkor a naplók gyorsan növekednek, és sok helyet vehetnek igénybe. Jobb, ha a webkiszolgáló rönkinek forgatását közvetlenül a létrehozás után állapíthatja meg. Nem nehéz.
A virtuális fogadó naplók forgásának konfigurálásához módosítania kell az /etc/logrotate.d/httpd fájlt. Az Apache telepítés alatt hoz létre, és tartalmazza a forgási beállításokat. szabványos hely Naplók. És mivel az egyes virtuális host naplóit egy egyedi mappához továbbítottuk, hozzá kell adnunk ezeket a mappákat ehhez a fájlhoz:
# mcedit /etc/logrotate.d/httpd. /Web/*/logs/*.log. / var / log / httpd / * napló (Missingok NotiFempty SharedScripts DELILECOMPRESS POSTOTATE / BIN / SYSTEMCTL Reload httpd.service\u003e / dev / null 2\u003e / dev / null || TRUE Endscript)
Elvileg a legegyszerűbb webszerver készen áll és használható. De nem valószínű, hogy vannak olyan helyek statikus tartalmak, amelyek elég csak a HTML támogatására. Tehát folytatjuk a beállításunkat.
Ha meg kell szerveznie a webhely munkáját a protokoll által https, Használja ki a szoftveres útmutatót.
Telepítse a PHP-t a CENTOS 7-ben
A dinamikus tartalom tartalmának támogatása a következő lépés. Telepítés pHP. A CENTOS 7-ben:
# Yum telepítése - php
És a következő néhány hasznosabb alkatrész. Telepítünk népszerű a PHP moduljai.:
# Yum telepítése - PHP-MYSQL PHP-MBSTRING PHP-MCRYPT PHP-DEDEL PHP-XML PHP-GD
Indítsa újra az Apache-t:
# Systemctl újraindítás httpd
Hozzon létre egy fájlt egy virtuális fogadó könyvtárban és ellenőrizze pHP munka:
# Mcedit /web/site1.ru/www/index.php. # Chown Apache. /Web/site1.ru/www/index.php.
A http://site1.ru/index.php címre megyünk
Meg kell látnia a PHP-ről szóló információk kimenetét. Ha valami rossz, vannak hibák, lásd a virtuális fogadó hiba napló, a PHP hibák is ott lesznek.
Hol fekszik php.ini
Telepítés után a kérdés gyakran felmerül, és hol tárolja a PHP beállításokat? Hagyományosan egyetlen beállítási fájlban vannak. A CENTOS-ban. php.ini ries / etc, jobbra a gyökérben. Ott szerkesztheti a globális beállításokat az összes virtuális állomás számára. Az egyes webhelyek személyes beállításait külön lehet elvégezni a virtuális host konfigurációs fájlban, amelyet korábban tettünk. Adjunk hozzá több hasznos beállítást:
# mcedit /etc/httpd/conf.d/site1.ru.conf.
Add hozzá a legegyszerűbb, korábban
Php_admin_value dátum.TimeZone "Europe / Moszkva" php_admin_value max_execution_time 60 php_admin_value upload_max_filesize 30m
A beállítások alkalmazásához az Apache újraindításához szükséges. Most a PHPINFO kimeneten látható a beállítások módosítása.
Frissítés a PHP 5.6-ra a Centos 7-ben
Példánkban telepítettük a 7-et pHP 5.4. A szabványos tárolóból. És mi van, ha újabb verzióra van szükségünk, például pHP 5.6.? Ebben az esetben végre kell hajtania frissítse a PHP-t..
# wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm # rpm -vh remi-release-7 * .rpm
Most frissítse a PHP 5.4-et a PHP-re 5.6:
# Yum --enablerepo \u003d remi, remi-php56 telepítése PHP PHP-Common PHP-MYSQL PHP-MBBSTRING PHP-MCRYPT PHP-DEDEL PHP-XML PHP-GD
Indítsa újra az Apache:
# Systemctl újraindítás httpd
És megnézzük a PHPINFO - http://site1.ru/index.php http://site1.ru/index.php
Kiváló, frissítettünk PHP-t az 5.6-os verzióra.
MySQL telepítése Centos 7-ben
Ahogy már korábban írtam, a MySQL villa egyre inkább elosztásra kerül - mariadb.. Teljes kompatibilitással rendelkezik a MySQL-vel, így biztonságosan használható. Szeretném használni.
Telepítse a Mariadb-t. A CENTOS 7:
# Yum telepítése - Mariadb Mariadb-kiszolgáló
Adunk Mariadb-t az Autorun-hoz:
# Systemctl engedélyezze mariadb.service
Futtassa Mariadb:
# Systemctl Start Mariadb
Ellenőrzés, indítás vagy nem:
# Netstat -tulnp | Grep mysqld tcp 0 0 0.0.0.0:3306 0.0.0.0:* hallgatni 22276 / mysqld
Kérjük, vegye figyelembe, hogy a rendszerben a MySQLD szolgáltatásként is megjelenik. Most indítsa el a Standard Security Setup Script parancsot:
# / usr / bin / mysql_secure_installation
Nem adom meg a forgatókönyv teljes kimenetét, minden nagyon egyszerű és érthető. Először is megadja a gyökér jelszót (aktuális jelszó az üres telepítés után), majd törölje az anonim felhasználókat, kapcsolja ki a root távoli csatlakoztatási képességét, törölje a tesztfelhasználót és az adatbázist.
Fájl beállítások Mysql / mariadb fekszik /etc/my.cnf.. Normál működés esetén elegendő alapértelmezett beállítás van. De ha úgy dönt, hogy megváltoztatja őket, ne felejtse el újraindítani az adatbázis szolgáltatást.
A Mariadb újraindítása./ Mysql a Centos 7-ben:
# Systemctl újraindítása mariadb
Ez minden. A 7 Centos 7 webszerver alapfunkciója konfigurálva van.
Örülök, hogy megjegyzéseket és megjegyzéseket teszek a cikk témájáról. Emlékeztetem arra, hogy ez a cikk része a szerverről szóló cikk egyetlen ciklusának.
Workshop a Kali Linuxon
A kurzus azok számára, akik érdeklődnek a tesztek lebonyolítására, hogy behatoljanak és gyakorlatilag megpróbálják megvalósítani magukat az igazi helyzetekben. A tanfolyamot azoknak tervezték, akiknek nincs tapasztalata információ biztonság. A képzés hetente 3 hónapig tart. Mi ad neked ezt a kurzust:- Keressen és működtesse sebezhetőségeket vagy hibás konfigurációkat a vállalati hálózatokban, webhelyeken, szervereken. Fókuszban a Windows Pensress és a vállalati szegmens biztonságára.
- Tanulmányok olyan eszközök, mint a metasploit, az SQLMAP, Wireshark, Burp Suite és még sok más.
- A Kali Linux eszközkészlet fejlesztése a gyakorlatban - az IB-ben bármilyen szakembernek kell lennie.
A 9. Debian változatából kiindulva a népszerű MySQL adatbáziskezelő rendszert Mariadb váltotta fel. Ez a DBMS a MySQL fióktelepe, amelyet a kezdeti fejlesztők hoztak létre, akik boldogtalanok voltak engedélyezett politikák Az Oracle és a félelem, hogy a mysql zártabb termékké válhat. MariaDB teljesen kompatibilis a MySQL, ami azt jelenti, hogy a csere lesz a lehető legátláthatóbb és minden alkalmazást, amely dolgozott MySQL is működik MariaDB. És megvizsgáljuk az átmenet egyes jellemzőit.
Először is, mondjuk, hogy minden csapat, utasítás, szkript stb. stb. Ami korábban a MySQL-vel dolgozott a MariadB-vel is, nem kell változtatni, és sok felhasználó egyszerűen nem veszi észre, hogy egy másik DBMS-vel dolgoznak.
De vannak különbségek is, elsősorban a biztonságra vonatkoznak, és a Debian csapat készítette. Az egyik fő különbség az, hogy Mariadb része a Debiannak 9 a telepítés során nem kér egy root jelszót. Ezt követően a felhasználó néhány zavartságban marad, és mit kell tennie a következő? Olajok a tűz öntött az a tény, hogy a legtöbb utasítások az interneten is figyelembe véve a MySQL kezelése pusztán keresztül phpMyAdmin vezérlőpulton és ne kelljen munka készségek a parancssorba a felhasználók a különösen tehetetlen állapotban.
"A gyökér jelszó telepítése MariadB-ben"A különböző változatokban az egyik népszerű keresési lekérdezésekehhez a DBMS-hez kapcsolódik. De nem vágjuk le a vállról, és először foglalkozunk a Debian fejlesztőkkel és miért.
A MySQL legnagyobb biztonsági problémája az, hogy az adatbázis-hozzáférési hitelesítő adatokat a webes alkalmazások konfigurációs fájljai tárolják a nyílt szövegben. Figyelembe véve azt a tényt, hogy sok felhasználó nem zavarja, és a gyökér superuser összes adatbázisának tulajdonosa - a probléma nagyon komoly lesz. És ha figyelembe vesszük, hogy a hozzáférést az internetes alkalmazások fájlok meglehetősen széles személyek, beleértve nem csak a munkavállalók, hanem a szabadúszók -, akkor teljesen rossz.
Ezért a Debian a gyökér rendszergazda, MariaDB hitelesítést keresztül UNIX socket, és azt végrehajtani oly módon, hogy korlátlan hozzáférést MariaDB csak kap egy superfolder rendszer, és csak parancssoros módban. A biztonság szempontjából nagyon helyes, mivel most már a harmadik féltől származó felhasználók és webes alkalmazások nem tudnak hozzáférni a gyökérjogokhoz, még akkor is, ha valahogy megtanulják a jelszót.
Mindez jó, de mit kell tennie a szokásos felhasználót, aki a Mariadb-t a szerverére helyezi, és azt akarja önteni a webhely bázis-dumpra? Először is van egy felhasználó, még nem is. Ehhez emelje meg jogait a rendszerben a SU vagy SUDO-n keresztül, és hajtsa végre a parancsot:
Mysql -u gyökér.
Ezt követően megtalálja magát a Mariadb parancssorban. Annak érdekében, hogy új felhasználót hozzon létre a parancs végrehajtásához:
Felhasználó létrehozása "Andrey" @ "localhost" által azonosított "Jelszó";Példánkban létrehoztunk egy felhasználót andrey jelszóval jelszó..
Most kijelöljük őt. Először is, világosan meghozzuk a jogokat más emberek bázisokhoz:
grant Használat *. * A "Andrey" @ "localhost";És teljes jogot adok az adatbázisban az Andrey_Basename sablonnal, ez a megközelítés automatikusan megadja a jogokat minden új alaphoz, amelyet a felhasználó létrehoz.
adjon meg minden kiváltságot az `Andrey \\ _%`. * "Andrey" @ "localhost";Ne feledje, hogy a sablont szimbólumokkal csomagolják gravis (`)amely az orosz betűvel az E.
Csak a kiváltságok újraindítása és a MariadB konzolból való kilépés.
Flush kiváltságok;kilépés;
Ezt követően visszatérhet az ismerős eszközökhöz a MySQL / Mariadb használatához, például PHPMYADmin:
vegye figyelembe, hogy ez a módszerEllentétben az elterjedt ajánlásokat tartalmazza gyökeret MariaDB, lehetővé teszi, hogy fenntartsák a fokozott biztonság a rendszer, ami azért fontos, ha a hozzáférés akkor azt harmadik fél számára. Azt is javasoljuk, hogy az összes adatbázisot egy felhasználó alatt tartsuk, ideális esetben egy webhely (vagy más alkalmazás) - egy felhasználó, ez lehetővé teszi extra költség Idő és erőfeszítés a jelszó megváltoztatására a kompromisszum vagy annak potenciális lehetősége esetén (mondjuk, hogy vonzódott a szabadúszó helyszínen).
Mariadb telepítés a fejlesztői tárolóból
A Debian operációs rendszernek számos előnye van, az egyikük, amelyre a legvalószínűbb, hogy a stabilitás. Állítsa be és elfelejtette - ez csak róla van, de a megközelítés forgó oldala a konzervativizmus, sok csomag nem így van friss változatokMilyen néha szeretném. Jelenleg a Mariadb 10.1 a Debian 9-el jön, míg az aktuális verziók 10,2 és 10.3.
Tehát ha szüksége van néhány új Mariadb funkcióra, vagy csak a legújabb használni szeretné stabil változatok Szoftver, a Mariadb-t közvetlenül telepítheti a fejlesztői tárolóból. Ez könnyű, de a potenciálisan veszélyes cselekvés előtt meg kell tennie a szerver teljes biztonsági mentését.
Ehhez futtassa a következő parancsot a szerverkonzolban Superuserrel:
Mysqldump -u gyökér-alap-adatbázisok\u003e ~ / my_backup.sql
Ez a parancs megmenti az összes Mariadb adatbázisot, beleértve a szolgáltatást, a fájlt my_backup.sql. A könyvtárakban / gyökér. És ha valami rosszul megy, akkor mindig visszaállíthatja a szerver állapotát a másolat létrehozásának időpontjában.
A hivatalos weboldal különleges oldalán telepítési utasításokat kaphat.
Nagyon kényelmes: kiválasztja a terjesztését, annak felszabadulását, a DBMS verzióját és a tükör - utána, amely után megkapja a kész utasításokat a telepítéshez. Az idő megmentéséhez itt adjuk meg (telepítjük a Mariadb 10.3-at a Debian 9):
APT-get telepítése szoftver-tulajdonok-common dirmngr
aPT-kulcs ADV --RECV-kulcsok - kulcskulcskulcsok
add-apt-repository "det http://mirror.phi.ru/mariadb/repo/10.3/debian Stretch Main"
Tehát, hogy megérti, hogy röviden megjegyzi ezeket a parancsokat. Az első közülük hozzáadja a szükséges függőségeket a rendszer, a második csoport a gombot, amelyhez a csomagokat, és a harmadik bejelentkezett, végül azt is hozzáfűzi, hogy a tároló is.
Most frissítse a csomagok listáját:
Apt-get frissítés
És telepítse a Mariadb új verzióját:
APT-Get Install MARIADB-SERVER
Kérjük, vegye figyelembe, hogy a Batch Manager helyesen eltávolítja előző verzió és hozzon létre egy újat, minden adatbázis folytatódik, és továbbra is működik Új verzió Mariadb.
A második pont, amikor a Mariadb-t a fejlesztőkről telepíti, a telepítő megkéri, hogy állítsa be a root jelszót, mint ebben a verzióban, a hitelesítés a UNIX aljzaton keresztül nem használható.
Valaki örülhet ez, de ha sikerült megértenie és értékelné a Diah fejlesztők módszerének minden előnyét, ésszerű kérdés: lehetséges, hogy visszatérjen? Tud. Ehhez a felfedezéshez konfigurációs fájl. /etc/mysql/mariadb.conf.d/50-server.cnf. és add hozzá a részhez Vonal:
Plugin-load-add \u003d auth_socket.so
Indítsa újra a DBMS-t:
SERVICE MYSQLD újraindítása.
Próbáljuk meg belépni számla Normál felhasználó:
Annak ellenére, hogy a rendszer megkéri a jelszót, és helyesen javítjuk - még mindig megtagadjuk az USA-hoz való hozzáférést. Megismételjük a PHPMYADMIN-t:
És itt nem lesz sikeres. Kiváló! A DBMS Superuser-jogaival való hozzáférésnek csak egy superuser rendszere van, és nem kell aggódnunk, hogy a gyökér Mariadb jelszó bárki számára ismert.