Raspberry Pi初心者がSSH接続環境を構築するまでの記録

 今回は、前回のリモートデスクトップ接続に続き、
 Raspberry Pi を SSH で操作できる環境構築に挑戦した内容をまとめます。

 SSH 接続ができるようになると、
 モニター・キーボードを別で用意しなくても
 Raspberry Pi を操作できるようになり、
 より “IoT デバイスらしい使い方” ができるようになります。

 これから Raspberry Pi を触ってみたい方の参考になれば嬉しいです。

◆SSHとは?

 SSH(Secure Shell)は、
 ネットワーク越しに別のコンピュータへ安全に接続し、
 コマンド操作を行うための仕組みです。

 Raspberry Pi では標準で SSH が利用でき、
 Windows や Mac からリモートで操作する際の定番手段となっています。

◆SSH接続を行うメリット

 モニター・キーボード不要で操作できる

 軽量で高速(RDPより負荷が少ない)

 サーバー用途・IoT用途で必須の操作方法

 自動化やスクリプト実行と相性が良い

 前回の RDP 接続と比べると、
 GUI ではなく CUI 操作が中心になりますが、
 その分だけ軽くて扱いやすいのが特徴です。

◆SSH接続環境の構築手順

 ここからは、実際に私が行った手順をまとめていきます。

◆1. Raspberry Pi 側の設定

 ① SSH を有効化する

   Raspberry Pi OS では、セキュリティの観点から
   初期状態では SSH が無効になっています。
   有効化する方法は2つあります。
   ※今回はGUIでの有効化を行いました。

【方法A】GUI から有効化(モニター接続時)

  1. 画面左上の Raspberry メニューを開く
  2. 「設定」→「Raspberry Pi の設定」を選択
  3. 「インターフェイス」タブを開く
  4. 「SSH」を「有効」に変更
  5. 「OK」を押して再起動

【方法B】CUI から有効化(ターミナル操作)

sudo raspi-config
 → 「Interface Options」
 → 「SSH」
 → 「Enable」
 →  再起動

 ② Raspberry Pi の IP アドレスを確認する

   SSH 接続には IP アドレスが必要です。
   こちらも2通りありますが、
   RDPだとGUI時の画面とは異なるようだったので、CUIで確認しました。

    GUI の場合:
     右上のネットワークアイコン → 接続情報

    CUI の場合:

hostname -I

◆2. Windows 側の準備

 Windows 10 以降では、標準で SSH クライアントが搭載されています。

 ① PowerShell を起動

   スタートメニュー →「PowerShell」と入力して起動。

 ② SSH コマンドで接続

   初回のみ「接続してよいか?」と聞かれるので「yes」。
   続いてパスワードを入力します。
   デフォルトユーザー:
    ユーザー名:pi
    パスワード:OS インストール時に設定したもの

 ③ 接続成功すると…

上記のようなプロンプトが表示されれば成功です。

◆3. SSH接続ができない場合のチェックポイント

 実際に構築してみて、つまずきやすいポイントもまとめておきます。

 ① 同じネットワークに接続されているか?

   Raspberry Pi と Windows が
   同じ Wi-Fi / LAN に接続されている必要があります。

 ② ファイアウォールの設定

   企業ネットワークなどでは SSH(ポート22)が
   制限されている場合があります。
   家庭内 LAN なら基本問題ありません。

 ③ ユーザー名・パスワードの間違い

   特にパスワードは入力しても画面に表示されないため、
   タイプミスに気づきにくいです。

◆4. SSH接続後に行ったこと

 SSH 接続ができるようになると、
 Raspberry Pi を “本当のサーバー” のように扱えるようになります。
 私が実際に行った操作は以下の通り。

 ① パッケージ更新

   以下は最新パッケージを取得し、
   最新バージョンに更新するためのコマンドです。

sudo apt update
sudo apt upgrade -y

 ② 必要なツールのインストール

   今後を見据えて「git」、「vim」、「htop」をインストールしました。

sudo apt install git vim htop -y

 ③ 再起動

   RDPからのシャットダウンや再起動は
   うまくいかないことがあったのですが、
   SSHだと確実でした。

sudo reboot

◆5. 今後の展望

 SSH 接続ができるようになったことで、
 次のステップとして以下の開発を進める予定です。

  • Web サーバ構築(Nginx / Apache)
  • Python でのセンサー制御
  • 外出先からの遠隔操作(VPN 連携)
  • スマートホーム化の実験

◆まとめ

 今回で最終目標のIoT開発において
 “最低限の基盤”と言えるSSH接続を学ぶことができました。

 また、SSH 接続構築でRaspberry Pi をより深く理解できたと感じています。
  SSH は軽量で高速
  GUI なしで操作できるため IoT 向き
  ネットワークの理解が深まる
  サーバー構築の第一歩として最適
 前回の RDP 接続と合わせて、 用途に応じて使い分けられるようになりました。
 次回は、いよいよ Web サーバ構築 に挑戦する予定です。
 引き続き、学んだことをブログで発信していきます。