SSH を使用して接続する

OpenSSH を使用して、Factory OS テスト デバイスと VM に接続し、コマンドの実行や、ファイルの転送を行うことができます。 OpenSSH (Secure Shell) は、セキュリティで保護されたターミナル接続の標準プロトコルです。

SSH を使用すると、すべての Factory OS イメージに接続できます

WDP topology showing you can connect via ssh from a remote pc

SSH を使用して接続するために必要なもの

SSH を使用してデバイスに接続するには、次が必要です。

  • Factory OS デバイス上で起動した SSH サーバー
  • テクニシャン PC 上の SSH クライアント。 Windows 10 には、既定でインストールされている SSH クライアントが含まれています。
  • 接続先のデバイスの IP アドレス。 Factory OS で、Factory Composer アプリのメイン画面、または Factory Orchestrator の右上隅から IP アドレスを取得します。
  • SSH 用に構成された認証。 これは、次のいずれかにすることができます。
    • ユーザー名とパスワード
    • キーペア

SSH サーバーを起動する

WindowsCoreNonProductionFM 機能マニフェストを含むイメージでは、SSH サーバーを自動的に起動する WCOS_OPENSSH_AUTOSTART 機能を追加できます。

イメージが SSH サーバーを自動的に起動するように構成されていない場合は、Windows デバイス ポータルを使用して SSH サーバーを手動で起動できます。

  1. テクニシャン PC でブラウザーを開き、Factory OS デバイスの URL に移動します。
  2. デバイス ポータルに接続したら、左ペインから SSH タブに移動します。 SSH タブは、一覧の最後に表示されています。
  3. [Enable SSH](SSH を有効にする) を選択します。

名前とパスワードを使用して接続する

ユーザー名とパスワードを使用して接続するには、まずユーザー名とパスワードを構成する必要があります。 SSH のユーザー名とパスワードの構成は、使用している Factory OS 製品によって異なります。

Factory OS のユーザー名とパスワード

Factory OS には、SSH で接続するために使用できるあらかじめ登録された Administrator アカウントが含まれています。

  • ユーザー名: FactoryUser
  • パスワード: WindowsCore

設定のカスタマイズ フレームワークSSHUsernameSSHPassword の設定で、ユーザー名とパスワードをカスタマイズすることができます。

キー ペアを使用して接続する

SSH 用のキー ペア (詳細については SSH クライアントのドキュメントを参照) がある場合は、ユーザー名とパスワードの代わりに使用できます。

OpenSSH 形式の公開キーが必要です。 取得するには、テクニシャン PC 上で ssh-keygen.exe を実行します。 ssh-keygen は Windows に含まれています。

キーペアを作成する

  1. テクニシャン PC のコマンド プロンプトで ssh-keygen.exe を実行し、公開キーペアと秘密キーペアを生成します。 このコマンドを実行すると、PC 上の場所にキーを保存し、さらにパスワードを設定することができます。

    ssh-keygen
    

    このコマンドを実行すると次の情報の入力が求められ、出力は次のような表示になります。

    Enter file in which to save the key (C:\Users\User/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in C:\Users\User/.ssh/id_rsa.
    Your public key has been saved in C:\Users\User/.ssh/id_rsa.pub.
    The key fingerprint is:
    SHA256:<SHA245> user@COMPUTER
    The key's randomart image is:
    +---[RSA 2048]----+
    |     .o oo=+.+OB |
    |     ..o.... =B+o|
    |      .o ++ +oo*o|
    |       ... +.o+..|
    |      . S   oo.+.|
    |       . .   .+.E|
    |        .    ... |
    |                 |
    |                 |
    +----[SHA256]-----+
    
  2. キーを格納したフォルダーに移動すると、拡張子がない秘密キーと、拡張子が .pub の公開キーがあります。

  3. テキスト エディターで公開キー ファイルを開きます。 公開キーは機密ではありません。 これは次にようになります。

    ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAiez5r6NN01TK5yFPCV34Po4UdsMej4Gbl441SAzGihcE3eV7bSnLRR32RKH8T6ZQ2eZSZ1zPD6xkGnBE0CXvlHLP76nva4AaoCoPAEDIbNKLVmPiKn6U6MDlkass6TFrfOBlsY3m+rZyWJipZEFLrptvqli72lkWttUNfwgu8CJKMBbjGsd4HS3EFwCrSsKqI2MBKk7SO3+DNrwAPUWK9O/hT/mqARMMMbD/zM0BrHZ/U9mc3w/x2y2awpONJF9yVjfXAvG6JTrB+Bh6pr2BYccmVAwPmXkQM+3HrFjS7nfSZnjBQE3YD6PTZfT7Qs6V15CoCvIaoRQs0AEBJLK53Q== rsa-key-20180427
    
  4. 公開キーの内容をクリップボードにコピーします。

  5. デバイス ポータルを使用して WCOS デバイスに接続します。 左ペインから SSH タブに移動し、クリップボードから目的のユーザーの [公開キー] というボックスに公開キーをコピーします。

接続する

認証の構成が完了したら、Factory OS デバイスに接続できます。

  1. ご利用のテクニシャン PC でコマンド プロンプト ウィンドウを開きます。

  2. 次のように、デバイスに接続します。

    1. ユーザー名とパスワードを使用して接続する場合:
    ssh user@192.168.1.2
    

    user は SSH の設定時に選択したユーザー名で、192.168.1.2 は Factory OS デバイスの IP アドレスです。

    1. キー ペアを使用して接続する場合:
    ssh -i C:\Users\User/.ssh/id_rsa user@192.168.1.2
    

    C:\Users\User/.ssh/id_rsa はユーザーの秘密キー、user は SSH の設定時に選択したユーザー名、そして 192.168.1.2 は Factory OS デバイスの IP アドレスです。

  3. ユーザー名とパスワードで接続する場合、またはパスワードを要求するようにキーを構成している場合は、ユーザーのパスワードを入力します。

セキュリティで保護された FTP

sftp プロトコルを使用して、ファイル転送に SSH を使用できます。 Factory OS デバイスで SSH を有効にしている場合は、sftp で接続することもできます。

WinSCP は、Windows で sftp を使ったファイル転送を行うための最も一般的な GUI クライアントです。 使い方については、ドキュメントを参照してください。

コマンドライン ツールを使用する場合は、sftpscp を使用できます。

sftp:

usage: sftp [-46aCfpqrv] [-B buffer_size] [-b batchfile] [-c cipher]
         [-D sftp_server_path] [-F ssh_config] [-i identity_file] [-l limit]
         [-o ssh_option] [-P port] [-R num_requests] [-S program]
         [-s subsystem | sftp_server] destination

scp:

usage: scp [-346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
          [-l limit] [-o ssh_option] [-P port] [-S program] source ... target

上記のユーティリティは Windows に含まれており、コマンド プロンプトを起動して実行できます。