OpenVPN client-config-dir: nome de ficheiro fronte ao CN do certificado
O nome do ficheiro CCD provén do nome común do certificado, ou do nome de usuario cando esa asignación está activa. Compare ambas as regras antes de renomear un ficheiro.
Hai dous nomes en xogo antes de que o cliente se conecte: o nome do ficheiro no portátil (nuc.ovpn) e a identidade que o servidor deriva da credencial. Unha busca en client-config-dir usa o segundo. Cambiar o nome do perfil no cliente, ou engadir .conf ao ficheiro do servidor, non cambia nada sobre que ficheiro abre o servidor.
A comparación útil non é «que nome usei» senón «que regra aplica o servidor», porque a autenticación por certificado e a autenticación por nome de usuario/contrasinal poden producir nomes efectivos distintos a partir do mesmo inicio de sesión.
Nome do perfil fronte ao nome común do certificado
Na configuración predeterminada baseada en certificados, o servidor toma o nome común X.509 e busca un ficheiro con exactamente ese nome dentro de client-config-dir. Un perfil chamado nuc.ovpn cuxo certificado di tester resólvese en /etc/openvpn/server/ccd/tester. O nome do ficheiro do cliente nunca entra no cálculo. Ese é o primeiro lugar onde se agocha un desaxuste.
Por iso, un directorio cheo de perfís coidadosamente nomeados pode fallar sempre. O ficheiro non se emparexa por subject, por enderezo de correo nin polo nome que mostra unha interface gráfica; emparexase pola cadea do nome común.
Nun sistema de ficheiros sensible a maiúsculas, Tester e tester son dous ficheiros distintos e só se abre un. Comprobe o nome común do certificado que o cliente presenta realmente, non dunha copia nas súas notas.
username-as-common-name inverte a regra
Cando o servidor executa autenticación por nome de usuario/contrasinal con username-as-common-name, o nome de usuario autenticado substitúe o nome común do certificado para esta busca.
Compare os dous casos directamente: con identidade de certificado, o ficheiro segue o certificado e un cambio de contrasinal é irrelevante; con identidade de nome de usuario, o ficheiro segue o nome de inicio de sesión e reemitir o certificado é irrelevante. O campo que o servidor substitúa é contra o que hai que renomear. Un certificado reemitido cun CN novo cambia en silencio o obxectivo da busca, e o ficheiro CCD antigo segue no disco con aspecto correcto.
Existen configuracións mixtas, e aí empeza a maior parte da confusión. Se un bloque de servizo activa a substitución e outro non, o nome efectivo depende de que instancia atendeu a conexión. Confirme a configuración activa en lugar de supor que se aplica o ficheiro global. A referencia de opcións do servidor orixinal documenta a busca por ficheiro nomeado e o retroceso opcional.
Que le o servidor e que omite en silencio
Dúas diferenzas pequenas deciden se se selecciona un ficheiro. A primeira é unha extensión engadida. A segunda é un carácter perdido no nome.
OpenVPN non engade .conf ao nome que busca, así que tester.conf non coincide con tester. Un editor que oculta as extensións pode deixar un ficheiro que parece correcto nunha listaxe e nunca coincide.
Cando non existe ningún ficheiro coincidente, o servidor pode recorrer a un ficheiro chamado DEFAULT. Que cheguen algúns axustes non é proba de que se usase o ficheiro por cliente. Compare o enderezo asignado ou as rutas empuxadas co que produciría o ficheiro por cliente. Os permisos son o terceiro filtro, porque o servidor abre o ficheiro tras ceder privilexios; unha shell de root que poida lelo non demostra nada.
Un nome de ficheiro correcto non valida o contido
A selección e o contido son fallos separados. Unha vez aberto o ficheiro correcto, as súas directivas aínda deben ser válidas para ese cliente.
ifconfig-push debe asignar un enderezo que a topoloxía poida usar de verdade, e iroute só ten sentido para unha subrede encamiñada detrás dese cliente.
Unha identidade, varios dispositivos
Dous portátiles que presentan o mesmo nome común seleccionan o mesmo ficheiro e reciben os mesmos axustes específicos do cliente. Se precisa enderezos separados ou revocación separada, precisa identidades separadas, non dúas copias dun ficheiro.
A comparación é entre compartir unha identidade e emitir un certificado por dispositivo. Compartir é máis sinxelo de administrar e máis groso de revogar, mentres que os certificados por dispositivo custan máis configuración e danlle unha unidade limpa para desactivar.