ラズパイ研究室

初期設定の備忘録

対象の機材とOSはこちら

・Raspberry Pi 3 Model B

・OS Ver :Raspbian 10 Buster(2019-07-10-raspbian-buster)

1.準備するもの

今回は、ヘッドレスインストール(モニタ、キーボード、マウスをつながない状態でのインストール)の確認をします。

Rasbian OS

イメージ書き込みツール

SDカードとフォーマッター

LAN環境 無線LAN

シリアルアダプター

SDカードは、16GBとしました。


2.OSのダウンロード

ラズベリーパイの本家サイト https://www.raspberrypi.org/downloads/raspbian/ からOSをダウンロードします。
現在のVerは、Debian(Raspian) 9 Strech
OSイメージをSDに焼くので、ZIPファイルを選びます。

 

OSファイルは、3種類。

フル版 Raspbian Stretch with desktop and recommended software

通常版 Raspbian Stretch with desktop

Lite版 Raspbian Stretch Lite

今回は通常版をダウンロード。

download

3.SDカードのフォーマット

SDカードのフォーマットは、windows標準でも出来ますが、SDに最適化したフォーマットになります。

sfformat

4.OSイメージの書き込み

イメージの書き込みには、Etcherを使用しました。

Etcger

Etcherの本家サイト "https://etcher.io/"からダウンロードしてインストール。

Etcherを起動して、
①イメージファイルの選択->②SDドライブの指定->③書き込みボタンを押す。

この3ステップで完了です。

書きこんだSDカードに以下のファイルを追加します。

・起動時SSHを有効にするため、サイズが0Bのsshファイルを作成してSDにコピー

・無線APに接続するため、wpa_supplicant.confを作成してSDにコピー

wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
ap_scan=1
update_config=1
network={
ssid="*******"
psk="*******"
scan_ssid=1
key_mgmt=WPA-PSK
}

・シリアルでコンソール接続するため、config.txtの最下行に追記して保存。

enable_uart=1


5.ラズパイの起動

以上で準備は完了、ラズパイにSDカードをセットして電源を投入します。

緑のアクセスランプが消灯したら、起動完了です。
このまま、HDMIモニタを繋げば、初期設定するだけで使えるのですが、通常はSSHコンソールを使うことを前提としてセキュリティ設定などをしていきます。
無線LANは、wpa_supplicant.confに設定したAPに接続できているはずです。
有線でも無線でも、windows10とMac等は、mDNSに対応しているので、ホスト名 raspberrypi.localでSSH接続が可能です。

・万一接続できない場合は、シリアル接続でIPアドレスを確認します。

login

Tera Tarmで、comポートを選んで接続。ボーレートは115200に設定。
ENTERキーを一回押すとログインメッセージが出るので、ユーザー:pi、パスワード:raspberryでログイン


6.起動後の設定

まず基本的なセキュリティ設定をします。

ユーザー"pi"のパスワードを変更し、通常使うユーザを設定。

piのパスワード変更

$sudo passwd pi

通常使うユーザーとして、新しいユーザーを作成。

$sudo adduser piadmin

  

新しいユーザーがsudo NOPASS できるようにする。

$sudo nano /etc/sudoers

以下を追記

piadmin ALL=(ALL) NOPASSWD: ALL

ユーザpiがNOPASSWDでsudoできないようにする

$sudo nano /etc/sudoers.d/010_pi-nopasswd

#pi ALL=(ALL) NOPASSWD: ALL コメントアウト

ここでログアウト。

$exit

7.SSHの設定

新しいユーザーでログインし、SSHを公開鍵認証にします。

鍵の作成

rsa 4096bitのカギを作成します。コメントの -C の次の文字列は任意の文字列 

$ssh-keygen -t rsa -b 4096 -C "x***@***.jp"

保存場所を聞いてくるのでそのままENTER

パスフレーズを入力

~/.ssh の中に id_rsaとid_rsa_publicが生成されました。

公開鍵の名前を変更してパーミッションを変更します。

$mv ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys 

$cd .ssh 

~/,ssh $chmod 600 ~/.ssh/authorized_keys

teratermのSCPで、秘密鍵をPCに転送します。

scp

teratermで、ログイン。

login

公開鍵認証のみ接続可能にする

SSHの設定をパスワードによる認証は拒否、公開鍵認証を許可にします。

$ sudo nano /etc/ssh/sshd_config

ChallengeResponseAuthentication no

PasswordAuthentication no

編集後にsshdをリスタート

$ sudo /etc/init.d/ssh restart

これで秘密鍵を持たないPCからは接続できなくなりました。

8.最初の設定

お約束のアップデート。

$ sudo apt-get update

9.sambaのインストール

$ sudo apt-get install samba

smb.confの最下行に以下を追加

$sudo nano /etc/samba/smb.conf   

[share]

path=/home/piadmin/

readonly=no

browsable=yes

guestok = yes

force user = piadmin

10.電源ランプの変更

デフォルトだとOSが停止しているかどうかが判断しにくいので、電源LEDを1秒点滅に変更します。

シャットダウンすると電源LEDが点灯状態になります。

$ sudo nano /boot/config.txt

最下行に以下を追記

dtparam=pwr_led_trigger=timer

リブート

sudo reboot

11.Desktopの確認

デフォルトでは、ユーザpiでDesktopが立ち上がっています。HDMIでモニタを繋げばすぐ使えます。

しかし、Desktopは重たくあまり使うシーンがないのですが、GUIでの設定のほうが便利な時もあるので残しました。

VNCを有効にし、解像度を設定します。

$ sudo raspi-config

写真

VNC をイネーブルにします。

写真

7-A5 Resolution で解像度を設定し手再起動。

写真

12.VNCの確認

PCからVNCViewerで接続

写真 写真

初めての接続時は、初期設定を聞いてきます。

設定済みのメニューはスキップ。

ロケーションを日本にします。

写真

最後にアップデート。

写真

セキュリティ対策は甘々ですが、実験室の中なので、以上で初期設定は終わりとします。