Перейти к содержимому

Обслуживание папки обмена

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

Однако независимо от того, применяются ли для папки обмена какие-либо средства обеспечения безопасности или, по-простому, создана обыкновенная папка, следует предусмотреть очистку папки обмена на регулярной основе. В противном случае папка будет неограниченно разрастаться, не говоря уже о том, что любой желающий сможет поискать в ней конфиденциальную информацию. Простейший вариант, и он был рассмотрен ранее — полностью очищать папку в конце рабочего дня. Сценарий, представленный ниже, позволяет сохранять информацию в течение заданного времени (в примере — 24 часа) независимо от того, в начале или в конце рабочего дня информация была размещена в папке обмена. Путь к папке обмена следует указать в переменной $SrcRoot. Он может быть локальным или сетевым в зависимости от того, будет ли запускаться сценарий на самом файловом сервере или на другом, например, на управляющем сервере. При желании сценарий можно дополнить, передавая путь к папке и срок хранения в ней информации в качестве параметров.

Function Remove-EmptyFolder {

    Param([string]$Path)

    $colDirs = Get-ChildItem -Path $Path -Directory

    If ($colDirs.count -gt 0) {
        foreach ($oDir in $colDirs) {
           $SubfolderPath = $Path + "\" + $oDir.Name
           Remove-EmptyFolder -Path $SubfolderPath
        }
    }
    If ($Path -ne $SrcRoot) {
        Get-Item -Path $Path | Where-Object {$_.GetFiles().Count -eq 0} | Remove-Item
    }
}

$SrcRoot = "\\cloudlab.com\org\tmp\tmp"

$dt = (Get-Date).AddDays(-1)

# Удаляем файлы, созданые/скопированные более 1 дня назад
Get-ChildItem -Path $SrcRoot -Recurse -File | where-object {$_.CreationTime -lt $dt} | Remove-Item

# Рекурсивно удаляем пустые папки
Remove-EmptyFolder -Path $SrcRoot

Выборка файлов, подлежащих удалению, происходит по дате их создания. Дата создания — атрибут, который всегда изменяется при копировании (но не перемещении) файлов средствами Проводника. Вообще, выборка по условию с последующим удалением — дело нехитрое, и на PowerShell выполняется в одной строке. Более сложным является удаление пустых папок, которые могут быть вложенными. Здесь требуется применить рекурсивный вызов процедуры.

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

 

Реклама

Повышение безопасности папки обмена на файловом сервере, часть 2-я

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

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

Далее представлены два варианта веб-страниц и сопровождающих их сценариев, предназначенные для размещения на веб-сервере. Их следует рассматирвать исключительно как proof of concept с целью показать работоспособность решения. Не будучи опытным веб-разработчиком (все больше пишу скрипты на PowerShell), добавил в них лишь необходимый минимум разметки и элементов интерфейса, а также не ставил целью написать оптимальный код. В них отсутствуют средства проверки корректности ввода, иные украшения и т.п. И — только не смейтесь — всё представленное ниже, написано и отлажено в Notepad :), а не в среде разработки.

Элементы управления и функционал обеих веб-страниц внешне выглядят одинаково. Аналогично сценарию на vbScript из первой части статьи, активное содержимое веб-страниц включает функции по генерации случайных чисел и созданию папки. В первом варианте (ASP.Net) все необходимые действия выполняются на стороне веб-сервера, что однако накладывает ограничения на веб-сервер, зато веб-страница работает с разными браузерами (протестирована с Internet Explorer и Edge) и не предъявляет требований к их настройкам. Во втором варианте (JavaScript + ActiveX) код работает на стороне клиента. Как результат, веб-страница может размещаться на любом веб-сервере, однако в качестве браузера может использоваться только Internet Explorer, и его настройки безопасности должны быть ослаблены. Перейдем к более подробному рассмотрению обоих решений.

Читать далее…

Видеозаписи конференции IT Pro Community

В соответствии с правилом «лучше поздно, чем никогда», размещаю ссылки на видеозаписи докладов с конференции IT Pro Community, которая состоялась 8 декабря 2018 года в Москве. Трансляция конференции была запланирована, но не все проходило гладко. И только благодаря Антону Мосягину, который приехал на конференцию не только в качестве спикера, а еще привез и настроил профессиональное оборудование, позволившее оперативно запустить трансляцию в YouTube и одновременно вести запись, у нас была онлайн-аудитория, и все доклады доступны в записи. Они опубликованы на YouTube-канале Антона.

Итак, собственно доклады…

Нововведения в Remote Desktop Services в Windows Server 2019
Спикер: Олег Ржевский, MVP в категории Windows and Devices for IT
Смотреть на YouTube
Также доступен записанный вебкаст в более высоком качестве

Windows Server 2019 для Skype for Business 2019
Спикер: Александр Журавлев, MVP в категориях Microsoft Azure, Office Apps & Services
Смотреть на YouTube

Деплоим лайк э боссвсё о приложениях в System Center Configuration Manager
Спикер: Антон Мосягин, MVP в категории Microsoft Azure
Смотреть на YouTube

Мастеркласс по Azure Machine Learning
Спикер: Михаил Комаров, MVP в категории Artificial Intelligence
Смотреть на YouTube

Microsoft Azure и Blockchain: Security Token Offering (STO), эволюция: Ethereum и Plasma. Пример децентрализованного приложения (DApp) на базе BANKEX Supply Chain
Спикер: Георгий Гаджиев, Principal Systems Architect, BANKEX
Смотреть на YouTube

Отказоустойчивость и доступность Microsoft PKI
Спикер: Леонид Шапиро, MVP в категории Cloud and Datacenter Management
Смотреть на YouTube

IT Pro Community Conference: в субботу, 8 декабря!

После перерыва мы возобновляем регулярные встречи сообщества IT Pro и в конце года, 8 декабря, проводим большую конференцию, содержание которой подготовлено силами и знаниями участников сообщества. Среди выступающих — известные спикеры и эксперты, обладатели звания Microsoft Most Valuable Professional (MVP) или невероятного количества профессиональных сертификатов. В докладах будут рассмотрены разные темы, как традиционные для IT Pro, так и наиболее обсуждаемые в последнее время, такие как Azure Machine Learning и Blockchain.
Расписание составлено, всего запланировано 6 технических сессий.

Открытие конференции
10:00-10:10

Нововведения в Remote Desktop Services в Windows Server 2019
Спикер: Олег Ржевский, MVP в категории Windows and Devices for IT
10:10-11:00

Windows Server 2019 для Skype for Business 2019
Спикер: Александр Журавлев, MVP в категориях Microsoft Azure, Office Apps & Services
11:00-11:20

Перерыв 10 мин

Деплоим лайк э боссвсё о приложениях в System Center Configuration Manager
Спикер: Антон Мосягин, MVP в категории Microsoft Azure
11:30-12:20

Мастеркласс по Azure Machine Learning
Спикер: Михаил Комаров, MVP в категории Artificial Intelligence
12:20-13:10

Обед 30 мин

Продолжение мастер-класса по Azure Machine Learning
Спикер: Михаил Комаров, MVP в категории Artificial Intelligence
13:40-14:30

Перерыв 10 мин

Microsoft Azure и Blockchain: Security Token Offering (STO), эволюция: Ethereum и Plasma. Пример децентрализованного приложения (DApp) на базе BANKEX Supply Chain
Спикер: Георгий Гаджиев, Principal Systems Architect, BANKEX
14:40-15:50

Перерыв 10 мин

Инфраструктура открытых ключей PKI:
Отказоустойчивость и высокая доступность центров распространения (distribution points)
Отказоустойчивость и высокая доступность сервисов
OCSP и Web Enrollment
Спикер: Леонид Шапиро, MVP в категории Cloud and Datacenter Management
16:00-17:40

Для более эффективного участия в мастер-классе Михаила Комарова по Azure Machine Learning рекомендуем принести свой ноутбук с полностью заряженным аккумулятором и активной подпиской Microsoft Azure (можно триальной). Подписку следует зарегистрировать заранее. На месте вам будет предоставлен доступ в Интернет через wi-fi.

Конференция пройдет на 1-м этаже московского офиса Microsoft, в Бизнес-центре Крылатские Холмы, ул. Крылатская, д. 17, к.1. Регистрация бесплатная, но обязательная:

IT Pro Community Conference

Saturday, Dec 8, 2018, 10:00 AM

Microsoft
ул. Крылатская, д. 17, к.1 Moscow, RU

97 Members Attending

После перерыва мы возобновляем регулярные встречи сообщества IT Pro и в конце года проводим большую конференцию, содержание которой подготовлено силами и знаниями участников сообщества. Среди выступающих — известные спикеры и эксперты, обладатели звания Microsoft Most Valuable Professional (MVP) или невероятного количества профессиональных сертифик…

Check out this Meetup →

Обратите внимание, что в субботу 8 декабря автобусы-шаттлы до Бизнес-центра «Крылатские Холмы» работать не будут. Для проезда от м. Крылатское городским транспортом воспользуйтесь автобусами 829 или 850 до остановки Стоматологическая поликлиника №5.

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

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

Ждем вас на конференции!

LAPS и backup: вместе не лучше?

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

Рассмотрим следующий сценарий. Допустим, в нашей инфраструктуре имеется множество серверов, включенных в домен. Для управления паролями локальных административных учетных записей внедрена технология LAPS (Local Administrator Password Solution). Частота смены пароля оставлена стандартной — каждые 30 дней.

По какой-то причине нам потребовалось восстановить один из серверов из резервной копии (или из снапшота виртуальной машины). Backup, разумеется, есть, и восстановление проходит успешно. Однако после восстановления обнаруживается, что войти в систему под доменной учётной записью невозможно, поскольку связь с доменом потеряна. Проблема небольшая, ведь достаточно переподключить компьютер в домен, тем более это делается достаточно быстро. Однако прежде необходимо войти в систему с правами локального администратора. Дело нехитрое — считаем мы — ведь технология LAPS как раз и приспособлена для обновления на регулярной основе пароля локального администратора и хранения актуальных паролей в Active Directory. С помощью приложения LAPS UI, скриптом или иным способом просматривая атрибут ms-Mcs-AdmPwd в объекте компьютера в AD, мы получаем пароль LAPS и успешно входим в систему. Это удачный вариант развития событий, обычно так и происходит. Однако в редких случаях зарегистрироваться в системе не удается: ранее сохраненный пароль LAPS не подходит. А если в системе нет других незаблокированных административных учетных записей, мы получаем после восстановления неработоспособный и неуправляемый сервер. 

Необходимо отметить, что вероятность такого события невелика: в конфигурации по умолчанию и при использовании резервной копии за предыдущий день она составляет примерно 1/900. Но вероятность существует и быстро растет (по квадратичному закону), если потребуется использовать более ранние резервные копии.
Читать далее…