Padarīsim datubāzu savienojumus drošākus

Ingmar Aasoja
RSS: Dalīties:
Šis ieraksts ir novecojis!

Kā zināms, SQL datubāzu lietotājiem pēc noklusējuma ir atļauts izveidot tikai lokālus savienojumus. Tas nodrošina, ka dati netiek pārsūtīti pa ārējiem tīkliem. Izmantojot noklusējuma konfigurāciju, Zone arī izmanto savu iekšējo tīklu starp datubāzi un tīmekļa serveri datu pārsūtīšanai – tādējādi jūsu dati nekādā veidā nevar “izkļūt” ārpusē. Ja tomēr lietotājs vēlas izveidot savienojumu ar SQL datubāzi no ārpuses, mēs iesakām aktivizēt TLS protokolu, kas šifrē visu datu plūsmu starp klienta lietotni un datubāzes serveri.

Zone klientiem jau kādu laiku ir iespēja konfigurēt savas lietotnes, lai izmantotu drošus TLS savienojumus. Tā kā datubāzēs parasti glabājas informācija, kas nedrīkst noplūst un bieži satur sensitīvus personas datus, īpaša uzmanība jāpievērš šo datu apstrādes drošībai. Šī iemesla dēļ Zone tagad ir iespējams padarīt šifrētu savienojumu izmantošanu obligātu lietotājiem. Lasiet vairāk par to zemāk.

Kāpēc man ir nepieciešami šifrēti SQL savienojumi?

Parasti ārējiem savienojumiem obligāti jāizmanto droši TLS savienojumi, īpaši, ja lietotne atrodas ārpus Zone sistēmas. Piemēram, ja SQL serverim ir pieslēgts ārējs pakalpojums, kas atrodas cita pakalpojumu sniedzēja mākonī. Šādā situācijā varētu pietikt, ja lietotnes administrators zina, ka iepriekš jākonfigurē SSL savienojums. Tomēr arī šādos ārējos savienojumos var rasties situācijas, kad šāda vienreizēja konfigurācija negarantē drošu savienojumu.

Šādos gadījumos īpaši uzmanīgi jābūt, ja piekļuve ir piešķirta lietotājam, kurš pieslēdzas datubāzei, piemēram, izmantojot darbvirsmas lietotni, piemēram, Sequel Pro, ko bieži izmanto izstrādātāji, vai mazāk zināmo Beekeeper Studio – izmantojot šādas lietotnes, vienmēr iepriekš jāpārliecinās, ka savienojums ir šifrēts ar TLS protokolu. Protams, var būt situācijas, kad administrators to nevar kontrolēt. Lai to novērstu, tagad ir ieviesta iespēja noteikt, ka datubāzes lietotājs var tikai piekļūt datubāzei, izmantojot TLS savienojumus. Lai to izdarītu, jāatver datubāzes lietotāju pārvaldība un jāiestata “Pieprasīt TLS savienojumu no lietotāja”.

Bet kāpēc tas vispār ir vajadzīgs? Dažkārt, veicot savus uzdevumus, programmatūrai ir jāuzdod izstrādātājam jautājumi, piemēram, “Lūdzu, pārbaudi, kas notiek ar šo pasūtījumu datubāzē?”. Tā kā attālināts darbs mūsdienās ir ļoti izplatīts, izstrādātājs var pārbaudīt datubāzi, sēžot kafejnīcā un izmantojot publisko WiFi. Ja šādās situācijās netiek izmantoti TLS savienojumi, var droši teikt, ka visi ar pasūtījumiem saistītie personas dati principā jau ir nonākuši trešo personu rīcībā.

Ārējo savienojumu gadījumā ir svarīgi arī nodrošināt, ka savienojuma ceļi ir ierobežoti ar baltajā sarakstā iekļautām IP adresēm. Tas jāiestata arī My Zone pārvaldības saskarnē konkrētā datubāzes lietotāja iestatījumos. Svarīgi zināt, ka šifrētu savienojumu izmantošana ir iespējama, sākot no TLS protokola versijas 1.2. Tomēr jāņem vērā, ka tas var radīt problēmas vecākām lietotnēm un datubāzu klientiem. Tāpēc ir vērts tos atjaunināt, kad vien iespējams.

Izmantojot TLS klienta lietotnēs

Darbvirsmas klientiem savienojuma konfigurācijā tikai jāatzīmē attiecīgā izvēles rūtiņa. Servera lietotņu konfigurēšanai skatiet tālāk sniegtos piemērus.

WordPress lietotnēm pietiek wp-config.php failam pievienot vienu rindu:

<strong>define</strong>( 'MYSQL_CLIENT_FLAGS', MYSQLI_CLIENT_SSL );Code language: HTML, XML (xml)

Izmantojot PDO savienojumu PHP skriptā, jāiestata MYSQL_ATTR_SSL_CA vērtība. Zone serverī, piemēram:

try {
$db = new PDO(
'mysql:host=dXXX.mysql.zonevs.eu;dbname=$database;port=3306',
'{database_username}',
'{database_password}',
[
PDO::MYSQL_ATTR_SSL_CA =>
'/etc/ssl/zse/infernal/cacrt.d/MYSQL.ZONEVS.EU.crt'
]
);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
} catch (PDOException $error) {
echo $error->getMessage();
}Code language: PHP (php)

Lūdzu, ņemiet vērā! TLS 1.2 tiek atbalstīts, sākot no PHP versijas 7.2!

Lai izveidotu savienojumu no komandrindas serverī, izmantojot MariaDB, jāizmanto –ssl parametrs:

mysql -h dXXX.mysql.zonevs.eu -u {database_username} --ssl -p

Lai izveidotu savienojumu no komandrindas serverī, izmantojot MySQL 8.0, jāizmanto –ssl-mode= parametrs:

mysql -h dXXX.mysql.zonevs.eu -u {database_username} --ssl-mode=REQUIRED -p

Iepriekš norādītie parametri ir noderīgi, ja vēlaties izmantot mysqldump funkcionalitāti, piemēram, ja vēlaties izveidot MySQL rezerves kopijas ārpus Zone tīkla.

Kā pārbaudīt, vai mans savienojums ir šifrēts?

Neatkarīgi no izmantotās metodes, SSL savienojuma darbību var pārbaudīt ar šādu SQL vaicājumu:

SHOW STATUS LIKE 'Ssl_cipher';Code language: JavaScript (javascript)

TLS savienojuma gadījumā Ssl_cipher vērtībai jābūt, piemēram, TLS_AES_256_GCM_SHA384. Ja šī vērtība ir tukša, TLS savienojums netiek izmantots.

Populāri ieraksti

.NO domain now at Zone – is your business ready for the Norwegian market?

.NO domēns tagad pieejams Zone – vai jūsu uzņēmums ir gatavs Norvēģijas tirgum?

Ants Korsar
Ja jūs plānojat paplašināt savu darbību Norvēģijā vai jau darbojaties tur, tagad ir īstais brīdis nodrošināt sev vietēju un uzticamu tīmekļa...
Zone Webmail 3.0: New features that make email management easier than ever

Zone Webmail 3.0: Jaunas funkcijas, kas padara e-pasta pārvaldību vieglāku nekā jebkad agrāk

Nikita Tikhomirov
Ir klāt uzlabotā Zone Webmail versija, kas piedāvā jaunu un lietotājam draudzīgu pieredzi. Mūsu mērķis ar šo jauno atjauninājumu bija vienkāršs:...
Still the rightful owner of your domain? ICANN’s new rule means it’s time to double-check

Vai joprojām esat sava domēna likumīgais īpašnieks? ICANN jaunais noteikums – laiks pārbaudīt vēlreiz

Jaanus Putting
Sākot ar 2025. gada 28. maiju, stājas spēkā jauna ICANN politika, kas ietekmē visus ģenerisko domēnu, piemēram, .COM, .ORG un .NET, īpašniekus....
Why choose a .EU domain today?

.EU domēns – kāpēc izvēlēties tieši šodien?

Jaanus Putting
Mēs dzīvojam laikā, kad globālās varas dinamika mainās ātrāk nekā jebkad agrāk. Kamēr Eiropa virzās uz spēcīgāku, vienotāku iekšējo tirgu,...