Monday, October 5, 2015

BrocadeFC. Настройка FC коммутаторов Brocade


  • Базовая конфигурация
    1. Сначала нужно с помощью консольного кабеля прописать сетевой IP адрес для свича. Для этого подключаемся к свичу через консольный кабель, заходим в HyperTerminal и командой ipaddrset прописываем IP адрес.
    2. Настраиваем DNS командой dnsconfig.
    3. Настраиваем NTP и временную зону
      tsclockserver "timesrv1.domain.com;timesrv2.domain.com"
      tstimezone Europe/Kiev
    4. Настраиваем имя свича и шасси
      switchname <switch_name>
      chassisname <chassiss_name>
    5. Настраиваем SysLog
      syslogdipadd <syslog_ip_address>
  • Настройки безопасности
    1. Блокируем Telnet. Т.к. это небезопасный протокол.
      ipfilter --show
      По умолчанию есть две политики: default_ipv4 и default_ipv6. Для блокировки Telnet мы клонируем политику default_ipv4 и добавляем туда правило блокировки порта 23 (Telnet)
      ipfilter --clone BlockTelnet -from default_ipv4
      ipfilter --save BlockTelnet
      ipfilter --addrule BlockTelnet -rule 1 -sip any -dp 23 -proto tcp -act deny
      Сохраняем изменения в политике BlockTelnet и активируем ее.
      ipfilter --save
      ipfilter --activate BlockTelnet
      Проверяем, что политика BlockTelnet активирована
      ipfilter --show
      Name: BlockTelnet, Type: ipv4, State: active
      Rule    Source IP                               Protocol   Dest Port   Action
      1     any                                            tcp       23       deny
      2     any                                            tcp       22     permit
      3     any                                            tcp       23     permit
      4     any                                            tcp      897     permit
      5     any                                            tcp      898     permit
      6     any                                            tcp      111     permit
      7     any                                            tcp       80     permit
      8     any                                            tcp      443     permit
      9     any                                            udp      161     permit
      10    any                                            udp      111     permit
      11    any                                            udp      123     permit
      12    any                                            tcp      600 - 1023     permit
      13    any                                            udp      600 - 1023     permit
    2. Включаем использование 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
    3. Включаем использование HTTPS при заходе через Web
      • Генерируем приватный ключ
        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
    4. Включаем аутентификацию через Active Directory
      • Создаем группу, в которую будут включены пользователи с доступом к свичу. Таких групп может быть несколько с разным уровнем доступа. Например, пусть группа в 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

No comments:

Post a Comment