Поделиться через


Активация сервера отладки

Существует два способа активации сервера отладки. Его можно активировать при запуске отладчика с помощью параметра командной строки -server в окне командной строки с повышенными привилегиями (запуск от имени администратора). Его также можно активировать после запуска отладчика. Запустите отладчик с повышенными привилегиями (запуск от имени администратора) и введите команду .server.

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

Важный

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

Отладчики поддерживают несколько транспортных протоколов: именованный канал (NPIPE), TCP, COM-порт, безопасный канал (SPIPE) и уровень безопасных сокетов (SSL).

Общий синтаксис для активации сервера отладки зависит от используемого протокола.

Рекомендуемые методы подключения с некоторыми дополнительными безопасности

Debugger -server spipe:proto=Protocol,{certuser=Cert|machuser=Cert},pipe=PipeName[,hidden][,password=Password] [-noio] [Options]

Debugger -server ssl:proto=Protocol,{certuser=Cert|machuser=Cert},port=Socket[,hidden][,password=Password] [-noio] [Options]

Debugger -server ssl:proto=Protocol,{certuser=Cert|machuser=Cert},port=Socket,clicon=Client[,password=Password] [-noio] [Options]

небезопасные методы подключения

Debugger -server npipe:pipe=PipeName[,hidden][,password=Password][,IcfEnable] [-noio] [Options]

Debugger -server tcp:port=Socket[,hidden][,password=Password][,ipversion=6][,IcfEnable] [-noio] [Options]

Debugger -server tcp:port=Socket,clicon=Client[,password=Password][,ipversion=6] [-noio] [Options]

Debugger -server com:port=COMPort,baud=BaudRate,channel=COMChannel[,hidden][,password=Password] [-noio] [Options]

Другим способом активации сервера отладки является использование команды .server (создание сервера отладки) после запуска отладчика.

Рекомендуемые методы подключения с некоторыми дополнительными безопасности

.server spipe:proto=Protocol,{certuser=Cert|machuser=Cert},pipe=PipeName[,hidden][,password=Password] 

.server ssl:proto=Protocol,{certuser=Cert|machuser=Cert},port=Socket[,hidden][,password=Password] 

.server ssl:proto=Protocol,{certuser=Cert|machuser=Cert},port=Socket,clicon=Client[,password=Password] 

небезопасные методы подключения

.server npipe:pipe=PipeName[,hidden][,password=Password][,IcfEnable] 

.server tcp:port=Socket[,hidden][,password=Password][,ipversion=6][,IcfEnable] 

.server tcp:port=Socket,clicon=Client[,password=Password][,ipversion=6] 

.server com:port=COMPort,baud=BaudRate,channel=COMChannel[,hidden][,password=Password] 

Параметры

Параметры в предыдущих командах имеют следующие возможные значения:

отладчика
Может быть KD, CDB, NTSD или WinDbg.

pipe=PipeName
Если используется протокол NPIPE или SPIPE, PipeName — это строка, которая будет служить именем канала. Каждое имя канала должно определять уникальный сервер отладки. При попытке повторного использования имени канала появится сообщение об ошибке. PipeName не должны содержать пробелы или кавычки. PipeName может включать числовый код форматирования-style, например %x или %d. Отладчик заменит его идентификатором процесса отладчика. Второй такой код будет заменен идентификатором потока отладчика.

примечание может потребоваться включить общий доступ к файлам и принтерам на компьютере, на котором запущен сервер отладки. На панели управления перейдите к разделу Network and Internet > Network and Sharing Center> Дополнительные параметры общего доступа. Выберите Включить общий доступ к файлам и принтерам.

port=Socket
Если используется протокол TCP или SSL, сокетом является номером порта сокета.

Также можно указать диапазон портов, разделенных двоеточием. Отладчик проверяет каждый порт в этом диапазоне, чтобы узнать, является ли он бесплатным. Если он находит бесплатный порт и не возникает ошибок, будет создан сервер отладки. Клиент отладки должен указать фактический порт, используемый для подключения к серверу. Чтобы определить фактический порт, используйте любой из методов, описанных в поиск серверов отладки; При отображении этого сервера отладки за портом будут следовать два числа, разделенные двоеточием. Первое число будет фактическим используемым портом; Второй можно игнорировать. Например, если порт был указан как port=51:60, а порт 53 фактически использовался, результаты поиска будут отображать "port=53:60". (Если для установки обратного подключения используется параметр clicon clicon, клиент отладки может указать диапазон портов таким образом, а сервер должен указать фактически используемый порт.)

clicon=клиента
Если используется протокол TCP или SSL и указан параметр clicon clicon, откроется обратное подключение. Это означает, что сервер отладки попытается подключиться к клиенту отладки, а не позволить клиенту инициировать контакт. Это может быть полезно, если у вас есть брандмауэр, который предотвращает подключение в обычном направлении. клиент указывает сетевое имя или IP-адрес компьютера, на котором существует отладчик или будет создан. Два начальных обратных косых шеи (\) являются необязательными.

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

Примечание При использовании clicon рекомендуется запустить клиент отладки перед созданием сервера отладки, хотя также разрешен обычный порядок (сервер перед клиентом).

порт =COMPort
При использовании com-протокола COMPort указывает используемый com-порт. Префикс COM является необязательным. Например, допустимы как com2, так и "2".

baud=BaudRate
Если используется протокол COM, BaudRate указывает скорость выполнения соединения. Разрешена любая скорость baud, поддерживаемая оборудованием.

канал =COMChannel
Если используется протокол COM, COMChannel указывает com-канал, который будет использоваться при взаимодействии с клиентом отладки. Это может быть любое значение от 0 до 254 включительно. Вы можете использовать один COM-порт для нескольких подключений с использованием разных номеров каналов. (Это отличается от использования COM-портов для отладочного кабеля. В этой ситуации нельзя использовать каналы в com-порту.)

proto=Протокол
Если используется протокол SSL или SPIPE, протокола указывает протокол Secure Channel (S-Channel). Это может быть любой из строк tls1, p1, ssl2 или ssl3.

сертификат
Если используется протокол SSL или SPIPE, сертификат указывает сертификат. Это может быть имя сертификата или отпечаток сертификата (строка шестнадцатеричных цифр, заданных оснастки сертификата). Если используется синтаксис certuser=сертификат Cert, отладчик будет искать сертификат в системном хранилище (хранилище по умолчанию). Если используется синтаксис machuser=сертификатов, отладчик будет искать сертификат в хранилище компьютеров. Указанный сертификат должен поддерживать проверку подлинности сервера.

скрытые
Предотвращает отображение сервера, когда другой отладчик отображает все активные серверы.

password=Password
Требует от клиента предоставить указанный пароль для подключения к сеансу отладки. пароль может быть любой буквенно-цифровой строкой, длиной до двенадцати символов.

Важный

Использование пароля с протоколом TCP, NPIPE или COM обеспечивает только небольшое количество защиты, так как пароль не шифруется. При использовании пароля вместе с протоколом SSL или SPIPE пароль шифруется. Если вы хотите установить более безопасный удаленный сеанс, необходимо использовать протокол SSL или SPIPE.

ipversion=6
(Только средства отладки для Windows 6.6.07 и более ранних версий) Принудительно отладчик использовать IP-адрес версии 6, а не версию 4 при использовании TCP для подключения к Интернету. В Windows Vista и более поздних версиях отладчик пытается автоматически использовать IP-версию 6, что делает этот параметр ненужным.

-noio
Если сервер отладки создается с помощью параметра -noio, входные или выходные данные не могут выполняться с помощью самого сервера. Отладчик будет принимать входные данные только из клиента отладки (а также любые начальные команды или скрипты команд, указанные параметром командной строки -c-). Все выходные данные будут перенаправлены клиенту отладки. Параметр -noio доступен только с KD, CDB и NTSD. Если NTSD используется для сервера, окно консоли не будет создано вообще.

IcfEnable
Вызывает отладчик включить необходимые подключения портов для tcp или именованного канала связи, если брандмауэр подключения к Интернету активен. По умолчанию брандмауэр подключения к Интернету отключает порты, используемые этими протоколами. Если IcfEnable используется с TCP-подключением, отладчик заставляет Windows открыть порт, указанный параметром сокета . Если IcfEnable используется с именованным подключением к каналу, отладчик заставляет Windows открывать порты, используемые для именованных каналов (порты 139 и 445). Отладчик не закрывает эти порты после завершения подключения.

параметры
Здесь можно разместить любые дополнительные параметры командной строки. Полный список см. в Command-Line параметрах.

Для запуска нескольких серверов с помощью команды .server можно использовать команду .server с помощью различных параметров протокола. Это позволяет различным типам клиентов отладки присоединяться к сеансу.

См. также

управление сеансом удаленной отладки

.endrv (сервер завершения отладки)