Raspbianの初期設定

最近,会社の同期にRaspberry Piについて色々聞き,興味を持っていました.そんな中Raspberry Piの最新モデルが日本でも発売開始になったとのことで,いい機会だと思い買ってみました.

買ったのはRaspberry Pi 3 Model B+です.ラズパイには詳しくないのですが,一つ前のモデルのRaspberry Pi 3 Model Bと比較して,CPUクロックの向上・ギガビットイーサネットの対応・デュアルバンド802.11ac(5GHz帯)対応といった違いがあるようです.

今はラズパイの有意義な使い道を模索している段階ですが,当面は自宅LAN内のサーバとして使って行こうと思っています.そこでRaspbianインストール後に行った,最低限の初期設定を記事にしておきます.

Raspbianの初期設定

今回買ったRaspberry Piはこんな感じです.

OSはRaspbianのCUIをインストールしました.

Raspbianのバージョン確認

最初はRaspberry Piに直接ディスプレイやキーボードを接続して操作を行います.SSH導入後は手元のターミナルから操作を行います.

sudo cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"
NAME="Raspbian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

Vimインストール

sudo apt-get install vim

ネットワーク設定

サーバ用途のため,DHCPは使用せずに固定プライベートIPを割り当てます.

sudo vim /etc/dhcp.conf
interface eth0
static ip_address=192.168.xxx.xxx
static routers=192.168.xxx.xxx
static domain_name_servers=192.168.xxx.xxx 8.8.8.8
sudo shutdown -r now
ifconfig

SSH有効化

sudo systemctl start ssh
sudo systemctl status ssh
sudo systemctl enable ssh
sudo systemctl is-enabled ssh

ソフトウェアアップデート

ここからターミナルを用いてsshコマンドでログインし,作業を行います.ちなみにRaspbianの初期認証情報はユーザ名:pi,パスワード:Raspberryです.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get autoremove

Timezoneの設定

sudo raspi-config
  • Timezone :Tokyo/Asia
  • Wi-fi Country :JP

Wi-FiとBluetoothの無効化

有線LANを使用しているため,Wi-FiとBluetoothを無効化しました.ここは行わなくても問題ありませんし,必要になったら有効化します.

sudo vim /boot/config.txt
# Disable wi-fi and bluetooth
dtoverlay=pi3-disable-wifi
dtoverlay=pi3-disable-bt

ユーザ名とパスワード変更

Raspbianのデフォルトユーザではセキュリティ上安全とは言えないため,ユーザ名とパスワードを変更します.ちなみにrootでのログインは推奨されていないため,sudo passwd rootによるrootパスワードの設定は絶対に行わないようにしましょう.

一時的なユーザを追加する

sudo useradd -M tmp
sudo gpasswd -a tmp sudo
sudo passwd tmp
exit

ユーザ名を変更する

ここからtmpユーザでログインして作業を行います.

sudo usermod -l newusername pi
sudo usermod -d /home/newusername -m newusername
sudo groupmod -n newusername pi
exit

パスワードを変更する

ここからnewusernameユーザでログインして作業を行います.

sudo userdel tmp
sudo passwd newusername

パスワードなしsudoの無効化

デフォルトだとsudoコマンドをパスワードなしで利用できてしまうため,パスワードなしsudoを無効化します.

sudo rm /etc/sudoers.d/010_pi-nopasswd

バッシュ設定ファイルの編集

私はバッシュ設定ファイルをGitHubで管理しているため,設定ファイルのダウンロードと反映を行いました.

sudo apt-get install git
git clone https://github.com/*****/dotfiles
./dotfilesLink.sh

SSHの設定変更

SSHの詳細な設定内容についてはこちらの記事を参考にしてください.

公開鍵認証の設定

mkdir ~/.ssh
chmod 700 ~/.ssh/
cat hoge_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
rm hoge_rsa.pub

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org
sudo vim sshd_config
sudo systemctl restart ssh

ログインするPCのconfigにraspiを追加

vim ~/.ssh/config
Host raspi
        HostName                192.168.xxx.xxx
        User                    newusername
        Port                    10022
        IdentityFile            ~/.ssh/hoge_rsa
        ServerAliveInterval     60

おわりに

今回はRaspbianの初期設定を行いました.この作業が終了すれば後は好みのサーバとして運用するだけです.個人的には最近Dockerの勉強もしているので,それも兼ねてRaspbianにDockerを入れてサーバ運用を行いたいと考えています.

参考文献

https://jyn.jp/raspbian-setup/#i-5
https://jyn.jp/raspberrypi-username-change/