У 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 з тым жа шляхам робіць запускальнік незалежным ад абодвух.

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

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