0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Raspberry Ri Zero WH 初期設定

Last updated at Posted at 2019-10-13

概要

マウス、キーボードなしでMacOSからラズパイにssh接続する環境構築を目指します。

【動作環境】
ホストOS/macOS
端末/Raspberry Pi Zero WH
OS/Raspbian Buster Lite

ホスト側

  1. ホスト側にSDカードを差し込みます。

  2. SDカードに書き込むOSをダウンロード
    今回DLするのはraspbianのRaspbian Buster Lite イメージは以下のリンクからDL
    https://www.raspberrypi.org/downloads/

  3. イメージの書き込み


$diskutil list
$diskutil unmountDisk /dev/disk2
$sudo dd bs=1m if=2019-09-26-raspbian-buster-lite.img of=/dev/rdisk2

unmountDiskする場所は必ず$diskutil listで表示されたラズパイの箇所を指定してください。
if=にはイメージファイルのパスを設定。

画面に何も表示されませんが以下で進行状況が確認できます。


ctr + t

4.wifi接続設定

/Volumes/bootのディレクトリ配下に空のsshファイルを作成。


$cd /Volumes/boot
$touch ./ssh

wifiの接続設定


$vi ./wpa_supplicant.conf

wpa_supplicant.confの中身


country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
    ssid="XXXXXXXX"
    psk="XXXXXXXXX"
}

wpa_supplicant.confファイルには使用しているwifiルーターの設定を書き込みます。
ssidにはwifiのSSID名、
pskにはwifiのパスワードを設定します。

5.ラズパイにSSHログイン


$ssh pi@raspberrypi.local 
password raspberry

ホスト名はraspberrypi.localで接続できます。
yesを押した後にはパスワードを訊かれますが初期パスワードはraspberryになります。

エラーが出る場合は、以前にラズパイにssh接続してフィンガープリントが残っているので削除しましょう。


$ssh-keygen -R raspberrypi.local

ラズパイ側

いよいよラズパイ側にやってきました。
ここからはラズパイ側でいろいろと設定していきましょう。
主に最低限のセキュリティを設定していきます。

1.ユーザーの作成

ユーザー名はyukarinとします。


$sudo adduser yukarin
password  XXXXXX

yukarinをpiと同等のグループに追加します。


$groups pi
pi,adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio

上のグループをyukarinに付与します。


sudo usermod -G pi,adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio yukarin

確認


$groups yukarin
pi,adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio

2.公開鍵と秘密鍵の設定

【ホスト側】

ホスト側で公開鍵と秘密鍵の作成をします。


$ssh-keygen -t id_rsa_raspberry

Enterは3回押しても構いません。id_rsa_raspberryの箇所は好きな名前を設定。


$ls -la ~/.ssh
1843 10 12 23:34 id_rsa_raspberry
413 10 12 23:34 id_rsa_raspberry.pub

id_rsa_raspberryが秘密鍵、
id_rsa_raspberry.pubが公開鍵となります。

id_rsa_raspberry.pubの内容を控え、ラズパイ側に登録していきます。

【ラズパイ側の設定】

ラズパイ側に再びssh接続


$ssh yukarin@raspberrypi.local

mkdir ~/.ssh
vi ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

ホームディレクトリに.sshというファルダを作成し、
authorized_keysファイルに先ほどホスト側で控えたキーをコピペ。
~/.sshは700
authorized_keys600のパーミッションに設定します。

ラズパイ側に公開鍵を設定できたので、ホスト側で鍵を使って接続できるか確認します。
この確認は絶対に行うようにしてください。


$exit;

ホスト側に戻ってきました。秘密鍵を使ってssh接続してみます。

【ホスト側】


$ssh -i ~/.ssh/id_rsa_raspberry -p 22 yukarin@raspberrypi.local

-iの引数に秘密鍵のパス、sshの-pの引数は22


yukarin@raspberrypi:~ $

秘密鍵を使ってsshできましたね!!

3.sshd_configの設定

セキュリティを高めるため、sshd_configに設定を書き込んでいきます。

まずはバックアップをとります。


sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.back

$sudo vi /etc/ssh/sshd_config

sshd_configに追記


PermitRootLogin no      ## rootのログインを禁止
PasswordAuthentication no   ## password指定でのログインを禁止
PermitEmptyPasswords no   ## passwordなしでのログインを禁止
PubkeyAuthentication yes    ## 公開鍵でのログイン

注意して欲しいのが
PasswordAuthentication noの設定。
鍵を準備するまえにこの設定を行うと、ssh接続で入れなくなってしまうので
必ず鍵認証が確認できてからnoにしてください。前述で鍵認証できるか確認したのはそのためです。

sshd_configの設定を反映させるため再起動


$sudo /etc/init.d/ssh restart

最後にラズパイの最低限の設定をしていきます。

【パッケージ管理の更新】


$sudo apt-get update -y
$sudo apt-get upgrade -y
$sudo apt-get dist-upgrade -y

【タイムゾーン】


$sudo timedatectl set-timezone Asia/Tokyo
$exit;

【ロケールの変更】


sudo raspi-config nonint do_change_locale ja_JP.UTF-8
$exit;
0
3
0

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
0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?