Per què RADIUS veu una adreça IP en lloc del nom d’usuari VPN
strongSwan pot posar la identitat IKE a RADIUS User-Name abans de qualsevol intercanvi EAP. Decidiu qui demana la identitat del compte i després correlacioneu un intent.
Un client Windows IKEv2 es connecta i la petició RADIUS arriba amb una adreça on hauria de ser el nom del compte. Encara no ha fallat res, i això és el que confon: la passarel·la informa de la identitat que el client ha presentat a la capa IKE. El nom d’usuari que vol el vostre backend pot venir d’un intercanvi EAP separat que encara no ha passat. Decidiu qui el demana abans de canviar el compte.
Dues identitats viatgen en una connexió
En una connexió hi poden aparèixer dos noms. La identitat IKE identifica el par durant la configuració del túnel, i el connector eap-radius la copia inicialment a RADIUS User-Name. La identitat EAP és un valor diferent, usat per autenticar l’usuari, i potser mai no s’envia si ningú no la demana.
Per això el registre RADIUS pot mostrar una adreça mentre el compte existeix i la contrasenya és correcta. S’està preguntant al backend per la capa equivocada. L’atribut RADIUS només és el transport del nom que s’hagi triat.
Demaneu a la passarel·la que sol·liciti una identitat EAP
Una disposició admesa fa que la passarel·la demani la identitat EAP abans de lliurar l’autenticació a RADIUS. A la secció d’autenticació remota de la connexió, poseu el mètode a eap-radius i demaneu explícitament la identitat EAP. El fragment de sota pertany dins d’un bloc de connexió existent, no en un fitxer propi. Confirmeu la connexió i el backend de configuració abans de copiar la sintaxi d’una altra implantació.
remote {
auth = eap-radius
eap_id = %any
}Amb això, el backend rep la identitat que el client proporciona a l’intercanvi EAP en lloc de l’adreça IKE. No canvia res més de la connexió.
O deixeu que RADIUS iniciï l’intercanvi EAP
L’altra disposició posa el primer moviment a la banda de RADIUS. El connector pot enviar una indicació EAP-Start en lloc d’esperar una resposta d’identitat inicial, cosa que permet que el servidor dirigeixi l’intercanvi. És configuració a nivell de connector, així que afecta totes les connexions que l’utilitzen.
charon {
plugins {
eap-radius {
eap_start = yes
}
}
}Trieu una disposició amb l’operador de RADIUS en lloc d’activar les dues i esperar. Descriuen fluxos de treball diferents, i un servidor que espera iniciar no necessàriament gestionarà una passarel·la que comença la conversa. La documentació del connector descriu totes dues, incloent quina identitat porta cada pas.
Seguiu un intent en tots dos registres
Correlacioneu un sol intent en tots dos registres. Observeu la identitat IKE, després si es produeix un intercanvi EAP-Identity, i després quin nom rep el pas d’autenticació. Un backend que rebutja l’adreça abans de l’intercanvi EAP pot aturar el procés abans que es vegi mai la identitat que voleu.
journalctl -u strongswan -fManteniu el format exacte del nom d’usuari que espera el sistema d’identitat, inclòs el prefix de domini. No inventeu mai un compte a partir d’un valor amb forma d’adreça ni desactiveu mai l’autenticació per complir una regla de política. Una identitat EAP és un nom declarat, i el mètode encara l’ha de demostrar. Escriviu el nom resultant al registre de proves perquè el proper intent comenci des d’un estat conegut.
Si el flux corregit arriba al compte correcte i encara es rebutja, la propera evidència és el mètode EAP i la política del backend, no la identitat. Repetir un restabliment de contrasenya no pot reparar un valor triat en una capa de protocol anterior.