Windows に SSH 接続してみました
はじめに
手元の mac から CUI で Windows に接続したいな〜と思ったので試してみました。
実現方法は,次の二つがあるようです。
- Windows(リモートホスト)に OpenSSH(sshd)をインストールして,SSH 接続
- mac(ローカルホスト)に PowerShell をインストールして,WinRM(Windows Remote Management)で接続
前者の方法は,Windows 版の OpenSSH はあまりメンテナンスされていないような気がして,これまで乗り気ではありませんでした。 最近では,microsoft 製の OpenSSHが提供されているようです。
後者について,PowerShell はオープンソースとして提供されています。 mac でも Linux でも使えるようになりました:)
今回は,クライアントの mac に手を加えたくなかったので,前者の方法を試してみました。
作業内容
実施環境
- Windows 10.0.14393 [64 bit]
- chocolatey 0.10.8
手順
Win32 OpenSSH のインストール
chocolatey をインストールしていない場合は,先に導入しておきます。
マニュアルを参考に,作業を進めていきましょう。
今回は,SSH クライアントと sshd サーバをインストールするので,以下のコマンドを実行します。
choco install win32-openssh -params '"/SSHServerFeature /KeyBasedAuthenticationFeature"' -confirm
インストール中に22番ポートの開放も行われます。インストールが完了したらおしまい!
mac から SSH 接続
インストールが完了したら接続してみましょう。接続先は環境に合わせて読み替えてください。
$ ssh administrator@192.168.40.10 administrator@192.168.40.10's password: Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. All rights reserved. administrator@WINPC C:\Users\Administrator>
接続先はコマンドプロンプトの世界なので,PowerShell が使いたくなったら切り替えましょう。
administrator@WINPC C:\Users\Administrator>powershell Windows PowerShell Copyright (C) 2016 Microsoft Corporation. All rights reserved. PS C:\Users\Administrator>
PowerShell が起動しました!
あとは,いつも通りに作業を進めましょう。
実際の接続例
なかなかに強烈です。
その他
Win32 OpenSSH のアップグレード
choco upgrade win32-openssh -params '"/SSHServerFeature"' -confirm
Win32 OpenSSH のアンインストール
choco uninstall win32-openssh -params '"/SSHServerFeature"' -confirm
おわりに
terminal から Windows に SSH 接続することを目的に,Widdows に sshd サーバをインストールし,接続しました。 使い慣れた mac で PowerShell スクリプトの開発ができるようになりルンルンです。
普段は,リモートデスクトップ接続(RDP)で良いけれど,回線が遅い場合でコマンドだけ叩きたい!なんてときにも役立ちそうです。
今回はパスワード認証での接続でしたが,今後は公開鍵で接続できるように設定してみようと思います。