キーボード・マウス・ディスプレイ無しでRaspberry Pi 3 にノートパソコンから有線接続・SSHログインして、WiFi接続の設定をしてみました。以下は、すべてノートPCのターミナルでの作業です。
環境
- 使用キット:Raspberry Pi 3 スターターキット(スイッチサイエンス)
- RaspbianOSがインストールされたmicroSDカード付き
- パソコン:Lubuntu をインストールしたノートPC(SONY VAIO VGN-FZ52B)
- 無線インターフェイスwlp6s0(192.168.11.19/24) ※無線APからDHCPで設定
- 有線インターフェイスenp8s0(10.0.0.1/24)
- 無線AP
- IPアドレス 192.168.11.1
- ESSID “SampleAP”
- WPA2-PSK/TKIP
- 共有キー”abcd1234″
DHCPサーバの準備
無線LANルータにRaspberryPiを有線接続すれば、この作業は必要ないと思います。しかし、Piに割り当てられたIPアドレスの確認とその後のSSHログインが簡単にできるので、ノートPCのLinuxでDHCPサーバを立ち上げました。
取り急ぎのDHCP設定(ノートPCのLinux)は次のとおりです。subnet以外の設定は、デフォルト又は適当です。
ishidate@sony:~$ cat /etc/dhcp/dhcpd.conf | grep -v ^#
ddns-update-style none;
option domain-name "example.jp";
option domain-name-servers 192.168.11.1;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.2 10.0.0.254;
option routers 10.0.0.1;
}
ishidate@sony:~$ sudo /etc/init.d/isc-dhcp-server restart
[sudo] ishidate のパスワード:
[ ok ] Restarting isc-dhcp-server (via systemctl): isc-dhcp-server.service.
ishidate@sony:~$
Raspberry Piへの接続
RaspberryPiの初期設定は、DHCP、SSH共に有効だったので、ノートPCとPiをストレートケーブルで繋ぎ、IPアドレスを確認したあと、すぐにSSHのログインが成功しました。
ishidate@sony:~$ sudo tail /var/log/syslog | grep raspberrypi
Dec 28 21:57:41 sony dhcpd[4184]: DHCPREQUEST for 10.0.0.4 from b8:27:eb:**:**:** (raspberrypi) via enp8s0
Dec 28 21:57:41 sony dhcpd[4184]: DHCPACK on 10.0.0.4 to b8:27:eb:**:**:** (raspberrypi) via enp8s0
ishidate@sony:~$ ssh 10.0.0.4 -l pi
The authenticity of host '10.0.0.4 (10.0.0.4)' can't be established.
ECDSA key fingerprint is SHA256:5DIl6fv0G1KBDw4nKQPilCefNl6lP52Z8CpfZVV1pYQ.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.0.0.4' (ECDSA) to the list of known hosts.
pi@10.0.0.4's password: raspberry
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: Fri May 27 11:50:25 2016
pi@raspberrypi:~ $ ifconfig
eth0 Link encap:Ethernet HWaddr b8:27:eb:**:**:**
inet addr:10.0.0.4 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::****:****:****:****/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:111 errors:0 dropped:0 overruns:0 frame:0
TX packets:111 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:10312 (10.0 KiB) TX bytes:15523 (15.1 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:192 errors:0 dropped:0 overruns:0 frame:0
TX packets:192 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:15552 (15.1 KiB) TX bytes:15552 (15.1 KiB)
wlan0 Link encap:Ethernet HWaddr b8:27:eb:**:**:**
inet6 addr: fe80::****:****:****:****/64 Scope:Link
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:119 errors:0 dropped:119 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:46967 (45.8 KiB) TX bytes:0 (0.0 B)
pi@raspberrypi:~ $
WiFiの設定
@0tofuの備忘録…さんのサイトに大変簡潔で分かりやすい説明がありましたので、参考(いや、ほぼそのまま)に無線接続の設定を行いました。ありがとうございます。インターフェイスwlan0の再起動後に、アクセスポイントからIPアドレス192.168.11.21が割当てられているのが確認できます。
pi@raspberrypi:~ $ sudo su
root@raspberrypi:/home/pi# cat /etc/wpa_supplicant/wpa_supplicant.conf
country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
root@raspberrypi:/home/pi# wpa_passphrase "SampleAP" "abcd1234" >> /etc/wpa_supplicant/wpa_supplicant.conf
root@raspberrypi:/home/pi# vi /etc/wpa_supplicant/wpa_supplicant.conf
root@raspberrypi:/home/pi# cat /etc/wpa_supplicant/wpa_supplicant.conf
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="SampleAP"
#psk="abcd1234"
psk=aba12d6b3421256e08c78e5ca705b9ce36dc2790f295f47cdc038657d1e5fae8
}
root@raspberrypi:/home/pi# ifdown wlan0
root@raspberrypi:/home/pi# ifup wlan0
root@raspberrypi:/home/pi# ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr b8:27:eb:**:**:**
inet addr:192.168.11.21 Bcast:192.168.11.255 Mask:255.255.255.0
inet6 addr: fe80::****:****:****:****/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:440 errors:0 dropped:412 overruns:0 frame:0
TX packets:86 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:154753 (151.1 KiB) TX bytes:16201 (15.8 KiB)
root@raspberrypi:/home/pi#
※途中、country=JPに修正しています。
WiFi経由のSSH接続
SSHでログインできることが確認できます。
ishidate@sony:~$ ssh 192.168.11.21 -l pi
pi@192.168.11.21's password: raspberry
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: Fri May 27 12:09:15 2016 from 192.168.11.19
pi@raspberrypi:~ $
実は、10数台のPiの設定を行う必要があって、楽をできる方法を模索した結果でした。