備忘録

執筆日:

Raspberry Pi 5(Ubuntu 24.04 Server)有線LANでのSSH接続設定

概要

ROBO-ONE Auto に向けて、Raspberry Pi 5 上で ROS 2 の開発環境を整えることを目指している。その一環として、初期セットアップ後はモニター・キーボードレスで作業できるよう、PC と Raspberry Pi を有線 LAN(1 対 1)で接続し、固定 IP による SSH 通信を確立する手順をまとめる。

1. OS の書き込みと起動後のローカル操作

以降の NetplanSSH の操作は、次の状態でラズパイに直接ログインして行う前提とする。

  1. PC 上で Raspberry Pi Imager を起動し、使用する OS イメージ(本備忘録では Ubuntu 24.04 Server を想定)を SD カードに書き込む。ストレージの選択や初期設定(ユーザー名・パスワード等)もここで指定する。
  2. 書き込みが完了した SD カードを Raspberry Pi 5 に挿入し、電源を入れて起動する。初回起動時の設定や更新があれば、画面の指示に従う。
  3. ディスプレイをラズパイに接続し、ローカルで ターミナルを開いて操作する(キーボードも接続する)。次節以降のコマンドは、このローカル端末上で実行する。

2. ラズパイ側のネットワーク設定(固定 IP 化)

Ubuntu 24.04 の標準ネットワーク管理ツール Netplan を使用し、有線 LAN(eth0 など)を固定 IP 化する。

2-1. インターフェース名と IP 状態の確認

bash
ip a

有線 LAN のインターフェース名が eth0 または end0 であるか確認する。実機に合わせて後述の Netplan のキーを置き換える。

2-2. Netplan 設定ファイルの作成

bash
sudo nano /etc/netplan/99-wired.yaml

記述例(インデントはスペースを使用すること)。

yaml
network:
  version: 2
  ethernets:
    eth0:
      dhcp4: false
      addresses:
        - 192.168.100.10/24

2-3. 権限の変更と設定の適用

Netplan 設定ファイルはセキュリティ上、他のユーザーから見えないように権限を絞る(忘れると apply 時に Permissions ... are too open と警告が出る)。

bash
# 権限を「所有者(root)のみ読み書き可能」に変更
sudo chmod 600 /etc/netplan/99-wired.yaml

# ネットワーク設定をシステムに適用
sudo netplan apply

3. ラズパイ側の SSH サービス有効化

Ubuntu Server の初期状態では SSH サービス(受付窓口)が起動していない場合があるため、有効化する。

bash
# SSH サービスの状態確認
sudo systemctl status ssh

# SSH サービスを起動し、自動起動も有効化
sudo systemctl enable --now ssh

4. Windows PC 側のネットワーク設定

USB-C to LAN 変換アダプタ等を介して PC とラズパイを LAN ケーブルで直接つなぎ、PC 側も同じネットワーク帯の固定 IP に変更する。

「ネットワークとインターネット」→「イーサネット」(またはアダプタのプロパティ)を開き、IPv4 の割り当てを「手動」に変更する。

  • IP アドレス: 192.168.100.11(ラズパイの 10 と被らない値)
  • サブネットマスク: 255.255.255.0
  • デフォルトゲートウェイ / DNS: 空欄でよい

通信確認を行う場合は、PowerShell から ping 192.168.100.10 を実行する。

5. SSH での接続

PC の PowerShell(またはターミナル)から、ラズパイのユーザー名と IP アドレスを指定して接続する。

powershell
ssh auto@192.168.100.10

初回接続時は Are you sure you want to continue connecting (yes/no/[fingerprint])? と聞かれるので yes と入力する。その後、ラズパイのパスワードを入力してログイン完了。