Хотите верьте, хотите нет, но Microsoft работает над тем, чтобы обеспечить в своих продуктах поддержку OpenSSH. Да, Microsoft готовится поддержать один из ключевых механизмов администрирования BSD, Linux и Unix.
Хотя это не так удивительно, как может показаться на первый взгляд. Времена, когда пользователи Windows и Linux готовы были вызвать друг друга на дуэль, уходят. Администраторы Unix и Linux давно привыкли использовать OpenSSL и OpenSSH для безопасного привилегированного доступа к своим системам. Поскольку Microsoft интегрирует поддержку Linux в состав своих облачных и локальных Windows-решений, пользователи вполне логично ожидают включения в эти предложения поддержки OpenSSH.
Энджел Калво, руководитель команды по разработке PowerShell, поясняет: «Наша команда регулярно получает запросы на реализацию поддержки протокола Secure Shell и механизма Shell session (известного как SSH) для обеспечения взаимодействия между Windows и Linux, чтобы из Linux-среды можно было по SSH подключиться и Windows-системе и управлять ею и, наоборот, из Windows-среды подключиться по SSH к Linux. Таким образом, комбинация PowerShell и SSH могла бы стать мощным и безопасным решением по автоматизированному удаленному управлению системами на базе Linux и Windows».
Интересно, что, хотя SSH активно используется в экосистеме Linux, проект OpenSSH возник в другой экосистеме — OpenBSD, чьи наработки широко разошлись практически по всем ОС семейства Unix. То есть поддержка Microsoft пакета OpenSSH облегчит жизнь администраторам, совмещающим в своей практике управление серверами Windows, Linux и/или BSD.
Сегодня для Windows доступно несколько клиентов SSH. Например, многим администраторам знаком PuTTY — бесплатный open-source-клиент telnet и SSH. OpenSSH также применяется в широко известном клиенте FileZilla, поддерживающем протокол SFTP (Secure FTP).
Но, по словам Калво, практически нет программ, соответствующих требованиям промышленной эксплуатации Windows-решений — Microsoft не смогла найти сколь-нибудь качественной реализации.
После анализа доступных вариантов команда PowerShell поняла, что наилучшим выходом будет создание решения промышленного уровня, тесно интегрированного с Windows, поставляемого вместе с Windows и построенного на рекомендациях лучших экспертов со всего мира.
Если сформулировать совсем коротко, то команда PowerShell станет контрибутором сообщества OpenSSH на условиях лицензии открытого кода в стиле BSD. У Microsoft уже есть многолетний опыт работы с Linux на весьма строгих условиях GPL, поэтому следование более мягким условиям таких лицензий как Apache, BSD и MIT не вызовет никаких проблем.
Microsoft только начинает этот проект, поэтому пока не пытайтесь с помощью PowerShell подключиться с Windows-машины к Linux-серверу.
Калво признается, что это уже третья попытка команды PowerShell реализовать поддержку SSH. Он пояснил, что изменения в руководстве компании и ее культуре побудили его команду предпринять еще одну попытку; и на этот раз компания полностью поддерживает данный проект, поскольку ценность решения для пользователей очевидна и неоспорима. «Пользуясь случаем, я хочу поблагодарить всех участников сообщества, которые ясно и выразительно доносили до нас свои требования и тем самым обосновали для компании необходимость поддержки SSH», — заявил Калво.
Я согласен с ним. Microsoft уже не та, что была во времена Билла Гейтса и Стива Баллмера. Сегодня она ценит то положительное, что может извлечь из open-source и Linux. Поэтому недалек день, когда Windows-админы смогут управлять серверами Linux при помощи встроенного в PowerShell клиента SSH.