book2

10.2 Access Control

Local password vs stronger access control

Самый простой способ remote access — обычный password на vty lines.

Но это слабый подход:

  • password может быть shared;
  • accountability почти нет;
  • credential protection слабее.

Лучше использовать SSH и AAA.

AAA

AAA (Authentication, Authorization, Accounting) — framework для контроля доступа к network devices. abbreviation

Разложим просто:

КомпонентВопрос
AuthenticationКто ты?
AuthorizationЧто тебе можно?
AccountingЧто ты делал?

Authentication

authentication — проверка identity пользователя или устройства. networkterm

Два основных варианта:

  • local AAA;
  • server-based AAA.

local AAA — usernames/passwords хранятся прямо на самом device. networkterm server-based AAA — authentication идёт через central AAA server. networkterm

Протоколы, которые надо знать:

  • RADIUS
  • TACACS+

RADIUS (Remote Authentication Dial-In User Service) — AAA protocol, часто используемый для centralized authentication. abbreviation TACACS+ (Terminal Access Controller Access-Control System Plus) — Cisco-oriented AAA protocol с централизованной authentication/authorization/accounting. abbreviation

Authorization

authorization — определение, что именно authenticated user имеет право делать. networkterm

То есть user может быть valid, но при этом иметь разные privilege levels и access rights.

Accounting

accounting — логирование действий пользователя для audit, troubleshooting и evidence. networkterm

Это важно, потому что без accounting сеть знает, что someone logged in, но не знает нормально, что он сделал.

802.1X

802.1X — port-based access control protocol, который не даёт unauthorized device просто так подключиться к LAN через switch port. networkterm

Три роли:

РольКто это
Supplicantclient device
Authenticatorswitch или AP
Authentication serverAAA server

supplicant — client endpoint, который пытается пройти 802.1X authentication. networkterm authenticator — device, который посредничает между client и AAA server. networkterm

Практические команды, которые полезно помнить

line vty 0 4
password ci5c0
login
ip domain-name example.com
crypto key generate rsa general-keys modulus 2048
username Admin secret Str0ng3rPa55w0rd
ssh version 2
transport input ssh
login local

line vty 0 4 ciscoIOScommand Открывает vty lines для настройки remote access.

password ci5c0 ciscoIOScommand Назначает простой line password. Это basic method, но security weak.

login ciscoIOScommand Говорит линии требовать password during login.

ip domain-name example.com ciscoIOScommand Нужен, в частности, для SSH/RSA key generation.

crypto key generate rsa general-keys modulus 2048 ciscoIOScommand Генерирует RSA keys для SSH.

username Admin secret Str0ng3rPa55w0rd ciscoIOScommand Создаёт local user с encrypted secret.

ssh version 2 ciscoIOScommand Включает SSH version 2 на device.

transport input ssh ciscoIOScommand Разрешает на line только SSH, а не Telnet.

login local ciscoIOScommand Заставляет line использовать local username/password database.

Exam trap

authentication и authorization — не одно и то же.

User может успешно войти, но это ещё не значит, что ему всё разрешено.

Как запомнить AAA

Who are you?

What can you do?

What did you do?

Если понял тему

Ты можешь объяснить, почему local password — слабый вариант, зачем нужен centralized AAA, и какую роль играет 802.1X на switch port.