Author Archives: Acherepov

Автоматическое переключение на резервный интернет и обратно в устройствах Mikrotik

В качестве пододпытного используем HEX-PoE и отличный 4G-модем Huawei E3372H. Он прекрасно определяется в Mikrotik-девайсах, и создает отдельный lte-интерфейс.

Для начала — воткнули модем в устройство. Убедились, что

  • интерфейс lte1 (или как он будет у вас называться) — появился в cписке интерфейсов. Запомните имя этого интерфейса — оно пригодится в дальнейшем
  • на интерфейсе появился адрес, полученный по DHCP от провайдера
  • в списке маршрутов появился дополнительный маршрут 0.0.0.0/0 указывающий на шлюз LTE-провайдера.

Далее

  • Добавляем правило для NAT (чтобы пакеты и через 4G-модем тоже натились). Здесь lte1 — это название(!) интерфейса 4G-модема, если у вас он под другому называется — поправьте под себя.
 /ip firewall nat add action=masquerade chain=srcnat out-interface=lte1
  • Добавляем маршрут, чтобы пакеты на «хост мониторинга» 8.8.4.4 всегда шли через основного провайдера (здесь х.х.х.х — это шлюз вашего основного провайдера. В комментарии маршрута есть сочетание ISP, это важно — по нему мы будем находить этот маршрут и включать-выключать его.
/ip route add comment="always route monitoring host via ISP1" disabled=no dst-address=8.8.4.4/32 gateway=x.x.x.x
  • Создаем blackhole маршрут для «хоста мониторинга» с низким приоритетом (чтобы избавиться от «проблемы неработающего маршрута, при отсутствии линка на WAN-интерфейсе»)
/ip route add comment="blackhole for monitoring host" disabled=no dst-address=8.8.4.4/32 distance=200 type=blackhole
  • Создаем задание Netwatch. Идея такая: каждые 30 секунд проверяется «хост мониторинга» по адресу 8.8.4.4, если он недоступен (статус «down»), то отключаем маршрут по умолчанию (с комментом isp) и включаем интерфейс 4G-модема. Модем работает так, что сразу подключается к мобильной сети и автоматом получает от провайдера адрес, DNS и самое главное — новый маршрут по умолчанию. При этом проверка 8.8.4.4 у нас по прежнему будет продолжаться через основного провайдера(из-за специального маршрута, который мы завели чуть ранее). В случае получения ответов от 8.8.4.4 (Netwatch поменяет статус на «up») интерфейс 4G-модема отключаем, тем самым отключая свой маршрут, и активируем маршрут через основного провайдера.
  • И да — при переключении делаются записи в лог.
/tool netwatch
add disabled=no down-script="/interface enable [find name=\"lte1\"];\r\
\n:log warning \"Switch to 4G modem\";\r\
\n/ip route disable [find comment=\"isp\"];\r\
\n" host=8.8.4.4 interval=30s timeout=500ms up-script="/interface disable \
[find name=\"lte1\"];\r\
\n:log warning \"Switch to main internet\";\r\
\n/ip route enable [find comment=\"ISP\"];\r\
\n"

Ах да, и если у вас очень суровые правила Firewall, то не забудьте в нем тоже прописать правило, разрешающее форвард трафика в Lte1 интерфейс

Проверяйте работу переключения — находясь физически рядом с роутером… «во избежание», так сказать.

И не забывайте про залипание «connection» при переключении маршрута по умолчанию. Если это по каким то причинам важно для вас — в скрипт netwatch можно добавить строку очищающую зависшие сonnection из connection table при переключении каналов.

Проблема с RU-US раскладкой и переключением языков в терминальном сервере

Проблема может проявляться по-разному

  1. При подключении по RDP к Windows 2012 R2, может появиться дополнительная раскладка клавиатуры RUS US.
  2. При подключении к сессии пользователя через Shadowing и отключении от нее — у пользователя пропадает Language bar
  3. Появление в сеансе у пользователя значка экранной клавиатуры

Это все симптомы одной проблемы.

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

решение: добавить в реестр ключик, который кажет серверу что нужно игнорировать раскладку на удаленном клиенте

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] «IgnoreRemoteKeyboardLayout»=dword:00000001


Перенос контейнеров закрытых ключей и сертификатов CryptoPro

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

by zerox https://serveradmin.ru/perenos-konteynerov-zakryityih-klyuchey-i-sertifikatov-cryptopro/

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

  1. Перенести или скопировать контейнер закрытого ключа через стандартную оснастку CryptoPro в панели управления. Это самый простой и быстрый способ, если у вас не много сертификатов и ключей. Если же их несколько десятков, а это не такая уж и редкость, то такой путь вам не подходит.
  2. Скопировать сертификаты и ключи непосредственно через перенос самих исходных файлов и данных, где все это хранится. Объем работы одинаков и для 5 и для 50-ти сертификатов, но требуется больше усилий и знаний.

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

Копирование закрытого ключа через оснастку КриптоПро

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

Копирование закрытого ключа сертификата через оснастку КриптоПро

Далее вы выбираете текущий контейнер, который хотите скопировать. Это может быть либо токен, либо реестр компьютера. Затем новое имя и новое расположение контейнера. Опять же, это может быть как реестр, так и другой токен.

Ошибка копирования контейнера

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

Ошибка копирования контейнера

Ошибка копирования контейнера. У вас нет разрешений на экспорт ключа, потому что при создании ключа не был установлен соответствующий флаг. Ошибка 0x8009000B (-2146893813) Ключ не может быть использован в указанном состоянии.

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

Отдельно расскажу, как скопировать сертификат и закрытый ключ к нему в файл, чтобы перенести на другой компьютер без использования токена. Штатные возможности CryptoPro не позволяют скопировать закрытый ключ в файл.

Запускаем Internet Explorer, открываем его настройки и переходим на вкладку Содержание. Там нажимаем на Сертификаты.

Посмотреть список сертификатов в системе

Выбираем нужный сертификат и нажимаем Экспорт.

Экспорт сертификата CryptoPro

Если у вас после слов «Экспортировать закрытый ключ вместе с сертификатом» нет возможности выбрать ответ «Да, экспортировать закрытый ключ«, значит он не помечен как экспортируемый и перенести его таким способом не получится. Можно сразу переходить к другому способу, который описан ниже.

Невозможно экспортировать закрытый ключ

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

Формат экспортируемого ключа

Укажите какой-нибудь пароль и запомните его! Без пароля продолжить нельзя. В завершении укажите имя файла, куда вы хотите сохранить закрытый ключ. Теперь вам нужно скопировать сам сертификат. Только что мы копировали закрытый ключ для него. Не путайте эти понятия, это разные вещи. Опять выбираете этот же сертификат в списке, жмите Экспорт и выберите файл формата .CER.

Перенос сертификата

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

В итоге у вас должны получиться 2 файла с расширениями:

  • .pfx
  • .cer

Вам достаточно перенести эти 2 файла на другой компьютер и кликнуть по каждому 2 раза мышкой. Откроется мастер по установке сертификатов. Вам достаточно будет выбрать все параметры по-умолчанию и понажимать Далее. Сертификат и контейнер закрытого ключа к нему будут перенесены на другой компьютер.

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

Массовый перенос ключей и сертификатов CryptoPro с компьютера на компьютер

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

Для дальнейшей работы нам надо узнать SID текущего пользователя, у которого мы будем копировать или переносить сертификаты с ключами. Для этого в командной строке выполните команду:

wmic useraccount where name='zerox' get sid
Как узнать SID пользователя

В данном случай zerox — имя учетной записи, для которой узнаем SID.

Далее скопируем контейнеры закрытых ключей в файл. Для этого на компьютере открываем редактор реестра и переходим в ветку:

\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crypto Pro\Settings\Users\S-1-5-21-4126079715-2548991747-1835893097-1000\Keys

где S-1-5-21-4126079715-2548991747-1835893097-1000 — SID пользователя, у которого копируем сертификаты. Выбираем папку Keys и экспортируем ее.

Массовый перенос закрытых ключей сертификатов с компьютера на компьютер

Сохраняем ветку реестра в файл. В ней хранятся закрытые ключи.

Теперь нам нужно скопировать сразу все сертификаты. В Windows 7, 8 и 10 они живут в директории — C:\Users\zerox\AppData\Roaming\Microsoft\SystemCertificates\My. Сохраняйте эту директорию.

Для переноса ключей и сертификатов нам надо скопировать на другой компьютер сохраненную ветку реестра и директорию с сертификатами My. Открываем файл с веткой реестра в текстовом редакторе и меняем там SID пользователя со старого компьютера на SID пользователя нового компьютера. Можно прям в блокноте это сделать поиском с заменой.

Замена SID пользователя

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

Я не раз пользовался этим методом, на текущий момент он 100% рабочий. Написал статью,чтобы помочь остальным, так как сам не видел в интернете подробной и понятной с первого раза статьи на эту тему. Надеюсь, моя таковой получилась.

Проверить работоспособность NTP-сервера из Windows

Сделать это можно утилитой w32tm

 w32tm /stripchart /computer:SERVERNAME /dataonly /samples:5 

В результате отправляются 5 NTP-запросов на сервер SERVERNAME

Ответ получим примерно такой:

Tracking 10.10.7.5 [10.10.7.5:123].
Collecting 5 samples.
The current time is 14.02.2018 16:16:13.
16:16:13, +00.0310803s
16:16:15, +00.0398755s
16:16:17, +00.0287343s
16:16:19, +00.0301553s
16:16:21, +00.0322173s

WDS-сервер и TFTP-error 13

С некоторых пор при попытке установки образа через WDS-службу стала вываливаться ошибка не доходя даже до этапа выбора диска для установки.

На стороне клиента это выглядит как зависание и последующая ошибка на экране загрузке boot.wim

На стороне сервера в журналах WDS это проявляется примерно так:

The Following Client failed TFTP Download:
Client IP: 10.10.1.3
Filename: \Boot\x64\Images\boot.wim
ErrorCode: 13
File Size: 291959795
Client Port: 9956
Server Port: 53793
Variable Window: true

Причина: обно из последних обновлений Windows неожиданно включило опцию «Enable Variable Window Extension» во вкладке TFTP в настройках WDS-сервера.

Решение: выключить опцию (снять галочку) «Enable Variable Window Extension» во вкладке TFTP в настройках WDS-сервера.

Боже храни Интернет и пошли кару небесную QA-инженерам Microsoft!

Post Navigation

 
Яндекс.Метрика