VPNサーバ構築(2) Raspberry PiのOSインストールとBluetooth/Wi-Fi/IPv6機能の無効化
初期設定の流れ
初期設定は2段階に分けて行う。(セキュリティ的に意味があるのか正直分からないが。)
- 1段階目ではインターネットに接続せず、Wi-FiやBluetooth、IPv6の無効化、ログイン関連の設定(ユーザ名の変更、sshの公開鍵認証の設定)を行う。
- 2段階目ではインターネットに接続し、ファイアフォールの設定やパッケージの自動更新設定、メール通知設定、LINE通知設定などを行う。
本記事では第1段階目として、OSのインストール、Wi-FiやBluetooth、IPv6機能の無効化を行う。
Raspberry Pi OSのインストール
今回OSはRaspberry Pi OS Liteを使用する。以前は公式サイトからイメージファイルをダウンロードしてきて、適当なソフトを使ってmicro SDに書き込む必要があったが、今は公式にRaspberry Pi Imagerというソフトがあるようだ。
図1 Raspberry Pi Imager
Operating SystemでRaspberry Pi OS Liteを、Storageで書き込み対象のmicro SDを選んで、WRITEを押すだけで、ダウンロードから書き込みまでやってくれるので便利である。
sshの設定を有効にする
sshの設定はデフォルトではDisableになっているため、本体にmicro SDを挿入する前に、sshを有効にする必要がある。インストール後のmicro SDは2つのパーティションに分かれて表示されるが、bootパーティションの方に"ssh"という拡張子の付かない名前のファイルを作成すればよい。これだけでsshがEnableとなる。
sshでRaspberry Piにアクセスする
ルータのIPアドレス払い出し情報などからRaspberry PiのIPアドレス (今回は192.168.77.3) を特定し、コマンドプロンプトなどから以下のコマンドでRaspberry Piに接続する。デフォルトのユーザ名は"pi"で、パスワードは"raspberry"となっている。
ssh -l [ユーザ名] [Raspberry PiのIPアドレス]
# 例) ssh -l pi 192.168.77.3
BluetoothとWi-Fi機能の無効化
今回構築するVPNサーバではBluetothやWi-Fi機能を使用しない。常にONにしておくのでは多少なりとも消費電力に影響する気もするので無効化する。
機能が有効化されていることを確認
まずは、下記のコマンドでそれぞれの機能が有効化されていることを確認する。
sudo bluetoothctl
"[bluetooth]#"が表示されればBluetoothが有効化されている。exitで終了する。
iwconfig
"wlan0 IEEE 802.11~"のような情報が表示されればWi-Fiが有効化されている。
機能の無効化
下記のコマンドでconfig.txtを開き、
sudo vi /boot/config.txt
最下部に下記を追記して、
dtoverlay=pi3-disable-bt
dtoverlay=pi3-disable-wifi
再起動する。
sudo reboot
機能が無効化されたことの確認
下記のコマンドでそれぞれの機能が無効化されたことを確認する。
sudo bluetoothctl
何も表示されなくなれば無効化されている。Ctrl+Cで戻る。
iwconfig
"wlan0"が無くなっていればWi-Fiが無効化されている。
IPv6を無効にする
今回構築するVPNサーバではPPPoE(IPv4)を使用しインターネットへ接続するため、IPv6機能を無効にする。
有効化されていることの確認
ifconfig
inet6の部分でIPv6のIPアドレスが確認できる
機能の無効化
下記コマンドでsysctl.confを開き、
sudo vi /etc/sysctl.conf
末尾に下記を追加し、
net.ipv6.conf.all.disable_ipv6 = 1
設定を適用する。
sudo sysctl -p
無効化されたことの確認
ifconfig
inet6の項目が無くなっていれば無効化されている。
参考
Discussion