ラズベリーパイ(Raspberry Pi Zero WH)の環境設定(ディスプレイ、キーボードなし)

2019年7月16日

専用のディスプレイやキーボードを使わずに、パソコン(Windows)だけでラズベリーパイ(Raspberry Pi Zero WH)の環境設定をしていきます。

 

Raspberry Pi Zero WH

 

Left Caption
まあちゃん
初期設定したらから、もう動かせる?
Right Caption
ままあちゃん
ちょっと待ってね。
ラズベリーパイが使えるように、
もう少し設定があるんだよ

 

前回紹介したラズベリーパイ(Raspberry Pi Zero WH)の初期設定の記事はこちらです。

ラズベリーパイのパスワードを変更

まずは、パスワードが、デフォルトのままだと危険なので変更します。

TeraTermを起動して、ログインします。

パスワード変更のコマンドを入力します。

$ passwd  ←パスワードを変更

Changing password for pi.
(current) UNIX password:        ←今のパスワードを入力
Enter new UNIX password:      ←新しいパスワードを入力
Retype new UNIX password:    ←もう一度、新パスワードを入力
passwd: password updated successfully ← やった 成功です!

ラズベリーパイのパッケージ更新

次にapt-getコマンド(パッケージの操作・管理を行うコマンド)で、パッケージを更新します。

パッケージとは、ある機能を実現するために必要ないくつかのファイルをひとまとめにしたものです。

 

1. インストール可能なパッケージの「一覧」を更新します。

$ sudo apt-get update

(途中 「Do You Want to continue?」と聞かれたら、キーボードの「Y」キー、enterキーを押します。)

 

 2. 上のコマンドに続いて、新しいバージョンにアップグレードするコマンドを実行します。

$ sudo apt-get upgrade

 

3. ディストリビューションを更新して、パッケージ間の依存関係を整えます。

$ sudo apt-get dist-upgrade

Left Caption
まあちゃん
ディストリビューション?
Right Caption
ままあちゃん
OSと周辺のアプリをパックに
したものよ

ラズベリーパイに日本語フォントをインストール

日本語のフォントをインストールします。

$ sudo apt-get install fonts-ipaexfont

(「続行しますか?[Y/n] 」と聞かれたら、キーボードの「Y」キー、enterキーを押します。)

ラズベリーパイにvimインストール

vim(ヴィム)という有名なテキストエディタをインストールします。

$ sudo apt-get install vim

(「続行しますか?[Y/n] 」と聞かれたら、キーボードの「Y」キー、「enter」キーを押します。)

TeraTermでSSH暗号鍵を作成

SSHログインを安全に行うため、公開鍵認証方式でログインするようにします。

公開鍵認証は、サーバーにおいてある「公開鍵」に合う「秘密鍵」を持っているパソコンからのみログインできるという認証方式です。

 

TeraTermのメニューから「設定」→「SSH鍵生成」を選択します。

「鍵生成」ウィンドウで、[生成]ボタンをクリックします。

TeraTerm鍵生成

「鍵を生成しました」と表示されたら、

鍵のパスフレーズ 8~64文字のフレーズ
パスフレーズの確認 もう一度同じフレーズ
コメント 空欄でOK

を入力し、「公開鍵の保存」ボタンをクリック。公開鍵ファイル(id_rsa.pub)を好きな場所に保存します。

TeraTerm公開鍵の保存

 

「秘密鍵の保存」ボタンをクリックし、秘密鍵ファイル(id_rsa)を好きな場所に保存します。

TeraTerm秘密鍵の保存

 

「閉じる」ボタンをクリックして「鍵生成」ウィンドウを閉じます。

パスフレーズは、あとでログインするときに使います。

 

公開鍵をラズベリーパイに設定

WinSCPのインストールと起動

窓の杜のWinSCPからファイルをダウンロードします。

WinSCPダウンロード

ダウンロードしたWinSCP-5.13.7-Setup.exe(9.1MB)をダブルクリックして、デフォルトの設定のままインストールすると、自動で起動します。

起動しない場合は、WinSCPアイコンをダブルクリックして起動します。
WinSCPアイコンログイン画面で

ホスト名 raspberrypi.local
ユーザ名 pi
パスワード (変更したパスワード)

を入力し、「ログイン」ボタンをクリックします。

WinSCPログイン

「不明なサーバーに接続し、そのほホスト鍵をキャッシュに追加しますか?」というウィンドウが表示されたら、「はい」ボタンをクリックします。

WinSCPの設定変更

隠しファイル(「.」で始まるファイルなど)を、表示するよう設定を変更します。

メニューの[オプション]-[環境設定]をクリックします。

「環境設定」ウィンドウの左側のツリーで「パネル」を選択し、右側の「隠しファイルを表示する」をチェックして、「OK」ボタンをクリックします。

WinSCP環境設定

WinSCPで「.ssh」ディレクトリを作成

WindSCPの左側のウィンドウには、パソコン(Windows)の中が表示されています。
先ほどSSH鍵を保存したフォルダまで移動します。

 

右側のウィンドウには、ラズベリーパイ(Raspberry Pi Zero WH)の中が表示されています。
右側ウィンドウの上にある「新規」ボタン右側の▼をクリックし、「ディレクトリ」を選択します。

WinSCPディレクトリ作成

 

「フォルダの作成」画面で、

新しいフォルダ名 .ssh
パーミッションを設定する チェック
所有者のR(読み込み) W(書き込み) X(実行)の権利のみチェック
(8進数が「0700」と表示されていることを確認します)

を設定し、「OK」ボタンをクリックします。

WinSCPディレクトリ作成

作成した「.ssh」ディレクトリをダブルクリックして移動します。
(右側ウィンドウに/home/pi/.sshが表示されている状態です)

WinSCPでSSH公開鍵をラズベリーパイに設定

パソコンで作成した公開鍵(id_rsa.pub)を
ラズベリーパイ(/home/pi/.ssh/)にコピーします。

左側のウィンドウの「id_rsa.pub」ファイルを、右側のウィンドウ(.sshの下)にドラッグアンドドロップします。
「アップロード」ウィンドウが表示されたら「OK」ボタンをクリックします。

WinSCPアップロード

名前を「authorized_keys」に変更します。

右側ウィンドウのコピーした「id_rsa.pub」ファイルをクリックして、名前を「authorized_keys」に変更します。

 

「authorized_keys」ファイルのパーミッションを変更します。

「authorized_keys」ファイルの上でマウスの右ボタンをクリックし、表示されたメニューの中から「プロパティ」をクリックします。

WinSCPプロパティ

 

パーミッションを所有者のRとWだけチェックされている状態にします。
8進数が「0600」になっていることを確認して(重要!)、「OK」ボタンをクリックします。

authorized keysプロパティ

WinSCPはこれで終了します。ウィンドウ右上の×をクリックして終了させてください。

TeraTerm 公開鍵認証でSSH接続

ラズベリーパイのSSH設定ファイル編集

TeraTermでSSH設定ファイル(sshd_config)を編集します。

$ sudo vim /etc/ssh/sshd_config

 

下の2行だけ、変更します。

#PermitRootLogin prohibit-password

PermitRootLogin no  //SSHのrootログイン禁止 


#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2

AuthorizedKeysFile .ssh/authorized_keys //公開鍵のファイル場所

vimでの変更方法
削除は「x」キー 追加モードは「a」キー 挿入モードは「i」キー 
追加・挿入モード終了は「esc」キー
編集終了後、[esc]キー :(コロン) wq で保存して終了

TeraTermでSSH認証

TeraTermのメニューで、[設定]-[SSH認証]を選択します。

ユーザー名 pi
RSA/DSA/ECDSA/ED25519鍵を使う 選択
「秘密鍵」ボタンをクリック 作成したファイル「id_rsa」を選択

「OK」ボタンをクリックします。

TeraTermでSSH認証

TeraTermでSSH設定を保存

メニューから[設定]-[設定の保存]を選択し、設定を保存します。

たとえば、TeraTermをインストールしたディレクトリ下に保存する場合、 C:\Program Files (x86)\teraterm\TERATERM.INI
に保存します。

TeraTermで公開鍵認証接続

メニューから[ファイル]-[新しい接続]を選択し、「OK」ボタンをクリックします。
パスフレーズを入力して「OK」ボタンをクリックします。

TeraTermで公開鍵認証接続

接続情報を保存したので、パスフレーズを入力するだけで、公開鍵認証を使った接続ができるようになりました。

パスワードでのログインを禁止にする

公開鍵認証でログインできるようになったので、通常のパスワードでのログインができないように設定を変更しておいたほうが安心です。

もう一度、SSH設定ファイル(sshd_config)を編集します。

$ sudo vim /etc/ssh/sshd_config

 

下の行だけ、変更します。

# パスワードでのログイン禁止
#PasswordAuthentication yes

PasswordAuthentication no

RealVNCでラズベリーパイに接続

RealVNC(Virtual Network Computing)は、パソコンを遠隔操作するソフトです。

ラズベリーパイ(Raspberry Pi Zero WH)の画面を手元のパソコンに表示して操作することができるようになります。

ラズベリーパイのVNCサーバーを有効にする

先に、ラズベリーパイ(Raspberry Pi Zero WH)のVNCサーバーがデフォルトでオフなので、起動するよう変更します。

TeraTermで以下のコマンドを入力します。

$ sudo raspi-config

 

ラズベリーパイ(Raspberry Pi Zero WH)の設定ツールが起動するので、「5 Interfacing Options」を選択を選択します。

raspi-config interfacing

「P3 VNC」を選択し、enable(有効)を選択してEnterキーを押します。

raspi-config VNC

Would you like the VNC Server to be enabled?
と聞かれたら、<はい>を選択してEnterキーを押します。

raspi-config VNC enable


The VNC Server is enabled と表示されたら、Enterキーを押します。

 

次に「2 Network Options」ー「N1 Hostname」を選択してEnterキーを押します。

raspi-config Hostname


Please note画面が表示されるので、Enterキーを押します。

raspi-config note

「Please enter a hostname」画面が表示されるので、ホスト名を確認します(必要があれば変更します)。

デフォルトのホスト名は、「raspberrypi」です。
下矢印キーで<了解>が選択されている状態でEnterキーを押します。

raspi-config enter Hostname

右矢印キーを押して、<Finish>を選んでEnterキーで終了させてください。

reboot(再起動)するか聞かれたら、<はい>を選んで、Enterキーを押してください。

RealVNCをインストール

RealVNC」の「Download VNC Viewer」ボタンをクリックして、VNC Viewerをダウンロードします。

RealVNCダウンロード

ダウンロードした「VNC-Viewer-6.19.107-Windows.exe」ファイルをダブルクリックして、デフォルトの設定のままインストールします。

VNC Viewerでラズベリーパイに接続

Windowsのメニューから、「VNC Viewer」を起動します。

上のバーに先ほど確認したhostname「raspberrypi」を入力してEnterキーを押します。

RealVNC Hostname

 

確認画面が表示されたら、「Continue」ボタンをクリックします。

RealVNC IDチェック認証画面が表示されたら、

ユーザー名 pi
パスワード (変更したパスワード)
Remember password チェック

[OK]ボタンをクリックします。

RealVNC Authentication

ラズベリーパイ(Raspberry Pi Zero WH)の画面が表示されます。

Left Caption
まあちゃん
すごーい! きれいにゃ!!

RealVNC Viewer

GUIでラズベリーパイの設定変更

左上のラスベリーのマーク「メニューアイコン」をクリックし、「設定」ー「Raspberry Piの設定」を選択します。

Raspberry Piの設定

ラズベリーパイのディスプレイ設定

デフォルトでは、解像度が低く設定されているので変更します。
「解像度を設定」ボタンをクリックします。

Raspberry Piの解像度設定

 

「解像度の設定」ウィンドウで、▼をクリックします。

 

今回は、「DMT mode 85 1280×720 60Hz 16:9」を選択してちょうどよかったです。お使いのモニタに合わせて選択してください。

Raspberry Piの解像度設定

 

変更を反映させるために、ラズベリーパイ(Raspberry Pi Zero WH)を再起動します。

ラズベリーパイのロケール設定

もう一度、「メニューアイコン」-「設定」ー「Raspberry Piの設定」で設定画面を表示します。

「ローカライゼーション」タブを選択し、「ロケールの設定」ボタンをクリックします。

Raspberry Piのロケール設定

「ロケール」ウィンドウで

言語 ja(Japanese)
文字セット UTF-8

を設定して、「OK」ボタンをクリックします。

Raspberry Piのロケール設定

ラズベリーパイのタイムゾーン設定

次に「タイムゾーンの設定」ボタンをクリックします。

Raspberry Piのタイムゾーン設定

「タイムゾーン」ウィンドウで

地域 Asia
位置 Tokyo

を設定し、「OK」ボタンをクリックします。

Raspberry Piのタイムゾーン設定

RealVNCのスクリーンショット設定

ちなみに、デフォルトの設定ではRealVNCの画面のスクリーンショット(プリントスクリーン)がとれないので、必要であれば設定を変更します。

VNC Viewerの画面で、接続情報を右クリックし、メニューから「Properties」を選択します。

VNCの接続情報のプロパティ

 

Pass special keys directly to VNC Server(特別なキーをサーバへ直接送る)」のチェックを外すことで、スクリーンショットがとれるようになります。

VNCの接続情報のオプション

Left Caption
うさたん
おつかれさまでした。

まとめ

以上で環境設定は終わりです。

ラズベリーパイ(Raspberry Pi Zero WH)のグラフィカルな画面が見られたときは、驚きませんでしたか?

あんなに小さなボードなのに、あんなにきれいなGUIが実現できるなんて! と、かなり感動してしまいました。

次は、いよいよラズベリーパイ(Raspberry Pi Zero WH)でLEDを動かしていきたいと思います!

Posted by ままあちゃん