Полезные утилиты

ATCMD

Данная утилита будет нужна, чтобы удобно управлять различными низкоуровневыми настройками Windows. Большинство её функций имеют отношение к безопасности или сетевой подсистеме. Мы ипользуем её на курсах и в production, чтобы эффективно делать действия, которые нельзя сделать через стандартный интерфейс, либо надо делать через трюки с реестром и вызовом неявных функций.

Скачать atcmd.zip

Минимальные требования: Windows Server 2008 и выше.

SHA-256 файла atcmd.exe: 81061a10428bd4f19c0a915af5f7cdad7a13c28387ce937e272ad8d6126ee69e

Хэш удобно сравнивать с помощью этой утилиты.

Группа Facebook, в которой обсуждается atcmd, а также вносятся предложения и дополнения, находится тут: https://www.facebook.com/groups/146572918776918/

Changelog

09.01.2012версия 2.0 build 215
+ контекст NetBIOS и SMB
06.01.2012версия 2.0 build 214
+ контекст time
+ управление ISTG в контексте ldap
+ багфикс в консоли
+ багфикс show ldap и show time
06.01.2012версия 2.0 build 213
+ в контекст LDAP (и show ldap)
30.12.2011версия 2.0 build 212
+ контекст show crypto
- баг, когда названия интерфейсов или имя хоста были на русском языке
- баг с утечкой памяти при show interfaces
15.12.2011версия 2.0 build 211
+ мелкий багфикс в парсере командной строки
+ дополнения в контекстах net и net tcp, а также dns
+ базовые настройки отдельных интерфейсов
+ больше половины команд уже нормально сбрасывается на дефолтные значения
+ новые настройки контекста router
05.12.2011версия 2.0 build 209 (теперь буду просто билды писать, чтобы не делать много бет со страшными номерами)
+ контекст net (общие сетевые настройки хоста)
+ контекст net tcp (некоторые детали работы TCP)
+ контекст router (в нём теперь появляются первые рабочие команды)
+ show ip route
+ show int улучшен
+ show int за конкретный интерфейс (вида sh int eth 6)
+ дополнения в контексте dns
+ дополнения в контексте arp
30.11.2011версия 2.0beta2
+ контекст kerberos kdc
+ дополнения в контекстах dns, kerberos, lsa
+ контекст bridge
+ примерно для половины команд сделан возврат на дефолты (типа maxpacketsize ставит размер пакета, no maxpacketsize возвращает на дефолт, а не стирает в нуль)
+ добавления во все команды контекста show
25.11.2011версия 2.0beta1
+ сделан CLI-интерфейс
+ статически прилинкованы необходимые библиотеки (т.е. для работы не надо ставить VS2010 Redistributable)
+ добавлены контексты Kerberos, KDC, LDAP, DNS, ARP, LSA, доработаны контексты TLS и Crypto
- работа только с Win2008
- не везде есть help и не все команды умеют возвращаться на дефолтные значения, но это временно и про это надо писать в комментарии
05.11.2011версия 1.3
+ управление хэш-алгоритмами MD2/MD4/MD5/SHA (включение-выключение)
+ управление симметричными алгоритмами RC2/RC4/DES/3DES/NULL (включение-выключение)
+ упрощение управления SSL/TLS
+ детальный вывод /Crypto /Show
+ работа на NT 6.0 и NT 5.2
05.11.2011версия 1.2
+ багфикс
+ детальный вывод /TLS /Show
30.10.2011версия 1.1
+ переименование
+ переработка интерфейса
+ поддержка Unicode
+ работа на x86 и x86-64 версиях ОС
+ подробная система помощи по ключам
28.10.2011версия 1.0
+ первая версия
+ работа с TLS


  • http://www.atraining.ru Ruslan V. Karmanov

    Здесь принимаются жалобы, предложения и комментарии.

  • http://www.facebook.com/people/Рашид-Фатыхов/100001626276117 Рашид Фатыхов

    md5 приложи, вруг по другим каналам будут распространять, надо ж понять что оно без бэкдора

    • http://www.atraining.ru Ruslan V. Karmanov

      Ща попробую. Вообще, её подписать бы лучше, как я понимаю?

      • http://www.facebook.com/people/Рашид-Фатыхов/100001626276117 Рашид Фатыхов

        Можно и подписать,только этож надо сертификат УЦ ставить, проверять подпись. Думаешь кто-то будет возится?

        • http://www.atraining.ru Ruslan V. Karmanov

          Почему, можно ж нормальный сертификат купить для подписи кода.

    • http://www.atraining.ru Ruslan V. Karmanov

      Так норм?

  • http://www.atraining.ru Ruslan V. Karmanov

    Выпущен новый релиз мегасофтины для управления TLS/SSL

  • http://www.facebook.com/innokentiy Innokentiy Solntsev

    А что за мега-архитектура х86-46?:)

    • http://www.atraining.ru Ruslan V. Karmanov

      Это очень секретная архитектура. Пока ещё общество не готово к тому, чтобы узнать Правду, поэтому поменял на x86-64.

  • IlyaS

    Спасибо за утилиту, но есть две проблемы:
    1) не работает команда Show
    > atcmd.exe /TLS /Show
    ATCMD 1.1 (c) 2011 by Ruslan V. Karmanov (ruslan@karmanov.org)
    Check new versions @ http://kb.atraining.net/
    Running on Microsoft Windows NT 6.1 with Service Pack 1
    Error: Unknown command '/SHOW'

    2) падение без параметра Disable/Enable
    > atcmd.exe /TLS /ClientSSL20
    Unhandled exception at 0x003e16b2 in atcmd.exe: 0xC0000005: Access violation reading location 0x00000000.
    > atcmd.exe!003e16b2()
    [Frames below may be incorrect and/or missing, no symbols loaded for atcmd.exe]
    atcmd.exe!003e1a53()
    kernel32.dll!@BaseThreadInitThunk@12() + 0x12 bytes
    ntdll.dll!___RtlUserThreadStart@8() + 0x27 bytes
    ntdll.dll!__RtlUserThreadStart@8() + 0x1b bytes

    Надеюсь, это поможет.

    • http://www.atraining.ru Ruslan V. Karmanov

      Спасибо, сейчас поправлю. Реально делал “на бегу”, и тестил фигово.

    • http://www.atraining.ru Ruslan V. Karmanov

      Обновил версию, команду /Show сделал даже лучше, чем было, и вроде как без ошибок. Без параметра тоже работает.

      • IlyaS

        Хм-м, я думал после выполнения atcmd.exe /tls /clientssl20 /disable отключится клиентский SSL2.0
        Но в выводе atcmd.exe /tls /show
        ATCMD 1.2 (c) 2011 by Ruslan V. Karmanov (ruslan@karmanov.org)
        Check new versions @ http://kb.atraining.net/
        Running on Microsoft Windows NT 6.1 with Service Pack 1

        TLS server settings
        ====================
        This server accept TLS Renegotiation requests from clients: Yes
        Only secure renegotiation requests can be processed: Yes

        TLS client settings
        ====================
        The client from this host: Can initiate renegotiation
        Only secure renegotiation requests will be send: Yes

        Protocols settings
        ====================
        SSL 2.0:Will be accepted, but not requested
        SSL 3.0:Will be accepted, but not requested
        TLS 1.0:Will be accepted, but not requested
        TLS 1.1:Will be requested and will be accepted
        TLS 1.2:Will be requested and will be accepted

        Я ожидал, что подчеркнутая строка изменится на что-то вроде “will not be accepted”.

        • http://www.atraining.ru Ruslan V. Karmanov

          Отключение SSL с клиентской стороны – это как раз отключение отправки запроса на сервер от нашего хоста. А с серверной – отключение приёма входящего подключения с запросом данного протокола. Я добавлю в help примеры, чтобы было нагляднее.

  • http://www.facebook.com/innokentiy Innokentiy Solntsev

    Windows Server 2003 R2, при запуске вываливается с ошибкой “This application has failed to start because MSVCR100.dll was not found. Re-installing the application may fix this problem”.

    Помогла установка Microsoft Visual C++ 2010 Redistributable Package.

    • http://www.atraining.ru Ruslan V. Karmanov

      Чую, надо будет статически линковать всё ж библиотеки. А так хотелось оставить в мини-варианте в два десятка килобайт… :)

    • http://www.atraining.ru Ruslan V. Karmanov

      Поправил. Можно проверять. Программа потолстела аж до 65КБ с 21КБ. :)

  • http://www.facebook.com/people/Alexey-Ivanov/100001450956549 Alexey Ivanov

    Чтобы прыщебляди лопнули от зависти, надо выложить исходники на github же!

    • http://www.atraining.ru Ruslan V. Karmanov

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

  • http://www.atraining.ru Ruslan V. Karmanov

    А чоткие посаны за бабло продают:

    http://foundeo.com/products/iis-weak-ssl-ciphers/

  • http://www.atraining.ru Ruslan V. Karmanov

    Я просветлился и сделал новую версию. Можно качать, тестить и комментировать.

  • http://twitter.com/vozerov Vladimir Ozerov

    Руслан. Выложи так же на этой странице версию 1.3. Так как она работает для 2003 сервера, которых очень много. И так же пометь что она старая и все такое

    • http://www.atraining.ru Ruslan V. Karmanov

      ОК, сделаю.

    • http://www.atraining.ru Ruslan V. Karmanov

      Тонкий вопрос – а у тебя осталась 1.3 ? :)

      • http://twitter.com/vozerov Vladimir Ozerov

        нет :)

        • http://www.atraining.ru Ruslan V. Karmanov

          Ну, чую, будет промежуточный билд, который всё ж будет работать на NT 5.x. Оттуда просто придётся сетевых всяких мелочей кучу выпилить временно.

  • Pingback: Интенсив-тренинги по Windows Server 2008 R2 SP1 – PKI и Active Directory | Онлайн-курсы Cisco, Microsoft, Juniper от Advanced Training

  • Pingback: Ближайшие интенсив-тренинги « Тишина

  • Pingback: Корпорация добра « Тишина

  • http://www.atraining.ru Ruslan V. Karmanov

    Коллеги! Промежуточные билды беты я выкладываю отдельно. Тут будет лежать beta1, пока не наберётся ощутимое количество траблшутинга+новых фич для следующей беты.

  • http://www.atraining.ru Ruslan V. Karmanov

    Добавил:
    + контекст kerberos kdc
    + откат на дефолтные значения в контекстах arp/ldap/kerberos
    + добавил в dns команду gqbl
    + добавил в ldap тайминги репликации AD

    Пофиксил вывод show int – и общий и по типам
    Дописал мелкий контекстный хелп в нескольких местах
    Продолжают приниматься комментарии

  • http://www.facebook.com/people/Dmitry-Ponomarev/100000729192726 Dmitry Ponomarev
    • http://www.atraining.ru Ruslan V. Karmanov

      Заброшенная же, судя по всему. Только Server 2000/2003, виста under testing, только шифры, только часть, только Мытищи, только хардкор, в смысле только .NET 2.0. Плюс 404 на скачивании. Думаю, это уже несерьёзно – у нас всё круче в 100500 раз. :)

      • http://www.atraining.ru Ruslan V. Karmanov

        Ты б лучше мнение по части других фич мегапроги сказал. Керберос тот же, репликатор и KDC – там ведь интересные штуки есть. В LSA плюс будут.

  • http://www.atraining.ru Ruslan V. Karmanov

    Новый билд atcmd - 2.0beta2. Много нового. Курим, думаем, добавляем, делимся.

  • http://twitter.com/vozerov Vladimir Ozerov

    Ты я вижу решил полностью отказаться от поддержки 2003 сервера? Или 1.3 так далеко, а новую с усечениями выпускать нет времени?

    • http://www.atraining.ru Ruslan V. Karmanov

      Скорее, когда будет major build, я разово сделаю его вариант, тупо закомментив всё то, что не получится без фундаментальной перебивки сделать (это будет сетевая часть в основном, которая на NDIS 6.0 упирается). Так проще всего, чем промежуточные бетки вида “тут это допилили, тут это добавили” делать в нескольких вариантах. А потом я основную вообще под x64 native сделаю, только лучше будет.

      • http://twitter.com/vozerov Vladimir Ozerov

        x64? хмммм. А оно надо? сильное преимущество даст? В чем конкретно? Ведь не надо забывать что есть много и 2008 x86 серваков

        • http://www.atraining.ru Ruslan V. Karmanov

          Там планируется некоторый мегафункционал, который потребует очень конкретной скорости, и оптимизации под NT 6.1, а там уже только x64. Плюс, на инфраструктурных серверах у меня лично выпилен WOW64 (что снижает вирусную опасность до нуля, а также требования к оперативке, патчам и прочему), поэтому pure-x64 версия нужна.

  • http://www.atraining.ru Ruslan V. Karmanov

    В понедельник сдох канал в датацентре, поэтому я дописал достаточно много в atcmd. Смотрите новую версию, пишите, что как. Как понятно – там есть больше, чем я написал, но тестировать имеет смысл только указанное. Пока работа адресно идёт над сетевой подсистемой, поэтому основные изменения в ней.

  • http://www.atraining.ru Ruslan V. Karmanov

    Читаю 2 курса в день, плюс проектная работа, плюс воскресные интенсивы, поэтому особо не успеваю. Но всё же кое-что сделал, много мелочей учёл (например, аж начал работать backspace! :) ). Как обычно – качайте, юзайте, пишите-стучите-комментируйте.

    Кстати, этот билд уже на буржуйском хостинге – kb.atraining.net, обратите внимание.

    • http://www.atraining.ru Ruslan V. Karmanov

      Не обращайте внимание, буржуйский хостинг оказался тормозным говном. Уже сделали зеркало на .ru

  • Aleksander Luppov
    • http://www.atraining.ru Ruslan V. Karmanov

      Прикольно. Я тоже начинал в гуях делать, но после принял решение, что CLI мне удобнее, да и например в случае Server Core с гуями, тем более, как у этих – ещё и с принудительным дотнетом вторым – не очень. По функционалу даже с первым релизом не особо сравнимо, количество функционала ниже минимума (даже в том же SSL/TLS нет настроек пересогласования), а сейчас и подавно.

  • http://www.atraining.ru Ruslan V. Karmanov

    Добрался и сделал новый билд. Добавил пока мелочь, но ключевое – подцепил CNG, теперь можно будет очень детальные настройки вывести. Пока show crypto расширил.

  • Den Borchev

    При скачивании контрольные суммы не совпадают

    • http://www.atraining.ru Ruslan V. Karmanov

      К 6.01 будет новый, 213й билд, обязуюсь внимательно посчитать чексуммы.

  • http://www.atraining.ru Ruslan V. Karmanov

    Новый билд atcmd, 213й

  • http://www.atraining.ru Ruslan V. Karmanov

    215й, можно форсировать SMBv2

  • Yuris Auzins

    1. Прошу прощения, но почему оно, например, для ключей /TLS /Show уже, что-то меняет в реестре? Я разве разрешал, пусть даже “пустые ключики” создавать?
    2. Утилита для тех же /TLS /Show напрочь игнорирует дефалтовые значения. Т.е. то, что она показывает, оьбязательно должно быть прописано в реестре. Да ещё и обязательно с учётом магического 0xffffffff.
    3. Вы не делаете различия в DisabledByDefault / Enabled.
    Вот в тему статейка http://www.carbonwind.net/blog/post/SSLTLS-usage-within-Forefront-TMG-2010.aspx хотя читали, наверное.

    • http://www.atraining.ru Ruslan V. Karmanov

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

      2. Она их и читать не умеет, не различая “нет ключа” и “нулевое значение”. Это тоже в очереди задач.

      3. То же, что и п.1. Буду докручивать.