Introduction
Ce document décrit les résultats attendus de la configuration des APN L2TP d'entreprise avec l'authentification imsi-auth ou authentication msisdn-auth.
Problème : Les options de configuration de l'APN msisdn-auth et imsi-auth ont un résultat spécifique (non évident) pour les APN basés sur L2TP
La documentation officielle (pour la version 19) indique :
imsi-auth - Configure l'APN pour tenter d'authentifier l'abonné en fonction de son numéro IMSI (International Mobile Subscriber Identification).
msisdn-auth - Configure l'APN pour tenter d'authentifier l'abonné en fonction de son numéro MSISDN (Mobile Station International Integrated Services Digital Network), comme décrit dans la section Utilisation de cette commande.
Exemple de configuration :
apn ecs-apn
ims-auth-service IMSA
dns primary 192.168.1.128
dns secondary 192.168.1.129
ip access-group CSS_ACL in
ip access-group CSS_ACL out
authentication imsi-auth username-strip-apn prefer-chap-pco <<<<<<<<<<<<<<<<<<<<<<<<<<<
ip context-name Gi
tunnel l2tp peer-address 2.2.2.2 encrypted secret +A3oxne9nnyqmuz16dddqucwcqz92p2hi4t8z21nx3hmmpcgvh4ida preference 1 <<<<<<<<<<<<<<<<<<<<<<<<<<<
tunnel l2tp peer-address 3.3.3.3 encrypted secret +A2dbz9joxajmv80jxmr5aycl1ka2s6nzmu7s2bte3nnz4o2hgkqxn preference 2 <<<<<<<<<<<<<<<<<<<<<<<<<<<
loadbalance-tunnel-peers prioritized <<<<<<<<<<<<<<<<<<<<<<<<<<<
exit
lac-service LAC-SVC <<<<<<<<<<<<<<<<<<<<<<<<<<<
max-retransmission 1
retransmission-timeout-max 1
load-balancing prioritized
allow aaa-assigned-hostname
keepalive-interval 30
peer-lns 2.2.2.2 encrypted secret +A2q4fv7h5tum1a06vc2wblk9l7k3ma98myremkew1552c2vosy2h1
peer-lns 3.3.3.3 encrypted secret +A16gnydsddbqqx3okh7ln6jrwxz3s3u3lzvzo5bz0ccc0ztr0cvsh
bind address 1.1.1.1
#exit
Un comportement attendu est que, si l'une des options ci-dessus est configurée pour un APN basé sur L2TP, le noeud de prise en charge GPRS de passerelle/
La passerelle de réseau de données de paquets (PDN) (GGSN/PGW) utilise l'IMSI ou le MSISDN pour l'authentification PPP avec le serveur de réseau L2TP (LNS).
L'option fonctionne comme prévu en cas d'absence de nom d'utilisateur fourni par l'équipement utilisateur (UE).
ii)
Friday April 07 2017
INBOUND>>>>> 09:57:08:270 Eventid:141004(3)
[PGW-S5/S2a/S2b]GTPv2C Rx PDU, from 213.151.233.172:35664 to 213.151.233.230:2123 (271)
TEID: 0x00000000, Message type: EGTP_CREATE_SESSION_REQUEST (0x20)
Sequence Number: 0x317962 (3242338)
GTP HEADER
Version number: 2
TEID flag: Present
Piggybacking flag: Not present
Message Length: 0x010B (267)
INFORMATION ELEMENTS
IMSI:
Type: 1 Length: 8 Inst: 0
Value: 231014450903030
Hex: 0100 0800 3201 4154 9030 30F0
MSISDN:
Type: 76 Length: 6 Inst: 0
Value: 421917667546
Hex: 4C00 0600 2491 7166 5764
MOBILE EQUIPMENT IDENTITY:
Type: 75 Length: 8 Inst: 0
Value: 3594050557927001
Hex: 4B00 0800 5349 5050 7529 0710
[…]
ACCESS POINT NAME:
Type: 71 Length: 38 Inst: 0
Value: ltpipsec.corp.test.mnc001.mcc231.gprs
Hex: 4700 2600 086C 7470 6970 7365 6304 636F
7270 0474 6573 7406 6D6E 6330 3031 066D
6363 3233 3104 6770 7273
SELECTION MODE:
Type: 128 Length: 1 Inst: 0
Value: MS provided APN,subscr not verified (0x01)
Hex: 8000 0100 01
PDN TYPE:
Type: 99 Length: 1 Inst: 0
Value: IPV4
Hex: 6300 0100 01
[…]
PCO:
Type: 78 Length: 32 Inst: 0
Container id: 0xC023 (PAP)
Container length: 0x06 (6)
Container content:
Auth-Req(0), Name=, Passwd=
Container id: 0x8021 (IPCP)
Container length: 0x10 (16)
Container content:
Conf-Req(0), Pri-DNS=0.0.0.0, Sec-DNS=0.0.0.0
Container id: 0x000D (IPv4-DNS-Server)
Container length: 0x00 (0)
Container content:
DNS Address: Request for IPv4 DNS Address allocation
Hex: 4E00 2000 80C0 2306 0100 0006 0000 8021
1001 0000 1081 0600 0000 0083 0600 0000
0000 0D00
[…]
Friday April 07 2017
<<<<OUTBOUND 09:57:08:295 Eventid:25001(0)
PPP Tx PDU (20)
PAP 20: Auth-Req(1), Name=421917667546, Passwd= <-- username is replaced with MSISDN as the APN is configured with “msisdn-auth”
L'option ne fonctionne pas si un nom d'utilisateur est fourni par UE. Dans ce cas, GGSN/PGW envoie le nom d'utilisateur et le mot de passe configurés dans l'APN.
Si rien n'est configuré
Friday April 07 2017
INBOUND>>>>> 09:47:51:254 Eventid:141004(3)
[PGW-S5/S2a/S2b]GTPv2C Rx PDU, from 213.151.233.172:35824 to 213.151.233.230:2123 (279)
TEID: 0x00000000, Message type: EGTP_CREATE_SESSION_REQUEST (0x20)
Sequence Number: 0x5C4D6C (6049132)
GTP HEADER
Version number: 2
TEID flag: Present
Piggybacking flag: Not present
Message Length: 0x0113 (275)
INFORMATION ELEMENTS
IMSI:
Type: 1 Length: 8 Inst: 0
Value: 231014450903030
Hex: 0100 0800 3201 4154 9030 30F0
MSISDN:
Type: 76 Length: 6 Inst: 0
Value: 421917667546
Hex: 4C00 0600 2491 7166 5764
MOBILE EQUIPMENT IDENTITY:
Type: 75 Length: 8 Inst: 0
Value: 3594050557927001
Hex: 4B00 0800 5349 5050 7529 0710
[..]
PCO:
Type: 78 Length: 40 Inst: 0
Container id: 0xC023 (PAP)
Container length: 0x0E (14)
Container content:
Auth-Req(0), Name=null, Passwd=null
Container id: 0x8021 (IPCP)
Container length: 0x10 (16)
Container content:
Conf-Req(0), Pri-DNS=0.0.0.0, Sec-DNS=0.0.0.0
Container id: 0x000D (IPv4-DNS-Server)
Container length: 0x00 (0)
Container content:
DNS Address: Request for IPv4 DNS Address allocation
Hex: 4E00 2800 80C0 230E 0100 000E 046E 756C
6C04 6E75 6C6C 8021 1001 0000 1081 0600
0000 0083 0600 0000 0000 0D00
[…]
Friday April 07 2017
<<<<OUTBOUND 09:47:51:334 Eventid:25001(0)
PPP Tx PDU (16)
PAP 16: Auth-Req(1), Name=null, Passwd=null <-- username is the same as in the APN
Solution
Le comportement observé est attendu selon la conception.
La configuration d'authentification imsi-auth username-strip-apn preference-chap-pco (ou authentication msisdn-auth username-strip-apn Préférez-chap-pco) est utilisée lorsqu'aucun nom d'utilisateur PCO (Protocol Configuration Options) n'est entré.
Il s'agit de l'ordre de priorité pour la configuration de construction NAI (Network Access Identifier) :
- Si le nom d'utilisateur sortant <1-128 char string> est configuré à l'intérieur de l'APN, il remplace toutes les autres configurations/IE et est envoyé dans la requête PAP/CHAP.
- Si l'UE envoie le nom d'utilisateur/mot de passe du PCO, il est envoyé à LNS dans PAP/CHAP (Password Authentication Protocol/Challenge Handshake Authentication Protocol) requis.
- Si aucun nom d'utilisateur n'est envoyé de l'UE, msisdn/imsi@APN est envoyé par défaut en tant que nom d'utilisateur dans la demande PAP/CHAP.
- En outre, cette CLI - authentication msisdn/imsi-auth username-strip-apn peut être utilisé pour dénuder l'APN et envoyer uniquement le msisdn/imsi dans la demande PAP/CHAP.
Notez que si l'authentification est effectuée par Radius (localement), l'IMSI (ou MSISDN) est envoyé dans des messages de demande d'accès comme prévu.
De même dans le scénario L2TP, si l'authentification est effectuée par RADIUS (côté LAC), le nom d'utilisateur attendu (IMSI ou MSISDN) est visible dans les messages de demande d'accès, mais pas dans Auth-Req vers LNS.