Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление
Настройка WLC

Для настройки TLS авторизации необходимо:

  1. Сгенерировать клиентский сертификат;
  2. Настроить radius-server local;
  3. Загрузить и установить созданный сертификат на клиентское устройство.

Генерация клиентского сертификата

Для генерации сертификата клиента нужно создать private-key, сгенерировать csr, выпустить сертификат клиента и создать контейнер pkcs12.

Генерация private-key

Для каждого сертификата клиента нужно создать private-key. Используется алгоритм RSA, размер ключа в битах задается в диапазоне от 1024 до 4096 (не обязательный параметр, по умолчанию 2048 бит).

Команда имеет вид:

Блок кода
crypto generate private-key rsa [размер ключа 1024-4096] filename <Имя файла для ключа .pem>

если Если ввести знак "?" после filename, то в подсказке будет показан список файлов с ключами в директории crypto:private-key/.

...

Можно выбрать файл, который уже существует и перезаписать его:

Блок кода
wlc# crypto generate private-key rsa 1024 filename tester.pem
Destination file already exists.
Do you really want to overwrite it? (y/N): y
..........++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
..................++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Если файлов слишком много, то в списке будет присутствовать только часть сертификатов:

Блок кода
wlc# crypto generate cert csr tester.csr ca ?
  CRYPTO FILES  Select file:

  ----FILE----
  E828C1000002.pem                  E828C1000004.pem                  E828C1000006.pem
  E828C1000008.pem                  E828C100000A.pem                  E828C100000C.pem
  E828C100000E.pem                  E828C1000010.pem                  E828C1000012.pem
  E828C1000014.pem                  E828C1000016.pem                  E828C1000018.pem
  E828C100001A.pem                  E828C100001C.pem                  E828C100001E.pem
  E828C1000020.pem                  E828C1000022.pem                  E828C1000024.pem
  E828C1000026.pem                  E828C1000028.pem                  E828C100002A.pem
  E828C100002C.pem                  E828C100002E.pem                  E828C1000030.pem
  E828C1000032.pem                  E828C1000034.pem                  E828C1000036.pem
  E828C1000038.pem                  E828C100003A.pem                  E828C100003C.pem
  E828C100003E.pem                  E828C1000040.pem                  E828C1000042.pem
  E828C1000044.pem                  E828C1000046.pem                  E828C1000048.pem
  E828C100004A.pem                  E828C100004C.pem                  E828C100004E.pem
  E828C1000050.pem                  E828C1000052.pem                  E828C1000054.pem
  E828C1000056.pem                  E828C1000058.pem                  E828C100005A.pem
  E828C100005C.pem                  E828C100005E.pem                  E828C1000060.pem
  E828C1000062.pem                  E828C1000064.pem                  E828C1000066.pem
  E828C1000068.pem                  E828C100006A.pem                  E828C100006C.pem
  E828C100006E.pem                  E828C1000070.pem                  E828C1000072.pem
  E828C1000074.pem                  E828C1000076.pem                  E828C1000078.pem
  E828C100007A.pem                  E828C100007C.pem                  E828C100007E.pem
  E828C1000080.pem                  E828C1000082.pem                  E828C1000084.pem
  E828C1000086.pem                  E828C1000088.pem                  E828C100008A.pem
  ...

...

Блок кода
titleПример генерации private-key
collapsetrue
wlc# crypto generate private-key rsa 4096 filename tester.pem
.+...+..................+....+...+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+............+.+......+.....+.+.....+...+.........+.......+.........+.....+.......+..................+..+..........+..............+..........+...........+.........+.........+.+...................................+...+...+....+..............+....+...........+.......+..+...+....+...+.................+....+..+.......+..+.+...+.........+.....+.+..+..................+....+..+..........+.....+..........+.....+.+.....+.........+....+..+.......+..+.+...+......+...+...........+.......+..+......+.+...+...........+..........+.....+.+......+.....+.........+...............+....+..+.............+..+..........+...+.....+.........+.......+....................................+.....+............+............+.........+....+.....+...............+............+.+.....+..........+..+.......+.........+...........+..........+...+........+....+........+......+.+...+.....+.............+........+....+...........+....+..+....+.....+.........+.......+...+..+...+...+....+....................+...............+......+...................+..............+....+.................+...+.+..+...+....+...+........+....+..............................+...+...............+.................+......................+........+...............+.....................+.+......+.....+.........+.........+....+........+.......+......+.................+..........+.........+........+.+.....+.+...+...........+.......+...+.........+.....+.........................+......+......+.....+.........+......+.+..+.+..+.........+.+..................+..+..............................+.......+.....+.+.....+.+...+......+.....+............+.......+..................+.....+.........+....+..............+.+...............+....................+.+.....+.............+.....+.......+.........+..+.............+...........+...+...+....+...+....................+......+.......+...+.....+.........+.............+...+..............+.......+.....+....+..............+......+........................+..........+..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
...+................+......+..+.+......+.....+......+...+.+...+...+...+.....+....+......+..+.......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..+.....................+......+..........+........+....+...+...+......+.........+......+...+.....+...+....+.....+......+...+......+...+.......+...............+........+......+.+..............+......+.+............+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..........+.....................+...............+.........+..........+...+......+......+......+..+...+.........+................+..+......+.+......+..+......+.......+............+...+..+.+.........+..+...+.+...............+..+.............+...........+.+............+.....................+.....+....+..+..................+...+...+.........+..........+............+.....+...............+.+..+.......+.....+....+..+...+.......+............+...............+........+...+.+...............+...........+............+......+....+..+.....................+....+...+...........+...............+......+..................+.+..+....+...+..+..........+.........+............+.........+...+.....+...+...+.+........+.+.....+.+...+.....+.+...........+....+.....+......+.+............+..+................+..+.+..............+...+..........+...+.....+.........+.+....................+......+.........+.+......+...+..+...+..........+......+...........+....+...+...+..+...+..........+..+.+....................+.......+.....+.............+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Генерация csr

При генерации csr нужно выбрать private-key (файл, сгенерированный на предыдущем шаге), указать common-name в формате <имя пользователя>@<домен> и выбрать файл для сохранения csr (filename). Имя пользователя  и домен в common name должны соответствовать реальному домену и имени пользователя в этом домене.

Помимо этих обязательных параметров существуют опциональные параметры:

  • alternative-name  - альтернативное имя пользователя (5 - 255 символов);
  • country - country  код страны (2 символа);
  • email-address - адрес электронной почты (3 - 64 символа);
  • locality - местонахождение клиента (1 - 128 символов);

  • organization - название организации (1 - 64 символа); 
  • organizational-unit - название структурного подразделения организации (1 - 64 символа);
  • state - название региона / области (1 - 128 символов).

...

Блок кода
titleПример созданного сертификата
collapsetrue
wlc# show crypto certificates csr tester.csr
Version:                                1
Subject name:
    C(countryName):                     ru
    ST(stateOrProvinceName):            Novosibirsk_oblast
    L(localityName):                    4_floor
    O(organizationName):                ELTEX
    OU(organizationalUnitName):         wireless
    CN(commonName):                     tester@wlc.root
    emailAddress(emailAddress):         test@test.com
Signature:
    Algorithm:                          sha256WithRSAEncryption
    Value:                              32:DE:27:BE:38:E0:B4:1A:BE:57:0C:50:5E:05:D5:9F:3D:ED:
                                        12:EC:27:3F:42:17:3D:36:EC:72:4A:52:AF:0C:C1:FB:6A:CA:
                                        12:27:E7:C2:31:0A:5A:2D:5D:C3:5D:6B:80:6E:86:D1:66:06:
                                        4F:21:AC:A9:40:E7:1F:CC:FD:D0:9B:C4:D7:F0:56:84:19:07:
                                        1E:D4:28:0F:C9:36:26:D6:D1:9F:25:F6:73:04:DB:9A:31:94:
                                        79:BE:8D:8E:97:05:0E:F8:A7:CD:A7:F8:80:6E:E1:A2:7B:D5:
                                        D7:1F:73:8E:D0:C3:2E:F3:D2:EF:87:E0:9A:F8:F3:6B:A6:4D:
                                        E3:6C:5A:B7:6E:2A:61:DE:BF:8E:FB:94:D5:DC:40:15:39:70:
                                        43:AA:9B:B1:76:43:BA:7E:52:FD:46:6F:E3:1B:C0:19:09:86:
                                        6E:71:9B:37:BD:A5:B9:0C:E8:66:4E:8E:DF:E0:9B:70:07:48:
                                        15:CD:6F:8E:80:87:56:89:74:17:9D:C3:D5:2A:92:C4:BB:16:
                                        D9:09:E7:8A:EB:D0:3B:C4:A8:74:92:92:C3:39:40:3D:8E:62:
                                        7D:A7:B6:22:D9:5D:50:5D:BB:CD:B5:0D:47:D2:F6:C1:D6:FF:
                                        FA:18:58:15:A9:52:B1:D3:3C:94:A4:40:4B:15:D1:48:F8:53:
                                        E8:A8:3A:35
Subject Public Key Info:
    Algorithm:                          RSA
    Key size:                           2048
    Exponent:                           65537
    Modulus:                            00:AE:90:97:89:02:4D:49:6F:D7:45:9F:19:8D:4B:F7:30:6B:
                                        5C:DF:FE:2B:D0:E4:85:66:45:2E:2E:98:20:E8:B8:A2:42:29:
                                        C1:1A:A1:44:B4:DD:B1:BE:93:45:1F:0E:7A:A6:A9:C1:5B:D6:
                                        DD:74:4C:E6:DE:D2:B9:12:5A:8F:33:DE:21:64:08:BE:1B:D5:
                                        1B:C2:2C:07:AB:4D:40:3F:87:C7:60:41:EC:9C:48:35:D0:16:
                                        70:DD:A7:28:26:34:A4:54:E4:55:14:72:2A:0A:39:A8:39:E5:
                                        4A:CA:1F:D9:10:4C:7B:BC:BE:F4:08:64:CE:A0:43:7D:FA:EB:
                                        B4:7C:F7:0B:D6:AF:C9:AA:37:B9:9A:10:6F:3D:2F:D7:71:FC:
                                        DB:6C:76:E5:9F:25:DC:80:D6:BB:71:E7:9C:31:42:F8:A3:D4:
                                        67:E3:5D:F8:FB:9A:EF:44:E4:E3:C1:8C:00:23:9D:C0:37:76:
                                        23:9D:B5:B3:C4:45:D7:84:C9:10:4D:26:56:CF:6D:AA:F3:10:
                                        34:AC:C4:AC:7B:7A:CA:D1:BC:D6:D6:84:74:AB:42:FB:AE:56:
                                        EC:26:09:DF:A1:2B:B1:AD:D5:F7:78:8C:89:0D:B1:5F:A9:D1:
                                        23:63:8E:8E:BF:AE:26:F8:EC:39:8A:4C:45:5C:3B:AB:BE:40:
                                        23:7D:73:F2:A7
X509v3 Subject Alternative Name:
    Names:                              IP Address:10.10.10.10
    Critical:                           No

Генерация сертификата, подписанного CA от RADIUS

После генерации csr клиента нужно подписать его с помощью CA-сертификата от RADIUS сервера. 

...

Блок кода
titleПример сгенерированного сертификата
collapsetrue
wlc-30# sh crypto certificates cert tester.crt
Version:                                1
Serial:                                 56:5D:6F:19:3F:AB:17:5A:B5:7A:81:0F:0A:2A:AD:7F:9B:20:
                                        87:41
Subject name:
    C(countryName):                     ru
    ST(stateOrProvinceName):            Novosibirsk_oblast
    L(localityName):                    4_floor
    O(organizationName):                ELTEX
    OU(organizationalUnitName):         wireless
    CN(commonName):                     tester@wlc.root
    emailAddress(emailAddress):         test@test.com
Issuer name:
    C(countryName):                     RU
    ST(stateOrProvinceName):            Russia
    L(localityName):                    Novosibirsk
    O(organizationName):                Eltex Enterprise Ltd
    CN(commonName):                     Eltex default certificate authority
Validity period:
    Valid after:                        25.12.2023 09:40:47
    Invalid after:                      01.12.2123 09:40:47
Signature:
    Algorithm:                          sha256WithRSAEncryption
    Value:                              B5:8A:92:2A:A8:F0:82:0A:97:0D:D5:D1:5D:33:5F:F3:E2:A1:
                                        EE:3D:3D:F6:87:09:D0:4A:1F:E4:43:D8:E8:36:E5:A0:88:E2:
                                        80:80:59:EA:24:57:02:3D:3D:0A:21:4C:9C:FC:D8:88:27:3E:
                                        DF:96:75:A5:48:26:64:61:CE:ED:C9:91:AA:F4:10:63:2A:2D:
                                        95:8A:85:7E:55:68:8D:F3:08:F7:F4:08:61:1E:78:D5:51:75:
                                        89:23:E7:B5:49:18:55:E5:57:25:4C:3D:7E:65:73:60:AF:DC:
                                        50:72:2B:69:C8:A7:E7:03:7B:D7:C9:FF:5F:B2:17:3E:F0:71:
                                        46:E0:7F:14:77:00:D1:BB:B3:01:0F:4E:D0:F4:20:06:72:C2:
                                        62:53:D4:4C:84:E1:FD:95:3A:FE:18:77:AE:D8:ED:83:6C:47:
                                        4C:43:41:64:8E:60:38:8F:04:99:97:BE:C3:CB:DB:20:85:90:
                                        A9:0E:88:3D:D0:47:65:1D:CB:F5:9B:D9:87:36:9C:9B:CA:02:
                                        43:3F:45:34:F0:82:63:DA:A4:D3:88:07:10:E9:BD:F5:0C:BD:
                                        3C:E1:8A:2B:33:B9:07:F6:32:2A:D7:ED:91:8F:C3:F7:B2:C2:
                                        D1:B4:2A:F5:30:56:F2:5D:FF:DC:AC:03:C8:75:BA:D2:3F:3D:
                                        39:BD:59:2F
Public key info:
    Algorithm:                          RSA
    Key size:                           1024
    Exponent:                           65537
    Modulus:                            00:B0:52:66:23:B2:31:DE:EB:9F:44:BF:62:58:86:67:71:F0:
                                        79:A0:77:42:11:75:A3:F3:36:69:47:B5:5A:AD:64:98:9C:D4:
                                        29:E8:5D:89:E0:BB:90:6C:69:19:75:FC:B9:3F:B8:A5:D0:2E:
                                        47:59:A9:59:A1:6A:55:2E:70:3E:B3:AD:A8:FE:9B:33:C6:6C:
                                        90:B7:BD:4F:8D:C3:5C:6F:D5:39:9C:87:A1:54:C6:D2:E6:AC:
                                        F1:6A:23:77:36:6F:65:96:41:F5:06:08:EE:EA:C7:4C:C6:DA:
                                        F9:CA:9B:C5:69:3D:FF:18:09:8E:C9:E6:FE:3B:68:85:7B:F2:
                                        88:85:01

Создание контейнера PKCS #12 с ключом и сертификатами

Формат .p12, также известный как PKCS #12, является стандартным форматом контейнера, который используется для хранения и обмена зашифрованными или подписанными данными. Он может содержать закрытые ключи, сертификаты, цепочки сертификации, а также другую смежную информацию. Рекомендуется использовать именно этот формат, так как формат .p12 поддерживается практически всеми операционными системами, программным обеспечением и устройствами, включая Windows, macOS, Linux, Android и iOS. Контейнеры формата .p12 могут быть защищены паролем, что обеспечивает дополнительный уровень безопасности. Пароль может быть использован для шифрования закрытых ключей и сертификатов, что делает их доступными только авторизованным пользователям. В формате .p12 можно хранить не только сертификаты, но и целую цепочку сертификации, что упрощает процесс установки и обновления сертификатов на различных устройствах.

...

Блок кода
titleПример генерации контейнера
wlc# crypto generate pfx private-key tester.pem cert tester.crt ca default_ca.pem password ascii-text 12345678 filename tester.p12

Настройка radius-server local

В настройках radius-server local необходимо включить tls mode domain:

Блок кода
wlc(config-radius)# tls mode domain

Настройка SSID и radius-профиля

Для корректной работы tls-авторизации необходимо настроить radius-профиль и ssid-профиль на работу с нужным доменом.

Блок кода
configure
	wlc
		ssid-profile default-ssid
    		description default-ssid
    		ssid wlc_tls_ssid
    		radius-profile tls-radius
  		exit
	    radius-profile tls-radius
    		auth-address 192.168.1.1
    		auth-password ascii-text encrypted 8CB5107EA7005AFF
    		domain wlc.root
  		exit

Настройка пользователя

Для завершения настройки wlc нужно указать сгенерированный сертификат в настройках пользователя, для которого этот сертификат сгенерирован. В примере common-name tester@wlc.root, поэтому нужно перейти к настройкам пользователя tester в домене wlc и указать название файла с сертификатом этого пользователя командой: 

...

Блок кода
titleПример конфигурации radius-server local:
collapsetrue
radius-server local
  nas ap
    key ascii-text encrypted 8CB5107EA7005AFF
    network 192.168.1.0/24
  exit
  nas local
    key ascii-text encrypted 8CB5107EA7005AFF
    network 127.0.0.1/32
  exit
  domain default
  exit
  domain wlc.root
    user tester
      password ascii-text encrypted 8CB5107EA7005AFF
      crypto cert tester.crt
    exit
  exit
  virtual-server default
    no proxy-mode
    auth-port 1812
    acct-port 1813
    enable
  exit
  enable
  tls mode domain
  crypto private-key default_cert_key.pem
  crypto cert default_cert.pem
  crypto ca default_ca.pem
exit

Установка клиентского сертификата

Экспорт сертификата

Для установки сертификата на устройство клиента нужно экспортировать его с wlc. Это можно сделать с помощью команды copy с использованием протоколов ftp, http, https, scp, sftp, tftp, а так же на usb  и mmc устройства. Команда передачи контейнера с сертификатом  имеет вид:

...

Блок кода
titleПример команды экспорта сертификата с помощью tftp
collapsetrue
wlc-30# copy crypto:pfx/tester.p12 tftp://100.110.1.79:/tester.p12
|******************************************| 100% (2861B) Success!

Установка сертификата для устройств с Android версии 11 и выше

После того как Вы скопировали содержимое архива на клиентское устройство, зайдите в настройки и выберите пункт "Пароли и безопасность".

...

  • Выберите расположение распакованного архива.
  • Для загрузки корневого сертификата выберите файл "wireless-ca.crt", затем будет предложено ввести название.
  • Далее необходимо загрузить пользовательский сертификат, для этого выберите файл "user.p12", далее введите пароль, указанный в сертификате и название.

 

Установка сертификата в IOS

Для установки сертификата в IOS, отправьте файлы с сертификатами (*.crt и *.p12) почтой на свой e-mail и откройте его на телефоне. Либо загрузите файлы на свой телефон через usb.

...

Установка пользовательского сертификата происходит аналогично установке корневого сертификата, только необходимо ввести пароль сертификата. Пароль соответствует параметру сертификата Password, который Вы всегда можете посмотреть в файле .txt

...


Установка сертификата в Windows

  • Открываем файл .р12. Никакие параметры менять не нужно. Нажимайте "Далее"

...

  • Установка пользовательского и корневого сертификата успешно завершена

...

Подключение к SSID с поддержкой TLS

Подключение с  Android

В меню Wi-Fi найдите созданный ранее SSID test_enterprise

...

При правильности введенных данных, авторизация пройдет успешно.

...

Подключение с Windows

Перед подключением к сети необходимо создать и настроить новое подключение.
Для этого перейдите в "Центр управления сетями и общим доступом"  "Создание и настройка нового подключения или сети".

...

Если параметры введены верно, подключение пройдет успешно.

Подключение с Ubuntu

Создайте новое подключение к сети:

...

Если все сделано верно, подключение пройдет успешно.

...

Подключение с IOS

В меню настройки Wi-Fi находим нужную сеть. При подключении к сети вводим свой личный логин, выбираем режим EAP-TLS. Нажимаем на пункт удостоверение, ставим галочку на наш сертификат, возвращаемся назад на ввод пароля, жмем подключиться. В появившемся окне жмем кнопку принять.

Обновление и замена серверного сертификата

Существуют команды для обновления дефолтного CA-сертификата и/или сертификата сервера:

...