Raspberry Pi OSインストールから初期設定まで 2022 年版
Raspberry Pi 3インストールから初期設定まで - johshisha’s diary
の情報が古くなってちょくちょく追記してきたのですが、いよいよ管理不能になってきたので、別記事を作りました。 主に自分用のメモですが、他の人のお役に立てれば幸いです。
Raspberry Pi OS のインストール
raspberry-pi-imager を使うと SD へのインストール周りはかなり簡単にできました
raspberry-pi-imager のインストールは以下のコマンドから。 操作方法は割と直感的だったので省きます。(もしわからなければ別途調べてください)
$ brew install --cask raspberry-pi-imager
ネットワークエラーになる場合は Operating system images – Raspberry Pi からダウンロードしてきて、スタンドアロンモードで書き込みをするとよい。
SSH, Wifi の設定
/boot/
以下に下に示すファイル名でファイルを置いておくと、起動時にいい感じに設定してくれる。
wpa_supplicant.conf
country=JP ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="{Wi-FiのSSID}" psk="{Wi-Fiのパスワード}" scan_ssid=1 }
ssh
空ファイルを置けばよい
$ touch /Volumes/boot/ssh
SSH 接続
SDを挿して電源をつなげばSSHできる状態で起動しているはず。 初期ユーザは以下。
username: pi password: raspberry
raspberrypi.local
というローカルドメインが設定されているみたいなので、それを利用すると IP アドレスなどを調べる手間もかからない。
ssh pi@raspberrypi.local
こまごました初期設定
update
$ sudo apt-get update && sudo apt-get upgrade -y
Timezone の設定
$ sudo timedatectl set-timezone Asia/Tokyo
IP アドレスの固定化
ローカルドメインが割り振られているので必要ない場合は飛ばして良い
$ sudo vim /etc/dhcpcd.conf
以下の設定を追記
interface wlan0 static ip_address=192.168.11.xx static routers=192.168.11.yy static domain_name_servers=192.168.11.yy
SSH Port 変更
$ sudo vim /etc/ssh/sshd_config
ユーザーの追加削除
ユーザ(hoge)の追加
$ sudo adduser hoge $ sudo gpasswd -a hoge sudo
piユーザの削除
$ sudo userdel pi
自動ログイン解除
GUIありのOSの場合、自動で pi ユーザーにログインがされてしまいユーザーの削除ができなかった。 ので、自動でログインをしないようにする。
sudo vim /etc/lightdm/lightdm.conf
autologin-user=pi
の部分を削除する or コメントアウトする
これでうまくいかない場合は raspi-config
からの設定も必要 (Boot Options)
公開鍵認証
パスワードでなく公開鍵認証でログインできるようにします。 ローカルのマシンで以下のように鍵を生成しRaspberry piに送信します。
$ ssh-keygen -t ed25519 $ scp -P [port_number] ~/.ssh/id_ed25519.pub [username]@[ip]: $ ssh -P [port_number] [username]@[ip]
raspberrypi側で,送られてきた鍵を登録します.
$ mkdir .ssh $ mv ~/id_ed25519.pub ~/.ssh/authorized_keys $ chmod 600 ~/.ssh/authorized_keys $ sudo service ssh restart
パスワードログインの無効化
$ sudo vim /etc/ssh/sshd_config
PasswordAuthentication no
firewall
無駄なportにはアクセスできないようにする。
$ sudo apt-get install ufw -y $ sudo ufw default deny $ sudo ufw allow 80/tcp $ sudo ufw allow [ssh port_number] # SSH用のポートは開けておく $ sudo ufw enable
ローカルマシンの設定
ssh configの設定
~/.ssh/config
に以下を追記。
Host raspberry Hostname [ip] Port [port_number] User [username] IdentityFile ~/.ssh/id_ed25519