OpenVPN client-config-dir: nombre de archivo frente al CN del certificado
El nombre del archivo CCD proviene del nombre común del certificado, o del nombre de usuario cuando esa asignación está activa. Compare ambas reglas antes de renombrar un archivo.
Hay dos nombres en juego antes de que el cliente se conecte: el nombre del archivo en el portátil (nuc.ovpn) y la identidad que el servidor deriva de la credencial. Una búsqueda en client-config-dir usa el segundo. Cambiar el nombre del perfil en el cliente, o añadir .conf al archivo del servidor, no cambia nada sobre qué archivo abre el servidor.
La comparación útil no es «qué nombre usé» sino «qué regla aplica el servidor», porque la autenticación por certificado y la autenticación por nombre de usuario/contraseña pueden producir nombres efectivos distintos a partir del mismo inicio de sesión.
Nombre del perfil frente al nombre común del certificado
Con la configuración predeterminada basada en certificados, el servidor toma el nombre común X.509 y busca un archivo con exactamente ese nombre dentro de client-config-dir. Un perfil llamado nuc.ovpn cuyo certificado dice tester se resuelve en /etc/openvpn/server/ccd/tester. El nombre del archivo del cliente nunca entra en el cálculo. Ese es el primer lugar donde se esconde un desajuste.
Por eso, un directorio lleno de perfiles cuidadosamente nombrados puede fallar siempre. El archivo no se empareja por subject, por dirección de correo ni por el nombre que muestra una interfaz gráfica; se empareja por la cadena del nombre común.
En un sistema de archivos sensible a mayúsculas, Tester y tester son dos archivos distintos y solo se abre uno. Compruebe el nombre común del certificado que el cliente presenta realmente, no de una copia en sus notas.
username-as-common-name invierte la regla
Cuando el servidor ejecuta autenticación por nombre de usuario/contraseña con username-as-common-name, el nombre de usuario autenticado sustituye al nombre común del certificado para esta búsqueda.
Compare los dos casos directamente: con identidad de certificado, el archivo sigue al certificado y un cambio de contraseña es irrelevante; con identidad de nombre de usuario, el archivo sigue al nombre de inicio de sesión y reemitir el certificado es irrelevante. El campo que el servidor sustituya es contra el que hay que renombrar. Un certificado reemitido con un CN nuevo cambia en silencio el objetivo de la búsqueda, y el archivo CCD antiguo sigue en el disco con aspecto correcto.
Existen configuraciones mixtas, y ahí empieza la mayor parte de la confusión. Si un bloque de servicio activa la sustitución y otro no, el nombre efectivo depende de qué instancia atendió la conexión. Confirme la configuración activa en lugar de suponer que se aplica el archivo global. La referencia de opciones del servidor original documenta la búsqueda por archivo nombrado y el respaldo opcional.
Qué lee el servidor y qué se salta en silencio
Dos diferencias pequeñas deciden si se selecciona un archivo. La primera es una extensión añadida. La segunda es un carácter perdido en el nombre.
OpenVPN no añade .conf al nombre que busca, así que tester.conf no coincide con tester. Un editor que oculta las extensiones puede dejar un archivo que parece correcto en un listado y nunca coincide.
Cuando no existe ningún archivo coincidente, el servidor puede recurrir a un archivo llamado DEFAULT. Que lleguen algunos ajustes no es prueba de que se usara el archivo por cliente. Compare la dirección asignada o las rutas empujadas con lo que produciría el archivo por cliente. Los permisos son el tercer filtro, porque el servidor abre el archivo tras ceder privilegios; un shell de root que pueda leerlo no demuestra nada.
Un nombre de archivo correcto no valida el contenido
La selección y el contenido son fallos separados. Una vez abierto el archivo correcto, sus directivas aún deben ser válidas para ese cliente.
ifconfig-push debe asignar una dirección que la topología pueda usar de verdad, y iroute solo tiene sentido para una subred enrutada detrás de ese cliente.
Una identidad, varios dispositivos
Dos portátiles que presentan el mismo nombre común seleccionan el mismo archivo y reciben los mismos ajustes específicos del cliente. Si necesita direcciones separadas o revocación separada, necesita identidades separadas, no dos copias de un archivo.
La comparación es entre compartir una identidad y emitir un certificado por dispositivo. Compartir es más sencillo de administrar y más grueso de revocar, mientras que los certificados por dispositivo cuestan más configuración y le dan una unidad limpia para desactivar.