Включаем использование Secure File Copy (SCP) протокола
configure
Not all options will be available on an enabled switch.
To disable the switch, use the "switchDisable" command.
Configure...
Fabric parameters (yes, y, no, n): [no] n
System services (yes, y, no, n): [no] n
ssl attributes (yes, y, no, n): [no] n
rpcd attributes (yes, y, no, n): [no] n
cfgload attributes (yes, y, no, n): [no] y
Enforce secure config Upload/Download (yes, y, no, n): [no] y
Enforce signature validation for firmware (yes, y, no, n): [no] n
Add Suffix to the uploaded file name (yes, y, no, n): [no] n
webtools attributes (yes, y, no, n): [no] n
Генерируем приватный ключ
seccertutil genkey -keysize 1024 -nowarn
Генерируем CSR запрос для создания SSL сертификата и сохраняем этот запрос в файл на другом сервере
seccertutil gencsr -country UA -state Kiev -locality Kiev -org <org_name> -orgunit IT -cn <FC_switch_FQDN>
seccertutil export -protocol scp -ipaddr ftpsrv.domain.com -remotedir /var/www/files/san -login user - эта команда сохранит CSR запрос на сервере
ftpsrv.domain.com
в папке /var/www/files/san.
Генерируем SSL сертификат для свича
На издающем CA сервере (issuingca.flyuia.com) для создания SSL сертификата выполняем команду
certreq -submit -attrib "CertificateTemplate:WebServer" filename.csr
ВНИМАНИЕ!!!! Для избежания проблем, лучше всего после генерации SSL сертификата экспортировать его в бинарном DER формате
Устанавливаем SSL сертификат на свич и включаем HTTPS
seccertutil import -config swcert -nowarn -enable https -protocol scp -ipaddr ftpsrv.domain.com -remotedir /var/www/files/san -certname cert_file_der.cer -login user - эта команда загружает SSL сертификат cert_file_der.cer на свич с сервера ftpsrv.domain.com из папки /var/www/files/san/ и включает использование HTTPS
Примечание. В FC коммутаторах FC5022 в составе шасси Flex уже изначально пристутствуют самоподписанные сертификаты для входа через Web и корневой сертификат. Поэтому для этих коммуторов необходимо дополнительно сделать такой шаг. Импортировать таже сертфикаты центров сертификации. Для этого берем два сертфиката: промежуточный и корневой, в формате BASE64 и создаем один файл сертифката по типу:
-----BEGIN CERTIFICATE-----
intermediate cert
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
root cert
-----END CERTIFICATE-----
Затем импортируем этот комбинированный сертификат в коммутатор командой
seccertutil import -config cacert -nowarn -protocol scp -ipaddr ftpsrv.domain.com -remotedir /var/www/files/san -certname SSL_package.cer -login user
Чтобы при заходе через Web не спрашивало вопросов о недоверенном сертификате, нужно импортировать корневой и промежуточный сертификаты в хранилище браузера и Java. Импорт сертификатов в хранилище Java делается командой:
cd c:\Program Files\Java\jre6\bin
keytool -importcert -alias Alias_RootCA -file "RootCA.crt"
keytool -importcert -alias Alias_IntermCA -file "IntermediateCA.crt"
При импорте запросит пароль к хранилищу сертификатов. Стандартный пароль для хранилища сертификатов в Java changeit
Создаем группу, в которую будут включены пользователи с доступом к свичу. Таких групп может быть несколько с разным уровнем доступа. Например, пусть группа в Active Directory называется gr_SAN_Admins. И добавляем нужных пользователей в эти группы в AD.
Связываем группу AD и локальную группу свича. Локальную группу нужно выбирать исходя из того какие права хотим выдать пользователям группы в AD.
ldapcfg --maprole gr_SAN_Admins admin
Добавление списка Admin Domains на свиче куда пользователи будут иметь доступ. На наших свичах всего один Active Domain с номером 0.
Запускаем ADSI.msc, находим нужного пользователя.
Заходим в его свойства на вкладку "Редактор атрибутов". Находим пустой атрибут adminDescription.
Устанавливаем значение атрибута adminDescription:
adlist_<Admin Domains list>_endAd
<Admin Domains list> - список доступных пользователю Admin Domain разделенных символом нижнее подчеркивание ( _ ). Первый в списке Active Domain будет являться Home Active Domain (homeAD).
Например, в нашем случае есть только один Active Domain с номером 0. Поэтому мы устанавливаем такое значение атрибута:
adminDescription = adlist_0_endAd
Добавляем контроллеры домена на свич для аутентификации
aaaconfig --add DC1.domain.com -conf ldap -p 389 -d domain.com
aaaconfig --add DC2.domain.com -conf ldap -p 389 -d domain.com
Включаем аутентификацию через AD
aaaconfig --authspec "ldap;local"
Эта команда устанавливает, что пользователь сначала будет аутентифицироваться через Active Directory и, если не смог аутентифицироваться в AD, будет попытка аутентификации с помощью локальной базы пользователей свича.
Если все прошло успешно, на свич можно будет зайти с учеткой AD. Имя пользователя при заходе на свич нужно вводить в виде <username>@<domain>. Например: user@domain.com