【OpenSSH】WindowsからWindowsにMicrosoftアカウントでSSH接続する

ネコニウム研究所

PCを利用したモノづくりに関連する情報や超個人的なナレッジを掲載するブログ

【OpenSSH】WindowsからWindowsにMicrosoftアカウントでSSH接続する

2024-2-28 |
200px200px

WindowsからWindowsにMicrosoftアカウントでSSH接続してcliでごにょごにょしたい!

概要

今回の記事では、WindowsからWindowsにMicrosoftアカウントでSSH接続してcliごにょごにょする手順を掲載する。

GUIで操作するんなら、WindowsやGoogleのRemote Desktopを使えるんだけども、cliでさくっと操作したいときもある。そんなモチベーション。

仕様書

環境

  • Windows 23H2 OSビルド 22631.3296(接続先・接続元共に)
  • OpenSSH_for_Windows_8.6p1, LibreSSL 3.4.3

手順書

接続先のWindowsではMicrosoftアカウント(hotmail.comlive.jp)でログインしてたものとする。

  1. 接続先にOpenSSH(サーバー)をインストールしてポートを開放する。下記の記事を参照。
  2. 接続元にOpenSSH(クライアント)をインストールする。 PowerShellを管理者で実行して下記のコマンドを実行してインストールできるOpenSSHのバージョン?を確認する。
    Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

    下記のような感じで出力される。

    
    Name  : OpenSSH.Client~~~~0.0.1.0
    State : NotPresent

Name : OpenSSH.Server~~~~0.0.1.0
State : NotPresent

1. OpenSSH.Clientをインストールする。
```powershell
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

下記のような感じで出力される。

Path          :
Online        : True
RestartNeeded : False

RestartNeededTrueだった場合は、PCを再起動する。

  1. 再起動後、接続元のcmdなどで下記のような感じでコマンドを実行するとSSH接続できる。
    ``bash
    ssh <アカウント>@

    例えば、アカウントが`example@hotmail.com`で接続先のIPが`192.168.1.100`の場合は
    ``bash
    ssh example@hotmail.com@192.168.1.100

    @が2回出現して気持ち悪いかもだけどもこんな感じ。
    メールアドレスではなくて、接続先にあるユーザーデータが保存されてるフォルダ名でもログインできる。C:\Users\exampleというパスの場合はexampleの部分。
    ``bash
    ssh example@192.168.1.100

  2. パスワードの入力が求められるのでMicrosoftアカウントのパスワードを入力する。
  3. 下記のような感じで接続先にSSH接続できればOKだ!
    Microsoft Windows [Version 10.0.22631.3296]
    (c) Microsoft Corporation. All rights reserved.
    example@192.168.1.100 C:\Users\example>

まとめ(感想文)

開発環境の幅が広がるかもね!

参考文献・引用