TACACS

Short description: Computer network protocol

Terminal Access Controller Access-Control System (TACACS, /ˈtækæks/) refers to a family of related protocols handling remote authentication and related services for network access control through a centralized server. The original TACACS protocol, which dates back to 1984, was used for communicating with an authentication server, common in older UNIX networks including but not limited to the ARPANET, MILNET and BBNNET. It spawned related protocols:

* Extended TACACS (XTACACS) is a proprietary extension to TACACS introduced by Cisco Systems in 1990 without backwards compatibility to the original protocol. TACACS and XTACACS both allow a remote access server to communicate with an authentication server in order to determine if the user has access to the network.
* TACACS Plus (TACACS+) is a protocol developed by Cisco and released as an open standard beginning in 1993. Although derived from TACACS, TACACS+ is a separate protocol that handles authentication, authorization, and accounting (AAA) services. TACACS+ has largely replaced its predecessors.

## Contents

* 1 History
* 2 Technical descriptions
* 2.1 TACACS
* 2.2 XTACACS
* 2.3 TACACS+
* 2.4 Comparison with RADIUS
* 3 Implementations
* 4 Standards documents
* 5 See also
* 6 References
* 7 External links

## History

TACACS was originally developed in 1984 by BBN, later known as BBN Technologies, for administration of ARPANET and MILNET, which ran unclassified network traffic for DARPA at the time and would later evolve into the U.S. Department of Defense's NIPRNet. Originally designed as a means to automate authentication - allowing someone who was already logged into one host in the network to connect to another on the same network without needing to re-authenticate - it was first formally described by BBN's Brian Anderson TAC Access Control System Protocols, BBN Tech Memo CC-0045 with minor TELNET double login avoidance change in December 1984 in IETF RFC 927.[1][2] Cisco Systems began supporting TACACS in its networking products in the late 1980s, eventually adding several extensions to the protocol. In 1990, Cisco's extensions on top of TACACS became a proprietary protocol called Extended TACACS (XTACACS). Although TACACS and XTACACS are not open standards, Craig Finseth of the University of Minnesota, with Cisco's assistance, published a description of the protocols in 1993 as IETF RFC 1492 for informational purposes.[1][3][4]

## Technical descriptions

### TACACS

TACACS is defined in RFC 8907 (older RFC 1492), and uses (either TCP or UDP) port 49 by default. TACACS allows a client to accept a username and password and send a query to a TACACS authentication server, sometimes called a TACACS daemon. It determines whether to accept or deny the authentication request and sends a response back. The TIP (routing node accepting dial-up line connections, which the user would normally want to log in into) would then allow access or not, based upon the response. In this way, the process of making the decision is "opened up" and the algorithms and data used to make the decision are under the complete control of whoever is running the TACACS daemon.

### XTACACS

Extended TACACS (XTACACS) extends the TACACS protocol with additional functionality. It also separates the authentication, authorization, and accounting (AAA) functions out into separate processes, allowing them to be handled by separate servers and technologies.[5]

### TACACS+

TACACS+ is a Cisco designed extension to TACACS that encrypts the full content of each packet. Moreover, it provides granular control in the form of command-by-command authorization.

TACACS+ has generally replaced TACACS and XTACACS in more recently built or updated networks. TACACS+ is an entirely new protocol which is not compatible with its predecessors, TACACS and XTACACS. Because TCP is a connection oriented protocol, TACACS+ is able to detect and correct network transmission errors.

### Comparison with RADIUS

TACACS+ uses TCP (while RADIUS operates over UDP).[6]

Because TCP is a connection-oriented protocol, TACACS+ has to implement transmission control. RADIUS, however, is not required to detect and correct transmission errors such as packet loss or timeouts, etc., as it makes use of UDP which is connectionless. RADIUS encrypts only the users' password as it travels from the RADIUS client to RADIUS server. All other information such as the username, authorization, accounting are transmitted in clear text. Therefore, it is vulnerable to different types of attacks. TACACS+ encrypts all the information mentioned above and therefore does not have the vulnerabilities present in the RADIUS protocol.

## Implementations

Client implementations

* Arista EOS, a proprietary implementation
* Cisco IOS, a proprietary implementation
* Fortinet FortiOS, a proprietary implementation
* Juniper Junos OS, a proprietary implementation
* Palo Alto Networks PAN-OS, a proprietary implementation
* Pam_tacplus, a TACACS+ protocol client library and PAM module
* Augur Systems TACACS+, a free open-source Java library

Server implementations

* FreeRADIUS TACACS+ module, an open-source implementation available since version 4.0
* Tac_plus by Shrubbery, an open-source implementation for Linux
* Tac_plus-ng by Pro-Bono-Publico, an open-source implementation for Linux
* Tac_plus VM, tac_plus with an added webadmin in a VM (no longer updated)
* Aruba ClearPass Policy Manager, a proprietary implementation
* Cisco Identity Services Engine, a proprietary implementation
* Portnox TACACS+-as-a-Service, a proprietary implementation as a cloud-hosted service
* Pulse Secure Pulse Policy Secure, a proprietary implementation
* TACACS.net, a proprietary implementation of TACACS+ for Windows
* Augur Systems TACACS+, a free open-source Java library (full client, with framework for a server)

## Standards documents

* RFC 927 – TACACS User Identification Telnet Option
* RFC 1492 – An Access Control Protocol, Sometimes Called TACACS
* RFC 8907 – The Terminal Access Controller Access-Control System Plus (TACACS+) Protocol
* RFC 9105 – A YANG Data Model for Terminal Access Controller Access-Control System Plus (TACACS+)

## See also

* Diameter
* RADIUS

## References

1. ↑ 1.0 1.1 Dooley, Kevin; Brown, Ian (2003). Cisco Cookbook. O'Reilly Media. pp. 137. ISBN 9781449390952. http://shop.oreilly.com/product/9780596003678.do.
2. ↑ Anderson, Brian (December 1984). "TACACS User Identification Telnet Option". Internet Engineering Task Force. https://tools.ietf.org/html/rfc927.
3. ↑ Ballad, Bill; Ballad, Tricia; Banks, Erin (2011). Access Control, Authentication, and Public Key Infrastructure. Jones & Bartlett Learning. pp. 278–280. ISBN 9780763791285.
4. ↑ Finseth, Craig (July 1993). "An Access Control Protocol, Sometimes Called TACACS". Internet Engineering Task Force. https://tools.ietf.org/html/rfc1492.
5. ↑ "Mike Meyers' CompTIA Security+ Certification Passport, Second Edition - PDF Free Download" (in en). https://epdf.pub/mike-meyers-comptia-security-certification-passport-second-edition.html.
6. ↑ "TACACS+ and RADIUS Comparison". Cisco. 14 January 2008. http://www.cisco.com/c/en/us/support/docs/security-vpn/remote-authentication-dial-user-service-radius/13838-10.html.

## External links

* An Analysis of the TACACS+ Protocol and its Implementations from a security standpoint, by Openwall
* TACACS+ Benefits and Best Practices

* v
* t
* e

Authentication

Authentication APIs|

* BSD Authentication (BSD Auth)
* eAuthentication
* Generic Security Services API (GSSAPI)
* Java Authentication and Authorization Service (JAAS)
* Pluggable Authentication Modules (PAM)
* Simple Authentication and Security Layer (SASL)
* Security Support Provider Interface (SSPI)
* XCert Universal Database API (XUDA)

Authentication protocol|

* ACF2
* AKA
* CAVE-based authentication
* Challenge-Handshake Authentication Protocol (CHAP)
* MS-CHAP
* Central Authentication Service (CAS)
* CRAM-MD5
* Diameter
* Extensible Authentication Protocol (EAP)
* Host Identity Protocol (HIP)
* IndieAuth
* Kerberos
* LAN Manager
* NT LAN Manager (NTLM)
* OAuth
* OpenID
* OpenID Connect (OIDC)
* Password-authenticated key agreement protocols
* Password Authentication Protocol (PAP)
* Protected Extensible Authentication Protocol (PEAP)
* Remote Access Dial In User Service (RADIUS)
* Resource Access Control Facility (RACF)
* Secure Remote Password protocol (SRP)
* TACACS
* Woo–Lam

* Category
* Commons

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/TACACS. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=TACACS&oldid=3379408"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template