Network Security Authentication Function (AAA Framework)
🎯 วัตถุประสงค์ของ Authentication Function
Authentication (การยืนยันตัวตน) บังคับให้ผู้ใช้ พิสูจน์ตัวตน (Prove Identity) ก่อนเข้าถึงทรัพยากรเครือข่าย เพื่อให้ระบบสามารถตัดสินใจได้ว่า ผู้ใช้นั้นควรได้เข้าถึงทรัพยากรใด (Authorization)
🔐 AAA Framework (Authentication, Authorization, Accounting)
| Component | คำถาม | ตัวอย่าง |
| Authentication (Who are you?) | คุณคือใคร? | Username/Password, Certificate, MFA, Biometric, Token |
| Authorization (What can you do?) | คุณได้ทำอะไร? | RBAC, ACL, Privilege Levels, Policy Enforcement |
| Accounting (What did you do?) | คุณทำอะไรไป? | Logging, Auditing, Billing, Session Tracking |
📡 AAA Protocols
- RADIUS (Remote Authentication Dial-In User Service): UDP 1812/1813, 標準, Widely Used (Wi-Fi 802.1X, VPN, Network Devices)
- TACACS+ (Terminal Access Controller Access-Control System Plus): TCP 49, Cisco Proprietary, Granular Command Authorization, Full Packet Encryption
- Diameter: TCP/SCTP 3868, Successor to RADIUS, Mobile/3GPP/VoIP, Larger Attribute Space
- LDAP/Active Directory: Centralized Identity Store, Kerberos Integration
- SAML/OAuth/OIDC: Web/Cloud Identity Federation, SSO
🔄 AAA vs Local Database
| Feature | Local Database | AAA Server (RADIUS/TACACS+) |
| Scalability | ต่ำ (ต่อ Device) | สูง (Centralized) |
| Command Authorization | ไม่มี (Granular) | ✅ TACACS+ รองรับ |
| Accounting/Logging | จำกัด | ✅ ครบถ้วน |
| Failover/Redundancy | ยาก | ง่าย (Primary/Secondary) |
| Fallback | N/A | Local Database as Fallback |
| Management | กระจายตัว | Centralized Policy |
🔧 Cisco AAA Configuration Example
! Enable AAA
aaa new-model
! Authentication: Login uses RADIUS group, fallback local
aaa authentication login default group radius local
! Authorization: Commands use TACACS+, fallback local
aaa authorization commands 15 default group tacacs+ local
aaa authorization exec default group tacacs+ local
! Accounting: All commands, start-stop
aaa accounting commands 15 default start-stop group tacacs+
aaa accounting exec default start-stop group radius
! Server Groups
radius server RADIUS_SERVER
address ipv4 192.168.1.100 auth-port 1812 acct-port 1813
key 7 SECRET_KEY
tacacs server TACACS_SERVER
address ipv4 192.168.1.101
key 7 SECRET_KEY
🔑 ความแตกต่าง: login local vs AAA Authentication
- login local: ใช้ Local Database เท่านั้น, ไม่มี Fallback Method อื่น, ไม่มี Command Authorization
- AAA Authentication: รองรับ Multiple Methods (RADIUS → TACACS+ → Local), Command Authorization (TACACS+), Accounting, Centralized Management
📋 สรุป
Authentication Function = บังคับ Prove Identity → เปิดทางให้ Authorization ตัดสินสิทธิ์ → Accounting บันทึก Audit Trail
AAA Server (RADIUS/TACACS+) = Centralized, Scalable, Granular Control, Audit Ready → แนะนำสำหรับ Enterprise