Biztonságos MariaDB SSL-támogatással az Ubuntu 16.04-en

A MariaDB egy ingyenes nyílt forráskódú adatbázis, és a MySQL legszélesebb körben használt beépülő modulja. A MySQL fejlesztői készítették, és a tervek szerint ingyenes marad a GNU GPL alatt. Nagyon gyors, méretezhető, és olyan funkciók gazdag készletével érkezik, amelyek nagyon sokoldalúvá teszik a legkülönfélébb használati esetekben.

Ez az oktatóanyag végigvezeti Önt, hogyan telepítheti és konfigurálja a MariaDB-t SSL-támogatással az Ubuntu 16.04 rendszeren.

Követelmények

  • Egy friss Ubuntu 16.04 Vultr példány.
  • Nem root felhasználó sudo jogosultságokkal.
  • A kiszolgálópéldányon 192.168.0.190 statikus IP-cím van konfigurálva.
  • A 192.168.0.191 statikus IP-cím van konfigurálva az ügyfélgépen.

1. lépés: Telepítse a MariaDB-t

Alapértelmezés szerint a MariaDB legfrissebb verziója nem érhető el az Ubuntu 16.04 lerakatában; így hozzá kell adnia a MariaDB tárolót a rendszeréhez.

Először töltse le a kulcsot a következő paranccsal:

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

Ezután adja hozzá a MariaDB-tárat a /etc/apt/sources.listfájlhoz:

sudo echo "deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main" >> /etc/apt/sources.list

Frissítse az apt indexet a következő paranccsal:

sudo apt-get update -y

Az apt index frissítése után telepítse a MariaDB szervert a következő paranccsal:

sudo apt-get install mariadb-server -y

Indítsa el a MariaDB szervert, és engedélyezze az indulást a rendszerindításkor:

sudo systemctl start mysql
sudo systemctl enable mysql

Ezután le kell futtatnia a mysql_secure_installationszkriptet a MariaDB telepítésének biztosításához. Ez a szkript lehetővé teszi a root jelszó beállítását, az anonim felhasználók eltávolítását, a távoli root bejelentkezés letiltását és a tesztadatbázis eltávolítását:

sudo mysql_secure_installation

2. lépés: Hozzon létre egy SSL-tanúsítványt és egy privát kulcsot a szerverhez

Először hozzon létre egy könyvtárat az összes kulcs- és tanúsítványfájl tárolására.

sudo mkdir /etc/mysql-ssl

Ezután módosítsa a könyvtárat, /etc/mysql-sslés hozza létre a CA-tanúsítványt és a privát kulcsot a következő paranccsal:

sudo cd /etc/mysql-ssl
sudo openssl genrsa 2048 > ca-key.pem
sudo openssl req -new -x509 -nodes -days 365000 -key ca-key.pem -out ca-cert.pem

Válaszoljon az összes kérdésre az alábbiak szerint:

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:GUJ
Locality Name (eg, city) []:JND
Organization Name (eg, company) [Internet Widgits Pty Ltd]:ENJ
Organizational Unit Name (eg, section) []:SYSTEM
Common Name (e.g. server FQDN or YOUR name) []:HITESH
Email Address []:[email protected]

Ezután hozzon létre egy privát kulcsot a szerverhez a következő paranccsal:

sudo openssl req -newkey rsa:2048 -days 365 -nodes -keyout server-key.pem -out server-req.pem

Válaszoljon az összes kérdésre, ahogy az előző parancsban tette.

Ezután exportálja a kiszolgáló privát kulcsát RSA-típusú kulcsba a következő paranccsal:

sudo sudo openssl rsa -in server-key.pem -out server-key.pem

Végül hozzon létre egy szervertanúsítványt a CA-tanúsítvány használatával az alábbiak szerint:

sudo openssl x509 -req -in server-req.pem -days 365 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

Most már láthatja az összes tanúsítványt és kulcsot a következő paranccsal:

ls

A következő kimenetet kell látnod:

ca-cert.pem  ca-key.pem  server-cert.pem  server-key.pem  server-req.pem

Ha elkészült, folytathatja a következő lépéssel.

3. lépés: Konfigurálja a MariaDB szervert SSL használatára

Rendelkeznie kell az összes tanúsítvánnyal és egy privát kulccsal; és most be kell állítania a MariaDB-t a kulcs és a tanúsítványok használatához. Ezt a /etc/mysql/mariadb.conf.d/50-server.cnffájl szerkesztésével teheti meg :

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

Adja hozzá a következő sorokat a [mysqld]szakaszhoz:

ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/server-cert.pem
ssl-key=/etc/mysql-ssl/server-key.pem

##Change this value to connect the MariaDB server from another host.
bind-address = *

Mentse el a fájlt, majd indítsa újra a MariaDB szolgáltatást a módosítások alkalmazásához:

sudo systemctl restart mysql

Most a következő lekérdezéssel ellenőrizheti, hogy az SSL konfiguráció működik-e vagy sem:

mysql -u root -p
MariaDB [(none)]> SHOW VARIABLES LIKE '%ssl%';

Ha a konfiguráció sikeres volt, a következő kimenetet kell látnia:

+---------------+--------------------------------+
| Variable_name | Value                          |
+---------------+--------------------------------+
| have_openssl  | YES                            |
| have_ssl      | YES                            |
| ssl_ca        | /etc/mysql-ssl/ca-cert.pem     |
| ssl_capath    |                                |
| ssl_cert      | /etc/mysql-ssl/server-cert.pem |
| ssl_cipher    |                                |
| ssl_crl       |                                |
| ssl_crlpath   |                                |
| ssl_key       | /etc/mysql-ssl/server-key.pem  |
+---------------+--------------------------------+

Észre kell vennie, hogy a have_sslés have_opensslértékek engedélyezve vannak a fenti kimenetben.

4. lépés: Hozzon létre egy felhasználót SSL jogosultságokkal

Hozzon létre egy távoli felhasználót, aki jogosult SSL-en keresztül elérni a MariaDB-kiszolgálót. Ezt a következő parancs futtatásával teheti meg:

Először jelentkezzen be a MySQL shellbe:

mysql -u root -p

Ezután hozzon létre felhasználót, remoteés adjon jogosultságot a szerver SSL-en keresztüli elérésére.

MariaDB [(none)]>GRANT ALL PRIVILEGES ON *.* TO 'remote'@'192.168.0.191' IDENTIFIED BY 'password' REQUIRE SSL;

Ezután öblítse ki a jogosultságokat a következő paranccsal:

MariaDB [(none)]>FLUSH PRIVILEGES;

Végül lépjen ki a MySQL shellből a következő paranccsal:

MariaDB [(none)]>exit;

Megjegyzés: A 192.168.0.191 a távoli felhasználói (kliens) gép IP-címe.

A kiszolgáló készen áll a távoli felhasználókkal való kapcsolatok engedélyezésére.

5. lépés: Hozza létre az ügyféltanúsítványt

A szerveroldali konfiguráció kész. Ezután új kulcsot és tanúsítványt kell létrehoznia az ügyfél számára.

A szervergépen hozza létre az ügyfélkulcsot a következő paranccsal:

sudo cd /etc/mysql-ssl
sudo sudo openssl req -newkey rsa:2048 -days 365 -nodes -keyout client-key.pem -out client-req.pem

Ezután dolgozza fel az ügyfél RSA kulcsát a következő paranccsal:

sudo openssl rsa -in client-key.pem -out client-key.pem

Végül írja alá az ügyféltanúsítványt a következő paranccsal:

sudo openssl x509 -req -in client-req.pem -days 365 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem

6. lépés: Konfigurálja a MariaDB-klienst az SSL használatára

Az összes tanúsítvány és a kulcs készen áll az ügyfél számára. Ezután át kell másolnia az összes ügyféltanúsítványt bármely olyan ügyfélgépre, amelyen futtatni kívánja a MariaDB-ügyfelet.

Telepítenie kell a MariaDB klienst az ügyfélgépen.

Először az ügyfélgépen töltse le a MariaDB kulcsát a következő paranccsal:

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

Ezután adja hozzá a MariaDB tárat a /etc/apt/sources.listfájlhoz:

sudo echo "deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main" >> /etc/apt/sources.list

Ezután frissítse az apt indexet a következő paranccsal:

sudo apt-get update -y

Az apt index frissítése után telepítse a MariaDB klienst az ügyfélgépre a következő paranccsal:

sudo apt-get install mariadb-client -y

Most hozzon létre egy könyvtárat az összes tanúsítvány tárolására:

sudo mkdir /etc/mysql-ssl

Ezután másolja át az összes ügyféltanúsítványt a kiszolgáló gépről az ügyfélgépre a következő paranccsal:

sudo scp [email protected]:/etc/mysql-ssl/client-* /etc/mysql-ssl/

Ezután be kell állítania a MariaDB klienst az SSL használatára. Ezt megteheti egy /etc/mysql/mariadb.conf.d/50-mysql-clients.cnffájl létrehozásával :

sudo nano /etc/mysql/mariadb.conf.d/50-mysql-clients.cnf

Adja hozzá a következő sorokat:

[client]
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/client-cert.pem
ssl-key=/etc/mysql-ssl/client-key.pem

Mentse el a fájlt, ha végzett.

7. lépés: Ellenőrizze a távoli kapcsolatokat

Most, hogy minden be van állítva, ideje ellenőrizni, hogy sikeresen tud-e csatlakozni a MariaDB szerverhez vagy sem.

Az ügyfélgépen futtassa a következő parancsot a MariaDB kiszolgálóhoz való csatlakozáshoz:

mysql -u remote -h 192.168.0.190 -p mysql

Meg kell adnia a remotefelhasználói jelszót. A jelszó megadása után bejelentkezik a távoli MariaDB szerverre.

Ellenőrizze a kapcsolat állapotát a következő paranccsal:

MariaDB [mysql]> status

A következő kimenetet kell látnod:

--------------
mysql  Ver 15.1 Distrib 10.2.7-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Connection id:      62
Current database:   mysql
Current user:       [email protected]
SSL:            Cipher in use is DHE-RSA-AES256-SHA
Current pager:      stdout
Using outfile:      ''
Using delimiter:    ;
Server:         MariaDB
Server version:     10.0.31-MariaDB-0ubuntu0.16.04.2 Ubuntu 16.04
Protocol version:   10
Connection:     192.168.0.190 via TCP/IP
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8
Conn.  characterset:    utf8
TCP port:       3306
Uptime:         1 hours 31 min 31 sec

Látnia kell SSL: Cipher in use is DHE-RSA-AES256-SHAa fenti kimenetben. Ez azt jelenti, hogy kapcsolata immár biztonságos az SSL segítségével.

Következtetés

Gratulálunk! Sikeresen konfigurált egy SSL-támogatással rendelkező MariaDB-kiszolgálót. Mostantól hozzáférést biztosíthat más ügyfeleknek a MariaDB-kiszolgáló eléréséhez SSL-en keresztül.


Az InfluxDB telepítése Ubuntu 14-re

Az InfluxDB telepítése Ubuntu 14-re

Bevezetés Az InfluxDB egy nyílt forráskódú, elosztott, idősoros adatbázis, külső függőségek nélkül. Igen, elolvastad a külső függőségek nélkül par

Az Apache Cassandra 3.11.x telepítése Ubuntu 16.04 LTS rendszeren

Az Apache Cassandra 3.11.x telepítése Ubuntu 16.04 LTS rendszeren

Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Más rendszert használ? Bevezetés Az ArangoDB egy nyílt forráskódú NoSQL adatbázis, amely rugalmas adatmodellt kínál dokumentumokhoz, grafikonokhoz és kulcsértékekhez. Ez

A Laravel GitScrum telepítése a CentOS 7 rendszeren

A Laravel GitScrum telepítése a CentOS 7 rendszeren

A Laravel GitScrum vagy a GitScrum egy nyílt forráskódú termelékenységi eszköz, amelynek célja, hogy segítse a fejlesztőcsapatokat a Scrum módszertan hasonló módon történő megvalósításában.

Több MySQL vagy MariaDB adatbázis biztonsági mentése automatikusan

Több MySQL vagy MariaDB adatbázis biztonsági mentése automatikusan

Bevezetés Ebben az írásban részletesen végigvezeti, hogyan készíthet biztonsági másolatot több MySQL vagy MariaDB adatbázisról, amelyek ugyanazon a gépen vannak egy egyedi bash szkript segítségével.

Az OrientDB Community Edition telepítése és konfigurálása CentOS 7 rendszeren

Az OrientDB Community Edition telepítése és konfigurálása CentOS 7 rendszeren

Az OrientDB egy következő generációs többmodellű nyílt forráskódú NoSQL DBMS. Több adatmodell támogatásával az OrientDB több funkcionalitást és rugalmasságot biztosít

A MongoDB biztosítása

A MongoDB biztosítása

A MongoDB alapértelmezés szerint nem biztonságos. Ha telepíti a MongoDB-t és elindítja anélkül, hogy hitelesítésre konfigurálta volna, akkor rossz idő lesz

MySQL adatbázisok biztonsági mentése

MySQL adatbázisok biztonsági mentése

A MySQL a világ legnépszerűbb adatbázis-kezelő szoftvere. Nagyon fontos, hogy legyen biztonsági másolata az adatbázisról. Ez a gyakorlat lehetővé teszi

PostgreSQL-adatbázisok biztonsági mentése és visszaállítása Ubuntu 16.04-en

PostgreSQL-adatbázisok biztonsági mentése és visszaállítása Ubuntu 16.04-en

Bevezetés A PostgreSQL egy ingyenes és nyílt forráskódú adatbázis-kezelő rendszer, amely webhelyekkel kapcsolatos információk tárolására használható. Ismert még a

A PostgreSQL 11.1 telepítése Arch Linuxra

A PostgreSQL 11.1 telepítése Arch Linuxra

Előfeltételek Egy Vultr-szerver, amelyik naprakész Arch Linuxot futtat (lásd ezt a cikket.) Sudo hozzáférés. A rootként futtatandó parancsok előtt # és egy szerepel

Telepítsen magas rendelkezésre állású replikakészletet a MongoDB 3.4-ben Kulcsfájl használatával a hozzáférés-vezérléshez az Ubuntu 16.04-ben

Telepítsen magas rendelkezésre állású replikakészletet a MongoDB 3.4-ben Kulcsfájl használatával a hozzáférés-vezérléshez az Ubuntu 16.04-ben

A MongoDB 2009-es megalakulása óta vezeti a NoSQL-ipart. A MongoDB egyik alapkoncepciója a Replica Set, így mielőtt az i-vel dolgozna

Telepítse a MongoDB újabb verzióit a Debian 7 rendszeren

Telepítse a MongoDB újabb verzióit a Debian 7 rendszeren

A MongoDB egy gyors és hatékony NoSQL adatbázis. A Debian-tárolók azonban lassan frissülnek, és gyakran nagyon régi csomagverziókat tartalmaznak. Ez a tutoria

Állítsa be a Barnyard 2-t Snorttal

Állítsa be a Barnyard 2-t Snorttal

A Barnyard2 egy mód a Snort bináris kimeneteinek MySQL adatbázisba történő tárolására és feldolgozására. Mielőtt elkezdené Kérjük, vegye figyelembe, hogy ha nem horkol

Az Apache Cassandra 3.11.x telepítése Debian 9 rendszeren

Az Apache Cassandra 3.11.x telepítése Debian 9 rendszeren

Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,

Telepítse a RockMongo-t a CentOS 7 rendszeren

Telepítse a RockMongo-t a CentOS 7 rendszeren

A RockMongo egy webalapú MongoDB felügyeleti eszköz, amely hasonló a MySQL Management eszközhöz: phpMyAdmin. Ez az oktatóanyag a telepítés folyamatát ismerteti

Telepítse az InfluxDB-t Debian Jessie-re a Telegraf segítségével

Telepítse az InfluxDB-t Debian Jessie-re a Telegraf segítségével

Bevezetés Az InfluxDB egy Go nyelven írt idősor alapú adatbázis. Az InfluxDB-nek számos gyakorlati felhasználása van, amelyek közül az egyik a megfigyelési adatok szervereken való tárolása. én

Biztonságos MariaDB SSL-támogatással az Ubuntu 16.04-en

Biztonságos MariaDB SSL-támogatással az Ubuntu 16.04-en

A MariaDB egy ingyenes nyílt forráskódú adatbázis, és a MySQL legszélesebb körben használt beépülő modulja. A MySQL fejlesztői készítették, és a továbbfejlesztésre szánták

A phpRedisAdmin telepítése CentOS 7 rendszeren

A phpRedisAdmin telepítése CentOS 7 rendszeren

A phpRedisAdmin egy webalkalmazás, amely intuitív grafikus felhasználói felülettel kezeli a Redis adatbázisokat. Ez az oktatóanyag elmagyarázza, hogyan kell telepíteni

Az ArangoDB telepítése és használata Ubuntu 16.04-en

Az ArangoDB telepítése és használata Ubuntu 16.04-en

Más rendszert használ? Bevezetés Az ArangoDB egy nyílt forráskódú NoSQL adatbázis, amely rugalmas adatmodellt kínál dokumentumokhoz, grafikonokhoz és kulcsértékekhez. Ez

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket