Apsaugokite MariaDB su SSL palaikymu Ubuntu 16.04

MariaDB yra nemokama atvirojo kodo duomenų bazė ir yra plačiausiai naudojamas „MySQL“ pakaitalas. Jį sukūrė „MySQL“ kūrėjai ir ketinama likti nemokama pagal GNU GPL. Jis yra labai greitas, keičiamo dydžio ir turi daugybę funkcijų, todėl jis yra labai universalus įvairiems naudojimo atvejams.

Šioje pamokoje sužinosite, kaip įdiegti ir konfigūruoti MariaDB su SSL palaikymu Ubuntu 16.04.

Reikalavimai

  • Naujas Ubuntu 16.04 Vultr egzempliorius.
  • Ne root vartotojas, turintis sudo privilegijas.
  • Serverio egzemplioriuje sukonfigūruotas statinis IP adresas 192.168.0.190.
  • Kliento įrenginyje sukonfigūruotas statinis IP adresas 192.168.0.191.

1 veiksmas: įdiekite MariaDB

Pagal numatytuosius nustatymus naujausia MariaDB versija nepasiekiama Ubuntu 16.04 saugykloje; todėl prie sistemos turėsite pridėti MariaDB saugyklą.

Pirmiausia atsisiųskite raktą naudodami šią komandą:

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

Tada prie /etc/apt/sources.listfailo pridėkite MariaDB saugyklą :

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

Atnaujinkite apt indeksą naudodami šią komandą:

sudo apt-get update -y

Kai apt indeksas bus atnaujintas, įdiekite MariaDB serverį naudodami šią komandą:

sudo apt-get install mariadb-server -y

Paleiskite MariaDB serverį ir įgalinkite jį paleisti įkrovos metu:

sudo systemctl start mysql
sudo systemctl enable mysql

Tada turėsite paleisti mysql_secure_installationscenarijų, kad apsaugotumėte MariaDB diegimą. Šis scenarijus leidžia nustatyti pagrindinį slaptažodį, pašalinti anoniminius vartotojus, neleisti nuotolinio root prisijungimo ir pašalinti bandomąją duomenų bazę:

sudo mysql_secure_installation

2 veiksmas: sukurkite SSL sertifikatą ir privatų serverio raktą

Pirmiausia sukurkite katalogą, kuriame būtų saugomi visi raktų ir sertifikatų failai.

sudo mkdir /etc/mysql-ssl

Tada pakeiskite katalogą į /etc/mysql-sslir sukurkite CA sertifikatą bei privatųjį raktą naudodami šią komandą:

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

Atsakykite į visus klausimus, kaip parodyta žemiau:

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]

Tada sukurkite privatų serverio raktą naudodami šią komandą:

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

Atsakykite į visus klausimus, kaip ir ankstesnėje komandoje.

Tada eksportuokite serverio privatų raktą į RSA tipo raktą naudodami šią komandą:

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

Galiausiai sugeneruokite serverio sertifikatą naudodami CA sertifikatą taip:

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

Dabar galite pamatyti visus sertifikatus ir raktą naudodami šią komandą:

ls

Turėtumėte pamatyti šią išvestį:

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

Baigę galite pereiti prie kito veiksmo.

3 veiksmas: sukonfigūruokite MariaDB serverį, kad galėtumėte naudoti SSL

Turėtumėte turėti visus sertifikatus ir privatų raktą; ir dabar turėsite sukonfigūruoti MariaDB, kad galėtumėte naudoti raktą ir sertifikatus. Tai galite padaryti redaguodami /etc/mysql/mariadb.conf.d/50-server.cnffailą:

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

Po [mysqld]skyriumi pridėkite šias eilutes :

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

Išsaugokite failą, tada iš naujo paleiskite „MariaDB“ paslaugą, kad pritaikytumėte šiuos pakeitimus:

sudo systemctl restart mysql

Dabar galite patikrinti, ar SSL konfigūracija veikia, ar ne, naudodami šią užklausą:

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

Jei konfigūracija buvo sėkminga, turėtumėte pamatyti šią išvestį:

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

Turėtumėte pastebėti, kad have_sslir have_opensslreikšmės yra įjungtos aukščiau pateiktame išvestyje.

4 veiksmas: sukurkite vartotoją su SSL privilegijomis

Sukurkite nuotolinį vartotoją, turintį teisę pasiekti MariaDB serverį per SSL. Atlikite tai vykdydami šią komandą:

Pirmiausia prisijunkite prie MySQL apvalkalo:

mysql -u root -p

Tada sukurkite vartotoją remoteir suteikite prieigą prie serverio per SSL.

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

Tada praplaukite teises naudodami šią komandą:

MariaDB [(none)]>FLUSH PRIVILEGES;

Galiausiai išeikite iš MySQL apvalkalo naudodami šią komandą:

MariaDB [(none)]>exit;

Pastaba: 192.168.0.191 yra nuotolinio vartotojo (kliento) įrenginio IP adresas.

Jūsų serveris dabar paruoštas leisti prisijungti prie nuotolinio vartotojo.

5 veiksmas: sukurkite kliento sertifikatą

Jūsų serverio pusės konfigūracija baigta. Tada turėsite sukurti naują kliento raktą ir sertifikatą.

Serverio įrenginyje sukurkite kliento raktą naudodami šią komandą:

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

Tada apdorokite kliento RSA raktą naudodami šią komandą:

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

Galiausiai pasirašykite kliento sertifikatą naudodami šią komandą:

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 veiksmas: sukonfigūruokite „MariaDB“ klientą naudoti SSL

Visi sertifikatai ir raktas yra paruošti klientui. Tada turėsite nukopijuoti visus kliento sertifikatus į bet kurį kliento įrenginį, kuriame norite paleisti MariaDB klientą.

Kliento kompiuteryje turėsite įdiegti „MariaDB“ klientą.

Pirmiausia kliento kompiuteryje atsisiųskite MariaDB raktą naudodami šią komandą:

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

Tada pridėkite MariaDB saugyklą prie /etc/apt/sources.listfailo:

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

Tada atnaujinkite apt indeksą naudodami šią komandą:

sudo apt-get update -y

Kai apt indeksas bus atnaujintas, įdiekite MariaDB klientą kliento kompiuteryje naudodami šią komandą:

sudo apt-get install mariadb-client -y

Dabar sukurkite katalogą, kuriame saugomi visi sertifikatai:

sudo mkdir /etc/mysql-ssl

Tada nukopijuokite visus kliento sertifikatus iš serverio įrenginio į kliento įrenginį naudodami šią komandą:

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

Tada turėsite sukonfigūruoti MariaDB klientą, kad jis naudotų SSL. Tai galite padaryti sukurdami /etc/mysql/mariadb.conf.d/50-mysql-clients.cnffailą:

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

Pridėkite šias eilutes:

[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

Baigę išsaugokite failą.

7 veiksmas: patikrinkite nuotolinius ryšius

Dabar, kai viskas sukonfigūruota, laikas patikrinti, ar galite sėkmingai prisijungti prie MariaDB serverio, ar ne.

Kliento kompiuteryje paleiskite šią komandą, kad prisijungtumėte prie MariaDB serverio:

mysql -u remote -h 192.168.0.190 -p mysql

Jūsų bus paprašyta įvesti remotevartotojo slaptažodį. Įvedę slaptažodį, būsite prisijungę prie nuotolinio MariaDB serverio.

Patikrinkite ryšio būseną naudodami šią komandą:

MariaDB [mysql]> status

Turėtumėte pamatyti šią išvestį:

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

Turėtumėte pamatyti SSL: Cipher in use is DHE-RSA-AES256-SHAaukščiau pateiktoje išvestyje. Tai reiškia, kad jūsų ryšys dabar yra saugus naudojant SSL.

Išvada

Sveikiname! Sėkmingai sukonfigūravote MariaDB serverį su SSL palaikymu. Dabar galite suteikti prieigą kitiems klientams pasiekti MariaDB serverį per SSL.


InfluxDB diegimas Ubuntu 14

InfluxDB diegimas Ubuntu 14

Įvadas InfluxDB yra atvirojo kodo, paskirstyta laiko eilučių duomenų bazė be jokių išorinių priklausomybių. Taip, jūs perskaitėte išorinių priklausomybių par

Kaip įdiegti Apache Cassandra 3.11.x Ubuntu 16.04 LTS

Kaip įdiegti Apache Cassandra 3.11.x Ubuntu 16.04 LTS

Naudojate kitą sistemą? Apache Cassandra yra nemokama ir atviro kodo NoSQL duomenų bazių valdymo sistema, skirta užtikrinti mastelio keitimą, hig.

Kaip įdiegti „Apache Cassandra 3.11.x“ „CentOS 7“.

Kaip įdiegti „Apache Cassandra 3.11.x“ „CentOS 7“.

Naudojate kitą sistemą? Apache Cassandra yra nemokama ir atviro kodo NoSQL duomenų bazių valdymo sistema, skirta užtikrinti mastelio keitimą, hig.

Kaip įdiegti ir konfigūruoti „ArangoDB“ „CentOS 7“.

Kaip įdiegti ir konfigūruoti „ArangoDB“ „CentOS 7“.

Naudojate kitą sistemą? Įvadas ArangoDB yra atvirojo kodo NoSQL duomenų bazė su lanksčiu duomenų modeliu dokumentams, grafikams ir raktų reikšmėms. tai yra

Kaip įdiegti „Laravel GitScrum“ „CentOS 7“.

Kaip įdiegti „Laravel GitScrum“ „CentOS 7“.

Laravel GitScrum arba GitScrum yra atvirojo kodo produktyvumo įrankis, skirtas padėti kūrimo komandoms įgyvendinti Scrum metodiką panašiai

Automatiškai kurkite atsargines kelių MySQL arba MariaDB duomenų bazes

Automatiškai kurkite atsargines kelių MySQL arba MariaDB duomenų bazes

Įvadas Šiame rašte gerai apžvelkite, kaip sukurti kelių MySQL arba MariaDB duomenų bazių, esančių tame pačiame kompiuteryje, atsargines kopijas naudojant pasirinktinį bash scenarijų.

Kaip įdiegti ir konfigūruoti „OrientDB“ bendruomenės leidimą „CentOS 7“.

Kaip įdiegti ir konfigūruoti „OrientDB“ bendruomenės leidimą „CentOS 7“.

OrientDB yra naujos kartos kelių modelių atvirojo kodo NoSQL DBVS. Palaikydamas kelis duomenų modelius, „OrientDB“ gali suteikti daugiau funkcionalumo ir lankstumo

„MongoDB“ apsauga

„MongoDB“ apsauga

„MongoDB“ nėra saugus pagal numatytuosius nustatymus. Jei diegiate MongoDB ir paleidžiate jį nesukonfigūravę autentifikavimui, jums bus blogai

MySQL duomenų bazių atsarginių kopijų kūrimas

MySQL duomenų bazių atsarginių kopijų kūrimas

MySQL yra populiariausia programinė įranga pasaulyje, naudojama duomenų bazėms. Labai svarbu įsitikinti, kad turite atsargines duomenų bazės kopijas. Ši praktika leidžia

Kaip sukurti atsarginę kopiją ir atkurti PostgreSQL duomenų bazes Ubuntu 16.04

Kaip sukurti atsarginę kopiją ir atkurti PostgreSQL duomenų bazes Ubuntu 16.04

Įvadas PostgreSQL yra nemokama atvirojo kodo duomenų bazių valdymo sistema, kuri gali būti naudojama su svetainėmis susijusiai informacijai saugoti. Taip pat žinomas a

Kaip įdiegti „PostgreSQL 11.1“ „Arch Linux“.

Kaip įdiegti „PostgreSQL 11.1“ „Arch Linux“.

Būtinos sąlygos Vultr serveris, kuriame veikia atnaujinta Arch Linux (žr. šį straipsnį). Sudo prieiga. Komandos, kurias reikia vykdyti kaip root, priešdėliuose yra # ir vienas

Įdiekite replikų rinkinį su dideliu prieinamumu MongoDB 3.4 naudodami raktinį failą prieigos valdymui Ubuntu 16.04

Įdiekite replikų rinkinį su dideliu prieinamumu MongoDB 3.4 naudodami raktinį failą prieigos valdymui Ubuntu 16.04

Nuo pat savo sukūrimo 2009 m. MongoDB pirmauja NoSQL pramonėje. Viena iš pagrindinių MongoDB koncepcijų yra replikų rinkinys, todėl prieš pradėdami dirbti su i

Įdiekite naujesnes MongoDB versijas Debian 7

Įdiekite naujesnes MongoDB versijas Debian 7

MongoDB yra greita ir galinga NoSQL duomenų bazė. Tačiau „Debian“ saugyklos atnaujinamos lėtai ir dažnai jose yra labai senų paketų versijų. Ši pamoka

Nustatykite „Barnyard 2“ naudodami „Snort“.

Nustatykite „Barnyard 2“ naudodami „Snort“.

Barnyard2 yra būdas saugoti ir apdoroti dvejetainius Snort išėjimus į MySQL duomenų bazę. Prieš pradedant Atkreipkite dėmesį, kad jei jūs neknarkiate

Kaip įdiegti Apache Cassandra 3.11.x Debian 9

Kaip įdiegti Apache Cassandra 3.11.x Debian 9

Naudojate kitą sistemą? Apache Cassandra yra nemokama ir atviro kodo NoSQL duomenų bazių valdymo sistema, skirta užtikrinti mastelio keitimą, hig.

Įdiekite „RockMongo“ „CentOS 7“.

Įdiekite „RockMongo“ „CentOS 7“.

RockMongo yra internetinis MongoDB valdymo įrankis, panašus į MySQL valdymo įrankį: phpMyAdmin. Ši pamoka apims diegimo procesą

Įdiekite InfluxDB Debian Jessie su Telegraf

Įdiekite InfluxDB Debian Jessie su Telegraf

Įvadas InfluxDB yra laiko eilėmis pagrįsta duomenų bazė, parašyta Go. „InfluxDB“ turi daug praktinio naudojimo, vienas iš jų yra stebėjimo duomenų saugojimas serveriuose. aš

Apsaugokite MariaDB su SSL palaikymu Ubuntu 16.04

Apsaugokite MariaDB su SSL palaikymu Ubuntu 16.04

MariaDB yra nemokama atvirojo kodo duomenų bazė ir yra plačiausiai naudojamas „MySQL“ pakaitalas. Jį sukūrė „MySQL“ kūrėjai ir jis skirtas „remai“.

Kaip įdiegti „phpRedisAdmin“ „CentOS 7“.

Kaip įdiegti „phpRedisAdmin“ „CentOS 7“.

phpRedisAdmin yra žiniatinklio programa, valdanti Redis duomenų bazes su intuityvia grafine vartotojo sąsaja. Šioje pamokoje bus paaiškinta, kaip įdiegti

Kaip įdiegti ir naudoti „ArangoDB“ Ubuntu 16.04

Kaip įdiegti ir naudoti „ArangoDB“ Ubuntu 16.04

Naudojate kitą sistemą? Įvadas ArangoDB yra atvirojo kodo NoSQL duomenų bazė su lanksčiu duomenų modeliu dokumentams, grafikams ir raktų reikšmėms. tai yra

Mašinų augimas: AI pritaikymas realiame pasaulyje

Mašinų augimas: AI pritaikymas realiame pasaulyje

Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.

DDOS atakos: trumpa apžvalga

DDOS atakos: trumpa apžvalga

Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.

Duomenų saugojimo raida – infografika

Duomenų saugojimo raida – infografika

Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.

6 nuostabūs išmaniųjų namų įrenginių privalumai

6 nuostabūs išmaniųjų namų įrenginių privalumai

Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį