(2023年8月5日追加情報)
コメントで情報提供いただきましたので、以下の方法でうまくいかない方はこちらも試してみてください。@ongulpenguin(Penguin Ongul)さんありがとうございました。
https://qiita.com/kosukein38/items/e16d83f0d9beb31b2567#comment-7b40482f40bb96e8a0f3
はじめに
久しぶりの投稿です。
MacからRaspberryPiへSSH接続やVNC接続ができると、ラズパイ専用のキーボード、ディスプレイ、マウスがいらなくなり、開発がスムーズになるかと思います。
MacからRaspberryPiへSSH接続→VNC接続を行うのに、結構手間取ったので、備忘録的にメモを残しておきます。間違いがありましたら、ご指摘お願いいたします🙏
本来であればRealVNC
の VNC クライアントを利用する方がセキュリティ上、望ましいようですが、どうも執筆時点(2022年10月16日時点)でうまくRealVNC Viewerのアプリケーションがうまく起動せず、、、
家のローカルLAN内だけの操作になるのでFinderからVNC接続を試みることにしました。
(参考)https://daeudaeu.com/raspberry-pi-vnc-err/#ssh
また、こちらも参考にさせていただきました🙇♂️
(参考)https://qiita.com/n0bisuke/items/0ccec7f9ce71ef54ddcc
要約
- MacからRaspberryPiにSSH接続を行う方法
- SSH接続からMacのFinderを使ったVNC接続を行う方法
(はじめに)ラズパイとMacの情報
デバイスはRaspberry Pi 3 Model B
pi@raspberrypi:~ $ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
$ sw_vers
ProductName: macOS
ProductVersion: 12.6
BuildVersion: 21G115
MacからRaspberryPiにSSH接続を行う方法
RaspberryPi ImagerによるRaspberry PI OSの書き込み
RaspberryPi Imagerを使ってOSを書き込みをする際に、歯車のマークから以下の設定を行う。
OSをSDカードに書き込んで、ラズパイにセットしたら電源を入れます。
SSHでRaspberrypiへ入る
以前にRaspberryPiへSSH接続したことある方はおそらく、このまま接続しようとしても、以下のように、ホスト鍵が一致しないため、ホスト認証が失敗し、拒否されるため、以下のraspberrypi.local
から始まる行を全て削除することにより、古いホスト鍵をknown_hostsから削除して、新しい鍵を登録する必要がある。
$ cat /Users/xxxxxxxxx(ユーザー名)/.ssh/known_hosts
#=>
(他のホスト鍵情報)**********
raspberrypi.local ssh-ed25519 xxxxxxxx
raspberrypi.local ssh-rsa xxxxxxxxxx
raspberrypi.local ecdsa-sha2-nistp256 xxxxxxxx
$ vi /Users/xxxxxxxxx(ユーザー名)/.ssh/known_hosts
#=>viエディタ操作で、上のraspberrypi.local~~から始まる行を全て削除
$ ssh pi@raspberrypi.local
The authenticity of host 'raspberrypi.local (2400:4052:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx)' can't be established.
ED***** key fingerprint is SHA***:xxxxxxxxxxxxxxxxxxx.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? **yes**
Warning: Permanently added 'raspberrypi.local' (ED*****) to the list of known hosts.
**pi@raspberrypi.local's password:**
Linux raspberrypi 5.15.61-v7+ #1579 SMP Fri Aug 26 11:10:59 BST 2022 armv7l
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Sep 22 09:35:08 2022
**pi@raspberrypi:~ $**
これでSSH接続は完了!
SSH接続からMacのFinderを使ったVNC接続を行う方法
(慣れている方はSSH接続で全て解決かもしれません笑)
VNCの設定を確認します
pi@raspberrypi:~ $ sudo raspi-config nonint get_vnc
1
#=>1は無効、0は有効
VNC設定が無効なので、raspi-config
から有効にします。
$ sudo raspi-config
インターフェイスオプション
VNC選択
Yesを選択
Finishを選択
これでラズパイのVNC接続が有効化された。
pi@raspberrypi:~ $ sudo raspi-config nonint get_vnc
0
#=>1は無効、0は有効
念のため、sudo reboot
で再起動。
ラズパイのIPアドレスを確認します。(以下の***.***.**.**
部分)
pi@raspberrypi:~ $ hostname -I
***.***.**.** XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
しかし、Macから「Finder>移動>サーバーへ接続」を行って、
vnc://(IPアドレス):5900
にアクセスしても
拒否される。
RealVNCServerの設定
以下のようにRealVNCサーバーの設定が必要
pi@raspberrypi:~ $ sudo touch /etc/vnc/config.d/common.custom
#=>common.customにRealVNCServerの設定を記述する
pi@raspberrypi:~ $ sudo vi /etc/vnc/config.d/common.custom
#=>viエディタで以下のを記述する
Authentication=VncAuth
Encryption=PreferOff
(参考)
https://help.realvnc.com/hc/en-us/articles/360002251297-VNC-Server-Parameter-Reference-
さらに、VNCのパスワードを設定する
pi@raspberrypi:~ $ sudo vncpasswd -service
Setting "Password" VNC parameter for Service Mode server
Password:(任意のものを設定)
Verify:(もう一度入力)
Successfully set "Password" VNC parameter in /root/.vnc/config.d/vncserver-x11
RealVNCServerをrestartし、設定を有効化する。
pi@raspberrypi:~ $ sudo systemctl restart vncserver-x11-serviced.service
これでFinderから無事にVNC接続ができるように!
先ほどの手順後、パスワードを入力。
最後に
何かのお役に立てれば幸いです。
間違いはコメントで指摘いただければと思います。
最後まで読んでいただきありがとうございました!!