Një ndërfaqe grafike desktopi mban lidhjen e administrimit, prandaj një skript monitorimi që përpiqet të hapë të vetën nuk lexon asgjë ose, më keq, ndërfaqja ndalon së përgjigjuri pyetjeve. Përfundimi i zakonshëm është se daemoni është i paqëndrueshëm. Në daemonin e komunitetit kufizimi është i qëllimshëm: ndërfaqja e kontrollit shërben një klient administrimi të lidhur në një kohë, dhe ai numër nuk ka asnjë lidhje me atë sa përdorues mund të mbajë VPN-ja.

Një soket, një zotërues

Kanali i administrimit pranon një klient të lidhur. Kur vjen një i dytë ndërsa i pari është aktiv, ai pret ose refuzohet, dhe nuk ka asnjë modalitet paralel abonenti të fshehur pas një opsioni. Shkëputja e zotëruesit aktual i lejon daemonit të pranojë të ardhshmin, gjë që është një dorëzim dhe jo një kanal i dytë.

Kjo e bën çdo mjet shtesë një konkurrent. Nëse ndërfaqja zotëron lidhjen, skripti i anketimit ose nuk lidhet ose ia del vetëm pasi ndërfaqja të heqë dorë, dhe sekuenca përsëritet në rilidhjen tjetër. Nëse skripti lidhet i pari, ndërfaqja humbet rrugën e saj të kontrollit dhe pyetjet e saj ndalojnë së punuari. Asnjëri prej mjeteve nuk e raporton konfliktin, sepse secili sheh vetëm komandën e vet të dështuar.

What you needMechanism that fitsWhat it cannot do
Periodic list of connected clientsStatus file written on an intervalDeliver events as they happen
Interactive prompts and session controlThe single management connectionServe two controllers at once
Multiple consumers of eitherOne owner process that fans outExist without you writing it

Vendosni cili komponent zotëron kontrollin

Zgjidhni një zotërues për kanalin interaktiv dhe lëreni të jetë i vetmi që lidhet. Një ndërfaqe që administron lidhjen, një skript që përgjigjet pyetjeve të vërtetimit dhe një kontrollues që përfundon sesionet të gjithë numërohen si zotërues, dhe vetëm një mund ta mbajë rolin.

Kur ndërfaqja zotëron lidhjen, përdorni integrimin që ajo ofron në vend që të luftoni me të. Gara me zotëruesin për soketin prodhon dështime të ndërprera që përdoruesve u duken të rastësishme, dhe ai që korrigjon gabimet zakonisht sheh vetëm gjysmën e dytë të garës. Shënoni cili proces lidhet i pari pas një rindezjeje, sepse ai rend vendos çdo herë kush fiton. Një monitor që niset para ndërfaqes do ta mbajë kanalin derisa ndërfaqja të heqë dorë.

Përdorni fotografi gjendjeje për mbledhësit

Shumica e nevojave të monitorimit kërkojnë një listë, jo një bisedë. Një skedar gjendjeje periodik përgjigjet për këtë pa prekur kanalin e kontrollit, dhe vazhdon të punojë ndërsa ndërfaqja mbetet e lidhur.

status /run/openvpn/server.status 10
management /run/openvpn/server.sock unix

Intervali është buxheti i freskisë, prandaj vendoseni sipas asaj që paneli me të vërtetë kërkon, dhe jo sipas vlerës më të vogël që duket e sigurt. Një fotografi e shkruar çdo disa sekonda është e lirë; një skript që rilidhet me soketin e kontrollit çdo disa sekonda nuk është, sepse çdo rilidhje konkurron me zotëruesin.

Një fotografi nuk është histori dhe nuk është rrjedhë ngjarjesh. Lidhjet që vijnë dhe ikin brenda një intervali nuk shfaqen kurrë, prandaj një kërkesë auditimi nuk mund të plotësohet duke anketuar një skedar që e mbishkruan vetveten. Nëse duhet të dini nëse një përdorues u lidh fare, fotografia është instrumenti i gabuar.

Shpërndarja është dizajn, jo modalitet

Nëse disa konsumatorë kanë vërtet nevojë për të dhëna administrimi në kohë reale, vendosni një komponent të vetëm të besuar përpara soketit dhe lëreni të publikojë vëzhgime të përzgjedhura ngushtë te të tjerët. Ai komponent zotëron rilidhjen, pyetjet e vërtetimit dhe vendimin se çfarë është e sigurt të ekspozohet.

Ndërtojeni me qëllim: përcaktoni cilat kërkesa lejohen, regjistroni kush pyeti dhe shmangni shndërrimin aksidental të shtresës së shpërndarjes në një panel kontrolli në distancë. Daemoni nuk ka asnjë modalitet shumë-klientësh për t'u aktivizuar, dhe asnjë rresht konfigurimi nuk krijon një të tillë. Trajtoni zotëruesin si pjesë të kufirit të sigurisë, sepse mban një ndërfaqe që mund të shkëpusë njerëz. Rindezja e saj duhet të jetë një operacion rutinë me një rrugë rikuperimi të dokumentuar.

Trajtoni soketin si privilegj, jo si metrika

Ndërfaqja e administrimit mund të shkëpusë përdorues, të ndryshojë gjendje dhe të lexojë ngjarje që emërtojnë njerëz. Fjalëkalimi i saj vërteton klientin dhe nuk e kripton transportin, prandaj një dëgjues rrjeti e ekspozon bisedën ndaj kujtdo që mund ta vëzhdojë.

Preferoni një soket lokal ose një dëgjues të kufizuar rreptësisht, dhe kontrolloni cilit proces i drejtohet në të vërtetë mbledhësi juaj, pasi produktet server sjellin API-t e tyre të administrimit që sillen ndryshe. Një mbledhës i drejtuar te daemoni i gabuar prodhon përfundime të sigurta dhe të gabuara. Konfirmoni rrugën dhe procesin zotërues para se të korrigjoni gabimet e një kërkese që nuk kthen asgjë.

Artikuj të ngjashëm