Показаны сообщения с ярлыком Windows Server. Показать все сообщения
Показаны сообщения с ярлыком Windows Server. Показать все сообщения

7 июл. 2014 г.

Удаленное выполнение команд на Windows

Для удаленного выполнения команд в Windows есть отличная штука - PsExec. Принципиально похожа на линуксовый SSH. Эта утилита работает со всеми версиями Windows, начиная с XP (XP, 2003, Vista, 2008, 7,8, 2012).

Итак, на локальной машине скачиваем утилиту (точнее, набор утилит), с сайта Microsoft Technet и распаковываем, например, в папку C:\PSTools.
Далее, открываем консоль путем [Win+R] или Пуск - Выполнить - cmd.
Переходим в распакованную папку:

cd C:\PSTools

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

psexec \\remote_name_or_ip -u user -p password command

На удаленной машине должны быть запущены службы Server и Workstation.

Вот так - из-коробки - работает только на Windows 2003/XP. В версиях начиная с Vista из-за другого механизма доступа (UAC и т. д.), необходимо немного "пошаманить".

На удаленной машине под управлением Windows Vista или поздней открываем Редактор Реестра (Start - Run - regedit) и создаём ключ реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\LocalAccountTokenFilterPolicy типа DWORD и со значением 1.

Всё, теперь можно выполнять команды и на удаленной Vista+ системе, выполняя следующую команду:

psexec \\remote_name_or_ip -u user -p password -h command

Флаг -h нужен, чтобы запустить команду от имени Администратора.

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

А для того, чтобы получить шелл на удаленной машине, выполняем команду:

psexec \\remote_name_or_ip -u user -p password -h cmd

Ссылки:

  1. http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx
  2. http://forum.sysinternals.com/faq-common-pstools-issues_topic15920.html
  3. http://stackoverflow.com/questions/828432/psexec-access-denied-errors

15 янв. 2014 г.

Как перенаправить порт в Windows встроенными средствами

Перенаправление порта (port forwarding, port mapping) может понадобиться, когда у машины PC1 есть доступ в сеть 1 и сеть 2, а у машины PC1 - только в сеть 1, а ей нужно подключиться к какому-то сервису на машине PC3 в сети 2. В таком случае схема будет примерно такая:


В данном примере необходимо на PC2 открыть CMD с правами администратора и выполнить команду:

netsh interface portproxy add v4tov4 listenport=2222 listenaddress=192.168.1.3 connectport=22 connectaddress=192.168.2.5

Чтобы удалить форвардинг - команда:

netsh interface portproxy delete v4tov4 listenport=2222 listenaddress=192.168.1.3

Ссылки:

http://technet.microsoft.com/en-us/library/cc731068(v=ws.10).aspx#BKMK_1

10 янв. 2013 г.

How to measure network throughoutput and another parameters of Windows machine using NT Testing TCP Tool (ntttcp)

Update.

Для того, чтобы протестировать сеть между двумя Windows-машинами, необбходимо скачать бесплатный инструмент NT TCP Testing tool от Microsoft отсюда.

Скачиваем, распаковываем, например, на диск С: в корень.

Далее на первой машине открываем cmd и заходим в папку соответствующую архитектуре Windows:

cd C:\NTttcp-v5.28\x64

запускаем в режиме приемника:

NTttcp.exe -r -m 4,0,10.1.2.3 -a 6

где -r - режим приемника,
-m - количество_сессий,Номер_ЦП,IP_этой_машины

На втором ПК/сервере делаем то же самое, только вместо ключа -r указываем ключ -s и IP первой машины.

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

12 нояб. 2012 г.

Отключения службы фаерволла в Windows Server 2008 и 2012 без потери доступа по RDP

Если просто остановить службу, то у нас отвалится RDP  и порт 3389 будет блокирован на сервере.

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

netsh firewall set portopening protocol=TCP port=3389 mode=ENABLE
netsh advfirewall set allprofiles state off

Иначе прийдется бежать за монитором :)