Sigurno MariaDB sa podrškom za SSL na Ubuntu 16.04

MariaDB je besplatna baza podataka otvorenog koda i najraširenija je zamjena za MySQL. Napravljen je od strane programera MySQL-a i namijenjen je da ostane besplatan pod GNU GPL-om. Vrlo je brz, skalabilan i dolazi s bogatim skupom značajki koje ga čine vrlo svestranim za širok raspon slučajeva korištenja.

Ovaj vodič će vas provesti kroz kako instalirati i konfigurirati MariaDB s podrškom za SSL na Ubuntu 16.04.

Zahtjevi

  • Svježa instanca Ubuntu 16.04 Vultr.
  • Ne-root korisnik sa sudo privilegijama.
  • Statička IP adresa 192.168.0.190 konfigurirana je na instanci poslužitelja.
  • Na klijentskom stroju konfigurirana je statička IP adresa 192.168.0.191.

Korak 1: Instalirajte MariaDB

Prema zadanim postavkama, najnovija verzija MariaDB-a nije dostupna u Ubuntu 16.04 spremištu; tako da ćete morati svom sustavu dodati spremište MariaDB.

Prvo preuzmite ključ sljedećom naredbom:

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

Zatim dodajte MariaDB spremište u /etc/apt/sources.listdatoteku:

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

Ažurirajte apt indeks sljedećom naredbom:

sudo apt-get update -y

Nakon što je apt indeks ažuriran, instalirajte MariaDB poslužitelj sljedećom naredbom:

sudo apt-get install mariadb-server -y

Pokrenite MariaDB poslužitelj i omogućite mu pokretanje prilikom pokretanja:

sudo systemctl start mysql
sudo systemctl enable mysql

Zatim ćete morati pokrenuti mysql_secure_installationskriptu za sigurnu instalaciju MariaDB-a. Ova skripta vam omogućuje da postavite root lozinku, uklonite anonimne korisnike, zabranite udaljenu root prijavu i uklonite testnu bazu podataka:

sudo mysql_secure_installation

Korak 2: Napravite SSL certifikat i privatni ključ za poslužitelj

Prvo stvorite direktorij za pohranu svih datoteka ključeva i certifikata.

sudo mkdir /etc/mysql-ssl

Zatim promijenite imenik u /etc/mysql-ssli stvorite CA certifikat i privatni ključ sljedećom naredbom:

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

Odgovorite na sva pitanja kao što je prikazano u nastavku:

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]

Zatim stvorite privatni ključ za poslužitelj sa sljedećom naredbom:

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

Odgovorite na sva pitanja kao u prethodnoj naredbi.

Zatim izvezite privatni ključ poslužitelja u ključ tipa RSA sljedećom naredbom:

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

Konačno, generirajte certifikat poslužitelja koristeći CA certifikat na sljedeći način:

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

Sada možete vidjeti sve certifikate i ključ sljedećom naredbom:

ls

Trebali biste vidjeti sljedeći izlaz:

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

Kada završite, možete nastaviti na sljedeći korak.

Korak 3: Konfigurirajte MariaDB poslužitelj da koristi SSL

Trebali biste imati sve certifikate i privatni ključ; a sada ćete morati konfigurirati MariaDB za korištenje ključa i certifikata. To možete učiniti uređivanjem /etc/mysql/mariadb.conf.d/50-server.cnfdatoteke:

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

Dodajte sljedeće retke ispod [mysqld]odjeljka:

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 = *

Spremite datoteku, a zatim ponovno pokrenite uslugu MariaDB da biste primijenili ove promjene:

sudo systemctl restart mysql

Sada možete provjeriti radi li konfiguracija SSL-a ili ne pomoću sljedećeg upita:

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

Ako je konfiguracija bila uspješna, trebali biste vidjeti sljedeći izlaz:

+---------------+--------------------------------+
| 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  |
+---------------+--------------------------------+

Trebali bi primijetiti have_ssli have_opensslvrijednosti su omogućene u gore izlaz.

Korak 4: Stvorite korisnika sa SSL privilegijama

Stvorite udaljenog korisnika koji ima privilegiju za pristup MariaDB poslužitelju preko SSL-a. Učinite to pokretanjem sljedeće naredbe:

Prvo se prijavite na MySQL ljusku:

mysql -u root -p

Zatim stvorite korisnika remotei dodijelite privilegiju za pristup poslužitelju putem SSL-a.

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

Zatim ispraznite privilegije sljedećom naredbom:

MariaDB [(none)]>FLUSH PRIVILEGES;

Na kraju izađite iz MySQL ljuske sljedećom naredbom:

MariaDB [(none)]>exit;

Napomena: 192.168.0.191 je IP adresa stroja udaljenog korisnika (klijenta).

Vaš poslužitelj je sada spreman za dopuštanje povezivanja udaljenom korisniku.

Korak 5: Izradite certifikat klijenta

Konfiguracija na strani poslužitelja je dovršena. Zatim ćete morati stvoriti novi ključ i certifikat za klijenta.

Na poslužiteljskom stroju kreirajte klijentski ključ sa sljedećom naredbom:

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

Zatim obradite klijentski RSA ključ sljedećom naredbom:

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

Na kraju potpišite certifikat klijenta sljedećom naredbom:

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

Korak 6: Konfigurirajte MariaDB klijenta za korištenje SSL-a

Svi certifikati i ključ su spremni za klijenta. Zatim ćete morati kopirati sve klijentske certifikate na bilo koji klijentski stroj na kojem želite pokrenuti MariaDB klijenta.

Morat ćete instalirati MariaDB klijenta na klijentski stroj.

Prvo, na klijentskom stroju preuzmite ključ za MariaDB sa sljedećom naredbom:

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

Zatim dodajte MariaDB spremište u /etc/apt/sources.listdatoteku:

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

Zatim ažurirajte apt indeks sljedećom naredbom:

sudo apt-get update -y

Nakon što se apt indeks ažurira, instalirajte MariaDB klijenta na klijentski stroj sljedećom naredbom:

sudo apt-get install mariadb-client -y

Sada stvorite direktorij za pohranu svih certifikata:

sudo mkdir /etc/mysql-ssl

Zatim kopirajte sve klijentske certifikate sa poslužiteljskog stroja na klijentski stroj sljedećom naredbom:

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

Zatim ćete morati konfigurirati MariaDB klijenta da koristi SSL. To možete učiniti stvaranjem /etc/mysql/mariadb.conf.d/50-mysql-clients.cnfdatoteke:

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

Dodajte sljedeće retke:

[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

Spremite datoteku kada završite.

Korak 7: Provjerite udaljene veze

Sada kada je sve konfigurirano, vrijeme je da provjerite možete li se uspješno spojiti na MariaDB poslužitelj ili ne.

Na klijentskom stroju pokrenite sljedeću naredbu za povezivanje s MariaDB poslužiteljem:

mysql -u remote -h 192.168.0.190 -p mysql

Od vas će se tražiti da unesete remotekorisničku lozinku. Nakon davanja lozinke, bit ćete prijavljeni na udaljeni MariaDB poslužitelj.

Provjerite status veze sljedećom naredbom:

MariaDB [mysql]> status

Trebali biste vidjeti sljedeći izlaz:

--------------
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

Trebali biste vidjeti SSL: Cipher in use is DHE-RSA-AES256-SHAu gornjem izlazu. To znači da je vaša veza sada sigurna sa SSL-om.

Zaključak

Čestitamo! Uspješno ste konfigurirali MariaDB poslužitelj s podrškom za SSL. Sada možete dodijeliti pristup drugim klijentima za pristup MariaDB poslužitelju putem SSL-a.


Instalacija InfluxDB na Ubuntu 14

Instalacija InfluxDB na Ubuntu 14

Uvod InfluxDB je open-source, distribuirana baza podataka vremenskih serija bez vanjskih ovisnosti. Da, pročitali ste paragraf bez vanjskih ovisnosti

Kako instalirati Apache Cassandra 3.11.x na CentOS 7

Kako instalirati Apache Cassandra 3.11.x na CentOS 7

Korištenje drugog sustava? Apache Cassandra je besplatni i otvorenog koda NoSQL sustav upravljanja bazom podataka koji je osmišljen kako bi osigurao skalabilnost, visoku

Kako instalirati i konfigurirati ArangoDB na CentOS 7

Kako instalirati i konfigurirati ArangoDB na CentOS 7

Korištenje drugog sustava? Uvod ArangoDB je NoSQL baza podataka otvorenog koda s fleksibilnim modelom podataka za dokumente, grafikone i ključ-vrijednosti. to je

Kako instalirati Laravel GitScrum na CentOS 7

Kako instalirati Laravel GitScrum na CentOS 7

Laravel GitScrum ili GitScrum je alat za produktivnost otvorenog koda dizajniran da pomogne razvojnim timovima da implementiraju Scrum metodologiju na sličan način.

Automatski sigurnosno kopirajte više MySQL ili MariaDB baza podataka

Automatski sigurnosno kopirajte više MySQL ili MariaDB baza podataka

Uvod U ovom tekstu dobro prođite kroz kako napraviti sigurnosnu kopiju više MySQL ili MariaDB baza podataka koje se nalaze na istom stroju koristeći prilagođenu bash skriptu

Kako instalirati i konfigurirati OrientDB Community Edition na CentOS 7

Kako instalirati i konfigurirati OrientDB Community Edition na CentOS 7

OrientDB je sljedeća generacija multimodela otvorenog koda NoSQL DBMS. Uz podršku za više modela podataka, OrientDB može pružiti više funkcionalnosti i fleksibilnosti

Osiguravanje MongoDB-a

Osiguravanje MongoDB-a

MongoDB prema zadanim postavkama nije siguran. Ako instalirate MongoDB i pokrećete ga bez konfiguriranja za autentifikaciju, imat ćete loše vrijeme

Sigurnosno kopiranje MySQL baza podataka

Sigurnosno kopiranje MySQL baza podataka

MySQL je najpopularniji softver na svijetu koji se koristi za baze podataka. Vrlo je važno osigurati da imate sigurnosne kopije vaše baze podataka. Ova praksa dopušta

Kako napraviti sigurnosnu kopiju i vratiti PostgreSQL baze podataka na Ubuntu 16.04

Kako napraviti sigurnosnu kopiju i vratiti PostgreSQL baze podataka na Ubuntu 16.04

Uvod PostgreSQL je besplatan sustav za upravljanje bazom podataka otvorenog koda koji se može koristiti za pohranjivanje informacija vezanih za web stranice. Također je poznato a

Kako instalirati PostgreSQL 11.1 na Arch Linux

Kako instalirati PostgreSQL 11.1 na Arch Linux

Preduvjeti Vultr poslužitelj koji radi s najnovijim Arch Linuxom (pogledajte ovaj članak.) Sudo pristup. Naredbe koje se trebaju izvoditi kao root imaju prefiks # i jedan

Postavite skup replika s visokom dostupnošću u MongoDB 3.4 koristeći ključnu datoteku za kontrolu pristupa na Ubuntu 16.04

Postavite skup replika s visokom dostupnošću u MongoDB 3.4 koristeći ključnu datoteku za kontrolu pristupa na Ubuntu 16.04

Od svoje koncepcije 2009. MongoDB je vodeći u NoSQL industriji. Jedan od temeljnih koncepata MongoDB-a je skup replika, tako da prije rada s i

Instalirajte novije verzije MongoDB-a na Debian 7

Instalirajte novije verzije MongoDB-a na Debian 7

MongoDB je brza i moćna NoSQL baza podataka. Međutim, Debian spremišta se ažuriraju sporo i često sadrže vrlo stare verzije paketa. Ovaj tutorijal

Postavite Barnyard 2 sa Snort

Postavite Barnyard 2 sa Snort

Barnyard2 je način za pohranu i obradu binarnih izlaza iz Snort-a u MySQL bazu podataka. Prije nego počnemo Imajte na umu da ako nemate hrkanje

Instalirajte RockMongo na CentOS 7

Instalirajte RockMongo na CentOS 7

RockMongo je web-bazirani alat za upravljanje MongoDB koji je sličan MySQL alatu za upravljanje: phpMyAdmin. Ovaj vodič će pokriti proces instalacije

Instalirajte InfluxDB na Debian Jessie s Telegrafom

Instalirajte InfluxDB na Debian Jessie s Telegrafom

Uvod InfluxDB je baza podataka temeljena na vremenskim serijama napisana na Go. InfluxDB ima mnoge praktične namjene, od kojih je jedna pohranjivanje podataka praćenja na poslužiteljima. ja

Sigurno MariaDB sa podrškom za SSL na Ubuntu 16.04

Sigurno MariaDB sa podrškom za SSL na Ubuntu 16.04

MariaDB je besplatna baza podataka otvorenog koda i najraširenija je zamjena za MySQL. Napravljen je od strane programera MySQL-a i namijenjen je daljnjem radu

Kako instalirati phpRedisAdmin na CentOS 7

Kako instalirati phpRedisAdmin na CentOS 7

phpRedisAdmin je web aplikacija koja upravlja Redis bazama podataka s intuitivnim grafičkim korisničkim sučeljem. Ovaj vodič će objasniti kako instalirati

Kako instalirati i koristiti ArangoDB na Ubuntu 16.04

Kako instalirati i koristiti ArangoDB na Ubuntu 16.04

Korištenje drugog sustava? Uvod ArangoDB je NoSQL baza podataka otvorenog koda s fleksibilnim modelom podataka za dokumente, grafikone i ključ-vrijednosti. to je

Započnite sa SQL Serverom 2017 (MS-SQL) na CentOS 7 uz Docker

Započnite sa SQL Serverom 2017 (MS-SQL) na CentOS 7 uz Docker

Preduvjeti Docker engine 1.8+. Najmanje 4 GB prostora na disku. Minimalno 4 GB RAM-a. Korak 1. Instalirajte Docker Da biste instalirali SQL-Server, potrebno je Docker

Konfigurirajte MariaDB na OpenBSD 6

Konfigurirajte MariaDB na OpenBSD 6

U ovom članku ću vam pokazati kako instalirati MariaDB na OpenBSD 6 i konfigurirati ga da bude dostupan chrooted web poslužitelju (Apache ili Nginx). Vi ćete als

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više