注意書き

本サイトでは、アフィリエイト広告およびGoogleアドセンスを利用しています。

WindowsからラズパイへRemote-SSH

インフラストラクチャ

私は、Windows の VSCode を使って、ラズパイ (Raspberry Pi) へ接続し、操作をするということをよくやります。ただ初期の環境設定を手抜きすると、接続のたびにパスワードの要求が発生して手間が掛かります。頻繁にこの環境を使う場合には、パスワードなしにできると便利です。

ただ、この手順がいつも迷うので、パスワード認証のほうで済ませてしまうのですが、今回自分のために記事にすることにしました。次回以降は本記事を参照してセットアップしようという考えです。なお、Raspberry Pi を対象としていますが、基本的には Linux サーバーに対しても同様に適用可能なはずです。

ここでWindows環境は Windows11 、 Raspberry Pi は Raspberry Pi 4 の Rasypberry Pi OS (bookworm) を使用しています。

スポンサーリンク

Windows 側での作業

VS Codeを使って操作する側になります。Remote SSH でラズパイにつなぎに行きます。

ssh キーファイルの作成

まずは SSH のキー情報を以下のコマンドで作成します。”-f” オプションでファイル名を指定していますが、このオプションを省略すると id_rsa および id_rsa.pub ファイルが生成されます。

コマンド実行後パスフレーズが聞かれるので、パスフレーズを入力するか、空エンター打ちして進めます。

VSCodeの設定

VSCode で Remote-SSH の設定をします。構成ファイルを開きます。ここで選択するファイルは、「(ユーザーフォルダ)/.ssh/config」のほうを選択します。

そして、設定内容に以下のようなものを追記します。各設定は予測がつくと思いますが、次のような内訳となっています。

  • Host : 接続名
  • HostName : 接続先のアドレス情報
  • User : ssh 接続で使用するユーザー名
  • IdentityFile : 先ほど生成した秘密鍵ファイルのパス

Raspberry Pi 側での作業

Windows からVS Code (Remote SSH) で接続される側になります。

公開鍵を Windows から Raspberry Pi へコピー

Windowsで生成した raspberrypi4.pub ファイルをラズパイのほうへコピーします。
そして、ログインユーザーの.ssh以下にある authorized_keys ファイルに内容を追記します。

ファイルがホームディレクトリにコピーされている状態で、以下のようなコマンドを実行して authorized_keys ファイルに追記します。このファイルがない場合には新規作成で問題ありません。

authorized_keys ファイルを新規作成という場合があるので、上記ではパーミッション変更を含めてあります。

動作確認

設定が終わったので、 Windows 側の VS Codeから接続をして動作確認をします。コマンドパレットから以下のように開始できます。

あるいは、VS Code左側アクティビティバーから、リモートエクスプローラーのボタンを選択し、リモートエクスプローラーのビューを表示し、そこから先ほど登録したホストを選択することもできます。

このときにパスワードを要求されなければ、処置が完了しています。うまくいかない場合には、出力されているログから原因を探すのが必要です。よくあるパターンとしては、鍵ファイルのパスをミスしているか、正しい組み合わせを送っていないか、などです。

コメント

タイトルとURLをコピーしました