En Windows, "onde está o meu perfil de OpenVPN" ten dúas respostas distintas, e escoller a incorrecta custa unha tarde. A GUI comunitaria de OpenVPN trata un directorio como a súa lista de perfís: cada ficheiro .ovpn no cartafol configurado aparece no menú da bandexa, e un ficheiro eliminado dese cartafol desaparece. OpenVPN Connect traballa desde un almacén de importación, así que conserva un perfil que borraches do disco e ignora un ficheiro que copiaches dentro. A comparación de abaixo é a que uso para decidir que cartafol abrir antes de tocar nada.

Unha lista de cartafol fronte a un almacén de importación

A GUI comunitaria enumera os ficheiros ao iniciarse: le un directorio de configuración, escollido durante a instalación, e un ficheiro .ovpn que estea alí é un perfil. Pecha o cliente, copia un ficheiro nese cartafol, volve inicialo e a entrada está no menú.

Connect, en cambio, constrúe a súa lista a partir de rexistros que escribiu durante a importación, así que un ficheiro copiado é invisible mentres que un perfil importado sobrevive ao borrado da descarga orixinal. Esa única diferenza explica a maioría dos informes de que os dous clientes gardan os perfís en lugares distintos, porque é certo.

A GUI comunitaria: que cartafol se usa realmente

Importan dous cartafoles. Unha instalación por usuario le %USERPROFILE%\OpenVPN\config; unha instalación para todos os usuarios le C:\Program Files\OpenVPN\config, ou a ruta x86 cando o cliente é de 32-bit. Se un perfil aparece só para unha conta de Windows, está no cartafol por usuario e a outra conta nunca o verá.

Non deduzas a ruta do instalador. A GUI acepta un argumento --config_dir e lembra o directorio co que se iniciou, así que un atallo pode apuntar a outro lugar por completo. Revisa o destino do atallo e o campo Start in, ou a configuración da GUI, antes de crear calquera ficheiro.

Eliminar é eliminar ficheiros. Pecha primeiro a GUI para que non reteña a entrada en memoria, borra o .ovpn xunto cos ficheiros de certificado ou clave que haxa ao lado e volve iniciar o cliente.

O cartafol para todos os usuarios necesita un borrado elevado. Un borrado que alí non fai nada en silencio é UAC, non un fallo do cliente.

Connect: o almacén de importación e a dobre trampa de AppData

As versións 2.x e 3.x actuais gardan os perfís en %APPDATA%\OpenVPN Connect\profiles. As versións arredor da 2.5 usaban no seu lugar %ProgramFiles(x86)%\OpenVPN Technologies\OpenVPN Client\etc\profile, e por iso as respostas antigas e novas dos foros parecen contradicirse. Unha máquina actualizada no sitio aínda pode ter as dúas.

As rutas estragánse ao contalas. %AppData% xa se resolve en AppData\Roaming, así que escribir %AppData%\Roaming\OpenVPN Connect\profiles expándese a AppData\Roaming\Roaming e non apunta a nada. Usa a variable ou a ruta literal, nunca unha mestura das dúas.

Elimina a través do cliente: abre Profiles, usa a icona do lapis, escolle Delete. Iso quita o rexistro e a copia gardada á vez. Eliminar o cartafol mentres Connect se executa pode deixar un rexistro que non abre nada, que é a queixa "profile still shows up" na súa outra forma.

A copia importada é a que executa o cliente. Editar o .ovpn que queda en Downloads non cambia nada, porque Connect le a súa copia gardada; para cambiar un remote ou un cipher, edita o perfil dentro do cliente, ou edita o ficheiro e volve importalo .

Por que volve un perfil eliminado

Dúas instalacións da mesma familia de clientes é a razón habitual. Unha GUI por usuario e unha GUI para todos os usuarios teñen directorios de configuración separados, así que eliminar dunha deixa a outra intacta e a bandexa segue listando o nome. Programs and Features é onde confirmas se ambas están instaladas.

A segunda razón é un perfil que nunca estivo no cartafol que revisaches. Abrir un .ovpn unha vez desde un recurso compartido de rede ou un cartafol Downloads pode copialo ao directorio de configuración por usuario, e os perfís de Connect importados existen só en AppData. Antes de editar nada, busca o nome do ficheiro tanto en %USERPROFILE% como en %APPDATA%. Un cartafol de perfil adoita conter a clave privada xunto ao .ovpn, así que nunca pegues o cartafol nun ticket ou chat para demostrar que perfil eliminaches - cita o nome do ficheiro e a marca de tempo.

As versións antigas da GUI tamén gardan as preferencias do cliente no rexistro. Se a bandexa segue listando un nome despois de que o ficheiro desapareceu e só hai unha instalación, reinicia o cliente unha vez e volve revisar o directorio de configuración do atallo antes de pensar en tocar claves do rexistro.

Dous túneles á vez: primeiro os adaptadores, logo a ruta

A GUI pode manter varias conexións, unha por adaptador virtual; engade adaptadores desde a entrada do menú Start que instala TAP-Windows6 e logo confirma a conta en Network Connections, porque dous túneles simultáneos necesitan dous adaptadores e ambos deberían obter o seu enderezo automaticamente. O encamiñamento é o límite máis difícil. Dous perfís que redirixen todo o tráfico compiten pola ruta predeterminada, e só un pode posuíla, así que obtés fallos intermitentes en lugar de dous túneles funcionais. Mantén un túnel completo e dálle ao segundo un perfil de split-tunnel que empurre só a súa propia subrede.

Os rangos privados solapados non se arranxan engadindo un adaptador. Se ambos os servidores reparten 10.8.0.0/24, o segundo túnel choca a nivel de enderezo e ningunha cantidade de configuración do cliente os separará.

Os nomes dos adaptadores dinche que estás mirando. Get-NetAdapter en PowerShell lista os adaptadores TAP-Windows e o adaptador Wintun por nome, o que é máis rápido que contar iconas en Network Connections cando un túnel se levantou no equivocado.

Iniciar un perfil con nome desde un script

A GUI toma un nome de perfil relativo ao seu directorio de configuración, así que un lanzador queda así: "C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --connect "myvpn.ovpn". Unha ruta absoluta, ou un proceso iniciado nun directorio de traballo distinto, falla en silencio, e por iso un atallo que funciona con dobre clic rompe baixo Task Scheduler.

Define o directorio de traballo en lugar de esperar. Nun lanzador de AutoHotkey iso é SetWorkingDir, C:\Program Files\OpenVPN\config; en Task Scheduler é o campo Start in da acción. Pasar --config_dir coa mesma ruta fai o lanzador independente de ambos.

Antes de terminar, exporta o perfil, anota o seu adaptador, a súa subrede e a subrede que encamiña, e garda os certificados de cada cliente no seu propio subcartafol. Logo confirma que o cartafol pertence ao cliente que realmente executas, e elimina a través do cliente cando ese cliente teña un almacén de importación. Facer iso nesa orde é o que evita que o mesmo perfil reapareza tras o seguinte reinicio.

Artigos relacionados