For feedback, use the following: |
ipd_online_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 ResponsesThe 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 2 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 tacplus_default user-template to point to a valid local profile.If the default template is not being used for TACACAS+ authorizationand 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 3: 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 the DHCP protocol is 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 4: 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 shutdown
• 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.*A:node1>config>card>fp>d-cpu-prot# info detail----------------------------------------------no dynamic-enforcement-policer-pool----------------------------------------------*A:node1>config>sys>security>dist-cpu-protection# info----------------------------------------------policy "my-ddos-policy" createstatic-policer "my-arp-policer" createrate packets 5 within 10 initial-delay 5exceed-action discardexitstatic-policer "my-ppp-policer" createrate packets 3 within 10 initial-delay 3exceed-action discard hold-down 60exitprotocol arp createenforcement static "my-arp-policer"exitprotocol pppoe-pppoa createenforcement static "my-ppp-policer"exitexit*A:node1>config>subscr-mgmt>msap-policy# info----------------------------------------------dist-cpu-protection "my-ddos-policy"*A:node1>config>card>fp# info----------------------------------------------dist-cpu-protectiondynamic-enforcement-policer-pool 2000exit----------------------------------------------*A:node1>config>sys>security>dist-cpu-protection# info----------------------------------------------policy "my-ddos-policy2" createlocal-monitoring-policer "my-local-monitor" createrate packets 10 within 10 initial-delay 7exceed-action low-priorityexitprotocol arp createenforcement dynamic "my-local-monitor"dynamic-parametersdetection-time 900rate packets 5 within 10 initial-delay 5exceed-action discard hold-down 60exitexitprotocol pppoe-pppoa createenforcement dynamic "my-local-monitor"dynamic-parametersdetection-time 600rate packets 3 within 10 initial-delay 3exceed-action discard hold-down 120exitexitexit*A:node1>config>subscr-mgmt>msap-policy# info----------------------------------------------dist-cpu-protection "my-ddos-policy2"
• 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.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 SR, 7750 SR-7/SR-12, and 7750 SR-c12 (not 7750 SR-1).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 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 || // |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+A keychain is a set of up to 64 keys, where each key is {A[i], K[i], V[i], S[i], T[i], S'[i], T'[i]} as described in draft-bonica-tcp-auth-05.txt, Authentication for TCP-based Routing and Management Protocols. They keys can be assigned to both sides of a BGP or LDP peer.The individual keys in a keychain have a begin- and end-time indicating when to use this key.
These fields map to the CLI tree as:
Table 5: 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.