rfc3193.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 1,572 行 · 第 1/5 页

TXT
1,572
字号
   The port numbers would be either I-Port/1701 or 1701/1701 for the
   initial SCCRQ.  The quick mode IDs sent by the initiator will be a
   subset of the Inbound-1 filter at the responder.  As a result, the
   quick mode exchange will finish and IKE should inject a specific
   filter set into the IPsec filter database and associate this filter
   set with the phase 2 SA established between the peers.  These filters
   should persist as long as the L2TP tunnel exists.  The new filter set
   at the responder will be:

      Responder Filters:
         Outbound-1: From R-IPAddr1, to I-IPAddr,  UDP, src 1701,
         dst I-Port

         Inbound-1:  From I-IPAddr,  to R-IPAddr1, UDP, src I-Port,
         dst 1701
         Inbound-2:  From Any-Addr,  to R-IPAddr1, UDP, src Any-Port,
         dst 1701

   Mechanisms SHOULD exist between L2TP and IPsec such that L2TP is not
   retransmitting the SCCRQ while the SA is being established.  L2TP's
   control channel retransmit mechanisms should start once the SA has
   been established.  This will help avoid timeouts which may occur as
   the result of slow SA establishment.

   Once the phase 2 SA has been established between the peers, the SCCRQ
   should be sent from the initiator to the responder.

   If the responder does not choose a new IP address or a new port
   number, the L2TP tunnel can now proceed to establish.

4.2.3.  Responder chooses new IP Address

   This step describes the process which should be followed when the
   responder chooses a new IP address.  The only opportunity for the
   responder to change its IP address is after receiving the SCCRQ but
   before sending a SCCRP.

   The new address the responder chooses to use MUST be reflected in the
   result and error code AVP of a STOPCCN message.  The Result Code MUST
   be set to 2 (General Error) and the Error Code MUST be set to 7 (Try



Patel, et al.               Standards Track                    [Page 12]

RFC 3193               Securing L2TP using IPsec           November 2001


   Another).  The optional error message MUST be present and the
   contents MUST contain the IP address (ASCII encoded) the Responder
   desires to use for subsequent communications.  Only the ASCII encoded
   IP address should be present in the error message.  The IP address is
   encoded in dotted decimal format for IPv4 or in RFC 2373 [17] format
   for IPv6.

   The STOPCCN Message MUST be sent using the same address and UDP port
   information which the initiator used to send the SCCRQ.  This message
   will be protecting using the initial SA bundle setup to protect the
   SCCRQ.

   Upon receiving the STOPCCN, the initiator MUST parse the IP address
   from the Result and Error Code AVP and perform the necessary sanity
   checks to verify this is a correctly formatted address.  If no errors
   are found L2TP should inject a new set of filters into the IPsec
   filter database.  If using pre-shared key authentication, L2TP MAY
   request IKE to bind the new IP address to the pre-shared key which
   was used for the original IP address.

   Since the IP address of the responder changed, a new phase 1 and
   phase 2 SA must be established between the peers before the new SCCRQ
   is sent.

   Assuming the initial tunnel has been torn down and the filters needed
   to create the tunnel removed, the new filters for the initiator and
   responder will be:

      Initiator Filters:
         Outbound-1: From I-IPAddr,  to R-IPAddr2, UDP, src I-Port,
         dst 1701

         Inbound-1:  From R-IPAddr2, to I-IPAddr,  UDP, src 1701,
         dst I-Port
         Inbound-2:  From R-IPAddr2, to I-IPAddr,  UDP, src Any-Port,
         dst I-Port

   Once IKE phase 2 completes, the new filter set at the responder will
   be:

      Responder Filters:
         Outbound-1: From R-IPAddr2, to I-IPAddr,  UDP, src 1701,
         dst I-Port

         Inbound-1:  From I-IPAddr,  to R-IPAddr2, UDP, src I-Port,
         dst 1701
         Inbound-2:  From Any-Addr,  to R-IPAddr1, UDP, src Any-Port,
         dst 1701



Patel, et al.               Standards Track                    [Page 13]

RFC 3193               Securing L2TP using IPsec           November 2001


   If the responder chooses not to move to a new port number, the L2TP
   tunnel setup can now complete.

4.2.4.  Responder chooses new Port Number

   The responder MAY choose a new UDP source port to use for L2TP tunnel
   traffic.  This decision MUST be made before sending the SCCRP.  If a
   new port number is chosen, then L2TP must inject new filters into the
   IPsec filter database.  The responder must start new IKE phase 2
   negotiations with the initiator.

   The final filter set at the initiator and responder is as follows.

      Initiator Filters:
         Outbound-1: From I-IPAddr, to R-IPAddr, UDP, src I-Port,   dst
         R-Port
         Outbound-2: From I-IPAddr, to R-IPAddr, UDP, src I-Port,   dst
         1701


         Inbound-1:  From R-IPAddr, to I-IPAddr, UDP, src R-Port,   dst
         I-Port
         Inbound-2:  From R-IPAddr, to I-IPAddr, UDP, src 1701,     dst
         I-Port
         Inbound-3:  From R-IPAddr, to I-IPAddr, UDP, src Any-Port, dst
         I-Port

         The Inbound-1 filter for the initiator will be injected by IKE
         upon successful completion of the phase 2 negotiations
         initiated by the peer.

      Responder Filters:
         Outbound-1: From R-IPAddr, to I-IPAddr,  UDP, src R-Port,   dst
         I-Port
         Outbound-2: From R-IPAddr, to I-IPAddr,  UDP, src 1701,     dst
         I-Port

         Inbound-1:  From I-IPAddr, to R-IPAddr,  UDP, src I-Port,   dst
         R-Port
         Inbound-2:  From I-IPAddr, to R-IPAddr,  UDP, src I-Port,   dst
         1701
         Inbound-3:  From Any-Addr, to R-IPAddr1, UDP, src Any-Port, dst
         1701

   Once the negotiations have completed, the SCCRP is sent and the L2TP
   tunnel can complete establishment.  After the L2TP tunnel has been
   established, any residual SAs and their associated filters may be
   deleted.



Patel, et al.               Standards Track                    [Page 14]

RFC 3193               Securing L2TP using IPsec           November 2001


4.2.5.  Gateway-gateway and L2TP Dial-out considerations

   In the gateway-gateway or the L2TP dial-out scenario, either side may
   initiate L2TP.  The process outlined in the previous steps should be
   followed with one addition.  The initial filter set at both sides
   MUST include the following filter:

      Inbound Filter:
         1: From Any-Addr, to R-IPAddr1, UDP, src Any-Port, dst 1701

   When either peer decides to start a tunnel, L2TP should inject the
   necessary inbound and outbound filters to protect the SCCRQ.  Tunnel
   establishment then proceeds exactly as stated in the previous
   sections.

5.  Security Considerations

5.1.  Authentication issues

   IPsec IKE negotiation MUST negotiate an authentication method
   specified in the IKE RFC 2409 [7].  In addition to IKE
   authentication, L2TP implementations utilize PPP authentication
   methods, such as those described in [15]-[16].  In this section, we
   discuss authentication issues.

5.1.1.  Differences between IKE and PPP authentication

   While PPP provides initial authentication, it does not provide per-
   packet authentication, integrity or replay protection.  This implies
   that the identity verified in the initial PPP authentication is not
   subsequently verified on reception of each packet.

   With IPsec, when the identity asserted in IKE is authenticated, the
   resulting derived keys are used to provide per-packet authentication,
   integrity and replay protection.  As a result, the identity verified
   in the IKE conversation is subsequently verified on reception of each
   packet.

   Let us assume that the identity claimed in PPP is a user identity,
   while the identity claimed within IKE is a machine identity.  Since
   only the machine identity is verified on a per-packet basis, there is
   no way to verify that only the user authenticated within PPP is using
   the tunnel.  In fact, IPsec implementations that only support machine
   authentication typically have no way to enforce traffic segregation.
   As a result, where machine authentication is used, once an L2TP/IPsec
   tunnel is opened, any user on a multi-user machine will typically be
   able to send traffic down the tunnel.




Patel, et al.               Standards Track                    [Page 15]

RFC 3193               Securing L2TP using IPsec           November 2001


   If the IPsec implementation supports user authentication, this
   problem can be averted.  In this case, the user identity asserted
   within IKE will be verified on a per-packet basis.  In order to
   provide segregation of traffic between users when user authentication
   is used, the client MUST ensure that only traffic from that
   particular user is sent down the L2TP tunnel.

5.1.2.  Certificate authentication in IKE

   When X.509 certificate authentication is chosen within IKE, the LNS
   is expected to use an IKE Certificate Request Payload (CRP) to
   request from the client a certificate issued by a particular
   certificate authority or may use several CRPs if several certificate
   authorities are trusted and configured in its IPsec IKE
   authentication policy.

   The LNS SHOULD be able to trust several certificate authorities in
   order to allow tunnel client end-points to connect to it using their
   own certificate credential from their chosen PKI.  Client and server
   side certificate revocation list checking MAY be enabled on a per-CA
   basis, since differences in revocation list checking exist between
   different PKI providers.

   L2TP implementations MAY use dynamically assigned ports for both
   source and destination ports only if security for each source and
   destination port combination can be successfully negotiated by IKE.

5.1.3.  Machine versus user certificate authentication in IKE

   The certificate credentials provided by the L2TP client during the
   IKE negotiation MAY be those of the machine or of the L2TP user.
   When machine authentication is used, the machine certificate is
   typically stored on the LAC and LNS during an enrollment process.
   When user certificates are used, the user certificate can be stored
   either on the machine or on a smartcard.

   Since the value of a machine certificate is inversely proportional to
   the ease with which an attacker can obtain one under false pretenses,
   it is advisable that the machine certificate enrollment process be
   strictly controlled.  For example, only administrators may have the
   ability to enroll a machine with a machine certificate.

   While smartcard certificate storage lessens the probability of
   compromise of the private key, smartcards are not necessarily
   desirable in all situations.  For example, some organizations
   deploying machine certificates use them so as to restrict use of
   non-approved hardware.  Since user authentication can be provided




Patel, et al.               Standards Track                    [Page 16]

RFC 3193               Securing L2TP using IPsec           November 2001


   within PPP (keeping in mind the weaknesses described earlier),
   support for machine authentication in IPsec makes it is possible to
   authenticate both the machine as well as the user.

   In circumstances in which this dual assurance is considered valuable,
   enabling movement of the machine certificate from one machine to
   another, as would be possible if the machine certificate were stored
   on a smart card, may be undesirable.

   Similarly, when user certificate are deployed, it is advisable for
   the user enrollment process to be strictly controlled.  If for
   example, a user password can be readily used to obtain a certificate
   (either a temporary or a longer term one), then that certificate has
   no more security value than the password.  To limit the ability of an
   attacker to obtain a user certificate from a stolen password, the
   enrollment period can be limited, after which password access will be
   turned off.  Such a policy will prevent an attacker obtaining the
   password of an unused account from obtaining a user certificate once
   the enrollment period has expired.

5.1.4.  Pre-shared keys in IKE

   Use of pre-shared keys in IKE main mode is vulnerable to man-in-the-
   middle attacks when used in remote access situations.  In main mode
   it is necessary for SKEYID_e to be used prior to the receipt of the
   identification payload.  Therefore the selection of the pre-shared
   key may only be based on information contained in the IP header.
   However, in remote access situations, dynamic IP address assignment
   is typical, so that it is often not possible to identify the required
   pre-shared key based on the IP address.

   Thus when pre-shared keys are used in remote access scenarios, the
   same pre-shared key is shared by a group of users and is no longer
   able to function as an effective shared secret.  In this situation,
   neither the client nor the server identifies itself during IKE phase
   1; it is only known that both parties are a member of the group with
   knowledge of the pre-shared key.  This permits anyone with access to
   the group pre-shared key to act as a man-in-the-middle.

   This vulnerability does not occur in aggressive mode since the
   identity payload is sent earlier in the exchange, and therefore the
   pre-shared key can be selected based on the identity.  However, when
   aggressive mode is used the user identity is exposed and this is

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?