remote shell что это

Как включить Windows удаленной оболочки

В этой статье вы можете включить Windows удаленной оболочки.

Применяется к: Windows Server 2003
Исходный номер КБ: 555966

Эта статья была написана Yuval Sinay, MVP Майкрософт.

Советы

Чтобы включить Windows удаленной оболочки, необходимо развернуть параметры на стороне сервера и клиента:

Сторона сервера

Определение сервера в статье описывает веб-Windows, который попадает в оболочку удаленного управления.

Войдите в Windows консоли.

Необязательный (для Windows Vista служит удаленным сервером): запустите службу «Windows удаленное управление» и установите ее для автоматического запуска после перезагрузки.

Напишите командную подсказку WinRM quickconfig и нажмите кнопку Ввод.

Должен появиться следующий вывод:

После нажатия кнопки y должен появиться следующий вывод:

Мы рекомендуем изменить параметры по умолчанию с помощью команды winrm.cmd (Например, включить поддержку HTTPS и т.д.).

Windows Удаленная оболочка с использованием SOAP. Некоторые брандмауэры могут блокировать трафик SOAP. Дополнительные сведения см. в документации поставщика.

Сторона клиента

Пример. Чтобы просмотреть удаленную файловую систему, напишите следующую команду:

В Windows среде Workgroup необходимо добавить доверие к серверу, который клиент инициирует подключение к ней с помощью команды winrm set winrm/config/client @ .

Community Отказ от контента решений

Корпорация Майкрософт и/или соответствующие поставщики не делают представлений о пригодности, надежности или точности сведений и связанных с ними графических данных, содержащихся в этой записи. Вся такая информация и связанная графика предоставляются «как есть» без какой-либо гарантии. Корпорация Майкрософт и/или соответствующие поставщики тем самым отключили все гарантии и условия в отношении этой информации и связанной графики, включая все подразумеваемые гарантии и условия торговой доступности, пригодность для определенной цели, рабочий труд, название и неущемление. Вы соглашаетесь, что ни в каких событиях корпорация Майкрософт и/или ее поставщики не несут ответственности за любые прямые, косвенные, штрафные, случайные, специальные, сопутствующие повреждения или любые повреждения, включая без ограничений убытки за потерю использования, данных или прибыли, возникающие из-за использования или невозможности использования сведений и связанных с ними графических элементов, содержащихся в этом деле, независимо от того, были ли они связаны с контрактом, тортом, халатностью, строгой ответственностью или иным образом, даже если корпорации Майкрософт или любому из ее поставщиков было рекомендовано о возможности ущерба.

Источник

Bog BOS: rsh и r*-команды: принципы работы, использование и настройка

Обеспечивают возможность удаленного выполнения команд (rsh, rexec (устарел), rlogin) и копирования файлов (rcp). Надстроенные над базовым уровнем rsh/rcp команды rsync и rdist позволяют синхронизировать состояние файлов/директорий на нескольких компьютерах.

В современных условиях запуск rsh-сервера представляется чистым безумием с точки зрения безопасности, так что рекомендую обратить внимение на SSH. Но если сервер запущен кем-то другим ;), то воспользоваться им можно. К тому же команды rsync и rdist позволяют использовать в качестве транспортного уровня SSH вместо rsh.

Стандарты: RFC-1258 (устарел), RFC-1282. Протокол использует 513 порт TCP (login), 514 порт TCP (выполнение команды shell) и обеспечивает поддержку виртуального терминала на удаленном хосте. В отличие от протокола telnet предполагается, что на обоих хостах установлена ОС Unix и нет нужды договариваться о параметрах соединения. В результате, реализация протокола получается более простой. При инициализации соединения клиентская программа посылает имя пользователя на локальном хосте, имя пользователя на удаленном хосте и тип терминала. Имена пользователя используются для аутентификации (пароль может запрашиваться или не запрашиваться в зависимости от настройки сервера).

Для синхронизации вывода используются символы DC3/DC1 (Cntr-S, Cntrl-Q). Поддерживает режим «raw», в котором все байты передаются на сервер «как есть». Поддерживается возможность динамического изменения размера окна виртуального терминала (в пикселях и колонках/строках).

Позволяет входить в удаленную систему с виртуального терминала.

Позволяет выполнять команду на удаленном хосте (514/TCP). Стандартный ввод rsh передается на стандартный ввод удаленной команды. Стандартный вывод удаленной команды передается на стандартный вывод rsh. stderr удаленной команды передается на stderr rsh по дополнительному каналу. Сигналы INT, HANG, TERM передаются удаленной команде.

На клиентской машине необходимо открыть порты 1023/TCP и 1022/TCP (1022 для stderr; это в надежде, что одновременно не может исполняться больше одного rsh ;). Файл /usr/bin/rsh имеет права rws и владельца root, чтобы иметь возможность открыть исходящий порт ниже 1023.

Сервер in.rshd запускается из xinetd (/etc/xinetd.d/rsh) и обслуживает запросы 514/tcp (shell, cmd). Исходный порт клиентского запроса должен быть в интервале 512-1023. По IP адресу определяется имя хоста клиента. Имя пользователя (до 16 символов) на удалённом хосте извлекается из потока. Для авторизации используются файлы /etc/hosts.equiv и

Сервер in.rlogind запускается из xinetd (/etc/xinetd.d/rsh) и обслуживает запросы 513/tcp (login). Исходный порт клиентского запроса должен быть в интервале 512-1023. Для авторизации используются файлы /etc/hosts.equiv и

При использовании NIS можно использовать сетевые группы (@имя-группы).

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

Сервер in.execd запускается из xinetd (/etc/xinetd.d/rsh) и обслуживает запросы 512/tcp (exec). Для аутентификации используется имя (до 16 символов) и незашифрованный пароль (до 16 символов). Для stderr используется дополнительный канал (см. rsh).

Настройка inotify временно

Настройка inotify в /etc/sysctl.conf

При необходимости (при получении сообщения о переполнении) max_queued_events необходимо увеличить.

Скопировать пример настройки /usr/share/doc/lsyncd-2.0.4/examples/lrsync.lua в /etc/lsyncd.conf.lua и отредактировать (представляет собой программу на Lua)

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

Статистика inotify в /sys/kernel/slab/inotify_event_cache и /sys/kernel/slab/inotify_watch_cache (slabs, slab_size, total_objects).

Позволяет осуществить массовую автоматическую рассылку файлов с локального хоста на несколько сотен хостов с проверкой наличия места, рассылкой извещений о проблемах, исполнением завершающих процедур и т.п.. Сохраняет имя владельца, имя группы, права доступа и время модификации файла. Самый подходящий инструмент, если необходимо автоматизировать обновление пакетов на нескольких сотнях компьютеров. В качестве транспорта позволяет использовать rcmd(3) с помощью демона rdistd (не рассматриваю из-за проблем с безопасностью), rsh (не рассматриваю по тем же причинам) и ssh (не забудьте снять setuid). Канал передачи используется неэффективно в отличие от rsync

Формат конфигурационного файла.

Смотри в описании Cisco IOS (немного подумав, я остановил этот сервис, чего и вам советую).

Bog BOS: rsh и r*-команды: принципы работы, использование и настройка

Источник

Remote shell что это

СИНТАКСИС

ОПИСАНИЕ

Команда rsh подключается к указанному хосту и выполняет на нем указанную команду.

&nbspФайлы

ИСПОЛЬЗОВАНИЕ

Если команда не указана, rsh зарегистрирует вас на удаленном хосте с помощью rlogin(1).

Имя_хоста должно находиться в базе данных хостов, которая может содержаться в файле /etc/hosts, в базе данных доменных имен Internet, или и в обоих местах. Каждый хост имеет одно официальное имя (первое имя в записи базы данных) и, возможно, один или несколько псевдонимов. В качестве имени_хоста можно указывать как официальные имена, так и псевдонимы.

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

На каждой удаленной машине может быть файл /etc/hosts.equiv, содержащий список имен хостов, обладающих доверием, с которыми она разделяет имена пользователей. Пользователи с одним и тем же именем на локальной и удаленной машине могут выполнять rsh с машин, перечисленных в файле /etc/hosts.equiv удаленной машины, не указывая пароль. Отдельные пользователи могут создать аналогичный личный список эквивалентностей в файле .rhosts в своих начальных каталогах. Каждая строка в этом файле содержит два имени, имя хоста и имя пользователя, разделенных пробелом. Запись в файле .rhosts удаленного пользователя позволяет пользователю с соответствующим именем, зарегистрировавшемуся на указанном хосте, использовать rsh для доступа к удаленной машине в качестве удаленного пользователя без указания пароля. Если имя локального хоста не удается найти в файле /etc/hosts.equiv на удаленной машине, и, кроме того, имя локального пользователя и имя хоста не удается найти в файле .rhosts удаленного пользователя, удаленная машина запросит пароль. В файлах /etc/hosts.equiv и .rhosts необходимо указывать официальные имена хостов, содержащиеся в базе данных хостов; псевдонимы в этих файлах указывать нельзя.

Чтобы предотвратить проблемы защиты, владельцем файла .rhosts должен быть либо удаленный пользователь, либо привилегированный пользователь.

rsh не запросит пароль, если в доступе на удаленную машину отказано, за исключением случая, когда при вызове не указана команда.

Опции

rsh воспринимает следующие опции:

-l имя_пользователя Использовать имя_пользователя в качестве имени удаленного пользователя вместо локального имени пользователя. Если эта опция не указана, имя удаленного пользователя совпадает с локальным именем пользователя. -n Перенаправить ввод rsh в /dev/null. Эта опция иногда необходима, чтобы избежать нежелательных взаимодействий между rsh и командным интерпретатором, из которого она вызвана. Например, если rsh вызвана в фоновом режиме и ее входной поток не перенаправлен с терминала, она заблокирует терминал, даже если удаленная команда ничего не читает. Опция -n предотвращает это.

Тип удаленного командного интерпретатора (sh, ограниченный интерпретатор /usr/lib/rsh или другой) определяется записью пользователя в файле /etc/passwd на удаленной системе.

Примеры

rsh lizard cat lizard.file >> example.file

добавляет удаленный файл lizard.file с машины по имени lizard к файлу example.file на локальной машине, тогда как команда:

rsh lizard cat lizard.file ">>" lizard.file2

добавляет файл lizard.file на машине по имени lizard к файлу lizard.file2, который находится на той же машине lizard.

Предупреждения

Если система указана в hosts.equiv, ее защита должна быть не хуже защиты локальной системы. Указания одной незащищенной системы в файле hosts.equiv достаточно, чтобы свести на нет защиту всей системы.

Текущая локальная среда не передается удаленному командному интерпретатору.

С помощью rsh нельзя запускать интерактивные команды (типа vi(1)). При необходимости, используйте rlogin.

введет ваш командный интерпретатор в странное состояние. Очевидно, tar заканчивает работу раньше, чем rsh. Затем rsh пытается писать в закрытый канал («broken pipe«) и, вместо того, чтобы просто остановиться, продолжает «сражаться» с локальным командным интерпретатором за стандартный входной поток. Вызов rsh с опцией -n предотвращает такие проблемы.

Ошибка происходит только когда rsh находится в начале конвейера и не читает стандартный входной поток. Не используйте -n если rsh действительно должна читать стандартный входной поток. Например,

не приводит к ошибке. Если придется использовать -n в подобных случаях, rsh будет ошибочно читать с /dev/null вместо канала.

До Release 4, команда rsh вызывала ограниченный командный интерпретатор. Это программа /usr/lib/rsh и ее можно выполнить, указав полное имя.

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

ССЫЛКИ

Copyright 1994 Novell, Inc.
Copyright 1999 В. Кравчук, OpenXS Initiative, перевод на русский язык

Источник

Remote shell что это

rsh [ username @ ] hostname [ ] [ username ] command

rsh [ ] [ username ] [ username @ ] hostname command

If an attempted rsh connection to the host fails because of an error matching » permission.*denied » or » remuser too long in a case-insensitive manner, the utility immediately tries again, sending only the user name without domain (or machine) information.

locuser is the user name that the service (or daemon) uses to execute the command on the server. Again, it is named as such, because from the point of view of the service (or daemon), the server is the local machine. This is either the user name that you are currently logged in as (minus any domain information if you are a domain user) or the user name explicitly entered on the rsh command line.

rsh copies its standard input to the remote command, the standard output of the remote command to its standard output, and the standard error of the remote command to its standard error (unless is specified).

Non-quoted shell metacharacters on the command line are interpreted on the local machine, while quoted metacharacters are interpreted on the remote machine. For example, the command

rsh normally terminates when the remote command does.

If rsh fails with a TIMEOUT error on Windows 2012/8.1/2012R2/10/2016/2019 when it should have succeeded, the user can tell rsh to retry with:

A TIMEOUT error is indicated by the following error message:

specifies the remote user name to be used when executing the command. This can also be specified by including username @ hostname on the command line.

does not generate a separate standard error stream. All output is sent to standard output. This is useful when you are running an interactive command. For example,

If you are having trouble connecting to rshd on a remote host, here are some possible solutions to your problems.

If you are receiving a » permission denied » error, it could be for one of the following reasons:

UNIX systems may not always know your Windows machine by the same name that other Windows machines do. You can attempt to find out the name by which a UNIX system knows your machine by using the rlogin command to connect to that UNIX system and typing

This should display the name of your machine in parentheses at the end of the information line. If you cannot find the machine name using this method, consult the UNIX system’s administrator.

A hosts.equiv was not found in the ROOTDIR /etc directory on a remote host running the MKS Toolkit rshd service or in the /etc directory on remote UNIX host.

For this reason, it is recommended that the HOME environment variable be explicitly set (without using HOMEDRIVE or HOMEPATH ) for each user that rshd can be run as. For instructions on setting and viewing environment variables, see your Operating System’s online help.

To determine the home directory of locuser on the remote host, type

If you are receiving connection to server failed error, it usually implies that either there is no rshd service (or daemon) running on the remote host or that there were more concurrent rsh requests than the remote host could handle.

Most versions of rshd have a limit to the length of user name they can handle. On some UNIX systems, this limit is as low as 14 characters. As a result, you may receive an error message stating that either remuser or locuser is too long.

When remuser is too long, you need a shorter user name on the client machine.

When the » locuser is too long » error is received, it means that not only is the locuser name longer than the server’s limit, but, by extension, it is an invalid user name on that server.

When set, CTRL-D is used as the EOF (end-of-file) character when the input is from the console.

when set, rsh retries to establish a connection when it fails with a TIMEOUT error on Windows 2012/8.1/2012R2/10/2016/2019.

Possible exit status values are:

This product includes software developed by the University of California, Berkeley and its contributors.

All UNIX systems. Windows Server 2012. Windows 8.1. Windows Server 2012 R2. Windows 10. Windows Server 2016. Windows Server 2019.

When you are connected to rshd running on a Windows machine, it takes longer to run a command as a domain user than it does to run that same command as a local user. This extra time is the result of the server having to contact the network for the additional domain information.

PTC MKS Toolkit for System Administrators
PTC MKS Toolkit for Developers
PTC MKS Toolkit for Interoperability
PTC MKS Toolkit for Professional Developers
PTC MKS Toolkit for Professional Developers 64-Bit Edition
PTC MKS Toolkit for Enterprise Developers
PTC MKS Toolkit for Enterprise Developers 64-Bit Edition

MKS Toolkit Connectivity Solutions Guide

PTC MKS Toolkit 10.3 Documentation Build 39.

Источник

Средства дистанционного администрирования

Собственные инструменты управления Windows постоянно совершенствуются, и большинство сетевых служб можно контролировать с рабочей станции администратора. Даже администраторы Windows NT, в которой нет универсальной консоли Microsoft Management Console (MMC) Windows 2000, могут управлять удаленными DNS, DHCP, WINS и другими службами со своих настольных ПК. Но, несмотря на активное развитие технологий Microsoft, выполнить некоторые задачи (например, установить оперативные исправления, перезапустить сервер, управлять файлами) можно только с консоли сервера.

remote shell что это. Смотреть фото remote shell что это. Смотреть картинку remote shell что это. Картинка про remote shell что это. Фото remote shell что этоПроблема решается с помощью инструментов дистанционного управления. Они незаменимы для работы с серверами в удаленных филиалах и для решения вопросов, возникающих в неурочные часы, из удобного домашнего офиса. В наше неспокойное время они позволят запереть серверы в безопасном помещении и управлять ими на расстоянии.

Дистанционное управление против дистанционного администрирования

Инструменты дистанционного управления входят в более обширную категорию инструментов дистанционного администрирования. Последние, как видно из их названия, обеспечивают выполнение административных задач на удаленных серверах. Например, с помощью утилиты Shutdown (shutdown.exe) из комплекта Microsoft Windows NT Server 4.0 Resource Kit можно остановить и перезапустить сетевые серверы, а утилита rkill.exe позволяет завершить процессы, выполняемые на удаленном сервере. Получив с помощью инструментов управления контроль над рабочим столом сервера через сеть, можно выполнять административные задачи дистанционно. Вместо того чтобы воздействовать на сервер с помощью команд, запускаемых на собственной рабочей станции, администратор выполняет команды на самом сервере, даже находясь на расстоянии многих километров от его монитора и клавиатуры.

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

Terminal Services

Первая встроенная технология дистанционного управления от Microsoft, Terminal Services, появилась в Windows 2000 Server. В прошлом Terminal Services можно было получить только в специальной редакции NT под названием NT Server 4.0, Terminal Server Edition (WTS). Terminal Services предполагалось использовать в основном в качестве технологии сервера приложений (как и продукт Citrix WinFrame, предшественник Terminal Services). Кроме того, в Terminal Services реализован режим дистанционного администрирования, который позволяет двум администраторам одновременно управлять консолью сервера через сетевое соединение.

Однажды воспользовавшись Terminal Services, от этой службы трудно отказаться. С помощью клиента Terminal Services можно запустить несколько окон и одновременно удаленно администрировать несколько серверов. Клиентская программа Terminal Services совместима с большинством версий Windows, в том числе с NT 3.51 и Windows 95. Независимые поставщики (например, Citrix) предлагают клиентские программы для платформ, отличных от Windows. Клиентскую программу можно развернуть на весь экран, и настольный компьютер будет выглядеть как консоль сервера.

Virtual Network Computing (VNC)

VNC — один из малоизвестных, но эффективных инструментов администратора: одни специалисты знают и широко применяют его, другие никогда не слышали о VNC и не понимают причины ажиотажа. В целом, VNC — кросс-платформенный инструмент дистанционного администрирования, с помощью которого рабочий стол сервера можно отобразить на дисплее своего компьютера, независимо от серверной операционной системы. На Экране 1 показано соединение VNC с удаленной машиной Windows 2000 Server.

remote shell что это. Смотреть фото remote shell что это. Смотреть картинку remote shell что это. Картинка про remote shell что это. Фото remote shell что это
Экран 1. Соединение VNC с удаленной машиной Windows 2000 Server.

VNC разработан в лаборатории AT&T Laboratories Cambridge, распространяется бесплатно при условиях соблюдения лицензии GNU General Public License (информация о лицензии GNU General Public License опубликована по адресу: http://www.gnu.org/copyleft/gpl.html). Загрузить VNC можно по адресу: http://www.uk.research.att.com/vnc/index.html. На сайте имеется документация, исходные тексты и другая информация. При распаковывании загруженного дистрибутивного файла формируется две папки:

Запустить программу просмотра просто: нужно дважды щелкнуть на ней и ввести имя сервера, с которым необходимо установить связь. Если на удаленном сервере уже работает серверная программа VNC, то через несколько секунд все будет готово для дистанционного управления сервером.

Процедура инсталляции VNC-сервера тоже не намного сложнее. Достаточно дважды щелкнуть на файле setup.exe и следовать приглашениям мастера установки, чтобы инсталлировать как сервер, так и программу просмотра. На данном этапе сервер доступен только в интерактивном режиме, т. е. его можно запустить лишь вручную. Ручной запуск для администрирования удаленного сервера неудобен: VNC-сервер лучше запускать автоматически. Для этого достаточно щелкнуть на значке Start Menu программы VNC и настроить VNC for Windows (WinVNC) на работу в качестве службы, с учетной записью Windows 2000 или NT 4.0 LocalSystem, автоматически запускаемой при старте сервера (автоматический запуск — функция операционной системы; она работает не на всех машинах: например, на Macintosh такой функции нет). После перезапуска или (если служба используется в первый раз) ручного запуска, служба VNC просит назначить пароль сеанса и другие параметры конфигурации (см. Экран 2).

remote shell что это. Смотреть фото remote shell что это. Смотреть картинку remote shell что это. Картинка про remote shell что это. Фото remote shell что это
Экран 2. Параметры конфигурирования службы WinVNC.

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

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

Terminal Services или VNC?

Учитывая, что технология Terminal Services встроена в Windows 2000, нуждаются ли администраторы сетей Windows 2000 в VNC? Безусловно, да.

По-видимому, в однородной сети Windows 2000 лучше всего использовать Terminal Services. Это бесплатный продукт, поставляемый на одном компакт-диске с Windows 2000 Server, достаточно удобный для дистанционного администрирования. Но в настоящее время лишь в очень немногих средах применяется единственная операционная система. Главное преимущество VNC — кросс-платформенная совместимость, благодаря которой с одного удаленного клиента можно администрировать серверы, работающие на Windows 2000, NT, Linux и многочисленных разновидностях Unix. Такой многофункциональный и в то же время бесплатный продукт трудно превзойти.

Применение VNC и Terminal Services не приводит к значительному снижению производительности. Как правило, эти инструменты потребляют лишь небольшую долю ресурсов процессора, очень мало памяти и почти не увеличивают нагрузку на дисковую подсистему ввода/вывода. В этом отношении они на голову выше решений, в большей степени ориентированных на настольные компьютеры (например, pcAnywhere компании Symantec). VNC обеспечивает надежную информационную защиту благодаря использованию протокола аутентификации с квитированием, имеющего много общего с Microsoft Challenge Handshake Authentication Protocol (MSCHAP), собственным протоколом аутентификации NT. Кроме того, как VNC, так и Terminal Services располагают клиентом на базе Windows CE, предоставляющим возможности истинно дистанционного администрирования.

Тем не менее между VNC и Terminal Services существует несколько важных различий. Эти различия относятся к управлению удаленным рабочим столом, технической поддержке продуктов, ограничениям операционной системы и быстродействию.

Управление удаленным рабочим столом. Как отмечалось выше, VNC предоставляет лишь один дистанционно управляемый рабочий стол, независимо от числа разрешенных соединений. Terminal Services позволяет двум администраторам одновременно подключиться к серверу и предоставляет каждому из них собственный рабочий стол.

Техническая поддержка. В отличие от производителя Terminal Services, пользователи которой получают поддержку от Microsoft, ни одна компания технологию VNC не поддерживает. Однако пользователи могут загрузить исходный текст VNC и настроить инструмент на конкретное применение. Получить исходный текст Terminal Services значительно труднее.

Скорость. Процедуры дистанционного администрирования VNC чуть медленнее, чем Terminal Services. Иногда приходится ждать, когда VNC обновит удаленный дисплей.

Remote Command

Некоторое время назад разработчики Microsoft дополнили набор ресурсов Windows Server программой Remote Command (rcmd.exe). Утилиту Remote Command можно рассматривать как вариант Terminal Services или VNC, запускаемый из командной строки: она позволяет выполнять команды на удаленном сервере. Remote Command, несомненно, понравится тем администраторам, которые предпочитают пользоваться командой Net Use вместо графического интерфейса, чтобы подключиться к удаленному диску. Кроме того, небольшие операции, запускаемые из командной строки, гораздо быстрее выполняются с помощью Remote Command, нежели с использованием графического интерфейса.

Remote Command состоит из двух компонентов: rcmd.exe (клиентский компонент) и rcmdsvc.exe (серверный компонент). С помощью этих двух компонентов администратор может получить доступ к командной строке удаленного сервера, выполнить команды и завершить сеанс. Он также может инициировать однокомандный сеанс с автоматической регистрацией, выполнением одной команды и завершением связи. Например, команда

обеспечивает регистрацию на Server1 и предоставляет в общее пользование каталог D:usersmaryj под именем MaryJ$. Remote Command можно использовать в сценариях. С помощью сценариев, запускаемых на рабочей станции, можно администрировать один или несколько серверов. В большинстве продуктов Microsoft наряду

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

Механизм защиты Remote Command довольно прост. Чтобы зарегистрироваться на удаленной машине, пользователи вводят те же учетные данные, что и для регистрации на локальном компьютере. Пользователи должны иметь право интерактивной регистрации на удаленной машине, и все действия производятся в соответствии с их полномочиями. По умолчанию Remote Command работает на сервере от имени учетной записи LocalSystem. Remote Command обслуживает 10 соединений одновременно, обеспечивая уникальную и независимую оболочку командной строки для каждого соединения.

Remote Command работает на сервере под учетной записью LocalSystem, поэтому с помощью данной утилиты сложно выполнить команды, требующие подключения к другому серверу. Например, чтобы корректно выполнить команду Net Use и сделать диск общим сетевым ресурсом, необходимо указать для Net Use альтернативные учетные данные.

Telnet

Корни telnet — в мире Unix, где утилита считается стандартным административным инструментом. По принципу работы telnet очень похожа на Remote Command, она также обеспечивает доступ к удаленному серверу из командной строки. Но в отличие от утилиты Remote Command, ориентированной на сети Microsoft, telnet основана на открытых стандартах. Существуют клиенты telnet для Palm PDA, устройств Windows CE и почти любых TCP/IP-совместимых машин; Remote Command работает только с Windows XP, Windows 2000 и NT.

Администраторы сетей с маршрутизаторами и коммутаторами, вероятно, знакомы с telnet, поскольку данная утилита — основной инструмент управления такими устройствами (хотя многие изготовители начинают встраивать в свои сетевые устройства административные интерфейсы на базе Web). Администраторам, которые привыкли работать с telnet, будет приятно узнать, что эту службу можно запустить и на серверах Windows.

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

Служба telnet Windows 2000 обеспечивает работу двух соединений. Как правило, для дистанционного администрирования этого достаточно. Для дополнительных соединений можно использовать продукт Microsoft Windows Services for UNIX (SFU), который располагает более мощной службой telnet и может быть лицензирован для обслуживания большего числа соединений. Microsoft также выпустила утилиту командной строки telnet Server Administration для настройки режима аутентификации службы, порта TCP и других параметров. Значок утилиты расположен в разделе Administrative Tools панели управления. Microsoft не выпускает серверной программы telnet для NT, но в Internet нетрудно найти бесплатные и недорогие NT-совместимые серверы telnet.

Telnet — почти идеальный инструмент для смешанной операционной среды, так как, скорее всего, служба уже работает на серверах, отличных от Windows. Но следует помнить, что telnet была разработана на ранних стадиях развития Internet, когда проблема безопасности не была столь актуальной. В telnet нет механизма шифрования — все данные пересылаются в текстовом формате.

По умолчанию в службе Microsoft telnet используется достаточно надежный метод аутентификации MSCHAP. Но его можно настроить на прием чисто текстовых паролей — совершенно незащищенный, но необходимый способ при обращении к telnet с компьютера, не совместимого с MSCHAP, например с настольной машины Unix. Telnet подходит для внутренних серверов, но мало кто рискнет использовать данную службу для серверов, подключенных к Internet. Это связано, прежде всего, с тем, что стандартный TCP-порт telnet (23) — первый порт, который атакует большинство взломщиков.

Remote Shell

Remote Shell — инструмент удаленного управления, запускаемый из командной строки, очень похожий на Remote Command и telnet. Remote Shell состоит из двух компонентов: серверного (rshsvc.exe) и клиентского (rsh.exe). Оба компонента входят в состав Microsoft Windows 2000 Server Resource Kit и набор ресурсов NT Server 4.0.

Remote Shell — кросс-платформенный инструмент. Многие серверы Unix совместимы с Remote Shell, а большинство операционных систем с поддержкой TCP/IP располагает клиентом Remote Shell. Благодаря такой поддержке Remote Shell может быть альтернативой для Remote Command в гетерогенных средах. Однако Remote Shell защищена хуже, чем Remote Command и telnet.

В папке \%systemroot%system32driversetc необходимо создать файл с именем RHOSTS для хранения списка компьютеров, на которых может работать rsh.exe, и имен пользователей, имеющих право запускать rsh.exe на конкретной машине. При попытке пользователя установить связь Rshsvc.exe выполняет поиск в этом файле в обратном порядке. Программа разрешит соединение только после того, как обнаружит имя компьютера и пользователя. Для обращения к Remote Shell пароля не требуется.

Из-за слабых встроенных функций защиты Remote Shell многие администраторы предпочитают более надежные варианты инструмента производства независимых компаний. В частности, широко распространен пакет Secure Shell компании SSH Communications.

Remote Console

Функционально близкая к telnet утилита Remote Console отличается тем, что она не просто перенаправляет командную строку с сервера на компьютер, а позволяет управлять видеопамятью удаленного сервера и запускать такие полноэкранные приложения командной строки, как MS-DOS Edit. По умолчанию, утилитой могут пользоваться только члены группы Administrators сервера. Это ограничение можно снять, разрешив и другим пользователям подключаться к службе. Программное обеспечение и документацию Remote Console можно получить вместе с комплектом ресурсов Windows 2000 Server или NT Server 4.0.

Как выбрать инструмент?

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

Рекомендуется использовать по крайней мере один графический инструмент дистанционного администрирования, такой, как Terminal Services или VNC. Во врезке «Большой выбор» приведена информация об особенностях других графических решений.

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

С помощью Remote Command можно выполнять команды администрирования по одной. Эта утилита удобна для использования в сценариях и автоматических процедурах. Remote Shell совместима с различными платформами, хотя настройка режима безопасности на отдельных серверах может отнимать много времени. Remote Console позволяет дистанционно запускать приложения MS-DOS на полном экране.

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

Дон Джонс — автор, специализирующийся на технической тематике. Учредитель компании BrainCore.Net. С ним можно связаться по электронной почте по адресу: donj@braincore.net.

Литература

Большой выбор

В распоряжении администраторов Windows всегда был богатый набор графических инструментов дистанционного администрирования. Прошло немало времени с момента появления Virtual Network Computing (VNC), а многие организации по-прежнему используют программу pcAnywhere компании Symantec вместо встроенных терминальных служб Windows 2000 Server.

Эффективность дистанционного администрирования очевидна, но выбрать оптимальный инструмент нелегко. Вот несколько советов.

Поделитесь материалом с коллегами и друзьями

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *