OpenVPN niset në hyrje, por jo në nisjen e Windows?
Një shkurtore nisjeje hap një aplikacion desktopi, jo shërbimin automatik. Kontrolloni cilën burim profili lexon pronari përpara se të zhvendosni skedarë.
Tunelet që shfaqen vetëm pasi dikush hyn zakonisht nisen nga sesioni i atij personi, jo nga shërbimi automatik. Fajtori i zakonshëm është një shkurtore nisjeje që nis openvpn-gui.exe, dhe nuk është një instalim i prishur. Shkurtorja nis një aplikacion desktopi brenda një sesioni përdoruesi, me profilin e atij përdoruesi, depozitat e certifikatave të atij përdoruesi dhe aftësinë e atij përdoruesi për t'iu përgjigjur një kërkese. Asgjë prej kësaj nuk e bën lidhjen të pavarur nga një njeri i hyrë, dhe pikërisht këtë kërkon një tunel përpara hyrjes.
Simptoma zakonisht ka tre shkaqe
Tre modele duken njësoj nga jashtë dhe kanë rregullime të ndryshme. I pari është një pronar ekzekutimi që është sesion përdoruesi në vend të shërbimit, pra rasti i shkurtoreve të nisjes. I dyti është një profil që ndodhet atje ku shërbimi nuk shikon, kështu që shërbimi niset, nuk gjen asgjë dhe përfundon pastër. I treti është një profil që shërbimi e gjen dhe e nis, por kredencialet e të cilit kërkojnë një ndërveprim që asnjë shërbim nuk mund ta ofrojë.
Identifikimi i rastit që zbatohet kërkon dy lexime: çfarë është konfiguruar të ekzekutojë shërbimi dhe cilat skedarë mund të shohë. Të dyja janë një komandë secila, dhe asnjëra nuk prish një lidhje që punon.
Çfarë lexon në të vërtetë shërbimi automatik
Shërbimi automatik Community është një mbështjellës që skanon drejtorinë e konfiguruar të nisjes automatike, zakonisht config-auto brenda instalimit, dhe nis një proces OpenVPN për çdo profil përputhës që gjen. Një profil i dukshëm në menynë GUI të një përdoruesi ndodhet në vend të kësaj nën profilin roaming të atij përdoruesi, në një drejtori që llogaria e shërbimit nuk e lexon. Udhëzuesi i shërbimit Windows përshkruan atë zbulim, dhe ia vlen të lexohet përpara se të kopjoni ndonjë gjë, sepse drejtoria e synuar është një veti e instalimit dhe jo një konventë fikse. Prandaj kopjimi i një skedari në dosjen GUI nuk ndryshon asgjë për shërbimin, dhe kopjimi i tij në çdo dosje të quajtur config krijon dublikata në vend të një rregullimi.
Get-Service OpenVPNService | Select-Object Status, StartType
Get-CimInstance Win32_Service | Where-Object Name -eq 'OpenVPNService' | Select-Object PathName, StartName
gci 'C:\Program Files\OpenVPN\config-auto'
Komanda e fundit liston atë që mbështjellësi do të shohë në të vërtetë, që është mënyra më e shpejtë për të konfirmuar se një profil është në vendin e gabuar. Rreshti i dytë tregon gjithashtu llogarinë nën të cilën punon shërbimi, dhe ajo llogari vendos cilat shtigje skedarësh dhe depozita certifikatash janë të arritshme fare.
Pse hyrja në desktop funksionon dhe nisja në boot nuk funksionon
Suksesi në desktop mund të fshehë për një kohë të gjatë një varësi nga hyrja. Një GUI mund të mbledhë një frazë kalimi çelësi, një fjalëkalim llogarie ose një faktor të dytë në një dialog, sepse punon në një sesion interaktiv me një desktop të dukshëm. Një shërbim punon në një sesion pa desktop, kështu që një kërkesë për hyrje nuk ka ku të shfaqet, dhe lidhja dështon pas një afati kohor që nuk i ngjan aspak një problemi kredencialesh.
Qasja në skedarë ndjek të njëjtin rregull. Një çelës privat i ruajtur nën profilin e përdoruesit, ose një certifikatë në depozitën personale të përdoruesit, nuk është e disponueshme për një shërbim që punon si makina. Krahasoni shtigjet absolute, lejet dhe zgjedhjen e certifikatës që bën secila palë, në vend që të supozoni se i njëjti skedar profili nënkupton të njëjtin mjedis.
Një detyrë e planifikuar e vendosur të ekzekutohet pavarësisht nëse një përdorues është i hyrë trashëgon një kufizim të ngjashëm. Mund të nisë me sukses ekzekutuesin GUI dhe gjithsesi të prodhojë një proces që nuk merr kurrë kredenciale, kështu që prania e një procesi në menaxherin e detyrave nuk është provë e një tuneli që punon.
Zgjidhni një pronar dhe provoni ciklin e vërtetë të jetës
Për një lidhje që i përket një personi të hyrë, përdorni sjelljen e nisjes automatike të mbështetur nga GUI dhe lëreni shërbimin jashtë saj. Për një tunel që duhet të ekzistojë përpara se dikush të hyjë, konfiguroni shërbimin, vendosni profilin atje ku e lexon mbështjellësi dhe përdorni një mekanizëm të mbështetur kredencialesh pa mbikëqyrje, si një çelës pa frazë kalimi interaktive ose një skedar kredencialesh i dokumentuar.
Get-Content 'C:\Program Files\OpenVPN\log\openvpn.log' -Tail 40
Get-WinEvent -LogName Application -MaxEvents 20 | Where-Object ProviderName -like '*OpenVPN*'
Provoni ciklin e jetës që ka rëndësi: një rinisje pa u hyrë askush, pastaj një rilidhje pas një ndryshimi rrjeti. Mbani një pronar për lidhjen, sepse dy mekanizma nisjeje konkurrues zakonisht prodhojnë dy instanca që luftojnë për të njëjtat rrugë dhe të njëjtin sesion serveri, gjë që është më e vështirë për t'u diagnostikuar sesa cilido mekanizëm veç e veç.