For feedback and comments: |
documentation.feedback@alcatel-lucent.com |
Figure 1 depicts end user access-requests sent to a RADIUS server. After validating the user names and passwords, the RADIUS server returns an access-accept message to the users on ALA-1 and ALA-2. The user name and password from ALA-3 could not be authenticated, thus access was denied.Figure 1: RADIUS Requests and ResponsesNote: For SSH only the session-timeout value is used. The SSH stack cannot track character input into the login prompt until the enter key is pressed.Note: If the idle/session attribute is not available or if the value is set to a very large number, SR OS uses the smallest value set in "configure system login-control idle-timeout" and the idle/session timeout attribute value to terminate the prompt. If the “login-control idle-timeout” is set to 0 (equivalent to infinite), the maximum idle-timeout (24-hours) is used for the calculation.The RADIUS PE-discovery application makes use of a 10 second time period instead of the generic 30 seconds and uses a fixed consecutive timeout value of 2 (see Server Reachability Detection ).Local authorization and RADIUS authorization operate by applying a profile based on user name and password configurations once network access is granted. The profiles are configured locally as well as VSAs on the RADIUS server. See Vendor-Specific Attributes (VSAs) .Table 3 displays the following scenarios:
•
• The operator can configure local profiles and map tacplus priv-lvl based authorization to those profiles (the use-priv-lvl option)To use a single common default profile to control command authorization for TACACS+ users, the operator must configure the tacplus use-default-template option and configure the parameters in the user-template tacplus_default to point to a valid local profile.If the default template is not being used for TACACAS+ authorization and the use-priv-lvl option is not configured, then each CLI command issued by an operator is sent to the TACACS+ server for authorization. The authorization request sent by SR OS contains the first word of the CLI command as the value for the TACACS+ cmd and all following words become a cmd-arg. Quoted values are expanded so that the quotation marks are stripped off and the enclosed value are seen as one cmd or cmd-arg.- “show”- “show router”- “show port 1/1/1”- “configure port 1/1/1 description “my port”cmd=showcmd=showcmd-arg=routercmd=showcmd-arg=portcmd-arg=1/1/1cmd=configurecmd-arg=portcmd-arg=1/1/1cmd-arg=descriptioncmd-arg=my portFor TACACS+ authorization, SR OS sends the entire CLI context in the cmd and cmd-arg values. Here is a set of examples where the CLI context is different:- *A:dut-c# configure service- *A:dut-c>config>service# vprn 555 customer 1 create- *A:dut-c>config>service>vprn$ shutdowncmd =configurecmd-arg=servicecmd=configurecmd-arg=servicecmd-arg=vprncmd-arg="555"cmd-arg=customercmd-arg=1cmd-arg=createcmd=configurecmd-arg=servicecmd-arg=vprncmd-arg="555"cmd-arg=customercmd-arg=1cmd-arg=createcmd-arg=shutdownThe OS allows you to configure the type of accounting record packet that is to be sent to the TACACS+ server when specified events occur on the device. The accounting record-type parameter indicates whether TACACS+ accounting start and stop packets be sent or just stop packets be sent. Start/stop messages are only sent for individual commands, not for the session.When a user logs in to request access to the network using Telnet or SSH, or a user enters a command for which accounting parameters are configured, or a system event occurs, such as a reboot or a configuration file reload, the router checks the configuration to see if TACACS+ accounting is required for the particular event.
Table 4: Security Methods Capabilities * Local commands always perform account logging using the config log command.In Figure 2, the authentication process is defined in the config>system>security> password context. The authentication order is determined by specifying the sequence in which password authentication is attempted among RADIUS, TACACS+, and local passwords. This example uses the authentication order of RADIUS, then TACACS+, and finally, local. An access request is sent to RADIUS server 1. One of two scenarios can occur. If there is no response from the server, the request is passed to the next RADIUS server with the next lowest index (RADIUS server 2) and so on, until the last RADIUS server is attempted (RADIUS server 5). If server 5 does not respond, the request is passed to the TACACS+ server 1. If there is no response from that server, the request is passed to the next TACACS+ server with the next lowest index (TACACS+ server 2) and so on.Figure 2: Security Flow
• overall-rate — Applies to all control traffic destined to the CPM (all sources) received on the interface (only where the policy is applied). This is a per-interface limit. Control traffic received above this rate will be discarded.
• per-source-rate — Used to limit the control traffic destined to the CPM from each individual source. This per-source-rate is only applied when an object (SAP) is configured with a cpu-protection policy and also with the optional mac-monitoring or ip-src-monitoring keywords. A source is defined as a SAP, Source MAC Address tuple for mac-monitoring and as a SAP, Source IP Address tuples for ip-src-monitoring. Only certain protocols (as configured under included-protocols in the cpu protection policy) are limited (per source) when the ip-src-monitoring keyword is used.A three-color marking mechanism uses a green, yellow and red marking function. This allows greater flexibility in how traffic limits are implemented. A CLI command within the DoS protection policy called out-profile-rate maps to the boundary between the green (accept) and yellow (mark as discard eligible) regions. The overall-rate command marks the boundary between the yellow and red (drop) regions point for the associated policy (Figure 3).Figure 3: Profile Marking
•
•
•
•
•
•
•
•
•
•
• The CPU protection features are not supported on the following platforms:
Table 5: Ranges versus Levels and OpCodes config>sys>security>cpu-protection#policy 1eth-cfmentry 10 level 5-7 opcode 3,5 rate 1entry 20 level 0-7 opcode 0-255 rate 0config>service>vpls#sap 1/1/4:100cpu-protection 1 eth-cfm-monitoring aggregateeth-cfmmipno shutdownFigure 4 shows a typical ETH-CFM hierarchical model with a Subscriber ME (6), Test ME (5), EVC ME (4) and an Operator ME (2). This model provides the necessary transparency at the different levels of the architecture. For security reasons, it may be necessary to prevent errant levels from entering the service provider network at the UNI, ENNI, or other untrusted interconnection points. Configuring squelching at level four on both UNI-N interconnection ensures that ETH-CFM packets matching the SAP or binding delimited configuration will silently discard ETH-CFM packets at ingress.Figure 4: ETH-CFM Hierarchical ModelSquelching configuration uses a single MD-level [0..7] to silently drop all ETH-CFM packets matching the SAP or binding delimited configuration at and below the specified MD-level. In Figure 4, a squelch level is configured at MD-level 4. This means the configuration will silently discard MD-levels 0,1,2,3 and 4, assuming there is a SAP or binding match.Note: Extreme caution must be used when deploying this feature.The difference in the two protection mechanisms is shown in the Table 6. CPU Protection is used to control access to the CPU resources when processing is required. Squelching is required when the operator is protecting the ETH-CFM architecture from external sources.
Table 6: CPU PRotection and Squelching As well as including the squelching information under the show service service-id all, display output the squelch-ingress-level key has been added to the sap-using and sdp-using show commands.show service sap-using squelch-ingress-levels===============================================================================ETH-CFM Squelching===============================================================================PortId SvcId Squelch Level-------------------------------------------------------------------------------6/1/1:100.* 1 0 1 2 3 4 5 6 7lag-1:100.* 1 0 1 2 3 46/1/1:200.* 2 0 1 2lag-1:200.* 2 0 1 2 3 4 5-------------------------------------------------------------------------------Number of SAPs: 4-------------------------------------------------------------------------------===============================================================================show service sdp-using squelch-ingress-levels================================================================================ETH-CFM Squelching================================================================================SdpId SvcId Type Far End Squelch Level-------------------------------------------------------------------------------12345:4000000000 2147483650 Spok 1.1.1.1 0 1 2 3 4===============================================================================
• Enforcement Policers — An instance of a policer that is policing a flow of packets comprised of a single (or small set of) protocols(s) arriving on a single object (for example, SAP). Enforcement policers perform a configurable action (for example, discard) on packets that exceed configured rate parameters. There are two basic sub-types of enforcement policers:
→ Static policers — always instantiate.
→ Dynamic policers — only instantiated (allocated from a free pool of dynamic policers) when a local monitor detects non-conformance for a set of protocols on a specific object.
• Local Monitors — A policer that is primarily used to measure the conformance of a flow comprised of multiple protocols arriving on a single object. Local monitors are used as a trigger to instantiate dynamic policers.The log events can also be seen in the CLI using the following show log event-control | match Dcp commandIf needed when a DCP log event indicates a SAP, and that SAP is an MSAP, the operator can determine which subscriber(s) is/are on a specific MSAP by using the show service active-subs command and then filtering (“| match”) on the msap string.
•
• SNMP — See various tables and objects with “Dcp” or “DCpuProt” in their name in the TIMETRA-CHASSIS-MIB¸ TIMETRA-SECURITY-MIB, TIMETRA-SAP-MIB and TIMETRA-VRTR-MIB
• If needed, an operator can determine which subscriber is on a specific MSAP by using the show service active-subs command and then filtering (“| match”) on the msap string.
• timetra-access <ftp> <console> <both> — This is a mandatory command that must be configured. This command specifies if the user has FTP and /or console (serial port, Telnet, and SSH) access.
• timetra-profile <profile-name> — When configuring this VSA for a user, it is assumed that the user profiles are configured on the local router and the following applies for local and remote authentication:
1.
• timetra-default-action <permit-all|deny-all|none> — This is a mandatory command that must be configured even if the timetra-cmd VSA is not used. This command specifies the default action when the user has entered a command and no entry configured in the timetra-cmd VSA for the user resulted in a match condition.
• timetra-cmd <match-string> — Configures a command or command subtree as the scope for the match condition.Note: SSHv1 is not supported when the node is running in FIPS-140-2 mode.Users can allocate dedicated CPM hardware queues for certain traffic designated to the CPUs and can set the corresponding rate-limit for the queues. CPM queueing is supported on the following platforms: 7950 XRS, 7750 SR-7/SR-12, and 7750 SR-c12.CPM filters and queues control all traffic going in to the CPM from IOMs/XMAs, including all routing protocols. CPM filters apply to packets from all network and access ports, but not to packets from a management Ethernet port. CPM packet filtering and queuing is performed by network processor hardware using no resources on the main CPUs.An entry of an IP(v4), IPv6, MAC CPM filters must have at least one match criteria defined to be active. A default action can be specified for CPM filter policy that applies to each of IP, IPv6, MAC filters that are in a no shutdown state as long as the CPM filter policy has at least one active filter entry in any of the IP(v4), IPv6, and MAC filters.TTL Security for BGP and LDPThe BGP TTL Security Hack (BTSH) was originally designed to protect the BGP infrastructure from CPU utilization-based attacks. It is derived on the fact that the vast majority of ISP eBGP peerings are established between adjacent routers. Since TTL spoofing cannot be performed, a mechanism based on an expected TTL value can provide a simple and reasonably robust defense from infrastructure attacks based on forged BGP packets.While TSH is most effective in protecting directly connected peers, it can also provide a lower level of protection to multi-hop sessions. When a multi-hop BGP session is required, the expected TTL value can be set to 255 minus the configured range-of-hops. This approach can provide a qualitatively lower degree of security for BGP (for example, a DoS attack could, theoretically, be launched by compromising a box in the path). However, BTSH will catch a vast majority of observed distributed DoS (DDoS) attacks against eBGP. For further information, refer to draft-gill-btsh-xx.txt, The BGP TTL Security Hack (BTSH).TSH can be used to protect LDP peering sessions as well. For details, see draft-chen-ldp-ttl-xx.txt, TTL-Based Security Option for LDP Hello Message.A malicious user may attempt to gain CLI access by means of a dictionary attack using a script to automatically attempt to login as an “admin” user and using a dictionary list to test all possible passwords. Using the exponential-backoff feature in the config>system>login-control context the OS increases the delay between login attempts exponentially to mitigate attacks.Note that the config>system>login-control>[no] exponential-backoff command works in conjunction with the config>system>security>password>attempts command which is also a system wide configuration.*A:ALA-48>config>system# security password attempts- attempts <count> [time <minutes1>] [lockout <minutes2>]- no attempts<count> : [1..64]<minutes1> : [0..60]<minutes2> : [0..1440]Refer to Configuring Login Controls . The commands are described in Login, Telnet, SSH and FTP Commands .An security event log will be generated as soon as a user account has exceeded the number of allowed attempts and the show>system>security>user command can be used to display the total number of failed attempts per user.The account will be automatically re-enabled as soon as the lock-out period has expired. The list of users who are currently locked-out can be displayed with show system security user lockout.A lock-out for a specific user can be administratively cleared using the admin user x clear-lockout.The TCP Enhanced Authentication Option, currently covered in draft-bonica-tcp-auth-05.txt, Authentication for TCP-based Routing and Management Protocols, extends the previous MD5 authentication option to include the ability to change keys without tearing down the session, and allows for stronger authentication algorithms to be used.TCP peers can use this extension to authenticate messages passed between one another. This strategy improves upon current practice, which is described in RFC 2385, Protection of BGP Sessions via the TCP MD5 Signature Option. Using this new strategy, TCP peers can update authentication keys during the lifetime of a TCP connection. TCP peers can also use stronger authentication algorithms to authenticate routing messages.0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Kind | Length |T|K| Alg ID |Res| Key ID |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Authentication Data || // |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
• Table 7 shows the mapping between these attributes and the CLI command to set them.
Table 7: Keychain Mapping config>system>security>keychain>direction>bi>entry with algorithm algorithm parameter.config>system>security>keychain>direction>uni>receive>entry with algorithm algorithm parameter.config>system>security>keychain>direction>uni>send>entry with algorithm algorithm parameter. Table 8 shows the mapping between these attributes and the CLI command to set them.