VPN падключаецца, кліент адкрывае сеанс, і ўсе мяркуюць, што злучэнне з базай даных абароненае. Толькі што змяшалі тры розныя рэчы. Ці слухач дасяжны наогул, ці сервер прыняў карыстальніка і ці Firebird дамовіўся пра шыфраванне злучэння — гэта асобныя механізмы з асобнымі доказамі. Тунель адказвае толькі на першае, і толькі для тых крыніц, якія вы дазволілі.

Дзве мяжы, і яны не перакрываюцца

Мяжа VPN абараняе пакеты паміж кліентам і шлюзам. Шыфраванне злучэння ў Firebird абараняе пратакол базы даных паміж кліенцкай бібліятэкай і працэсам сервера. Абодва могуць існаваць адначасова, і ні адно не замяняе другое.

Калі тунель сканчаецца раней за хост базы даных, трафік за ім абараняецца толькі тым, пра што дамовіўся сеанс базы даных. Менавіта ў гэтай прагаліне агляд звычайна і знаходзіць сюрпрыз. Схема тунеля сканчаецца на шлюзе, а злучэнне, якое нясе ваш запыт, працягваецца далей. Кожны, хто пазней чытае гэтую схему, атрымлівае гэтае дапушчэнне ў спадчыну.

Мяжа першая: хто можа адкрыць слухач

Вызначце сапраўдны адрас сервера і сканфігураваны порт, які роўны 3050, калі яго не змянілі, затым дазвольце толькі ўхваленыя крыніцы VPN у міжсеткавым экране хоста і сеткі. Улічыце любое пераўтварэнне адрасоў на шлюзе VPN і дайце хосту базы даных зваротны маршрут да пула кліентаў, калі шлюз асобны.

Затым давядзіце адмоўнае. Знешні шлях, які павінен быць адхілены, мусіць застацца адхіленым, бо адкрыццё тунеля само па сабе не абмяжоўвае слухач Firebird.

Мяжа другая: пра што дамаўляецца Firebird

Firebird 3 увёў рамкі шыфравання злучэння з палітыкай сервера, якую можна адключыць, уключыць або зрабіць абавязковай. Палітыка задае мінімум. Фактычны сеанс па-ранейшаму залежыць ад кліенцкай бібліятэкі, якую загружае праграма, і ад плагінаў, якія падтрымліваюць абодва бакі.

У заўвагах да выпуску Firebird 3 Arc4 паказаны як плагін шыфравання злучэння па змаўчанні для гэтага выпуску. Arc4 — гістарычнае значэнне па змаўчанні, а не рэкамендацыя сучаснага шыфра, і гэта не тое ж самае, што вонкавая абарона VPN.

Аўтэнтыфікацыя — трэцяя зменная ў тым жа ўзгадненні. Сервер прымае набор плагінаў аўтэнтыфікацыі, кліенцкая бібліятэка прапануе некаторую падмноства, і яны мусіць перакрывацца.

Пастка Legacy_Auth

Падтрымка Legacy_Auth патрабуе паслаблення палітыкі абавязковага шыфравання па змаўчанні на серверы. Гэта дакументаваны кошт сумяшчальнасці, і менавіта таму паніжэнне палітыкі, каб заглушыць памылку злучэння, ёсць змена бяспекі, а не выпраўленне.

Калі кліент раптам пачынае збойваць пасля абнаўлення сервера, параўнайце спісы плагінаў, перш чым нешта паслабляць. Збой звычайна ёсць няўзгодненасцю перамоў, і адказ — падтрыманы плагін з абодвух бакоў.

Праверце далучэнне, які мае значэнне

На зборцы, якая дае зменную кантэксту, гэты запыт паведамляе стан шыфравання бягучага далучэнне:

SELECT RDB$GET_CONTEXT('SYSTEM', 'WIRE_ENCRYPTED')
FROM RDB$DATABASE;

Запусціце яго праз уласнае злучэнне праграмы, а не праз сеанс адміністратара на тым жа серверы. Шыфраваны адмінскі далучэнне нічога не кажа пра сеанс іншай кліенцкай бібліятэкі, а старэйшая зборка, якая не падтрымлівае зменную, не ёсць доказам, што шыфраванне выключанае.

Запішыце версію кліенцкай бібліятэкі, зборку сервера і вынік разам, бо любое з гэтага асобна не чытаецца.

Правы і шлях абнаўлення

Абмежаванне крыніц і шыфраванне перадачы не замяняюць аўтэнтыфікацыю або правы найменшых прывілеяў. Праверце дазволы звычайнага карыстальніка базы даных на аб\'екты, якіх ён сапраўды датыкаецца.

Нарэшце, стаўцеся да доўгатэрміновага разгортвання як да пытання абслугоўвання. Тунель не робіць састарэлую кліенцкую бібліятэку бяспечнай на неабмежаваны час, і падтрыманы шлях абнаўлення таннейшы за выяўленне таго, што патрэбны ёй плагін выдалілі.

Падобныя артыкулы