У Windows-у питање "где је мој OpenVPN профил" има два различита одговора, а погрешан избор кошта цело поподне. Заједнички OpenVPN GUI третира директоријум као своју листу профила: свака .ovpn датотека у конфигурисаној фасцикли се појављује у менију системске траке, а датотека уклоњена из те фасцикле нестаје. OpenVPN Connect ради из складишта увоза, па задржава профил који сте избрисали са диска и игнорише датотеку коју сте копирали. Поређење испод је оно које користим да одлучим коју фасциклу отворити пре него што било шта додирнем.

Листа фасцикле насупрот складишту увоза

Заједнички GUI набраја датотеке при покретању: чита један конфигурациони директоријум, изабран при инсталацији, а .ovpn датотека која тамо лежи је профил. Затворите клијент, копирајте датотеку у ту фасциклу, покрените га поново, и ставка је у менију.

Connect уместо тога гради своју листу из записа које је написао током увоза, па је копирана датотека невидљива док увезени профил преживљава брисање изворног преузимања. Та једна разлика објашњава већину извештаја да два клијента чувају профиле на различитим местима, јер то заиста чине.

Заједнички GUI: која се фасцикла заправо користи

Две фасцикле су важне. Инсталација за једног корисника чита %USERPROFILE%\OpenVPN\config; инсталација за све кориснике чита C:\Program Files\OpenVPN\config, или путању x86 када је клијент 32-bit. Ако се профил појављује само за један Windows налог, он је у фасцикли за једног корисника и други налог га никада неће видети.

Не закључујте путању из инсталатера. GUI прихвата аргумент --config_dir и памти директоријум са којим је покренут, па пречица може показивати сасвим другде. Проверите циљ пречице и поље Start in, или подешавања GUI-ја, пре него што направите било коју датотеку.

Уклањање је уклањање датотеке. Прво затворите GUI да не држи ставку у меморији, избришите .ovpn заједно са датотекама сертификата или кључа које се држе поред њега, затим поново покрените клијент.

Фасцикла за све кориснике захтева брисање са подигнутим правима. Брисање које тамо тихо не уради ништа је UAC, а не грешка клијента.

Connect: складиште увоза и двострука замка AppData

Тренутне 2.x и 3.x верзије држе профиле под %APPDATA%\OpenVPN Connect\profiles. Верзије око 2.5 користиле су уместо тога %ProgramFiles(x86)%\OpenVPN Technologies\OpenVPN Client\etc\profile, због чега старији и новији одговори са форума изгледају противречни. Машина надограђена на лицу места може још да држи оба.

Путање се кваре у препричавању. %AppData% се већ разрешава у AppData\Roaming, па се писање %AppData%\Roaming\OpenVPN Connect\profiles шири у AppData\Roaming\Roaming и не показује никуда. Користите променљиву или дословну путању, никада мешавину тога двоје.

Бришите кроз клијент: отворите Profiles, употребите икону оловке, изаберите Delete. То уклања запис и сачувану копију заједно. Уклањање фасцикле док Connect ради може оставити запис који ништа не отвара, а то је жалба "profile still shows up" у другом облику.

Увежена копија је она коју клијент покреће. Уређивање .ovpn остављене у Downloads не мења ништа, јер Connect чита своју сачувану копију; да бисте променили remote или cipher, уредите профил унутар клијента, или уредите датотеку и увезите је поново .

Зашто се избрисани профил враћа

Уобичајен разлог су две инсталације исте породице клијената. GUI за једног корисника и GUI за све кориснике имају одвојене конфигурационе директоријуме, па брисање из једног оставља други нетакнутим и трака још приказује име. Programs and Features је место где проверавате да ли су оба инсталирана.

Други разлог је профил који никада није био у фасцикли коју сте проверили. Отварање .ovpn једном са мрежног дељења или из фасцикле Downloads може га копирати у конфигурациони директоријум за једног корисника, а увезени Connect профили постоје само у AppData. Пре него што било шта уредите, потражите име датотеке под %USERPROFILE% и %APPDATA%. Фасцикла профила обично држи приватни кључ поред .ovpn, па никада не лепите фасциклу у тикет или чет да докажете који сте профил уклонили - уместо тога наведите име датотеке и временску ознаку.

Старије верзије GUI-ја такође држе поставке клијента у регистру. Ако трака још приказује име након што је датотека нестала и присутна је само једна инсталација, једном поново покрените клијент и поново проверите конфигурациони директоријум пречице пре него што размислите о дирању кључева регистра.

Два тунела истовремено: прво адаптери, затим рута

GUI може да држи неколико веза, по једну за сваки виртуелни адаптер; додајте адаптере из ставке у менију Start која инсталира TAP-Windows6, затим потврдите број у Network Connections, јер два истовремена тунела траже два адаптера и оба треба аутоматски да добију своју адресу. Рутирање је теже ограничење. Два профила која сваки преусмерава сав саобраћај такмиче се за подразумевану руту, а само један може да је поседује, па добијате повремене кварове уместо два тунела која раде. Задржите један пун тунел и дајте другом split-tunnel профил који гура само сопствену подмрежу.

Преклапајући приватни опсези не могу се поправити додавањем адаптера. Ако оба сервера додељују 10.8.0.0/24, други тунел се судара на нивоу адресе и никаква конфигурација клијента их неће раздвојити.

Имена адаптера вам кажу у шта гледате. Get-NetAdapter у PowerShell-у наводи TAP-Windows адаптере и Wintun адаптер по имену, што је брже од бројања икона у Network Connections када се тунел подигао на погрешном.

Покретање именованог профила из скрипте

GUI узима име профила релативно према свом конфигурационом директоријуму, па покретач изгледа овако: "C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --connect "myvpn.ovpn". Апсолутна путања, или процес покренут у другом радном директоријуму, тихо не успева, због чега пречица која ради двоструким кликом пада под Task Scheduler-ом.

Поставите радни директоријум уместо да се надате. У AutoHotkey покретачу то је SetWorkingDir, C:\Program Files\OpenVPN\config; у Task Scheduler-у то је поље Start in радње. Прослеђивање --config_dir са истом путањом чини покретач независним од оба.

Пре него што завршите, извезите профил, забележите његов адаптер, подмрежу и подмрежу коју рутира, и држите сертификате сваког клијента у засебној подфасцикли. Затим потврдите да фасцикла припада клијенту који заиста покрећете, и бришите кроз клијент када тај клијент има складиште увоза. Тиме редоследом спречавате да се исти профил поново појави после следећег рестарта.

Повезани чланци