En OS X, se usan perfiles de configuración para configurar un cliente para que se una a redes 802.1x protegidas. Si el perfil de configuración no define adecuadamente la confianza en los servidores RADIUS para tipos EAP que establecen un túnel seguro (TLS, TTLS, PEAP), puede que veas uno de los siguientes problemas:
- incapacidad para unirse automáticamente
- fallo de autenticación
- no funciona el roaming a nuevos puntos de acceso
Antes de poder configurar la confianza adecuadamente, debes saber qué certificados presenta el servidor RADIUS durante la autenticación. Si ya tienes estos certificados, continúa hasta el paso 13.
- Los registros EAPOL muestran los certificados presentados por el servidor RADIUS. Para activar los registros EAPOL en Mac OS X, usa el siguiente comando en Terminal:
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.eapolclient LogFlags -int -1
- Una vez activados los registros EAPOL, conéctate manualmente con la red 802.1x protegida. Debería solicitársete que confíes en el certificado del servidor RADIUS. Confía en el certificado para completar la autenticación.
- Busca los registros EAPOL.
- En OS X Lion y Mountain Lion, puedes encontrar estos registros en /var/log/. El nombre del registro será eapolclient.en0.log o eapolclient.en1.log.
- En OS X Mavericks, puedes encontrar estos registros en /Library/Logs/CrashReporter/com.apple.networking.eapol.XXXXXXXX. - Abre eapolclient.enX.log en Consola y busca una clave llamada TLSServerCertificateChain. Debería tener el siguiente aspecto:
- El bloque de texto entre
<datos>
y</datos>
es un certificado. Copia el bloque de texto y luego pégalo en un editor de texto. Comprueba que tu editor de texto esté configurado para guardar archivos de texto normal. - Agrega un encabezado con el texto
-----BEGIN CERTIFICATE-----
y un pie con el texto-----END CERTIFICATE-----
. Debería tener el siguiente aspecto:
- Guarda el archivo con extensión .pem.
- Abre la aplicación Acceso a Llaveros, en la carpeta Utilidades.
Nota: Puede resultar útil crear un nuevo llavero para que puedas encontrar fácilmente el certificado que importes en el siguiente paso. - Arrastra el archivo.pem que has creado al nuevo llavero o selecciona Archivo > Importar elementos y selecciona el archivo .pem que has creado anteriormente. Importa el archivo al llavero que prefieras.
- Repite los pasos anteriores con cada certificado de la matriz TLSCertificateChain. Es probable que tengas más de un certificado.
- Examina todos los archivos importados para saber qué es cada uno. Como mínimo deberías tener un certificado raíz y un certificado de un servidor RADIUS. También podrías tener un certificado intermedio. Debes incluir todos los certificados raíz e intermedios presentados por el servidor RADIUS en la carga útil de Certificados de tu perfil de configuración. Una vez incluidos los certificados del servidor RADIUS, es opcional incluir los nombres del servidor RADIUS en la sección Nombres de certificados de servidor de confianza de la carga útil de Red. De lo contrario, incluye también los certificados de servidor RADIUS en el perfil.
- Una vez sepas qué certificados presenta el servidor RADIUS, puedes exportarlos como archivos .cer desde Llaveros y agregarlos al perfil de configuración. Agrega todos los certificados raíz e intermedios a la carga útil de Certificados en tu perfil de configuración. También puedes agregar los certificados de servidor RADIUS si es necesario.
- En la carga útil de Red, busca la sección Confiar y marca los certificados de confianza que acabas de agregar. Asegúrate de no marcar ningún otro certificado que pueda estar también en la carga útil de Certificados como confiables o fallará la autenticación. Asegúrate de marcar solamente los certificados que haya presentado tu servidor RADIUS como confiables.
- A continuación, agrega los nombres de tus servidores RADIUS a la sección Nombres de certificados de servidor de confianza. Es necesario que uses el nombre exacto (incluso mayúsculas y minúsculas) que aparece en el nombre común del certificado del servidor RADIUS. Por ejemplo, si el nombre común del certificado de tu servidor RADIUS es TEST.example.com, debes asegurarte de usar las mismas mayúsculas y minúsculas que en el certificado. El valor "test.example.com" podría no ser válido y "TEST.example.com" sí. Debes agregar una nueva entrada para cada uno de tus servidores RADIUS. También puedes usar un comodín para el nombre de host. Por ejemplo, *.ejemplo.com te permitiría confiar en todos los servidores RADIUS con el dominio ejemplo.com.
- Si activaste anteriormente los registros eapol, puedes desactivar el registro con el siguiente comando:
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.eapolclient LogFlags -int 0
Si no sabes con seguridad si la confianza está configurada correctamente, puedes consultar /var/log/system.log. Abre system.log en Consola y filtra por "eapolclient" para ver todos los mensajes relacionados con el proceso oeapolclient. Un error de confianza habitual suele tener este aspecto:
Mar 31 12:27:14 Macintosh.local eapolclient[5961]: [eapttls_plugin.c:968] eapttls_verify_server(): server certificate not trusted status 3 0