Безопасный доступ к консоли Windows и автоматизация выполнения удаленных команд


Многие ИТ-специалисты применяют удаленное подключение к командной строке различных устройств, наиболее популярным протоколом является SSH в силу того, что он обеспечивает безопасное соединение. SSH используется для управления аппаратными роутерами и коммутаторами, а также для подключения к серверам на базе *Nix операционных систем. В стандартном наборе компонентов Windows нет SSH сервера, но его возможно установить отдельно. Возьмем, например, FreeSSHd - это бесплатный SSH сервер, который возможно скачать с сайта разработчика.
            Устанавливается он как обычное приложение и интегрируется в виде службы. Заходим в свойства и выполняем основные настройки. Выглядит окно настроек следующим образом:

Настройка FreeSSHd

Как видим, SSH сервер запущен и работает. Далее нам нужно создать пользователя, для этого переходим на вкладку Users.

FreeSSHd setup
Добавляем пользователя. Можно применить NT-аутентификацию или создать нового пользователя. Назначаем пользователю права. Разрешим пользователю только возможность использовать Shell. Проверяем, для этого используем популярный клиент SSH Putty.
      Подключаемся, вводим логин и пароль, и попадаем в обычную командную строку Windows
Безопасный доступ к cmd через SSH

Настройка подключения с Linux-клиента

В списке пользователей FreeSSHd добавляем пользователя, от имени которого мы будем подключаться из Linux, и устанавливаем ему тип авторизации “Public key (SSH only)”.
Ключи FreeSSHd, по умолчанию, хранит в папке D:\Keys
Также, обратите внимание, как выставлены пункты аутентификации пользователей, а именно:
Password Authentication – Disabled
Public Key Authentication - Required


Создаем на Linux-машине ключи с помощью утилиты ssh-keygen : ssh-keygen -t тип ключа -b длина ключа -f имя ключа
Пример: ssh-keygen -t rsa -b 1024 -f rsakey
Сгенерированный приватный ключ (rsakey) оставляете на своей машине: это закрытый ключ. Содержимое файла rsakey.pub (публичный ключ) копируете на машину с FreeSSHd в папку D:\Keys.
Обратите внимание, что имя публичного ключа должно совпадать с логином пользователя. В примере, файл rsakey.pub , должен быть переименован в root.
Также, после всех проведенных манипуляций, вам потребуется перезагрузить сервер FreeSSHd. В трее, на иконке FreeSSHd, щелкаете правой кнопкой мыши и выбираете пункт Unload. Затем снова запускаете FreeSSHd.

Далее спокойно подключаетесь к Win-машине командой ssh -i файл приватного ключа пользователь@ip_машины
Пример: $ ssh -i /root/rsakey root@192.168.1.110

Следующий скриншот демонстрирует  удаленное исполнение "батника" через ssh из Linux.

Владислав Качинаускас
http://efsol.ru/solutions/data-protection.html

Комментариев нет:

Отправить комментарий