A mund një lidhje OpenVPN me çelës statik të shërbejë disa klientë?
Regjimi me çelës statik lidh dy palë të barabarta. Shtimi i client-to-client nuk e kthen në server për shumë klientë; për këtë duhen regjimi TLS dhe identiteti për çdo pajisje.
Regjimi me çelës statik lidh saktësisht dy palë të barabarta, dhe ky është konstruksioni i tij, jo një kufizim që dikush harroi ta hiqte. client-to-client është një opsion përcjelljeje në regjimin server, prandaj shtimi i tij në një konfigurim --secret nuk ndryshon asgjë në numrin e klientëve që mund të lidhen. Vendimi nuk është cili flamur shtohet, por nëse vendosja ka nevojë për një lidhje pikë-pikë apo një shërbim me shumë klientë. Nëse disa pajisje duhet të lidhen në mënyrë të pavarur, regjimi i mbrojtjes ndryshon dhe secila pajisje merr një identitet.
Dy palë, një çelës dhe asnjë gjendje për klient: ajo formë është e gjithë historia e regjimit.
Për çfarë shërben regjimi me çelës statik
Në regjimin e fshehtë të dyja palët ndajnë një skedar çelësi, dhe ai çelës mbron trafikun drejtpërdrejt. Nuk ka shtrëngim duarsh, as shkëmbim certifikatash, as sesion për çdo klient, sepse nuk ka klientë në kuptimin e serverit, vetëm dy pika fundore.
Regjimi mbetet i dobishëm për një palë të fiksuar makinash me një proces të dokumentuar rotacioni çelësash, dhe OpenVPN 2.6 e shënon si të vjetruar pikërisht sepse regjimi TLS i mbulon ato raste me veti më të mira. Ajo që nuk mund të bëjë është të dallojë një pajisje që lidhet nga një tjetër, pasi posedimi i skedarit është e gjithë historia e vërtetimit. Shtimi i një pajisjeje të tretë do të thotë ndarje e të njëjtit çelës me të, pas së cilës dy të parat nuk mund ta dallojnë më nga vetja.
Kjo është arsyeja pse kufiri i dy palëve është strukturor dhe jo një rregullim që mund të ndryshohet.
Pse client-to-client nuk është pjesa që mungon
client-to-client kontrollon nëse klientët e lidhur mund të shkëmbejnë trafik përmes serverit. Ai nuk pranon klientë, nuk cakton identitete dhe nuk krijon një regjim server që nuk është konfiguruar, dhe në një konfigurim me çelës statik nuk ka listë klientësh që ai të qeverisë.
Ngatërresa tjetër e zakonshme ka të bëjë me materialin tls-crypt ose tls-auth. Një server TLS mund të ndajë një nga ata çelësa midis të gjithë klientëve, sepse mbron kanalin e kontrollit në vend që të provojë kush është secili klient. Një çelës i përbashkët i kanalit të kontrollit në regjimin TLS është një objekt tjetër nga një çelës statik i përbashkët i të dhënave, ndonëse të dyja vijnë si skedarë që duken të ngjashëm.
Zgjedhja midis regjimeve zbret në dy pyetje. A duhet më shumë se një pajisje të lidhet në mënyrë të pavarur, dhe a ka nevojë vendosja për revokim për çdo pajisje? Jo për të dyja e mban regjimin me çelës statik të zbatueshëm; po për cilindo prej tyre tregon TLS. Nuk ka një opsion të tretë ku një klient i dytë pranohet pa identitetin e vet.
Ndërtimi i serverit për shumë klientë
Një server për shumë klientë kërkon regjimin TLS, një certifikatë në anën e serverit dhe një identitet për çdo klient. Ndihmësi i serverit vendos grupin e adresave dhe regjimin për shumë klientë, por nuk siguron konfigurimin TLS, ankorën e besimit ose certifikatat e klientëve që e bëjnë pranimin kuptimplotë.
Regjistroni çdo pajisje përmes autoritetit ekzistues të certifikatave në vend që të kopjoni kredencialet e një klienti. Janë identitetet e dallueshme ato që bëjnë të mundur revokimin, rrugëtimin për çdo klient dhe regjistrat e dobishëm, dhe një certifikatë e vetme e përbashkët klienti i rrëzon të treja.
Nëse vendosja vërteton përdoruesit përmes një drejtorie të jashtme ose një faktori të dytë, ai dizajn mbetet ashtu siç është. Kalimi në regjimin server TLS vendos se si palët e provojnë veten në shtresën e tunelit dhe nuk e dikton backend-in e llogarive. Mbani dy vendimet të ndara që një ndryshim në njërën të mos e ndryshojë në heshtje tjetrën.
Pastaj vendosni me qëllim politikën e përcjelljes. client-to-client aktivizon trafikun midis klientëve në rrugën e serverit në hapësirën e përdoruesit, të cilin shumë vendosje e duan dhe disa nuk duhet ta kenë. Është një çelës politike, jo një mekanizëm identiteti, dhe duhet ndezur sepse dizajni e kërkon, jo sepse një tutorial e përfshiu.
Verifikimi që klientët janë vërtet të pavarur
Lidhni dy klientë dhe konfirmoni që marrin adresa të ndryshme dhe shfaqen me identitete të ndryshme në regjistrin e serverit. Pastaj revokoni njërin dhe konfirmoni që tjetri vazhdon të punojë, që është prova praktike se identitetet nuk u ndanë.
Provoni shërbimin e lejuar midis palëve dhe një që duhet të mbetet i bllokuar. Dy hyrje të suksesshme provojnë pranimin, jo izolimin, dhe ndryshimi ka rëndësi kur vendosja duhet të ndajë grupe përdoruesish.
Së fundi, lexoni regjimin e serverit nga konfigurimi që ekzekutohet dhe jo nga kujtesa. Një konfigurim me çelës statik dhe opsione shtesë është ende një lidhje pikë-pikë, dhe një server TLS i saktë është i vetmi rregullim në të cilin disa klientë janë vërtet palë të ndara.
Nëse regjistri tregon një emër të përbashkët për çdo pajisje, problemi nuk është regjimi. Problemi është procesi i regjistrimit.