Хакеры обманули сканер радужной оболочки глаза Samsung Galaxy S8

Представителям немецкого хакерского сообщества Chaos Computer Clubs (ССС) удалось сравнительно легко обмануть сканер радужной сетчатки глаза смартфона Samsung Galaxy S8.

Хакеры опубликовали небольшой видеоролик о том, как обмануть сканер при помощи камеры, принтера и контактной линзы.

Наш специалист успешно сдал сертификационный экзамен Microsoft

Мы поздравляем нашу коллегу — системного администратора Дарью с успешной сдачей очередного сертификационного экзамена Microsoft.

Administering Windows Server 2012 (70-411) — это второй из трёх необходимых экзаменов для получения сертификации MCSA Windows Server 2012, которая подтверждает наличие квалифицированных навыков и знаний, необходимых для внедрения, управления, обслуживания и подготовки служб и инфраструктуры в среде Windows Server 2012.
сертификат Microsoft

Уязвимость браузера Edge позволяет красть пароли и файлы куки

Обнаружена уязвимость в коде веб-браузера Microsoft Edge в системе Windows 10. Она даёт злоумышленникам возможность получить доступ к паролям и куки-файлам на компьютере. Это открытие было сделано через несколько дней после того, как компания Google в рамках своего проекта Zero обнаружила в Windows 10 уязвимость, степень тяжести которой описала словом «вопиющая». Она была закрыта Microsoft в течение суток.

Wikileaks опубликовала файлы ЦРУ

На сайте Wikileaks опубликовали тысячи документов, которые, как утверждают авторы публикации, раскрывают хакерские приемы, к которым прибегает ЦРУ. В этих документах идет речь, в частности, о вирусах для компьютеров и смартфонов, а также о программном обеспечении, которое превращает «умные» телевизоры в прослушивающие устройства.

Пользователи не могут войти в Skype и Outlook из-за сбоя в Microsoft

В минувший вторник пользователи сервисов Microsoft из разных стран мира заявили о проблемах с аутентификацией. Сложности возникли с учетными записями Outlook, Skype и OneDrive.

Официально представители Microsoft так и не прокомментировали технические неполадки.

Shielded VM

Защита виртуальных машин, размещенных в дата центре

В век облачных технологий, когда у каждого пользователя есть собственное облако для хранения фотографий, а компании арендуют сервера для облачных вычислений, встает вопрос о конфиденциальности хранимой информации. И если пользователи для защиты хранимых данных могут обойтись доверием к облаку или использованием крипто контейнеров, то у компаний дела обстоят хуже. Так как в облака переносится не только хранилище данных, но и сами вычисления.
Особенно страдает защита виртуальных машин, так как в случае компрометации хоста, не составит труда получить доступ к ВМ. До недавнего времени ни один из гипервизоров будь то VMware, Xen, Hyper-V не предоставляли каких-либо значимых технологий по защите ВМ.

А если злоумышленник получит физический доступ к серверу, то спасти может только шифрование дисков, и то не во всех случаях. Конечно арендуя сервер, часть защитных мер берет на себя дата центр. Но в таком случае необходимо доверять администраторам дата центра.

С релизом Windows Server 2016, в Microsoft решили уделить больше внимания безопасности хоста и виртуальной инфраструктуры. Появилась возможность изолировать ВМ от администратора хоста Hyper-V. А используя виртуальный TPM стало возможным шифрование данных ВМ с помощью bitlocker.

Таким образом используя новые технологии можно размещать виртуальные машины на неподконтрольных серверах или в корпоративных дата центрах, но с повышенным уровнем безопасности, разграничивая роли физического и виртуального доступа.

Используемые технологии

Shielded VM – технология изолирующая виртуальную машину от хоста. Защищает ВМ от случайных или преднамеренных действий администратора хоста и от вредоносного программного обеспечения.

Для работы Shielded VM необходимо наличие сервера Host Guardian Service(HGS), который выдает ключи доступа к ВМ и проверяет здоровье хоста Hyper-V.

HGS поддерживает два вида аттестации:

  1. TPM-trusted аттестация – проверка проходит на основе идентификатора TPM, последовательности загрузки ОС и политики целостности кода. Таким образом можно быть уверенным, что на хосте работает только одобренный код.
  2. Admin-trusted аттестация – проверка происходит на основе принадлежности к группе безопасности Active Directory.

Схема работы HGS:
Схема работы HGS

При запуске виртуальной машины защищённый хост проходит аттестацию у HGS сервера, который принимает решение о передачи ключей доступа к виртуальной машине.

Admin-trusted аттестацию целесообразно использовать внутри предприятия, когда нужно изолировать доступ к ВМ от администраторов.

TPM-trusted аттестацию лучше использовать при размещении ВМ на арендованном сервере, чтобы обеспечить изоляцию данных и ВМ от работников Дата Центра.

Связь сервера HGS и защищённого хоста осуществляется по http (https) протоколу. HTTPS не требуется, для обеспечения безопасной связи, но, если вы захотите включить HTTPS, вам потребуется дополнительный сертификат. В случае AD аттестации необходимо дополнительно настроить односторонний доменный траст.

Virtual Secure Mode (VSM) – технология работающая на основе виртуализации, которая позволяет изолировать критические для безопасности операции в мини ОС.

На VSM работают две другие технологии:

  • Device Guard – проверка данных UEFI прошивки и драйверов режима ядра (контроль целостности кода);
  • Credential Guard – изоляция процесса аутентификации пользователей (LSA).

Принцип работы VSM:

Принцип работы VSM

Основная ОС запускается в виртуальном окружении. А гипервизор выступает в роли хостовой ОС, тем самым ограничивая доступ к оперативной памяти. В итоге вредоносное ПО запущенное на хосте даже с администраторскими правами не сможет получить доступ к памяти VSM. Также такая структура должна защищать от атаки на DMA порты.

Об организации Shielded VM

Заказывая Shielded VM подразумевается, что хост Hyper-V и сервер HGS находятся на стороне дата центра (так организованно в Microsoft Azure). В таком случае создавать экранированную виртуальную машину можно самостоятельно или используя предоставленный шаблон.

Создавая Shielded VM самостоятельно заказчик у себя на ПК разворачивает и настраивает ВМ, а потом шифрует ключом выданным Дата Центром. После переносит ВМ в Дата Центр.

Во втором случае, заказчик создает только PDK файл, защищающий ВМ созданную из шаблона. PDK файл связывает файл шаблона с HGS сервером. Но необходимо убедиться, что в шаблоне нет вредоносного ПО.

Первый способ выглядит более безопасным, так как файл данных ВМ попадает на хост в уже шифрованном виде. В любом случае ключи доступа к ВМ не попадают к администраторам Дата Центра в открытом виде.

Единственным местом подверженным атакам остался HGS сервер. Так как:

  • Администратор HGS может понизить требования к политике безопасности;
  • Злоумышленник получивший администраторские права может попробовать получить ключи доступа;
  • Для работы HGS требуется AD и нет требования к обязательному наличию TPM, следовательно, ключи вероятней всего будут храниться в открытом виде.

Исходя из этого появилась, идея проверить возможность работы Shielded VM в условиях, когда сервер HGS размещается в своей инфраструктуре. Это еще больше обезопасит виртуальные машины. Также такой способ можно использовать если Дата Центр не предоставляет услугу Shielded VM. Минус этого подхода в том, что придётся самостоятельно администрировать эту структуру.

Может возникнуть вопрос о подмене сервера HGS администратором гипервизора — ведь для этого необходимо просто указать новый адрес. Защита от этого реализована достаточно просто, созданная ВМ зашифрована с использованием открытого ключа HGS сервера, поэтому другой HGS сервер не сможет выдать ключи для ее запуска.

Также стоит понимать, что технология Shielded VM шифрует только конфигурационные файлы виртуальной машины. VHDX файл остаётся незашифрованным. Для его шифрования нужно включить vTPM, и зашифровать диск битлокером.

Сочетание новых технологий предоставляет надежную защиту:

  • человеческий фактор устранен;
  • ключи передаются в зашифрованном виде;
  • серверы защищены новыми технологиями, предусматривающими проверку целостности кода;
  • белый список разрешенных приложений;
  • изоляция ВМ от хоста.

Это все очень хорошо защищает от вредоносного ПО нацеленного на хост Hyper-V и предоставляет доступ к ВМ только владельцу, защищая от действий администраторов или кого-либо получившего администраторские права.

Требования к серверам Hyper-V и HGS

Требования указаны для использования TPM аттестации. AD аттестация менее требовательна, но при этом обеспечивает гораздо меньшую защиту.

HGS:

  • Windows Server 2016

Hyper-V:

  • Windows Server 2016 Datacenter Edition
  • UEFI Secure Boot
  • TPM v2
  • IOMMU (VT-d)

Как настроить

Для примера будет рассмотрен вариант: вы арендовали выделенный сервер и хотите его обезопасить. Будет использована TPM аттестация. Соединение между хостом и HGS будет проходить по http протоколу. Если HGS сервер не имеет белого IP необходимо будет пробросить 80 порт или использовать реверс прокси.

Добавление и настройка HGS роли на сервере

Установка HGS сервера и создание домена
Install-WindowsFeature -Name HostGuardianServiceRole -IncludeManagementTools -Restart

HGS для работы необходим домен. Его можно подключить к уже существующему домену, но рекомендуется создание отдельного домена для повышения безопасности. Перед выполнением следующей команды необходимо убедиться, что компьютер не подключен к домену.

$adminPassword = ConvertTo-SecureString -AsPlainText '' -Force

Install-HgsServer -HgsDomainName 'relecloud.com' -SafeModeAdministratorPassword $adminPassword -Restart

Установка HGS сервера

Создание самоподписаных сертификатов

Для теста были созданы самоподписанные сертификаты, но для реальной среды лучше использовать PKI.

$certificatePassword = ConvertTo-SecureString -AsPlainText '' -Force

$signingCert = New-SelfSignedCertificate -DnsName "signing.relecloud.com"

Export-PfxCertificate -Cert $signingCert -Password $certificatePassword -FilePath 'C:\signingCert.pfx'

$encryptionCert = New-SelfSignedCertificate -DnsName "encryption.relecloud.com"

Export-PfxCertificate -Cert $encryptionCert -Password $certificatePassword -FilePath 'C:\encryptionCert.pfx'

Создание самоподписаных сертификатов

Создание самоподписаных сертификатов

Инициализация HGS сервера

Указываем сертификаты шифрования и подписи. Выбираем метод аттестации.

$certificatePassword = ConvertTo-SecureString -AsPlainText '' -Force

Initialize-HgsServer -HgsServiceName '' -SigningCertificatePath 'C:\signingCert.pfx' -SigningCertificatePassword $certificatePassword -EncryptionCertificatePath 'C:\encryptionCert.pfx' -EncryptionCertificatePassword $certificatePassword [-TrustActiveDirectory | -TrustTPM]

Инициализация HGS сервера

Инициализация HGS сервера

Добавление охраняемого хоста Hyper-V

Получаем идентификатор TPM

Данную процедуру необходимо выполнить для каждого защищаемого хоста.

(Get-PlatformIdentifier -Name '').InnerXml | Out-file .xml -Encoding UTF8

идентификатор TPM

Добавляем полученный файл на сервер HGS

Add-HgsAttestationTpmHost -Path .xml -Name  -Force

идентификатор TPM

Создаем и применяем Code Integrity Policy

При создании политики происходит сканирование всех установленных программ и добавление их в белый список. Перед созданием политики необходимо убедится, что в системе:

  • Отсутствуют вирусы и вредоносное ПО
  • Установлено необходимое для работы ПО и оно является благонадежным

Рекомендуется сначала проверить работу политики в режиме аудита. В таком случае исполняемый файл, запрещенный политикой будет отображен в логе.

Сканирование займет некоторое время.

New-CIPolicy -Level FilePublisher -Fallback Hash -FilePath 'C:\temp\HW1CodeIntegrity.xml' -UserPEs

ConvertFrom-CIPolicy -XmlFilePath 'C:\temp\HW1CodeIntegrity.xml' -BinaryFilePath 'C:\temp\HW1CodeIntegrity.p7b'

Code Integrity Policy

Code Integrity Policy

Файл .p7b необходимо переименовать в SIPolicy.p7b и скопировать в папку C:\Windows\System32\CodeIntegrity\SIPolicy.p7b

Перезагружаем компьютер и проверяем работу системы под планируемой типичной нагрузкой. После успешной проверки работы системы отключаем режим аудита

Set-RuleOption -FilePath 'C:\temp\HW1CodeIntegrity.xml' -Option 3 -Delete

ConvertFrom-CIPolicy -XmlFilePath 'C:\temp\HW1CodeIntegrity.xml' -BinaryFilePath 'C:\temp\HW1CodeIntegrity_enforced.p7b'

Copy-Item -Path '' -Destination 'C:\Windows\System32\CodeIntegrity\SIPolicy.p7b'

Restart-Computer

Если защищаться будет несколько идентичных хостов, политику можно создать только один раз.

Рекомендуется оставить исходный XML файл, чтобы в случае необходимости изменения политики не проводить повторное сканирование.

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

Регистрируем политику на HGS сервере

Add-HgsAttestationCIPolicy -Path  -Name ''

политика на HGS сервере

Создание TPM baseline политики

Эта политика основывается на PCR регистрах (Platform Configuration Registers), находящихся в модуле TPM. В них хранятся целостности метрик системы, начиная с загрузки BIOS до завершения работы системы. Если порядок загрузки будет изменен, например, руткитом, это отобразиться в регистрах PCR.

Политика создается для класса одинаковых аппаратных хостов. Перед ее созданием необходимо иметь установленный Hyper-V.

Install-WindowsFeature Hyper-V, HostGuardian -IncludeManagementTools -Restart

Get-HgsAttestationBaselinePolicy -Path 'HWConfig1.tcglog'

Для данной команды необходимо включить Secure Boot, IOMMU (VT-d), Virtualization Based Security.

Можно использовать флаг -SkipValidation который позволить выполниться команде, но он не исправит ошибки.

TPM baseline политика

Добавляем TCGlog файл на HGS сервере

Add-HgsAttestationTpmPolicy -Path .tcglog -Name ''

TCGlog файл на HGS сервере

Проверяем статус HGS сервера

На этом моменте настройка HGS сервера заканчивается. Для проверки выполненной работы проведем диагностику.

Get-HgsTrace -RunDiagnostics

статус HGS сервера

статус HGS сервера

Подключаем хост Hyper-V к HGS серверу

Для подключения защищаемого хоста к серверу HGS достаточно указать URL адрес сервера.

Set-HgsClientConfiguration -AttestationServerUrl 'http:///Attestation' -KeyProtectionServerUrl 'http:///KeyProtection'

Подключение Hyper-V к HGS серверу

При правильной настройке должно быть:

  • IsHostGuarded: true
  • AttestationStatus: passed

Если что-то настроено не верно в AttestationStatus будет указана причина.

Создание экранированной виртуальной машины

Получаем файл описания HGS сервера, который понадобиться для привязки ВМ к серверу.

Invoke-WebRequest http://<"HGSServer">FQDN>/KeyProtection/service/metadata/2014-07/metadata.xml -OutFile C:\HGSGuardian.xml

Создание экранированной ВМ

Создавать ВМ нужно на отдельной машине под управлением Windows Server 2016, не настроенной на использование HGS.

Создаем новую ВМ второго поколения, устанавливаем на нее ОС, настраиваем RDP и проверяем его работоспособность, шифруем битлокером.

Создание экранированной ВМ

Экранирование ВМ

Задаем название ВМ

$VMName = 'SVM'

Выключаем ВМ

Stop-VM –VMName $VMName

Создаем сертификат владельца

$Owner = New-HgsGuardian –Name 'Owner' –GenerateCertificates

Импортируем сертификат сервера

$Guardian = Import-HgsGuardian -Path 'C:\HGSGuardian.xml' -Name 'TestFabric' –AllowUntrustedRoot

Создаем Key Protector

$KP = New-HgsKeyProtector -Owner $Owner -Guardian $Guardian -AllowUntrustedRoot

Включаем экранирование

Set-VMKeyProtector –VMName $VMName –KeyProtector $KP.RawData

Set-VMSecurityPolicy -VMName $VMName -Shielded $true

Включаем vTPM в виртуальной машине

Enable-VMTPM -VMName $VMName

Экранирование ВМ

После настройки и включения защиты в ВМ ее необходимо переместить на охраняемый хост. Для этого экспортируем машину, переносим полученные файлы на хост, и импортируем ее в консоль Hyper-V.

На этом этапе настройка завершена, ВМ экранирована.

Проверяем работу Shielded VM

При попытке подключится к ВМ через консоль Hyper-V увидим сообщение:

Провка работы Shielded VM

Так же в настройках ВМ увидим предупреждение о невозможности менять настройки защиты:

Проверка работы Shielded VM

Раздел виртуальной машины защищен BitLocker-ом:

Проверка работы Shielded VM

Таким образом была произведена настройка Shielded VM, которая обеспечивает более высокий уровень защиты виртуальных машин. Если у вас остались вопросы, добро пожаловать в комментарии.

Больше статей на Servilon

Стоимость частного облака

Сколько стоит облачный офис

Серия статей о переносе инфраструктуры в облако еще раз подтверждает общую тенденцию, наметившуюся в течении последних нескольких лет. К сожалению, если решать задачу в лоб, цена хостинга получается очень высокой. Недавно к нам пришел клиент, который на наш взгляд является наиболее подходящим на роль среднестатистической компании, интересующейся этой услугой. Некоторые данные для соблюдения конфиденциальности изменены, но это не влияет на конечную картину.

Исходные данные:

Компания 35 человек, один основной офис и два дополнительных, несколько человек работает из дома.

Что нужно:

  • перенести на облако существующий сервер приложений (1С) с терминальным доступом для 15 человек;
  • перенести почту с платного хостинга и с публичных почтовых сервисов 30-40 почтовых ящиков;
  • среда для совместной работы звонков и видеоконференций вместо skype 30-40 пользователей;
  • телефония с подключением к существующему оператору и возможностью подключить новых. Желательно с возможностью проведения телефонных конференций по телефонному номеру и ПИНу;
  • мобильный VoIPклиент с шифрование голосового трафика;
  • хранилище общих документов 60-100Гб.

Требования по безопасности достаточно стандартные: размещение в западной Европе, шифрование всего трафика, шифрование данных.

В качестве решения предложено использовать связку 1с на Terminal Server+RDG, MS Exchange, MS SfB+FreePBX и MS SharePoint с Office Online Server.

  • Share Point спорное решение, многие компании даже при построении остальной инфраструктуры на продуктах Микрософт предпочитают использовать другие решения (File Cloud, OwnCloud).

    Но с учетом географической разнесённости офисов компании, острой потребности в улучшении коммуникации между сотрудниками, и при интеграции с Skype for Business и Exchange, SharePoint на наш взгляд является наиболее логичным выбором. Это решение покрывает как все современные «must have» требования к хранилищу документов – версионность, доступность отовсюду, безопасность подключения, возможность работать с документами офлайн, возможности поиска, сортировки и структурирования хранения документов, гибкая настройка доступов, так и приятные дополнения – возможность позвонить или написать автору документа, не выходя из окна браузера.

    Office Online Server (OOS) позволит править документы через браузер без необходимости скачивания документа и не требуя установки на устройстве программ пакета MS Office. Это является одним из основных слагаемых безопасности, т.к. наличие офлайн копии важных документов на локальном компьютере пользователя является потенциальной угрозой, а работа с Word, Excell через терминал гораздо менее удобна чем через OOS.

    Ну и, конечно, возможности совместной работы – когда можно наблюдать процесс создания или правки документа в реальном времени, работа становится: наглядней, быстрее, интереснее.

Исходя из требований получилась следующая конфигурация VM:

Хост HV1

Сервер RAM, Gb HDD, Gb Роли выполняемые сервером
Exch1 14-20 450 Exchange сервер, Data availability group совместно с Exch2
RP 2-4 60 Реверс прокси
DC1 2-4 60 Контролер домена
Mkt1 1 20 MikroTik Cloud Hosted Router
RDSHost1 40-60 300 Терминальный сервер, балансировка с RDSHost2
RDSBroker 4-6 60 RD Connection Broker, RD Gateway, RD Web Access
FS1 2-4 300 Файловый сервер, объединённый в DFS с FS2
SQL 16-24 300 MS SQL для 1С
1C 8-12 80 1С сервер
Sb-fe 8-12 60 Skype for Business Front-End
Sb-edge 2-4 60 Skype for Business edge
SP 12-24 300 Sharepoint
OOS 12 80 Office Online Server
Frpbx 1 40 FreePBX в качестве SIP шлюза
Итого 124-188 2170

Хост HV2

Сервер RAM, Gb HDD, Gb Роли выполняемые сервером
Exch2 14-20 450 Exchange сервер, Data availability group совместно с Exch1
RP 60 Реплика VM
DC2 2-4 60 Контролер домена
Mkt2 1 20 MikroTik Cloud Hosted Router, Failover IP c Mkt1
RDSHost2 40-60 100 RD Session Host балансировка с RDSHost1
FS2 2-4 300 Файловый сервер, объединённый в DFS с FS1
RDSBroker 60 Реплика VM
SQL 300 Реплика VM
1C 80 Реплика VM
Sb-fe 60 Реплика VM
Sb-edge 60 Реплика VM
SP 300 Реплика VM
OOS 80 Реплика VM
Frpbx 40 Реплика VM
Bckp 2-4 2000 Сервер бекапов
Итого 59-89 3970

Итак, где размещать

Мы провели небольшое сравнение цен разных хостеров с приблизительно одинаковой конфигурацией, подходящей для этой задачи (сортировка по цене):

Хотстер Тип Название конфигурации Параметры Конфигурации Цена в месяц
Azure+Office 365 Enterprise E5 Облако Virtual Machines $1,649.41+$35 (за пользователя)
AWS Облако r4.4xlarge 16 Core,122Gb RAM 2000Gb HDD $1296+EBS $90
Rackspace Выделенный сервер Dual Processor Intel Xeon E5-2640 2.5GHz,  128GB, 5x300GB 15K SAS 2x$649+Storage
Digitalocean Облако 16 Core,128Gb RAM 2000 GB SSD $960 + Storage$200
ProfitBricks Облако 12 Core, 108GB RAM, 2000Gb HDD $866
OVH Выделенный сервер SP-128 Intel  Xeon E5 1650v3, 128,  2 x 2 TB 2x$179
Hetzner Выделенный сервер PX121 E5-1650 v3  256Gb RAM 2x4Tb HDD 2x€116.81
  • Простейший расчет с калькулятором показывает, что SLA, в котором указанно снижение абонентских платежей пропорциональное времени недоступности , является профанацией. Например, в году 8764 часа, за два года сервис был не доступен 12 последовательных часов, получается, что не считая косвенных потерь бизнеса только на простое 30 сотрудников, при 80 000р в месяц затрат на человека, вы понесли потери 109 090р, а компенсация от дата центра составит 0.07% от платежа за два года или, даже беря гипотетические 5000$ в месяц ,получим 82$, что несерьезно ни для вашего бизнеса, ни для провайдера услуги.

    А пятна бывают и на солнце, все помнят сбои Gmail, Facebook, Azure, выключение питания в главном коммуникантом узле Европы Telecity2, когда половина Англии осталось без интернета и даже московские сотовые абонента испытывали проблемы. http://arstechnica.co.uk/business/2016/07/bt-isps-telehouse-north-major-outage/

    Для компании с количеством сотрудников в 20-50 человек использование HP 3PAR с репликацией хранилища между двумя дата центрами, скорее всего, является избыточным, да и не дает 100% гарантии от ошибок в конфигурации — пример недавний сбой из-за человеческого фактора у AWS https://aws.amazon.com/ru/message/41926/. Наиболее приемлемых два варианта — построение software cluster (есть возможность у всех серверов Microsoft), а если простой 2-3 часа для бизнеса не критичен, то онлайн резервное копирование во второй дата-центр и ручное включение виртуальных машин вполне приемлемое и бюджетное решение.

    Что бы 100% застраховаться не только от сбоев в оборудовании, но и от проблем дата-центра, лучше взять одни сервер у одного оператора, а второй у другого (например, hetzner и OVH), но для упрощения администрирования контроля оплаты можно вначале взять оба физических сервера у одного оператора, а в будущем вынести второй к другому. Перемещение резервных виртуальных машин по быстрым, внутри- европейским каналам задача простая и не требующая остановки обслуживания.

Итак, провайдер хостинга выбран, что получилось. Как всё работает:

Железо: для нашего случая мы выбираем аренду двух серверов в Hrtzner с очень удобной услугой failover IP. Два сервера https://ru.hetzner.com/hosting/produktmatrix/rootserver-produktmatrix-px E5-1650 v3 256Gb RAM 2x4Tb HDD, по 116€ каждый. В качестве гипервизоров MS Hyper-V, на которых будут размещены виртуальные машины в соответствии с вышеуказанной таблице. На первом сервере будет расположены основные VM а на втором резервные.

Внутренняя сеть между серверами: Сеть построена между двумя MikroTik Cloud Hosted Router (Mkt1 и Mkt2), установленными на каждом хосте, через которые настроен туннель. В Heztner заказан, отказоустойчивый IP (Failover IP), который назначен на роутеры Mkt1 и Mkt2 для организации публикации внешних сервисов.

Терминальные сервера объедены в пул и будут одновременно активны на обоих гипервизорах для экономии ресурсов. В случае выхода из строя одного из узлов, пользователи терминального сервера переключатся на второй с некоторой деградацией производительности, но смогут продолжить работу, т.к. пользовательские профили находятся на сетевом ресурсе, реплицируемом по технологии DFS.

Репликация: Между двумя хостами будет настроена непрерывная репликация виртуальных машин. В случае сбоя хоста или профилактики будет включается реплика.

Почта: организована на двух серверах Exchange объединённых в DAG, вместо репликации виртуальных машин, пользовательский доступ с помощью Active Sync, OWA и Outlook.

Телефонная связь, видеоконференции, IM на Skype for Business. Как и Exchange для почты, это на сегодня лучшее средство совместной работы. Т.к. провайдеров телефонии, подключающих sip транки по стандарту SfB не много, в качестве шлюза, установили FreePBX, к которому подключены транки с SIP регистрацией.

Файловое хранилище: MS SharePoint c OOS обсуждалось ранее.

Сервер приложений: здесь все прозаично 1С с базой на MS SQL.

Удаленный доступ: ко всем приложениям через HTTPS. Опубликованы — терминальный сервер через RDG, Active Sync, OWA, Outlook, SharePoint c OOS, Skype for Business.

Безопасность: шифрование данных на VM на основе Shielded VM. Доступ ко всем ресурсам по SSL. Шифрование голосового трафика по TLS+SRTP. Для доступа к терминальному серверу применяется двухфакторная аутентификация Azure MFA. Возможно еще подключить двухфакторную аутентификацию для доступа к OWA и SharePoint, но пока ограничились мониторингом IP, с которых пользователи подключаются к этим ресурсам, тем более новая версия Skypetime позволяет это делать.

Сколько стоит данное решение:

Железо — 238€ включая дополнительный ИП и failover в месяц. Если есть значительная нагрузка на терминальный сервер или на SQL, необходимо еще 28€ на SSD диск.

Лицензии на время внедрения и тестовой эксплуатации рекомендуется взять вот такую лицензию https://www.visualstudio.com/msdn-platforms/ (3VU-00016 MSDNPltfrms ALNG LicSAPk OLV NL 1Y AP) 67 123руб на msbuy. Данная лицензия содержит все продукты Microsoft с правом тестирования и разработки. После того, как будет окончена тестовая эксплуатация и будет понятно, сколько и каких лицензий необходимо, тогда и покупать. Рекомендуем обратить внимание на цены по программе OVS.

Сертификат – SSL, можно взять бесплатный на 10 SAN от StarCom или более надежный, например, от Godaddy $249.99 в год.

Azure MFA — 1.04€ в месяц за пользователя.

Работа — конкретных цифр называть не будем, чтобы не делать из стати рекламу, оценим только объем работ в часах.

Установка данной конфигурации, включая все административные работы с провайдерами, от 90 до 120 часов без миграции данных пользователей, где все индивидуально.

Ежемесячная поддержка серверной части: 8-15 часов в зависимости от объемов изменений и надежности работы sip провайдеров. Поддержка пользователей сильно варьируется от средней квалификации пользователь, но в среднем берется из расчета 0.8-1,2 часа в месяц на пользователя.

Масштабный сбой в облачном сервисе Amazon

Причиной неполадок в работе облачной системы хранения данных Amazon Web Services (AWS) S3, которые произошли в ночь на 1 марта по московскому времени и привели к перебоям в работе сотен веб-сайтов и сервисов, стала ошибка одного из инженеров AWS. Об этого говорится в сообщении, опубликованном на сайте облачного сервиса.

В релизе говорится, что во время устранения проблем в работе биллинговой системы S3 один из специалистов допустил опечатку при вводе команды и удалил больше серверов, чем требовалось. Выведенные из работы по ошибке серверы поддерживали работу двух подсистем S3: подсистему управления метаданными и информацией о местоположении и подсистему администрирования хранилищ.

Приостановка работы сервиса отразилась на работе сервисов компаний Apple и Adobe, сервиса поиска жилья Airbnb, краудфандинговой платформы Kickstarter, портала онлайн-образования Coursera, платформы для программистов GitHub, почтового сервиса Mailchimp блог-платформы Medium и сайта Комиссии по ценным бумагам и биржам США.

В компании принесли извинения за инцидент и сообщили, что внесли ряд изменений в систему управления, чтобы подобная ошибка не повторилась в будущем.

Сбой произошел в дата-центре Amazon в штате Вирджиния, а устранить проблему удалось примерно через четыре часа, однако работа некоторых из затронутых сервисов была восстановлена только спустя еще несколько часов.

Azure MFA for RDG

Двухфакторная аутентификация клиентов Remote Desktop Gateway при помощи Azure Multi-Factor Authentication

Про пользователей и методы защиты

Природа типичного пользователя такова, что к сохранности паролей от учетных записей отношение достаточно легкомысленное и исправить это невозможно. Наш опыт показывает, что даже если в компании применяются строгие политики, тренинги пользователей и т.д., все равно найдется незашифрованное устройство, покинувшее стены офиса, а просматривая список продуктов одной известной компании понимаешь, что извлечение паролей из незашифрованного устройства лишь дело времени.

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

Решение с использованием терминального сервера и Remote Desktop Gateway (RDG) более гибкое, можно настроить высокий уровень безопасности. Данный способ позволяет предотвратить передачу данных из облака, но накладывает ограничения на работу пользователя и не полностью решает проблему аутентификации, скорее это DLP решение.

Возможно лучшим способом гарантировать, что под учетной записью пользователя не работает злоумышленник, является двухфакторная аутентификация. Настройка MFA от Microsoft и Google для клиентского VPN — способ хороший, но, во-первых, он требует наличия CISCO ASA, что не всегда легко реализуемо, особенно в бюджетных облаках, а во-вторых, работа через VPN неудобна. Работа с терминальной сессией через RDG значительно комфортнее, да и SSL протокол шифрования выглядит более универсальным и надежным, чем VPN от CISCO.

Решений с двухфакторной аутентификацией на самом терминальном сервере много, вот пример настройки бесплатного решения — http://servilon.ru/dvuhfaktornaya-autentifikaciya-otp/. Это решение, к сожалению, не работает через RDG.

Преимущества Microsoft Azure Multi-Factor Authentication Server (MFAS) описаны в вышеупомянутой статье, поэтому приводить повторно я их не буду, а начнём сразу с настроек.

Чтобы не увеличивать объём данной статьи, опустим первоначальную установку и настройку RDG сервера, который авторизует пользователей по логину и паролю.

Для ясности приведем схему аутентификации RDG запроса при использовании Azure MFA. На сервере RDG запущенна роль Network Policy Server (NPS), позволяющая перенаправлять Radius запросы. Сервер MFA будет развернут в отдельной виртуальной машине во внутренней структуре предприятия.

Shema RDG zapros

RDG сервер запрашивает подтверждение авторизации у сервера MFA. MFA в зависимости от выбранного способа аутентификации звонит, отправляет смс или посылает запрос в мобильное приложение. Пользователь подтверждает или отклоняет запрос на предоставление доступа. MFA возвращает результат второго фактора аутентификации на RDG сервер.

Установка и настройка Azure Multi-Factor Authentication Server

Создание поставщика аутентификации в портале Microsoft Azure

Заходим в Microsoft Azure (учетная запись должна иметь подписку или установлена триальная версия) и находим Multi-Factor Authentication (MFA).

На данный момент управление MFA не добавлено в новую версия портала Azure, поэтому откроется старая версия портала.

Для создания нового поставщика многофакторной проверки подлинности необходимо слева внизу нажать «СОЗДАТЬ -> Службы приложений -> Active directory -> Поставщик многофакторной проверки подлинности -> Быстрое создание». Указать имя и модель использования.

От модели использования зависит как будет начисляться оплата, либо по количеству пользователей, либо по количеству аутентификаций.

sozdanie postavshika mpp

После создания MFA отобразится в списке. Далее переходим к управлению, нажав соответствующую кнопку.

azure active directory

Переходим в загрузки и скачиваем MFA сервер

download MFA

Развертывание MFA сервера

Устанавливать MFA сервер необходимо на виртуальную машину отличную от RDG сервера. Поддерживаются ОС старше Windows Server 2008 или Windows 7. Для работы необходим Microsoft .NET Framework 4.0.
Должны быть доступны адреса по 443 порту:

  • https://pfd.phonefactor.net;
  • https://pfd2.phonefactor.net;
  • https://css.phonefactor.net.

Устанавливаем MFA сервер, при установке отказываемся от мастера настроек.

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

dannye ot uchetnoj zapisi

Далее добавляем пользователей. Для этого переходим в раздел Users и нажимаем на Import from Active Directory, выбираем пользователей для импорта.

new MFA users

new MFA users

При необходимости можно настроить автоматическое добавление новых пользователей из АД:

«Directory Integration -> Synchronization -> Add», а т.ж. добавить каталог, который будет автоматически синхронизироваться по указанному интервалу времени.

add synchronization item

Проведем тест работоспособности MFA сервера. Переходим в раздел Users. Для своей учетной записи указываем номер телефона (если еще не задан) и выбираем способ аутентификации «Звонок телефона». Нажимаем кнопку Test и вводим логин, пароль. На телефон должен прийти вызов. Отвечаем на него и нажимаем #.

test users MFA

Настройка MFA сервера на работу с Radius запросами

Переходим в раздел Radius Authentication и ставим галочку «Enable RADIUS Authentication».

Добавляем нового клиента, указывая IP адрес NPS сервера и общий секретный ключ. Если аутентификация должна проводиться для всех пользователей, ставим соответствующую галочку (в данном случае все пользователи должны быть добавлены на MFA сервер).

Так же необходимо убедиться, что указанные для соединения порты соответствуют портам, указанным на NPS сервере и их не блокирует брандмауэр.

radius authentication

Переходим на вкладку Target и добавляем Radius сервер.

radius authentication target

Примечание: Если в сети нет центрального NPS сервера, IP адреса Radius клиента и сервера будут одинаковыми.

Настройка RDG и NPS сервера на работу совместно с MFA

Шлюз удаленных рабочих столов необходимо настроить на отправку Radius запросов на сервер MFA. Для этого открываем свойства шлюза и переходим на вкладку «RDG CAP Store», выбираем «NPS работает на центральном сервере» и указываем адрес MFA сервера и общий секретный ключ.

RDG CAP store

Далее производим настройку NPS сервера. Разворачиваем раздел «Клиенты и серверы Radius -> Удаленные группы серверов Radius». Открываем свойства группы «TS gateway server group» (группа создаётся при настройке RDG) и добавляем наш MFA сервер.

При добавлении, на вкладке «Load Balancing» увеличиваем лимиты времени ожидания сервера. Выставляем «Число секунд без ответа, после которого запрос считается отброшенным» и «Число секунд между запросами, после которого сервер считается недоступным» в диапазоне 30—60 секунд.

На вкладке «Authentication/Accounting» проверяем правильность указанных портов и задаем общий секретный ключ.

RDG Authentication/Accounting

RDG Authentication/Accounting

Теперь перейдем в раздел «Клиенты и серверы Radius -> Клиенты Radius» и добавим MFA сервер, указав «Friendly name», адрес и общий секрет.

Radius Friendly name

Переходим в раздел «Политики -> Политики запросов на подключение». В данном разделе должна быть политика, созданная при настройке RDG. Эта политика направляет запросы Radius на MFA сервер.

Дублируем политику и заходим в ее свойства. Добавляем условие сопоставляющее «Client Friendly Name» c «Friendly name», заданным в предыдущем шаге.

Radius policy properties

На вкладке «Settings» меняем поставщика услуг аутентификации на локальный сервер.

Radius policy properties settings

Данная политика будет гарантировать то, что при получении Radius запроса от MFA сервера, запрос будет обработан локально, что избавит от зацикливания запросов.

Проверяем что данная политика размещена над исходной.

NPS policy

На данном этапе связка RDG и MFA находится в рабочем состоянии. Следующие шаги необходимы тем, кому требуется иметь возможность использовать аутентификацию с помощью мобильного приложения или предоставить пользователям доступ к некоторым настройкам многофакторной авторизации через пользовательский портал.

Установка SDK, веб-службы мобильного приложения и пользовательского портала

Подключение к данным компонентам производиться по HTTPS протоколу. Поэтому, на сервера где они будут развернуты, необходимо установить SSL сертификат.

Пользовательский портал и веб-служба мобильного приложения используют пакет SDK для связи с сервером MFA.

Установка SDK

SDK устанавливается на сервер MFA и требует наличия IIS, ASP.NET, Basic Authentication, которые необходимо предварительно установить, используя Server Manager.

Для установки SDK переходим в раздел Web Service SDK в Multi-Factor Authentication Server и нажимаем кнопку установить, следуем мастеру установки.

Web Service SDK в Multi-Factor Authentication Server

Установка веб-службы мобильного приложения

Данная служба необходима для взаимодействия мобильного приложения с сервером MFA. Для корректной работы службы, компьютер, на который она будет установлена, должен иметь выход в интернет и открыт 443 порт для подключения из интернета.

Файл установки службы находиться в папке C:\Program Files\Azure Multi-Factor Authentication на компьютере с установленным MFA. Запускаем установщик и следуем мастеру установки. Для удобства пользователей можно заменить имя виртуального каталога «MultiFactorAuthMobileAppWebService» на более короткое.

После установки заходим в папку C:\inetpub\wwwroot\MultiFactorAuthMobileAppWebService и изменяем файл web.config. В данном файле необходимо задать ключи WEB_SERVICE_SDK_AUTHENTICATION_USERNAME и WEB_SERVICE_SDK_AUTHENTICATION_PASSWORD, отвечающие за учетную запись, входящую в группу безопасности PhoneFactor Admins. Эта учетная запись будет использоваться для подключения к SDK.

edit web.config

В этом же файле необходимо указать URL адрес по которому доступен SDK.

Примечание: Соединение с SDK производиться по SSL протоколу, поэтому необходимо ссылаться на SDK по имени сервера (указанному в SSL сертификате), а не по IP адресу. Если обращение осуществляется по локальному имени, нужно добавить в hosts файл соответствующую запись, чтобы использовать SSL сертификат.

edit web.config

Добавляем URL, по которому доступна веб-служба мобильного приложения, в приложение Multi-Factor Authentication Server в раздел Mobile App. Это необходимо для правильной генерации QR кода в пользовательском портале для подключения мобильных приложений.

Также в этом разделе можно установить галочку «Enable OATH tokens», что позволить использовать мобильное приложения как Software token, для генерации одноразовых паролей на основании времени.

Установка пользовательского портала

Для установки требуется IIS, ASP.NET и роль совместимости мета базы IIS 6 (для IIS 7 или более поздней версии).

Если портал устанавливается на сервере MFA, достаточно в Multi-Factor Authentication Server перейти в раздел User Portal, нажать кнопку установить и следовать мастеру установки. Если компьютер присоединен к домену, то при установке будет создан пользователь, входящий в группу безопасности PhoneFactor Admins. Этот пользователь необходим для защищённого соединения с SDK.

MFA UserPortal

При установке на отдельный сервер, необходимо скопировать файл установки с сервера MFA (файл установки располагается в папке C:\Program Files\Multi-Factor Authentication Server). Произвести установку и отредактировать файл web.config в расположение C:\inetpub\wwwroot\MultiFactorAuth. В данном файле необходимо изменить ключ USE_WEB_SERVICE_SDK со значения false на true. Указать данные учетной записи, входящей в группу PhoneFactor Admins в ключах WEB_SERVICE_SDK_AUTHENTICATION_USERNAME и WEB_SERVICE_SDK_AUTHENTICATION_PASSWORD. И указать URL адрес SDK службы, не забывая при необходимости поправить hosts файл, чтобы работал SSL протокол.

Добавляем URL, по которому доступен пользовательский портал в приложение Multi-Factor Authentication Server в раздел User Portal.

Демонстрация работы Azure MFA для аутентификации RDG подключений

Рассматривать работу MFA будем со стороны пользователя. В нашем случае вторым фактором аутентификации будет мобильное приложение, так как сотовая сеть имеет ряд уязвимостей, позволяющих при должной подготовке перехватывать звонки и SMS.

Первым делом, пользователю понадобиться зайти на пользовательский портал и указать свой номер телефона (если не указан в AD) и привязать к аккаунту мобильное приложение. Заходим на портал под своей учетной записью и вводим ответы на секретные вопросы (они нам понадобятся в случае восстановления доступа к аккаунту).

MFA UserPortal test

Далее выбираем метод аутентификации, в нашем случае мобильное приложение и нажимаем кнопку «Создать код активации». Будет сгенерирован QR код, который надо отсканировать в мобильном приложении.

MFA UserPortal test

Так как при импортировании пользователей на MFA сервер была выставлена аутентификация с помощью PIN кода, нам будет предложено создать его. Вводим желаемый PIN код и нажимаем «Проверить мою подлинность». В мобильном приложении необходимо подтвердить появившийся запрос. После данных действий мы имеем привязанное к аккаунту приложение и полноценный доступ к порталу для изменения личных настроек.

MFA UserPortal test

Примечание: Список настроек, которые может менять пользователь через портал, задаётся администратором в приложении Multi-Factor Authentication Server.

Далее рассмотрим подключение через RDG.

Создаем RDP подключение, указываем наш шлюз и подключаемся.

RDP connection

RDP connection

Вводим данные учетной записи для авторизации на RDG сервере.

RDP connection

Подтверждаем запрос в мобильном приложении

RDP connection

Вводим данные учетной записи для авторизации на подключаемой машине и ожидаем подключения.

RDP connection

RDP connection

Примечание: Если телефон оснащен датчиком отпечатка пальца, приложение Authenticator предложит связать PIN код с отпечатком пальца, чтобы в последующем подтверждать аутентификацию простым прикосновением к телефону.

Способы аутентификации, которые предлагает Azure MFA:

    • Звонок телефона

    • нажатие #
    • ввод PIN кода и нажатие #
    • SMS – можно использовать OTP или OTP + PIN

    • One-Way – полученный код необходимо ввести в дополнительное поле при авторизации
    • Two-Way – полученный код необходимо отправить обратно SMS сообщением
    • Мобильное приложение

    • Простое подтверждение
    • Для подтверждения необходимо ввести PIN код
  • OATH token – при авторизации необходимо будет ввести в дополнительное поле код с экрана токена. В качестве токена можно использовать мобильное приложение.

Способы SMS One-Way и OATH token не являются универсальными, так как требуют дополнительного поля для ввода кода при авторизации.

В заключении расскажем о функции MFA, позволяющей отслеживать и защищаться от злоумышленников, пытающихся получить доступ, не имея второго фактора аутентификации.

На портале Azure в панели управления MFA можно включить возможность, позволяющую пользователям отмечать пришедший запрос на аутентификацию как мошеннический. Также возможна автоматическая блокировка пользователя при получении данного сообщения и отправка email уведомления службе поддержки.

MFA portal

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

MFA portal

MFA portal

В панели управления Azure MFA есть отчет отображающий уведомления о мошенничестве:

Report Azure MFA

Если необходимо узнать IP адрес, с которого была инициализирована RDP сессия, можно посмотреть логи RDG сервера в Event Viewer. Если второй фактор аутентификации не был пройден, событие будет иметь статус Error, а в описании будет указан IP адрес, с которого устанавливалось RDP соединение.

MFA error 23003

Ссылки по статье:

Remote Desktop Gateway and Azure Multi-Factor Authentication Server using RADIUS
User Portal
Mobile App Web Service

C уважением коллектив компании Servilon

Другие статьи на тему двуфакторной аутентификации

В этом году Gmail перестанет полноценно работать в браузере Chrome для Windows XP и Vista

Интерфейс почтового сервиса Gmail со следующей недели начнет показывать предупреждение о прекращении поддержки старых версий браузера Chrome. Для того, чтобы продолжать пользоваться почтой, необходимо будет обновить Chrome до версии 55. Это связано со значительными изменениями, касающимися безопасности.

К сожалению, данное решение не подходит для пользователей Windows XP и Vista, поскольку Microsoft прекратила поддержку этих ОС и обновления Chrome для них перестали выходить после 49 версии.

Если не обновить ОС и браузер, Gmail продолжит работать почти до конца года. Однако в декабре сервис начнет перенаправлять пользователей Windows XP и Vista на базовый HTML-вариант интерфейса с меньшим уровнем функциональности и защиты.

Вредоносная реклама теперь нацелена на роутеры

Вредоносными рекламным кампаниями сегодня трудно кого-либо удивить, но специалисты Proofpoint обнаружили новую тенденцию в данной области. Теперь злоумышленники нацеливаются не на браузеры пользователей, а на их роутеры. Итоговая цель атакующих – внедрить рекламу в каждую страницу, которую посетит зараженная жертва. Интересно, что данная кампания ориентирована не на пользователей IE, как это бывает чаще всего, но на пользователей Chrome (как десктопной, так и мобильной версии).

routers-1

Действуют хакеры следующим образом: на легитимных сайтах покупаются рекламные места для размещения объявлений. Для этого атакующие используют рекламные сети AdSupply, OutBrain, Popcash, Propellerads и Taboola. В объявление встраивается вредоносный JavaScript-код, который использует WebRTC-запрос к Mozilla STUN-серверу, чтобы узнать локальный IP-адрес жертвы. Основываясь на этой информации, вредонос определяет, управляется ли локальная сеть пользователя каким-либо домашним роутером. Если ответ положительный, атака продолжается. Если же нет, пользователю показывают обычную, безвредную рекламу, и он избегает неприятностей.

Владельцам роутеров показывают совсем не безобидные объявления. Реклама переадресует их прямиком к эксплоит киту DNSChanger, который продолжает атаку. Используя стеганографию, атакующие отправляют роутеру жертвы изображение, в котором содержится AES-ключ. Вредоносная реклама использует данный ключ для дешифровки дальнейшего трафика, получаемый от DNSChanger. Так злоумышленники скрывают свои операции от внимания ИБ-специалистов.

Поле получения AES-ключа, DNSChanger передает жертве список отличительных черт 166 роутеров (включая различные модели Linksys, Netgear, D-Link, Comtrend, Pirelli и Zyxel), опираясь на который устанавливается типа роутера, который затем передается на управляющий сервер злоумышленников. На сервере лежит список уязвимостей и жестко закодированных учетных данные от различных устройств, которые и используются для перехвата контроля над роутером жертвы. Специалисты Proofpoint отмечают, что в некоторых случаях (если модель устройства позволяет), атакующие стараются создать внешнее подключение к административному порту роутера и перехватить управление напрямую.

routers-5

Если хакерам удалось получить контроль над устройством, они подменяют DNS-серверы и всю легитимную рекламу своей собственной, а также встраивают рекламу на сайты, где ее не было вовсе.

Единственный способ избежать подобных проблем – не использовать дефолтные учетные данные для роутера, отключить удаленный доступ к панели управления (если это возможно), а также обновить прошивку устройства до последней версии, чтобы закрыть уязвимости и избежать эксплоитов, которые применяет DNSChanger.

Удаление/восстановление Metro-приложений в Windows 10

Удаление/восстановление Metro-приложений в Windows 10

Как бы не было много сторонников старых версий ОС, все же пришла пора переходить на Windows 10. В связи с этим предлагаю разобраться с предустановлеными Metro-приложениями. Согласитесь, мало кто будет использовать абсолютно все приложения, которые навязывает нам корпорация. Ведь большинство из них просто занимают место, а кого-то вообще раздражают. В этой статье я поделюсь с вами способом, которым можно «почистить» систему от именно таких — ненужных — приложений на Windows 10.

Удаление

Итак, перейдем к удалению ненужных приложений. Предлагаю Вам powershell скрипт, в результате выполнения которого на экран выводятся все установленные Metro-приложения, а далее дело за пользователем — удалить всё или же подойти к вопросу избирательно, удалив только некоторые из них.

Скрипт имеет следующий вид:

Function PSCustomErrorRecord
{
Param
(
[Parameter(Mandatory=$true,Position=1)][String]$ExceptionString,
[Parameter(Mandatory=$true,Position=2)][String]$ErrorID,
[Parameter(Mandatory=$true,Position=3)][System.Management.Automation.ErrorCategory]$ErrorCategory,
[Parameter(Mandatory=$true,Position=4)][PSObject]$TargetObject
)
Process
{
$exception = New-Object System.Management.Automation.RuntimeException($ExceptionString)
$customError = New-Object System.Management.Automation.ErrorRecord($exception,$ErrorID,$ErrorCategory,$TargetObject)
return $customError
}
}

Function RemoveAppxPackage
{
$index=1
$apps=Get-AppxPackage
Write-Host «ID`t App name»
foreach ($app in $apps)
{
Write-Host » $index`t $($app.name)»
$index++
}

Do
{
$IDs=Read-Host -Prompt «Which Apps do you want to remove? `nInput their IDs by space (e.g. 5 12 17). `nIf you want to remove every possible apps, enter ‘all'»
}

While($IDs -eq «»)

if ($IDs -eq «all») {Get-AppXPackage -All | Remove-AppxPackage -ErrorAction SilentlyContinue –confirm

$AppName=($ID -ge 1 -and $ID -le $apps.name)

if (-not(Get-AppxPackage -Name $AppName))
{
Write-host «Apps has been removed successfully»
}
else
{
Write-Warning «Remove ‘$AppName’ failed! This app is part of Windows and cannot be uninstalled on a per-user basis.»
}

}

else {

try
{
[int[]]$IDs=$IDs -split » »

}

catch
{
$errorMsg = $Messages.IncorrectInput
$errorMsg = $errorMsg -replace «Placeholder01»,$IDs
$customError = PSCustomErrorRecord `
-ExceptionString $errorMsg `
-ErrorCategory NotSpecified -ErrorID 1 -TargetObject $pscmdlet
$pscmdlet.WriteError($customError)
return
}

foreach ($ID in $IDs)
{
#check id is in the range
if ($ID -ge 1 -and $ID -le $apps.count)
{
$ID—
#Remove each app
$AppName=$apps[$ID].name

Remove-AppxPackage -Package $apps[$ID] -ErrorAction SilentlyContinue –confirm
if (-not(Get-AppxPackage -Name $AppName))
{
Write-host «$AppName has been removed successfully»
}
else
{
Write-Warning «Remove ‘$AppName’ failed! This app is part of Windows and cannot be uninstalled on a per-user basis.»
}
}
else
{
$errorMsg = $Messages.WrongID
$errorMsg = $errorMsg -replace «Placeholder01»,$ID
$customError = PSCustomErrorRecord `
-ExceptionString $errorMsg `
-ErrorCategory NotSpecified -ErrorID 1 -TargetObject $pscmdlet
$pscmdlet.WriteError($customError)
}
}
}
}

$result = 0;

while ($result -eq 0) {

RemoveAppxPackage

$title = «Delete Apps»
$message = «Do you want to continue?»

$yes = New-Object System.Management.Automation.Host.ChoiceDescription «&Yes», `
«Yes, I want to remove another application.»

$no = New-Object System.Management.Automation.Host.ChoiceDescription «&No», `
«No, all unnecessary applications are removed.»

$options = [System.Management.Automation.Host.ChoiceDescription[]]($yes, $no)

$result = $host.ui.PromptForChoice($title, $message, $options, 0)

}

 

Сохраните в формате .ps1 или скачайте скрипт, для упрощенного запуска от имени администратора рекомендую создать батник по скрипту ниже (сохраните в формате .bat и UAC сам запросит подтверждение прав):

Скрипт .bat

@echo off
cls

echo Apps
echo.
echo press any key to continue…

pause > NUL

echo
echo.

PowerShell -NoProfile -ExecutionPolicy Bypass -Command “& {Start-Process PowerShell -ArgumentList ‘-NoProfile -ExecutionPolicy Bypass -File “”%~dp0.\app.ps1″”‘ -Verb RunAs}”

echo You deleted apps…
echo.
pause

Где app.ps1 – имя сохраненного power shell скрипта.

 

Примечание: при таком запуске скрипта возможно появление предупреждающего сообщения: «Execution Policy Change».

Execution Policy Change

Выбирайте «Yes» — внести изменения.

В результате Вы увидите следующее:

Windows PowerShell list

На экране представлен список установленых приложений. И предложено перечислить, через пробел, именно те, которые Вы хотели б удалить.

Допустим, вы решили удалить «Microsoft.BingNews». Для этого введите соответствующий номер приложения, и при успешном результате вы должны получить следующее:

Windows PowerShell delete app

Обратите внимание, что системные приложения вы удалить не сможете. Об этом вас уведомит следующее сообщение:

PowerShell warning

Это справедливо для таких приложений, как:

Microsoft.Windows.Cortana
MicrosoftEdge
ContactSupport
PrintDialog и др.

Более точный список «неубиваемых» приложений на скрине ниже:

Windows PowerShell system list

Так же есть возможность удаления сразу всех приложения (кроме вышеупомянутых), для этого вместо номера конкретного приложения введите «all», а далее лишь подтверждайте удаление всех сразу (Yes to All) или каждого по отдельности (Yes).

Windows PowerShell delete all

Восстановление

Если вы случайно удалили или же впоследствии решили пользоваться тем или иным приложением, то можно его восстановить через Windows Store или же воспользоваться следующим предложеным вариантом восстановления.

К примеру, вы хотите восстановить приложение «Store», которое, кстати, удаляется вышепредложенным скриптом, для этого необходимо от администратора запустить следующую строку в Powershell:

Add-AppxPackage -register "C:\Program Files\WindowsApps\*Store*\AppxManifest.xml" -DisableDevelopmentMode

Аналогичным способом можно восстановить другие приложения указав соответствующее имя между «*». Если же необходимо возобновить работу некоторого N-го количества, то лучше воспользоваться скриптом (удаляйте/добавляйте нужные именно вам строки):

Script to restore apps:

Add-AppxPackage -register «C:\Program Files\WindowsApps\*Weather*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Finance*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Maps*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*News*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Sports*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Travel*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Camera*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Reader*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Xbox*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Alarms*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Calculator*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*OneNote*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*People*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*SoundRecoder*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*3dbuilder*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Store*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Photos*\AppxManifest.xml» -DisableDevelopmentMode
Add-AppxPackage -register «C:\Program Files\WindowsApps\*Phone*\AppxManifest.xml» -DisableDevelopmentMode

 

Как и в предыдущем случае, сохраните скрипт, отредактируйте по-необходимости и запустите.

Или же, как вариант, если вы захотите вернуть весь комплект предустановленных утилит, введите следующую строку от имени администратора в Powershell. Так что не бойтесь экспериментировать, восстановить исходное состояние легко:

Get-AppxPackage -AllUsers| Foreach {Add-AppxPackage -DisableDevelopmentMode -Register “$($_.InstallLocation)\AppXManifest.xml”}

При восстановлении возможны предупреждающие сообщения, они относятся к приложениям, которые в настоящее время запущены.

Восстановление просмотрщика фотографий в Windows 10

Большинство пользователей, установив Windows 10, недовольны отсутствием приложения просмотра фотографий — Windows Photo Viewer.

Для восстановления Photo Viewer необходимо добавить некоторые ключи в реестр. Чтобы это сделать, сохраните нижеприведенный скрипт с расширением .reg и запустите. После этого выберите данное приложение для открытия изображений по-умолчанию: Settings — Default apps — Photo — Windows Photo Viewer:

Windows Photo Viewer

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

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Photo Viewer\Capabilities\FileAssociations]
«.jpg»=»PhotoViewer.FileAssoc.Jpeg»
«.wdp»=»PhotoViewer.FileAssoc.Wdp»
«.jfif»=»PhotoViewer.FileAssoc.JFIF»
«.dib»=»PhotoViewer.FileAssoc.Bitmap»
«.png»=»PhotoViewer.FileAssoc.Png»
«.jxr»=»PhotoViewer.FileAssoc.Wdp»
«.bmp»=»PhotoViewer.FileAssoc.Bitmap»
«.jpe»=»PhotoViewer.FileAssoc.Jpeg»
«.jpeg»=»PhotoViewer.FileAssoc.Jpeg»
«.gif»=»PhotoViewer.FileAssoc.Gif»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Bitmap]
«ImageOptionFlags»=dword:00000001
«FriendlyTypeName»=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,\
00,46,00,69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,\
77,00,73,00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,\
00,65,00,72,00,5c,00,50,00,68,00,6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,\
65,00,72,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,35,00,36,00,00,\
00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Bitmap\DefaultIcon]
@=»%SystemRoot%\\System32\\imageres.dll,-70»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Bitmap\shell]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Bitmap\shell\open]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Bitmap\shell\open\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,22,00,25,\
00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,00,73,00,\
25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,50,00,68,00,6f,\
00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,72,00,5c,00,50,00,68,00,\
6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,65,00,72,00,2e,00,64,00,6c,00,6c,\
00,22,00,2c,00,20,00,49,00,6d,00,61,00,67,00,65,00,56,00,69,00,65,00,77,00,\
5f,00,46,00,75,00,6c,00,6c,00,73,00,63,00,72,00,65,00,65,00,6e,00,20,00,25,\
00,31,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Bitmap\shell\open\DropTarget]
«Clsid»=»{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.JFIF]
«EditFlags»=dword:00010000
«ImageOptionFlags»=dword:00000001
«FriendlyTypeName»=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,\
00,46,00,69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,\
77,00,73,00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,\
00,65,00,72,00,5c,00,50,00,68,00,6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,\
65,00,72,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,35,00,35,00,00,\
00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.JFIF\DefaultIcon]
@=»%SystemRoot%\\System32\\imageres.dll,-72»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.JFIF\shell]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.JFIF\shell\open]
«MuiVerb»=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,\
69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,\
00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,\
72,00,5c,00,70,00,68,00,6f,00,74,00,6f,00,76,00,69,00,65,00,77,00,65,00,72,\
00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,34,00,33,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.JFIF\shell\open\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,22,00,25,\
00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,00,73,00,\
25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,50,00,68,00,6f,\
00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,72,00,5c,00,50,00,68,00,\
6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,65,00,72,00,2e,00,64,00,6c,00,6c,\
00,22,00,2c,00,20,00,49,00,6d,00,61,00,67,00,65,00,56,00,69,00,65,00,77,00,\
5f,00,46,00,75,00,6c,00,6c,00,73,00,63,00,72,00,65,00,65,00,6e,00,20,00,25,\
00,31,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.JFIF\shell\open\DropTarget]
«Clsid»=»{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Jpeg]
«EditFlags»=dword:00010000
«ImageOptionFlags»=dword:00000001
«FriendlyTypeName»=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,\
00,46,00,69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,\
77,00,73,00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,\
00,65,00,72,00,5c,00,50,00,68,00,6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,\
65,00,72,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,35,00,35,00,00,\
00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Jpeg\DefaultIcon]
@=»%SystemRoot%\\System32\\imageres.dll,-72»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Jpeg\shell]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Jpeg\shell\open]
«MuiVerb»=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,\
69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,\
00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,\
72,00,5c,00,70,00,68,00,6f,00,74,00,6f,00,76,00,69,00,65,00,77,00,65,00,72,\
00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,34,00,33,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Jpeg\shell\open\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,22,00,25,\
00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,00,73,00,\
25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,50,00,68,00,6f,\
00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,72,00,5c,00,50,00,68,00,\
6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,65,00,72,00,2e,00,64,00,6c,00,6c,\
00,22,00,2c,00,20,00,49,00,6d,00,61,00,67,00,65,00,56,00,69,00,65,00,77,00,\
5f,00,46,00,75,00,6c,00,6c,00,73,00,63,00,72,00,65,00,65,00,6e,00,20,00,25,\
00,31,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Jpeg\shell\open\DropTarget]
«Clsid»=»{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Gif]
«ImageOptionFlags»=dword:00000001
«FriendlyTypeName»=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,\
00,46,00,69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,\
77,00,73,00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,\
00,65,00,72,00,5c,00,50,00,68,00,6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,\
65,00,72,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,35,00,37,00,00,\
00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Gif\DefaultIcon]
@=»%SystemRoot%\\System32\\imageres.dll,-83»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Gif\shell]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Gif\shell\open]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Gif\shell\open\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,22,00,25,\
00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,00,73,00,\
25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,50,00,68,00,6f,\
00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,72,00,5c,00,50,00,68,00,\
6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,65,00,72,00,2e,00,64,00,6c,00,6c,\
00,22,00,2c,00,20,00,49,00,6d,00,61,00,67,00,65,00,56,00,69,00,65,00,77,00,\
5f,00,46,00,75,00,6c,00,6c,00,73,00,63,00,72,00,65,00,65,00,6e,00,20,00,25,\
00,31,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Gif\shell\open\DropTarget]
«Clsid»=»{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Png]
«ImageOptionFlags»=dword:00000001
«FriendlyTypeName»=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,\
00,46,00,69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,\
77,00,73,00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,\
00,65,00,72,00,5c,00,50,00,68,00,6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,\
65,00,72,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,35,00,37,00,00,\
00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Png\DefaultIcon]
@=»%SystemRoot%\\System32\\imageres.dll,-71»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Png\shell]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Png\shell\open]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Png\shell\open\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,22,00,25,\
00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,00,73,00,\
25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,50,00,68,00,6f,\
00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,72,00,5c,00,50,00,68,00,\
6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,65,00,72,00,2e,00,64,00,6c,00,6c,\
00,22,00,2c,00,20,00,49,00,6d,00,61,00,67,00,65,00,56,00,69,00,65,00,77,00,\
5f,00,46,00,75,00,6c,00,6c,00,73,00,63,00,72,00,65,00,65,00,6e,00,20,00,25,\
00,31,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Png\shell\open\DropTarget]
«Clsid»=»{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Wdp]
«EditFlags»=dword:00010000
«ImageOptionFlags»=dword:00000001

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Wdp\DefaultIcon]
@=»%SystemRoot%\\System32\\wmphoto.dll,-400»

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Wdp\shell]

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Wdp\shell\open]
«MuiVerb»=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,\
69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,\
00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,\
72,00,5c,00,70,00,68,00,6f,00,74,00,6f,00,76,00,69,00,65,00,77,00,65,00,72,\
00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,34,00,33,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Wdp\shell\open\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,22,00,25,\
00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,00,73,00,\
25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,50,00,68,00,6f,\
00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,72,00,5c,00,50,00,68,00,\
6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,65,00,72,00,2e,00,64,00,6c,00,6c,\
00,22,00,2c,00,20,00,49,00,6d,00,61,00,67,00,65,00,56,00,69,00,65,00,77,00,\
5f,00,46,00,75,00,6c,00,6c,00,73,00,63,00,72,00,65,00,65,00,6e,00,20,00,25,\
00,31,00,00,00

[HKEY_CLASSES_ROOT\PhotoViewer.FileAssoc.Wdp\shell\open\DropTarget]
«Clsid»=»{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}»

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Photo Viewer]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Photo Viewer\Capabilities]
«ApplicationDescription»=»@%ProgramFiles%\\Windows Photo Viewer\\photoviewer.dll,-3069»
«ApplicationName»=»@%ProgramFiles%\\Windows Photo Viewer\\photoviewer.dll,-3009»

 

Сохраняем результаты

Чтобы настройка не была напрасна и результат не исчез, рекомендую запретить автоматическую установку приложений при апдейтах в реестре.

Чтобы это сделать, необходимо залогиниться под административной учеткой, в реестре перейти: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsStore\WindowsUpdate.

И измените значение по Вашему усмотрению (по-умолчанию 4):

2 – выключить автоматическое обновление пользовательских приложений,

4 – включить автоматическое обновление пользовательских приложений.

Или же вы можете применить следующий скрипт для изменения в реестре (также сохраните с расширением .reg и запустите):

Скрипт для запрета автоматической установки приложений при апдейтах в реестре:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsStore\WindowsUpdate]

«AutoDownload»=dword:00000002

 

P.S.: Надеюсь, что предложенный вариант удаления/восстановления приложений несколько «облегчит» настойку Windows 10 на вашем ПК. Также после всех внесенных изменений рекомендую перезагрузиться.

Другие статьи на тему OC Windows 10

Исследование уязвимостей 2016

Новый отчет об исследовании уязвимостей безопасности был выпущен компанией Flexera. Было найдено более 2000 уязвимостей в 20 лучших программных продуктах, большинство которых вы используете прямо сейчас.

Согласно Flexera, наибольшее количество уязвимостей было связано с компанией Microsoft (518) в их операционных системах Windows 8, Windows 10, Windows Server 2012 и Windows RT.

SharePoint logo

Совместная работа с документами: SharePoint 2016. Часть 2. Настройка внешнего доступа.

Продолжаю цикл публикаций на тему SharePoint Server. В первой части мы рассмотрели особенности совместной работы, используя Office Online и настрольную версию программы MS Office. В этой статье покажу, как запустить и опубликовать SharePoint + Office Online.

Мы рассмотрим случай корпоративного клиента, для которого важно держать всю инфраструктуру и хранящиеся в ней данные под своим контролем, т.е. с развернутой фермой SharePoint 2016.

DNS

Сразу упрощаем себе и пользователю работу по запоминанию и настраиваем Split DNS для хостов sharepoint server и office online server.

Дано: Внешний домен servilon.ru и внешние имена sp2016.servilon.ru и oos2016.servilon.ru.

Решение: На внутреннем DNS добавляем две новые Forward Lookup Zones с соответствующими именами sp2016.servilon.ru и oos2016.servilon.ru.

В каждую зону добавляем по А записи с указанием на локальный адрес соответствующего сервера:

DNS

Сертификат

Выписываем сертификат сразу на оба сервиса. В SAN добавляем оба имени sp2016.servilon.ru и oos2016.servilon.ru.

DNS Certificate

Этот сертификат мы ещё трижды вспомним, он будет использоваться на ShrePoint Server (в IIS), на Office Online Server и на ARR для публикации сайтов

Настройки SP

Первое на что обращаешь внимание при настройке совместной работы – это настройки версионности для библиотеки документов (Library > Library Settings > Versioning Settings).

В 2016 сервере Microsoft нас толкает на сотрудничество и объединение, уже настроев по умолчанию всё для совместной работы:

Document Version History установлен в Create major versions;

Require Check Out — NO

Тут так же надо вспомнить про безопасность и наш сертификат, указываем его в Bindings для нашего SP сайта:

Настройка OOS

Office Online Server – это

  • Во-первых, возможность сократить количество лицензий и установок MS Office.
  • Во-вторых, расширение возможности доступа и редактирования документа, грубо говоря – нужен только браузер.
  • В-третьих, отличный от настольной версии опыт совместной работы. Об этом будет дальше.

Так что давайте посмотрим, что нам для разворачивания сервера понадобится.

MS говорит о минимальных требованиях к оборудованию идентичных требованиям для SharePoint Server 2016:

  • ОЗУ: 12ГБ
  • Процессор: 64-разрядный, четырехъядерный
  • ЖД: 80ГБ

В реальности, для тестовой среды можно значительно урезать ОЗУ.

  1. На сервере устанавливаем .NET Framework 4.5.2;
  2. Устанавливаем необходимые компоненты ОС командой
    Install-WindowsFeature Web-Server, Web-Mgmt-Tools, Web-Mgmt-Console,
    Web-WebServer, Web-Common-Http, Web-Default-Doc, Web-Static-Content,
    Web-Performance, Web-Stat-Compression, Web-Dyn-Compression, 
    Web-Security,Web-Filtering, Web-Windows-Auth, Web-App-Dev, 
    Web-Net-Ext45,Web-Asp-Net45, Web-ISAPI-Ext, Web-ISAPI-Filter, 
    Web-Includes, InkandHandwritingServices, Windows-Identity-Foundation
  3. После установки требуется перезагрузка системы.
  4. Запускаем установку OOS, мастер установки спросит только путь установки.
  5. Настроем ферму OOS (сразу рассмотрим безопасное соединение https).
    • Импортируем ранее выписанный сертификат.
    • Создаем OOS ферму командой PS:
      Set-OfficeWebAppsFarm -EditingEnabled

      InternalURL и ExternalURL идентичны т.к. настроен Split DNS.

Для включения возможности правки через OOS используем команду PS:

Set-OfficeWebAppsFarm -EditingEnabled

InternalURL и ExternalURL идентичны т.к. настроен Split DNS.
Вернемся на сервере SharePoint, буквально на две команды:

  1. В SharePoint 2016 Management Shell от администратора выполняем команду:
    New-SPWOPIBinding -ServerName “OOS server name”

    SharePoint 2016 Management Shell

  2. Т.к. наш SharePoint используется как внутри, так и снаружи инфраструктуры меняем зону на external-https:
    Set-SPWOPIZone -zone "external-https"

Настройка публикации на ARR

Импортируем наш сертификат в IIS.

Импорт сертификата в IIS

Указываем его в Bindings:

Импорт сертификата в IIS

Импорт сертификата в IIS

Создадим 2 фермы для sp2016.servilon.ru и oos2016.servilon.ru.

Создание новой серверной фермы

Создание новой серверной фермы

Создание новой серверной фермы

Создание новой серверной фермы

Создание новой серверной фермы
2.

Создание новой серверной фермы

Создание новой серверной фермы

Создание новой серверной фермы

Готово:

Поправим настройку кэш в обоих случаях

Новая ферма кэш

Новая ферма кэш

На уровне сервера правим URL Rewrite

URL Rewrite

Для OOS:
  1. Добавляем Condition
    Condition для OSS
  2. В Action Properties выставляем https://
    Action Properties edit

Аналогичные действия проводим для SP.

На выходе получаем следующие настройки:

SP url rewrite

После правок IIS, перезагружаем сервис командой iisreset.

Готово! Теперь у вас есть сервер oos2016.servilon.com как сервер для работы через браузер и с мобильных устройств, и sp2016.servilon.com как точка подключения к сайту SharePoint.

Другие статьи на тему SharePoint 2016

SharePoint logo

Совместная работа с документами: SharePoint 2016, Office Online и все-все-все. Часть 1.

SharePoint – модно, так должна начинаться эта статья. Но будем честны, у некоторых коллег выступает холодный пот при упоминании этого сервиса, а каждый раз, когда говоришь о документообороте и прелестях его настройки — где-то плачет котик. Первые версии продукта породили множество противников. Однако с годами из неуклюжего монстра SharePoint понемногу превращается в милого, пушистого, хотя и прожорливого офисного питомца. Если в вашей инфраструктуре уже развернуты AD, Exchange, Skype for Business, и стоит вопрос хранения и доступа к документам, то заводите SharePoint 2016.

С этого вступления я хочу начать цикл «разоблачения» SP, пройтись по настройкам и честном сравнении с альтернативными сервисами.

Microsoft каждый год сообщает о добавлении функций совместной работы в свои продукты Office и SharePoint, а заголовки статей-обзоров обещают нам «киллера» Google Docs. Что же мы имеем в данный момент, кому это будет полезно, и как это работает – об этом и будут следующие строчки в этой статье.

  1. Для совместной работы документы должны располагаться в облаке ( OneDrive, SharePoint Online), либо на on-premise сервере SharePoint.
  2. Просмотр и редактирование c PC осуществляется 2-мя способами:
    • Через web браузер с помощью Office Online apps (ранее Office Web Apps)
    • И через приложения пакета Microsoft Office (Word, Excel, PowerPoint, OneNote)
  3. Отдельным пунктом вынесу просмотр-редактирование с мобильных устройств.

Совместная работа в Office Online:

Alarm: Дальше будет много сравнений одинаковых действий для тех, кому важны детали.

Тем, кому важна суть вкратце – прошу пожаловать в Вывод.

Word Online

Правка word online
В этом режиме правка документа может производиться несколькими пользователями одновременно, при этом изменения и имя пользователя вносящего правки отображаются моментально у остальных соавторов. Пользователи могут править одновременно один и тот же участок текста, блокировки по абзацам – нет.

Excel Online

Правка exel online

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

Exel online

PowerPoint Online

Правка powerpoint online

PowerPoint Online позволяет работать одновременно над одним слайдом, но лучше работать над разными элементами, иначе пользователи не видят real time изменений друг друга.

PowerPoint online

Совместная работа в настольной версии Office:

Опыт совместной работы с документами через Office Online оставляет приятные впечатления, когда речь идет о правках текста без необходимости значительных изменений форматирования. Если вам захочется вставить диаграммы, smart art, оглавление, макросы, форматировать таблицы, использовать формулы и т.д. тут придётся использовать настольную версию программ. О разнице функционала настольной версии и online можно писать отдельную статью. Здесь же рассмотрим отличия, связанные с совместной работой.

MS Word

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

Вносимые изменения станут видны другим соавторам только после их сохранения автором и обновления документа остальными пользователями.

Сохранение-обновление объединено в кнопке Save (Ctrl+S)

Сохранение-обновление word online

Наличие обновлений индицируется иконкой напротив имени автора.

MS Excel

В случае с Excel возможности одновременной работы над документом нет. Нам предлагают либо всем перейти в онлайн версию –

Совместная работа exel online

либо встать в очередь —

MS PowerPoint

Напротив, в PowerPoint ни блокировки, ни обозначения элемента, над которым работает другой пользователь, нет. Так что, о том, что кто-то ещё работает над той же презентацией, вы можете понять разве что через панель Share.

Совместная работа PowerPoint

Наличие обновлений сигнализируется малоприметным статусом Updates Available. Статус появляется только после сохранения изменений автором, сами изменения появляются после обновления документа с помощью Save (Ctrl+S).

Наличие обновлений PowerPoint online

Совместная работа в мобильных устройствах:

Microsoft Word App + Microsoft PowerPoint App

Android:

Абзац или элемент, над которым работает пользователь, не блокируется и не подсвечивается для других соавторов, возможна одновременная работа. Правки отображаются без дополнительных действий с небольшой задержкой. То, что кто-то другой работает над этим же элементом можно видеть в меню “Share”.

Powerpoint online android app

В случае с IPhone при изменениях выдается сообщение об обновлениях с предложением Применить/Отменить.

Powerpoint online iOS

Интересно было бы ещё протестировать на Windows Phone с Windows 10, но в компании таких не нашлось.

Microsoft Excel App

Совместная работа real time в Excel App не поддерживается.

real time в Excel App

Вывод

Microsoft не первооткрыватель в нише co-working, но его Office Online Server может оказаться отличным подспорьем для корпоративного клиента, не желающего уходить в облако. В список вещей на которые можно смотреть вечно, могу добавить движущиеся флажки с именами коллег и постепенно заполняющийся документ. К сожалению, за полноценным функционалом редактора по-прежнему придётся обращаться к настольным версиям программ, в которых ещё осталась и нужна кнопка сохранения.

Далее мы рассмотрим, как осуществить процесс разворачивания on-premise компонент совместного доступа в корпоративной инфраструктуре. Ферма SharePoint 2016, Office Online Server, публикация.

Другие статьи на тему SharePoint 2016

Azure MFAS

Настройка Microsoft Azure Multi-Factor Authentication Server (MFAS) в качестве второго фактора аутентификации

Почему именно MS Azure?

  1. Лучшая интеграция с AD, что очень удобно, когда для VPN используется та же учетная запись, что и для остальных ресурсов.
  2. Разные типы аутентификации, звонок, SMS приложение и офлайн OTP код.
  3. Простота настройки.
  4. Высокая надежность и доверие.

Из минусов, наверное, стоит отметить только то, что это платное решение, но безопасность никогда и не бывает дешевой.

Настройка Microsoft Azure

Приведенные ниже шаги предполагают, что у Вас имеется подписка или же установлена триальная версия Microsoft Azure.

Перейдем непосредственно к настройке:

  1. Заходим на портал управления Azure.

Azure active directory

  1. Переходим на вкладку Active Directory -> Поставщики многофакторной проверки подлинности -> Быстрое создание. Указываем необходимые параметры и далее «создать».

Azure создать

После создания, будет доступна кнопка «Управление», переходим:

Azure Управление

  1. Переходим в загрузки. Скачиваем MULTI-FACTOR AUTHENTICATION SERVER.

Также нужно создать учетную запись для активации сервера.

Azure создание учётной записи

Для установки данного сервера понадобится .NET Framework 2.0.

Важно: Устанавливать рекомендуется на отдельную VM. При установке пропускаем мастер настройки.

Функции сервера: синхронизация пользователей с AD, RADIUS server для Cisco ASA, отправка запросов на авторизацию по второму фактору, прием и обработка ответов от клиентов, авторизация пользователей.

Может устанавливаться как на серверные версии, так и на клиентские.

  1. При первом запуске активируем с помощью ранее сгенерированной учетной записи (от репликации на данном этапе отказываемся).
  2. Настраиваем интеграцию пользователей между AD и нашим сервером. Во вкладке Directory Integration добавляем каталог, который будет синхронизироваться с AD и настраиваем параметры синхронизации:

Azure synchronization item

MFAS

  1. В AD создаем пользователя и синхронизируем Базу пользователей с MFAS:
    а) создаем тестового пользователя и указываем номер телефона:

MFAS user test

б) Сохраняем, нажимаем кнопку «Test..» во вкладке Users. Вводим учетные данные пользователя:

Test user

в) На указанный телефон получаем звонок, нажимаем «#». Об успешном завершении теста свидетельствует сообщение:

one-time passcode

Также проверить авторизацию можно через SMS. Для этого, в настройках клиента, необходимо указать способ авторизации Text message – One-Way – OTP. В данном случае MFAS запросит OTP, который в виде SMS придет Вам на телефон.

81

Для того, что бы связать пользователя с мобильным устройством, на котором установлен Azure Authenticator, понадобится развернуть и настроить User Portal (Инструкция по установке и настройке User Portal).

Так же необходимо дополнительно установить и настроить Mobile Portal:

а) Переходим в директорию C:\Program Files\Multi-Factor Authentication Server

б) Выбираем необходимую версию и устанавливаем.

в) После установки редактируем файл:

С:\Inetpub\wwwroot\MultiFactorAuthMobileAppWebService\Web.conf

Находим параметры:

WEB_SERVICE_SDK_AUTHENTICATION_USERNAME
WEB_SERVICE_SDK_AUTHENTICATION_PASSWORD

И меняем значения аналогично параметрам User Portal.

Также в разделе pfup, параметр <valuе>… </valuе> изменяем по аналогии с User Portal — <valuе>…</valuе>. В нашем случае «EXTERNALFQDN» — это mfa.servilon.com

Стоит отметить, что для работы User Portal необходимо:

– Запись во внешней DNS зоне, которая будет указывать на User Portal.

– Доверительные отношения с сервером. В идеале — это «белый» сертификат выписанный для «EXTERNALFQDN».

  1. После установки и настройки, для корректной работы User Portal, вводим URL на портал во вкладке «User Portal» и, если авторизация для доменных пользователей, указываем Primary authentication – Windows Domain.

MFAS user portal

  1. Во вкладке Mobile App вводим URL Mobile App Web Service и устанавливаем галочку Enable OATH tokens, если хотим использовать мобильное устройство как Software token.

Принцип работы APP:

  • В режиме Token

APP Token

  • В стандартном режиме без PIN

APP без PIN

  1. После того как портал настроен, для привязки мобильного устройства, переходим по ссылке User Portal, в данном случае

MFA user log in

Во время первого входа необходимо заполнить форму секретных вопросов, после чего пользователь получит полноценный доступ к порталу.

  1. В меню Activate Mobile App переходим в Generate Activation Code. Генерируем новый код активации и в результате получаем:

MFA Active mobile app

На мобильном устройстве должно быть установлено приложение Azure Authenticator (ссылки для iOSAndroid иWindows Mobile).

Запускаем приложение – нажимаем + и считываем QR код. В результате учетная запись подвязывается к мобильному устройству:

Проверка на сервере:

MFAS edit user

Теперь можно поэкспериментировать с различными режимами аутентификации и посмотреть, в чем же отличие режима Standard от «OATH token».

MFAS edit user

Настройка Radius

Для аутентификации пользователей AnyConnect Cisco ASA может использовать сторонний Radius сервер. Для этого на ASA необходимо настроить AAA Server, а на MFAS настроить Radius клиент:

MFAS Radius

MFAS Radius

Настройка CISCO ASA

Так как используется доменная аутентификация, ASA должна иметь доверительные отношения с доменом. А также рекомендуется использовать «белый» сертификат для VPN gateway. В нашем случае – vpn.servilon.co

На ASA рекомендуем настроить AnyConnect VPN gateway с локальной аутентификацией. Убедиться, что подключение работает, после чего приступить к настройке аутентификации через Radius.

После чего настраиваем RADIUS. Переходим на Configuration / Remote Access VPN / AAA/Local Users / AAA Server Groups и создаем группу:

edit AAA server

Добавляем в группу сервер. Таймаут необходимо увеличить, так как значения по-умолчанию может не хватить для ввода кода.

edit AAA server group

Тестируем связку с RADIUS сервером:

Test AAA server

При успешном тесте, на ранее настроенном «AnyConnect Connection Profiles» меняем аутентификацию с локальной на новую группу:

AnyConnect Connection Profiles new group

Настройка профиля:

  1. Сменить таймаут:

AnyConnect Connection Profiles editor

  1. Указать FQDN для Anyconnect gateway.

AnyConnect Connection Profiles editor

Для того, чтобы протестировать подключение с аутентификацией в стандартном режиме и режиме OATH token, подключаемся к FQDN и вводим доменные учетные данные

FQDN

Получаем запрос на ввод кода с мобильного приложения:

991

Если же используется стандартный режим без PIN, то в приложение придет запрос на подтверждение аутентификации:

MFAS confirmation

После проверки второго фактора происходит аутентификация пользователя. Аутентификация успешна:

Successful authentication

В данной статье рассмотрен пример настройки двухфакторной аутентификации пользователей для приложения Cisco AnyConnect, но данная схема может быть реализована для любых сервисов, поддерживающих аутентификацию посредством протокола Radius.

Другие статьи на тему MS Azure

Cisco AnyConnect

Подключения к корпоративным ресурсам через Cisco AnyConnect на базе FreeRadius и Google Authenticator

Подключения к корпоративным ресурсам через Cisco AnyConnect посредстовм FreeRadius и Google Authenticator имеет свои плюсы и минусы.

Из плюсов данного варианта можно отметить то, что это решение бесплатное.

Минусы:

  • Интеграция с AD. Конечно можно интегрировать FreeRadius с AD через LDAP, но особенности архитектуры данного решения предусматривают хранение профилей пользователей локально на FreeRadius сервере.
  • Только один тип аутентификации – Time-Based One Time Password (TOTP).
  • Неочевидность необходимости использования второго фактора (пояснения в статье).

Установка компонентов

Для установки FreeRaduis в данном случае используется Debian Jessie 8.0 на виртуальной машине.

Ввиду того, что для авторизации будет использоваться TOTP, время на сервере должно быть правильным. Лучший способ синхронизировать время – установка NTP.


sudo apt-get update
sudo apt-get install ntp

Далее устанавливаем FreeRadius и необходимые модули:


sudo apt-get install build-essential libpam0g-dev freeradius libqrencode3 git

Загружаем и устанавливаем Google Authenticator:


cd ~
git clone https://code.google.com/p/google-authenticator/
cd google-authenticator/libpam/
make
make install

Также потребуется группа для пользователей, которых не нужно аутентифицировать:


addgroup radius-off

Настройка FreeRadius

Так как FreeRadius должен иметь доступ к .google_authenticator токенам во всех пользовательских директориях, он должен иметь права root-а. Для предоставления прав редактируем файл /etc/freeradius/radusd.conf.

Находим строки:


user = freerad
group = freerad

И меняем на:


user = root
group = root

Здесь, и в дальнейшем, сохраняем изменения.

Далее редактируем /etc/freeradius/users. Мы должны добавить ранее созданную группу «radius-off» в секцию «Deny access for a group of users.»

После строк:


# Deny access for a group of users.
#
# Note that there is NO 'Fall-Through' attribute, so the user will not
# be given any additional resources.

Добавляем:


DEFAULT         Group == "radius-disabled", Auth-Type := Reject
Reply-Message = "Your account has been disabled."
DEFAULT        Auth-Type := PAM

Теперь редактируем /etc/freeradius/sites-enabled/default.

Находим:


#  Pluggable Authentication Modules.
#  pam

И раскомментируем строку с pam

Редактируем /etc/pam.d/radiusd. Говорим FreeRadius аутентифицировать пользователей по принципу локальный unix пароль + Google Authenticator код.

Здесь мы должны закомметнировать все строки которые начинаются с @:


#@include common-auth
#@include common-account
#@include common-password
#@include common-session

И добавляем:


auth requisite pam_google_authenticator.so forward_pass
auth required pam_unix.so use_first_pass

Теперь нам нужно добавить Radius клиента, что бы FreeRadius обрабатывал запросы от CISCO ASA. В файл/etc/freeradius/clients.conf добавляем:


Client 192.168.110.6 {
secret = Password
shortname = ASA
}

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

Создаем пользователя:


adduser mfatest

Создаем для него google-authenticator:


cd /home/mfatest/
su mfatest
google-authenticator

В ответ получаем QR code:

QR code

После этого необходимо перезапустить сервис FreeRadius:


sudo service freeradius restart

На мобильном устройстве должно быть установлено приложение Google Authenticator (ссылки для iOS и Android).

Сканируем QR code с помощью приложения Google Authenticator. В итоге учетная запись «mfatest» подвязывается к Вашему мобильному устройству.

Google Authenticator app

Протестируем аутентификацию:


radtest   localhost 18120 testing123

Где:

  • <unix_password><google_auth> — это unix пароль + код из приложения в одну строку. В данном случае пароль Pass_123, код – 731923.
  • localhost 18120 testing123– это параметры стандартного локального radius клиента.

В итоге получается:


radtest mfatest Pass_123731923 localhost 18120 testing123

33

Настройка CISCO ASA

На ASA лучше настроить AnyConnect VPN gateway с локальной аутентификацией. Убедиться, что подключение работает, после чего приступить к настройке аутентификации через Radius.

Настраиваем RADIUS:

  1. Переходим на Configuration / Remote Access VPN / AAA/Local Users / AAA Server Groups и создаем группу:

edit AAA Server Group

  1. Добавляем в группу сервер:

edit AAA Server Group

Где Server Name or IP Address – это адрес нашего FreeRadius, Server Secret Key – ключ который мы настроили для клиента.

  1. Тестируем связку с RADIUS сервером:

test AAA Server

Где Password – это пароль пользователя + код из Google Authenticator

При успешном тесте, на ранее настроенном «AnyConnect Connection Profiles» меняем аутентификацию с локальной на группу FreeRad:

AnyConnect Connection Profiles

На этом настройки закончены. Чтобы убедится что все работает инициируем тестовое подключение.

AnyConnect Connection test connection

Вот здесь и появляется та неочевидность, о которой упоминалось ранее. FreeRadius не использует поэтапную аутентификацию, он не может запрашивать код для Google Authentication отдельно. Поэтому для успешной аутентификации, как и в тестах, в строке Password мы вводим пароль+код. Для неискушенного пользователя это может стать преградой для комфортного использования сервиса.

Данная схема универсальна и может быть реализована для любых сервисов, поддерживающих аутентификацию посредством протокола Radius.

Разработка → Двухфакторная аутентификация клиентов Cisco AnyConnect. FreeRadius и Google Authenticator

BitLocker on Exchange

BitLocker на серверах Exchange

Aрхитектура Exchange рекомендует включать BitLocker на фиксированных дисках с данными, которые хранят файлы баз данных Exchange, как для Exchange Server 2013, так и для Exchange Server 2016.

Что такое BitLocker?

BitLocker – это  встроенное в Microsoft Windows решение для шифрования томов, обеспечивающее повышенную защиту от кражи данных, например, в случаях похищения или утери компьютеров или жестких дисков.

Впервые BitLocke был представлен в Windows Vista и Windows Server 2008. С момента первого выпуска в BitLocker было сделано несколько усовершенствований, включая шифрование томов с данными, шифрование только используемого на диске пространства и гибкость резервирования.

По умолчанию BitLocker использует алгоритм шифрования AES в режиме cipher block chaining (CBC) со 128-битным (по умолчанию) или 256-битным ключом.

Как развернуть BitLocker?

Существует несколько варинатов развертывания BitLocker на серверах Exchange.

1. Шифрование тома операционной системы, а также томов данных Exchange с использованием либо network unlock, Data Recovery Agent and PKI infrastructure или при помощи TPM (рекомендуемый подход).

2. Шифрование только томов данных Exchange.

Чтобы использовать BitLocker для соответствия FIPS, следует учитывать:

  • Trusted Platform Module (TPM) версии 1.2 не является FIPS-совместимым и использует SHA1. Вы должны использовать TPM версии 2.0 для соответствия FIPS.
  • Для эффективного использования функции сети разблокировки, Вы должны принять во внимание основные требования.
  • Если Вы не используете Windows Server 2012 R2 или более поздние версии в качестве базовой операционной системы, то Вы не можете использовать пароли восстановления для BitLocker. Для получения дополнительной информации см. What’s New in BitLocker и KB 947249.

Метод шифрования тома

Есть два способа шифрования тома:

1. Шифрование всего объема. Используйте эту опцию, если Вам необходимо шифровать тома, которые уже содержат существующие данные системы обмена сообщениями. Например, для шифрования всего диска объемом 3 TB это займет более 8 часов.

2. Шифрование только используемого пространства. Используйте этот вариант для новых установок или новых дисков, на которых еще нет данных.

Перед началом процедуры шифрования всего тома убедитесь, что серверы переведены в режим обслуживания для предотвращения воздействия на конечных пользователей. Вы можете отметить значительное снижение производительности (~ 90% использования процессора) и уменьшение свободного пространства тома с ОС ( ~ 2 ГБ) пока производится шифрование тома. Кроме того, убедитесь, что развертывание BitLocker одновременно происходит не более, чем на одном сервере DAG для поддержания доступности.

Сценарий шифрования тома с ОС и томов данных Exchange

BitLocker обеспечивает максимальную защиту при использовании с модулем TPM. Модуль TPM – это аппаратный компонент, установленный на сервере, и мы рекомендуем использовать чип TPM версии 2.0. Он работает с BitLocker, помогая защитить данные пользователя, а также гарантируя, что сервер не был подделан пока был недоступен.

В частности, BitLocker может использовать TPM для проверки целостности компонентов ранней загрузки и данных конфигурации загрузки. Это помогает гарантировать, что BitLocker делает зашифрованный диск доступным только в случае, если эти компоненты не были подделаны и зашифрованный диск находится в исходном сервере.

BitLocker помогает гарантировать целостность процесса запуска, выполняя следующие действия:

  • Проверяет, что целостность файлов ранней загрузки сохранена и помогает гарантировать, чтобы не было вредоносных изменений этих файлов (например, заражения вирусом загрузочного сектора или руткитами).
  • Усиливает защиту для смягчения программных атак во время недоступности сервера. Любое альтернативное программное обеспечение, которое может запустить систему, не имеет доступа к ключам дешифрации для системного тома Windows.
  • Блокировка системы в случае подделки. Если какие-либо из контролируемых файлов были изменены, то система попросту не запустится. Если система не запускается в обычном режиме, то это сигнал администратору о фальсификации. В случае, если произошла блокировка системы, следуйте процедуре восстановления BitLocker, которая включает в себя процесс разблокировки системы при помощи пароля или USB-ключа.

Важно:TPM может быть использован только на физических серверах. Виртуальные серверы не способны использовать TPM. Если Вы зашифровали системный том гостевой операционной системы, то в обязательном порядке используйте пароль или USB-ключ для загрузки гостевой операционной системы.

Настройка среды

Приведенные ниже шаги предполагают, что на сервере Exchange установлена ОС Windows Server 2012 R2 или более поздняя.

Важно: При включении BitLocker на существующих серверах Exchange важно перевести серверы в режим обслуживания во избежание влияния процесса шифрования на конечных пользователей.

1. Создайте организационное подразделение (OU), содержащее серверы Exchange, если таковое не существует.
Запустите PowerShell с соответствующими разрешениями Active Directory.


New-ADOrganizationalUnit "Exchange Servers" -path "dc=contoso,dc=com"

$ExchangeOU = Get-ADOrganizationalUnit -Filter ‘Name -like "Exchange Servers"’

Get-ADComputer "Exchange Server" | Move-ADObject -TargetPath $ExchangeOU.DistinguishedName

2. Создайте объект групповой политики и свяжите его с OU, содержащим Exchange серверы.


Import-Module grouppolicy #RSAT должен быть установлен

New-GPO -Name "Exchange Server BitLocker Policy" -Domain contoso.com

New-GPLink -Name "Exchange Server BitLocker Policy" -Enforced "yes" -Target $ExchangeOU.DistinguishedName

3. Установите модуль BitLocker на серверах Exchange.

  • Запустите PowerShell с правами локального администратора.
  • Выполните Install-WindowsFeature BitLocker -Restart.
  • Перезагрузите сервер.

4. Включите TPM на серверах Exchange.

  • Обратитесь к производителю BIOS оборудования для получения подробной информации о том, как включить/активировать модуль TPM.
  • Проверьте состояние TPM с помощью Trusted Platform Module Management tool (tpm.msc).

5. Разрешите хранение информации восстановления TPM в Active Directory.

  • Откройте консоль Exchange с учетной записью, имеющей необходимые разрешения в Active Directory для применения записей управления доступом.
  • Выполните:

Add-ADPermission $ExchangeOU.DistinguishedName -User "NT AUTHORITY\SELF" -AccessRights ReadProperty,WriteProperty -Properties msTPM-OwnerInformation,msTPM-TpmInformationForComputer -InheritedObjectType Computer -InheritanceType Descendents

6. Настройте параметры Bitlocker в GPO.

  • Откройте консоль управления групповой политикой (gpmc.msc).
  • Перейдите по иерархической структуре к OU, содержащему серверы Exchange.
  • Щелкните правой кнопкой мыши Exchange Server BitLocker Policy и выберите Edit.
  • Откройте Computer Configuration, откройте Policies, откройте Administrative Templates, откройте Windows Components, и откройте BitLocker Drive Encryption.
    В правой панели дважды щелкните Choose drive encryption method and cipher strength. Выберите опцию Enabled. Если вы хотите использовать алгоритм AES с 256-битным шифрованием, выберите его и нажмите ОК.

Bitlocker configuration

  • Откройте Computer Configuration, откройте Policies, откройте Administrative Templates, откройте Windows Components, откройте BitLocker Drive Encryption, откройте Operating System Drives.
  • В правой панели дважды щелкните Require additional authentication at startup. Выберите опцию Enabled. Если Вы хотите отключить или изменить любой из методов аутентификации, сделайте это, и нажмите кнопку ОК.

BitLocker Drive Encryption

  • В правой панели дважды щелкните Choose how BitLocker-protected operating system drives can be recovered. Выберите опцию Enabled. Выберите Do not enable BitLocker until recovery information is stored to AD DS for operating system drives. Нажмите OK.

3

  • В правой панели дважды щелкните Enforce drive encryption type on operating system drives. Выберите опцию Enabled. Выберите опцию Used Space Only encryption для типа шифрования. Нажмите OK.

4

  • Откройте Computer Configuration, откройте Policies, затем Administrative Templates, потом Windows Components, далее BitLocker Drive Encryption, теперь откройте Fixed Data
  • В правой панели дважды щелкните Choose how BitLocker-protected fixed drives can be recovered. Выберите Enabled. Выберите Do not enable BitLocker until recovery information is stored to AD DS for fixed data drives. Нажмите OK.

5

  • В правой панели дважды щелкните Enforce drive encryption type on fixed drives. Выберите Enabled. Выберите опцию Used Space Only encryption для типа шифрования. Нажмите OK.

6

  • Откройте Computer Configuration, следующий шаг Policies, затем Administrative Templates, потом откройте System, далее Trusted Platform Module Services.
  • В правой панели дважды щелкните Turn on TPM backup to Active Directory Domain Services. Выберите Enabled. Нажмите OK.

7

  • Убедитесь, что групповая политика применяется к серверам Exchange.

$Servers = Get-AdComputer -SearchBase $ExchangeOU.DistinguishedName -Filter

Foreach ($Server in $Servers) {invoke-gpupdate -Computer $Servers.Name -Force -Target Computer}
  • Включите шифрование ОС.
    Создайте ключ восстановления: manage-bde -protectors -add -RecoveryPassword C:
    Выполните следующую команду на системном диске ОС:manage-bde -on C: –usedspaceonly
  • Включите шифрование тома данных (C:\ExchangeVolumes\ExVol1 определяет точку монтирования для тома данных Exchange, замените при необходимости).
    Создайте ключ восстановления:manage-bde -protectors -add -RecoveryPassword «C:\ExchangeVolumes\ExVol1»
    Выполните следующие действия для каждого тома базы данных Exchange: manage-bde -on «C:\ExchangeVolumes\ExVol1» –usedspaceonly
    Выполните следующие действия для каждого тома баз данных Exchange для включения автоматической разблокировки: Enable-BitLockerAutoUnlock -MountPoint «C:\ExchangeVolumes\ExVol1»

Примечание: поврежденные сектора диска могут привести к сбоям шифрования томов при помощи BitLocker. Подробнее здесь: Event ID 24588.
Сценарий шифрования томов данных Exchange

В ситуации, когда TPM не может быть использован (например, сервер не имеет TPM, или виртуализирован), шифрование системного тома ОС требует использования пароля или ключа USB, чтобы позволить операционной системе корректно загрузиться. Так как это может негативно повлиять на службы Exchange, вы можете отказаться от шифрования системного тома ОС. Вместо этого, вы можете зашифровать тома данных. Поскольку системный том ОС не зашифрован, то ОС не может автоматически разблокировать зашифрованные тома при загрузке.

Таким образом, одно из двух условий должно выполняться:

1. Администратор вручную вводит ключ восстановления и разблокирует каждый диск после загрузки ОС.

2. Выполняется запланированная задача для разблокировки зашифрованных томов во время загрузки ОС.

Следующие шаги описывают, как настроить запланированную задачу и предполагают, что на сервере Exchange установлена ОС Windows Server 2012 R2 или более поздняя.

  • Создайте организационное подразделение (OU), содержащее серверы Exchange, если таковое не существует.

New-ADOrganizationalUnit "Exchange Servers" -path "dc=contoso,dc=com"

$ExchangeOU = Get-ADOrganizationalUnit "Exchange Servers"

Get-ADComputer "Exchange Server" | Move-ADObject -TargetPath  ExchangeOU.DistinguishedName
  • Создайте объект групповой политики и свяжите его с OU, содержащим сервера Exchange.

Import-Module grouppolicy #RSAT должен быть установлен

New-GPO -Name "Exchange Server BitLocker Policy" -Domain contoso.com

New-GPLink -Name "Exchange Server BitLocker Policy" -Enforced "yes" -Target $ExchangeOU.DistinguishedName
  • Создайте учетную запись BitLocker службы для запланированной задачи (_bitlockersvc).
  • Создайте группу безопасности для управления BitLocker, поместив группу безопасности в защищенный контейнер.

New-ADGroup -name "Exchange BitLocker Management" -groupscope Universal -path "cn=users,dc=coe,dc=local"

Add-ADGroupMember "Exchange BitLocker Management" -members "_bitlockersvc", "Organization Management"
  • Установите модуль BitLocker на серверах Exchange

Install-WindowsFeature BitLocker
  • Перезагрузите сервер.
  • Добавьте группу безопасности BitLocker в группу локальных администраторов на всех серверах Exchange
  • Предоставьте группе безопасности BitLocker доступ к объекту AD msFVE-RecoveryPassword. Это позволяет учетным записям получить доступ к паролю восстановления.

$ExchangeOU = Get-OrganizationalUnit "Exchange Servers"

DSACLS $ExchangeOu.DistinguishedName /I:T /G "contoso\Exchange BitLocker Management:CA;msFVE-RecoveryPassword"
  • Настройте параметры шифрования BitLocker в GPO.
  • Убедитесь, что групповая политика применяется к серверам Exchange.

$Servers = Get-AdComputer -SearchBase $ExchangeOU.DistinguishedName -Filter

 Foreach ($Server in $Servers) {invoke-gpupdate -Computer $Servers.Name -Force -Target Computer}
  • Включите шифрование томов данных(C:\ExchangeVolumes\ExVol1 определяет точку монтирования для тома данных Exchange, замените при необходимости).
    Выполните следующие действия для каждого тома базы данных Exchange: Manage-bde -on «C:\ExchangeVolumes\ExVol1» -rp -usedspaceonly
  • Убедитесь, что ключи восстановления хранятся в Active Directory.
    Скачайте BitLocker Drive Encryption Configuration Guide: Backing Up BitLocker and TPM Recovery Information to Active Directory
    b. Выполните Get-BitLockerRecoveryInfo.vbs
    c. Если скрипт не возвращает никаких данных, выполните резервное копирование ключей восстановления путем загрузки и выполнения BDEAdBackup.vbs.

Создайте сценарий, который разблокирует тома данных при загрузке ОС.

Сохраните файл ниже в каталоге сценариев (например, c:\bitlocker).


UnlockDrives.ps1 
$computer = Get-ADComputer $env:computername 
$RecoveryInformations = get-ADObject -ldapfilter "(msFVE-Recoverypassword=*)" -Searchbase $computer.distinguishedname -properties * 
$vols = gwmi win32_encryptablevolume -Namespace "Root\CIMV2\Security\MicrosoftVolumeEncryption" 
$lockedvols = $vols | ? {$_.GetLockStatus().LockStatus -eq 1} 
$vols[0].GetKeyProtectors().VolumeKeyProtectorID 
foreach($lockedvol in $lockedvols) 
{ 
$RecoveryInformations | % {$lockedvol.UnlockWithNumericalPassword($_."msFVE-RecoveryPassword")} 
}
  • Создайте запланированное задание, которое будет запускаться при старте системы и разблокируйте тома данных, заменив выделенные жирным элементы.
    Сохраните файл в каталоге сценариев.
    b. Выполните schtasks /create /s $env:computername /ru contoso\_svcexbitlocker /rp /XML c:\Bitlocker\UnlockDrivesAtStart.xml /TN UnlockDrivesAtStart

Изменения в системе

Важно помнить, что любое из нижеследующих изменений в системе может привести к сбоям проверки целостности и не давать TPM выпустить ключ BitLocker для расшифровки защищенных томов:

  • Перемещение диска, зашифрованного при помощи BitLocker, в новый компьютер.
  • Установка новой материнской платы с новым модулем TPM.
  • Выключение, отключение или очистка TPM.
  • Изменение каких-либо настроек конфигурации загрузки.
  • Изменение BIOS, прошивки UEFI, основной загрузочной записи, загрузочного сектора, менеджера загрузки, дополнительного ПЗУ или других компонентов в начале загрузки или данных конфигурации загрузки.
  • Применение обновлений прошивки BIOS/UEFI.

Как часть вашей стандартной операционной процедуры, лучше приостановить шифрование BitLocker (через Suspend-BitLocker командлет) до введения каких-либо изменений на сервере. Кроме того, убедитесь, что любые аппаратные и программные изменения конфигурации успешно протестированы в тестовой среде (с включенным BitLocker) перед развертыванием в рабочей среде.

Кроме того, убедитесь, что разработана стандартная операционная процедура восстановления на случай, если возникнет необходимость в восстановлении BitLocker. Это сведет времени простоя к минимуму. Для получения более подробной информации, обратитесь к BitLocker Recovery Guide.

Работы по техническому обслуживанию дисков

Во время жизненного цикла сервера диски выходят из строя. В рамках ваших стандартных операционных процедур вы должны убедиться, что, когда диск заменяется новым, происходит форматирование тома и шифрование с помощью BitLocker.

В случае, если вы используете AutoReseed для восстановления сбойных дисков, у вас есть два варианта: форматирование и шифрование дисков перед использованием или шифрование после сбоя.

Форматирование и шифрование дисков перед использованием

В этом случае ваша стандартная процедура должна будет препятствовать форматированию резервных дисков через Disk Reclaimer. Вместо этого, вы форматируете и шифруете все резервные диски перед использованием.

1. Отключить Disk Reclaimer на DAG: Set-DatabaseAvailabilityGroup -AutoDagDiskReclaimerEnabled $false

2. Отформатируйте и зашифруйте все резервные диски. Не следует назначать точки монтирования или буквы дисков.

3. Как только диски отказывают, AutoReseed будет назначать резервные диски, заменяя неисправные тома, и повторно заполнять поврежденные копии баз данных.

4. Запланируйте время обслуживания. Замените неисправные диски. Отформатируйте и зашифруйте новые.

Шифрование после сбоя

В этом случае, ваша стандартная процедура будет позволять Disk Reclaimer отформатировать резервные диски (поведение по умолчанию). После того, как резервный диск будет отформатирован и базы данных заполнены, вы шифруете диск.

1. В случае отказа дисков, AutoReseed выделяет, перераспределяет и форматирует запасной диск.

2. AutoReseed инициирует операцию повторного заполнения.

3. Используя SCOM, или другой инструмент управления, вы отслеживаете события 1127 (инициирует операцию повторного заполнения базы данных) и 826 (завершение процесса повторного заполнения базы данных), которые находятся в Microsoft-Exchange-HighAvailability/Seeding канале.

4. Запланируйте техническое обслуживание для пострадавшего сервера и зашифруйте новый том.

Вывод

Эта информация поможет лучше понять шифрование и настройки BitLocker на серверах Exchange. Как указано, рекомендуемый подход заключается в использовании TPM для хранения информации восстановления, что позволяет операционной системе разблокировать тома данных автоматически во время загрузки. Однако, если Ваши серверы не имеют доступа к TPM, вы можете использовать шифрование только томов данных и разработать механизм разблокировки томов на этапе загрузки ОС.

Другие статьи на тему BitLocker

Уязвимость Google Chrome + PDF

Обнаружена уязвимость в PDFium – компонент браузера Chrome, предназначенный для отображения документов PDF. Для запуска вредоносного кода на компьютере жертвы достаточно просмотра PDF файла с изображением в формате JPEG2000 с модифицированным заголовком.

Skype for business CCE

Skype for Business – Cloud Connector Edition (CCE)

Несколько дней назад Microsoft выпустила Cloud Connector Edition (CCE) для Skype for Business Online, который представляет из себя гибридное решение для интеграции корпоративных АТС с Office 365. CCE – это набор компонентов, который позволяет организациям подключиться к ТФоП, организовать SIP транк с вашего Office 365 (Skype for Business Online). Это решение полезно для стран, в которых отсутствует возможность использования телефонной связи непосредственно в Office 365 в рамках корпоративного плана E5 с телефонией, на данный момент доступного только в США.

Cloud Connector Edition1

Итак, что же такое CCE и каковы особенности его лицензирования?

Что такое Skype for Business CCE?

Skype for Business Cloud Connector Edition (CCE) представляет собой гибридное решение, которое состоит из множества виртуальных машин, которые реализуют локальную связь с Cloud PBX .

Развернув минимальную топологию Skype Business Server в виртуальной среде (будь то облачное или локальное решение), пользователи организации получают возможность отправлять/принимать звонки со стационарных и мобильных телефонов за счет любой существующей голосовой инфраструктуры, например через АТС предприятия или SIP транк VOIP провайдера.

В состав CCE входит пакет из четырех виртуальных машин, которые должны быть развернуты и настроены с помощью мастера установки. Список виртуальных машин:

  1. Domain Controller
  2. Central Management Server (CMS)
  3. Mediation Server
  4. Edge Server

При этом нет зависимости от существующей инфраструктуры AD, на этапе развертывания, создается свой собственный лес. Виртуальные машины CCE рекомендуется размещать в DMZ. Компании, которые нуждаются в высокой доступности, могут развернуть 2 пакета CCE (2 х 4 виртуальных машин, т.е. 8 виртуальных машин в общей сложности).

Лицензия

Приобретать лицензии на виртуальные сервера, включенные в Cloud Connector Edition (CCE) не требуется. Лицензии необходимы пользователям Office 365, использующим гибридную конфигурацию, для них требуется приобретение корпоративного плана E5.

Документация Cloud Connector:

планирование: https://technet.microsoft.com/en-us/library/mt605227.aspx

настройка: https://technet.microsoft.com/EN-US/library/mt605228.aspx

Скачать Cloud Connector Edition можно по ссылке: http://aka.ms/getcce

Другие статьи на тему Skype for Business