LoginSignup
1

raspi-configを使ったCUI(CLI)からのSSHの有効化

Last updated at Posted at 2023-03-06

はじめに

 メカトラックス株式会社@hayat00です。

 弊社では業務用Raspberry Pi周辺機器の開発・製造・販売、および、それら周辺機器を使用したRaspberry Pi組込機器の受託開発・小ロット製造等を行っており、オリジナルのラズパイ向け機能拡張モジュールとして、4GPislee-Pi3ADPiなどを展開しています。

 今回は、シリアル通信等でPCからログインしたRaspberry Piを、CUI(CLI)から操作してSSHを有効化する手順をご紹介します。CUIからSSHを有効化/無効化する方法は、

$ sudo systemed {enable|disable} ssh

のように「systemed」を使うことが一般的かと思いますが、ここでは別の方法として「raspi-config」を使ったSSHの有効化をご紹介します。

 また、弊社ではシリアル通信によるRaspberry Piへのログインを推奨しており、下記のブログで紹介しています。

使用したRaspberry Pi OSの情報

Raspberry Pi OS Lite

  • Release date: February 21st 2023
  • System: 32-bit
  • Kernel version: 5.15
  • Debian version: 11 (bullseye)

SSHの有効化

 CUIからの操作でraspi-configの設定を変更する方法は、InteractiveモードとNon-Interactiveモードの2種類があります。

InteractiveモードでSSHを有効化する

 下記のコマンドを実行し、raspi-configの画面を開きます。

$ sudo raspi-config

「3 Interface Options」にカーソルを移動させ、エンターキーを押します。
WS000111.JPG

「I2 SSH」にカーソルを移動させ、エンターキーを押します。
WS000112.JPG

SSHを有効化します。「<Yes>」にカーソルを移動させ、エンターキーを押します。
WS000113.JPG

これでSSHは有効化されました。「<Finish>」にカーソルを移動させ、エンターキーを押し、raspi-configを終了します。
WS000114.JPG

Non-InteractiveモードでSSHを有効化する

 Non-Interactiveモードでは、結果は0または1で表示され、0:YES(ENABLE)、1:NO(DISABLE)になります。
 
 まず、下記のコマンドを実行し、現在のSSHの設定を確認します。

$ sudo raspi-config nonint get_ssh

下記のように表示されます。
WS000075.JPG

この場合は、1:NO(DISABLE)なので、続いてSSHを有効化するコマンドを実行します。この時、0:YES(ENABLE)の場合はすでにSSHが有効化されています。

$ sudo raspi-config nonint do_ssh 0

設定の変更を再度、下記のコマンドで確認します。

$ sudo raspi-config nonint get_ssh

0:YES(ENABLE)と表示されればSSHが有効化されています。
WS000083.JPG

終わりに

 今回はRaspberry PiをCUIから操作し、SSHを有効化する手順をご紹介しました。ぜひ参考にしてください。
 また、raspi-config固有の機能として、下記のコマンドでsshdのホストキーが存在しない場合に、ホストキーを生成できることなどが挙げられます。

$ ssh-key-gen -A

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1