Страницы

вторник, 3 сентября 2019 г.

Идентификаторы безопасности машины (Machine SID) и идентификаторы безопасности домена (Domain SID)


Необходимо четко понимать разницу между двумя независимыми идентификаторами безопасности (SID), которые относятся к компьютеру, подключенному к домену, поэтому сегодня мы поговорим об этом.

Машинный и доменный идентификаторы безопасности (SID) состоят из базового идентификатора безопасности (SID) и относительного идентификатор безопасности (RID), который добавляется к базовому SID. Базовый SID можно представить, как идентификатор удостоверяющего центра, в котором могут быть определены учетные записи и группы. Компьютер имеет идентификатор безопасности машины (Machine SID), в свою очередь локальные учетные записи и группы имеют свои идентификаторы безопасности (SID), которые состоят из идентификатора безопасности машины (Machine SID) и относительного идентификатора (RID).

Пример:

Компьютер PSPC01 S-1-5-21-3710404310-1819468805-1764988232
PSPC01\Администратор S-1-5-21-3710404310-1819468805-1764988232-500
PSPC01\Гость S-1-5-21-3710404310-1819468805-1764988232-501
PSPC01\User S-1-5-21-3710404310-1819468805-1764988232-1003

Чтобы увидеть идентификатор безопасности машины (Machine SID), можно воспользоваться утилитой PsGetSid из набора Sysinternals:

.\PsGetsid.exe

PsGetSid v1.45 - Translates SIDs to names and vice versa
Copyright (C) 1999-2016 Mark Russinovich
Sysinternals - www.sysinternals.com

SID for \\PSPC01:
S-1-5-21-3710404310-1819468805-1764988232

Для получения идентификатора безопасности (SID) локального пользователя можно воспользоваться командлетом Get-LocalUser:

Get-LocalUser администратор | `
Select-Object -Property name,sid

Name          SID
----          ---
Администратор S-1-5-21-3710404310-1819468805-1764988232-500

Идентификатор безопасности (не имя) – это то, что сохраняется в ключах доступа, связанных с защищаемым объектом и то, что сравнивается подсистемой безопасности при выполнении проверки доступа.

На системах в рабочих группах локальные учетные записи и группы – это все что у них есть. Утверждение отметок (Mark’s Assertion) – механизм аутентификации на удаленных системах с использованием локальных учетных записей требует, чтобы имя пользователя и пароль были известны удаленной системе, при этом идентификаторы безопасности (SID) не используются. Единственный путь сделать нечто подобное на единый вход (SSO) при помощи локальных учетных записей – это создать на удаленной системе пользователя с таким же именем учётной записи и паролем, как и на системе, с которой инициируется вызов. Идентификаторы безопасности (SID) не передаются и не используются для удаленной аутентификации.

Если компьютер подключен к домену, тогда другой SID вступает в игру. Компьютер продолжает иметь свой собственный идентификатор безопасности машины (Machine SID) и его собственные локальные учетные записи и группы. Но также он является членом домена, и имеет SID представляющий его учетную запись в домене. Домен – это удостоверяющий центр, в котором могут быть определены учетные записи, группы и прочие сущности – в том числе учётная запись компьютера:

Домен seele.local S-1-5-21-1903168476-3267560051-2806442713
seele\pspc01$ S-1-5-21-1903168476-3267560051-2806442713-2262
seele\Administrator S-1-5-21-1903168476-3267560051-2806442713-500
seele\Urlik S-1-5-21-1903168476-3267560051-2806442713-1602

Чтобы увидеть идентификатор безопасности (SID) для учетной записи компьютера в домене, можно воспользоваться утилитой PsGetSid из набора Sysinternals:

.\PsGetsid.exe pspc01$

PsGetSid v1.45 - Translates SIDs to names and vice versa
Copyright (C) 1999-2016 Mark Russinovich
Sysinternals - www.sysinternals.com

SID for SEELE\pspc01$:
S-1-5-21-1903168476-3267560051-2806442713-2262

Я же для получения идентификаторов безопасности из доменных служб Active Directory (AD DS) предпочитаю использовать командлеты Windows PowerShell из модуля ActiveDirectory.

Для получения идентификатора безопасности домена (Domain SID) можно воспользоваться командлетом Get-ADDomain:

Get-ADDomain -Identity seele.local | `
Select-Object -Property name,Domainsid

name  Domainsid
----  ---------
seele S-1-5-21-1903168476-3267560051-2806442713

Для получения идентификатора безопасности (SID) учетной записи компьютера можно воспользоваться командлетом Get-ADComputer:

Get-ADComputer -Identity pspc01 | `
Select-Object -Property name,sid

name   sid
----   ---
PSPC01 S-1-5-21-1903168476-3267560051-2806442713-2262

Для получения идентификаторов безопасности (SID) учетных записей пользователей можно воспользоваться командлетом Get-ADUser:

'Administrator','Urlik' | Get-ADUser | `
Select-Object -Property name,sid

name          sid
----          ---
Administrator S-1-5-21-1903168476-3267560051-2806442713-500
Yuriy Lebedev S-1-5-21-1903168476-3267560051-2806442713-1602

Теперь PSCP01 имеет два отдельных идентификатора безопасности:
  • Идентификатор безопасности машины (Machine SID), который определяет ее (локально) как удостоверяющий центр, позволяющий создавать учетные записи пользователей и группы.
  • Идентификатор безопасности учётной записи компьютера (Computer Account SID) в домене SEELE.LOCAL.

Нужно отметить главное – идентификаторы безопасности (SID) должны быть уникальными в рамках удостоверяющего центра в котором они используются. Таким образом PSCP01 должн иметь только одну локальную учётную запись с идентификатором безопасности (SID): S-1-5-21-3710404310-1819468805-1764988232, и не имеет значение если другой компьютер использует такой же идентификатор безопасности (SID) относящийся к его системе. Однако, в рамках домена SEELE.LOCAL должна быть только одна учётная запись с идентификатором безопасности (SID): S-1-5-21-1903168476-3267560051-2806442713-2262. Если несколько компьютеров в домене попробуют совместно использовать один идентификатор безопасности (SID), то это станет причиной различных проблем идентификации.

пятница, 30 августа 2019 г.

Операторы управления текстом в Windows PowerShell 5


Продолжаем изучать операторы и выражения в Windows PowerShell – на очереди у нас операторы управления текстом.

Веб-каст состоит из трех частей, в первой части описывается и демонстрируется удаление и замена символов при помощи оператора -replace, а также возможности применения специальных последовательностей c ним. Вторая часть посвящена унарной и бинарной форме оператора -join для объединения последовательностей в строки. В третьей части речь идет про разделение строк при помощи унарной и бинарной формы оператора -split, а также описывается и демонстрируется разбиение на указанное число групп и использование специальных опций соответствия. Дополнительно в веб-касте рассматривается возможность учета регистра у операторов -replace и -split.

Подробности и видео: LebedevUM.

P.S. Это уже 7-ой веб-каст в группе, поэтому я настоятельно рекомендую обратить внимание на предыдущие веб-касты, так как некоторые операторы управления текстом используют регулярные выражения:

Все веб-касты в хронологическом порядке: Windows PowerShell 5.

В следующем веб-касте мы разберем логические и побитовые операторы.

среда, 28 августа 2019 г.

Добавление и удаление серверов Storage Spaces Direct в Windows Server 2019


В предыдущих веб-кастах мы обсуждали развертывание двух и трех-узловых решений Storage Spaces Direct на базе Windows Server 2019. На этот раз речь пойдет о добавлении и удалении серверов в конвергентные и гиперконвергентные решения.


В веб-касте представлено описание процедуры горизонтального масштабирования Storage Spaces Direct, а также демонстрируется подготовка, добавление и удаление сервера. Дополнительно обсуждаются преимущества использования диспетчера отказоустойчивых кластеров (Failover Cluster Manager) и Windows PowerShell при добавлении и удалении серверов. Отдельное внимание уделяется вопросам масштабирования хранилища после изменения количества серверов в решении Storage Spaces Direct, а также демонстрируется использование вычислительных возможностей кластера виртуальными машинами Hyper-V.

Подробности и видео: LebedevUM.

P.S. Если вы не знакомы с конвергентными и гиперконвергентными решениями, то рекомендую начать свое знакомство со статьи «Обзор Storage Spaces Direct».

Это третий веб-каст про Storage Spaces Direct, поэтому если вас интересуют вопросы развертывания – обратитесь к предыдущим веб-кастам:

вторник, 27 августа 2019 г.

Доступна предварительная версия Fedora CoreOS


Red Hat вместе с сообществом Fedora 25 июля 2019-го года анонсировали доступность первого релиза для предварительно пользовательского ознакомления Fedora CoreOS. Впервые анонсированный на Red Hat Summit 2018, Fedora CoreOS – это операционная система, предназначенная для предоставления полностью автоматизированных возможностей для облачных и контейнерных рабочих нагрузок. Она связывает вместе последние инновации Linux от сообщества Fedora и ключевые компоненты CoreOS, такие как Ignition вместе с последними технологиями Open Container Initiative (OCI) для запускаемых контейнеров.

Во многом как и его предшественник, Container Linux, Fedora CoreOS разделяет множество таких же целей проекта в части автоматизации и транзакционности обновлений, нескольких потоков релизов для тестовых узлов и декларативного развертывания конфигурации – для обеспечения кроссплатформенной поддержки (Platform Agnostic). Команда Fedora CoreOS также заинтересована в расширении их возможностей для поддержки OKD, полной поддержки SELinx и прочих инноваций.

В начале 2018-го года Red Hat приобрела CoreOS и удвоила собственную контейнерную стратегию. CoreOS достаточно хорошо известна за счет ее продуктов Container Linux и Tectonic вместе с плеядой проектов с открытым исходным кодом, многие из которых получили адаптацию в основном потоке. С самого появления Container Linux, экосистема контейнеров эволюционировала и развивалась по нескольким направлениям. Наиболее значимые изменения происходят в центрах экосистемы в первую очередь вокруг Kubernetes, а уже потом в ядре контейнеров.

Притяжение, которое создается вокруг Kubernetes помогает объединить множество проектов Cloud Native Computer Foundation (CNCF), а также сместить операционный фокус на распределенные системы. Это смещение заставляет нас по-другому думать об обновлениях, жизненном цикле и границах неизменности, так как это касается операционной системы. В Fedora CoreOS, команда разработки сохраняет большую часть пользовательских возможностей от Container Linux, в то же время смещая фокус некоторых технологий для лучшей адаптации к требованиям Kubernetes.

Со временем планируется реализовать для Fedora CoreOS практически все варианты использования, как и для Container Linux, а также добавить поддержку OKD – родительский проект для Red Hat OpenShift. Fedora CoreOS также будет служить как точка интеграции для многих проектов предоставляемых Red Hat Enterprise Linux CoreOS, в том числе Ignition, rpm-ostree и Afterburn. Проект также будет использован для полной замены Fedora Atomic Host.

Менеджер проекта, отвечающий в Red Hat за контейнеры и CoreOS – Ben Breard, призывает всех посмотреть на предварительную версию и помочь сформировать будущее Fedora CoreOS.

понедельник, 26 августа 2019 г.

Регулярные выражения в Windows PowerShell 5


Вот и подошло время для очередного веб-каста про Windows PowerShell 5, на этот раз речь пойдет о регулярных выражениях (Regular Expressions).

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

Подробности и видео: LebedevUM.

P.S. Это шестой веб-каст в группе, поэтому, если вы не знакомы с операторами и выражениями, начните свое знакомство с предыдущих веб-кастов группы:

Все веб-касты в хронологическом порядке: Windows PowerShell 5.

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