Linuxのセットアップ
いつもLinuxをセットアップするときに、何やってたか忘れるのでここに書いておく。
セットアップするデバイス毎の見出しから
作業を始めればいい感じになるようにまとめておきたい。
あと、OSのインストールは終わってる前提とする。
いい感じのタイミングで適宜再起動すること。
ラズパイゼロはここから
OSをインストールしたあと、そのままSDカードに変更を加える。
以下のサイトを参考にさせていただきました
2. 無線LANの設定
1のsshと同様に"wpa_supplicant.conf"ファイルを作成する。
ファイルに以下の内容を追加して、SSIDとパスワード(平文)を追加して終了。
パスワードを平文で追加するのどう考えてもおかしいと思ったら、
sudo raspi-config
で設定できるのでここはスキップ。
COMMでssh接続する。
country=JP ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="SSID" psk="暗号化キー" }
3. USB OTG etherの設定
/bootディレクトリの直下にあるconfig.txt
の一番下に
dtoverlay=dwc2
を追加する。
次に、commandline.txt
の行の最後に
modules-load=dwc2,g_ether
を追加する。
これでPCからアンマウントして、ラズパイを起動する。
ラズパイ(Raspbian)はここから
ラズパイの初回起動で設定する。
以下のサイトを参考にさせていただきました。
Raspbianのデフォルトユーザは、パスワードも公開されていてやべーので
デフォルトユーザとパスワードを変更しておく。
Raspbianのpiユーザは色々とグループに入っていたりと、削除するには不都合が出そうで
なんとなーく不安なので削除はせず、ユーザ名とパスワードを変更して使用する。
rootユーザを使えば良いんだろうけどあまり使いたくないし。
2. 一旦tempユーザを作る
//adduserでもいいんじゃないかな //-M : ユーザディレクトリを作成しないオプション sudo useradd -M temp //-a : グループにユーザを追加するオプション sudo gpasswd -a temp sudo sudo passwd tmp //一旦ログアウト exit
3. 初期ユーザ名の変更
tempユーザでログインする。
//-l : ログイン名の変更オプション sudo usermod -l 新ユーザ名 pi //-d : ホームディレクトリ名の変更オプション //-m : ホームディレクトリを新しい場所に移動するオプション sudo usermod -d /home/新ユーザ名 -m 新ユーザ名 //-n : グループ名を変更するオプション sudo groupmod -n 新グループ名 pi //ログアウト exit
4. tempユーザの削除
変更した初期ユーザで再ログインして、
tempユーザを削除して初期ユーザのパスワードを変更する。
sudo userdel temp sudo passwd 新ユーザ名
5. rootユーザのロック
rootユーザはパスワード変更するまで無効らしいんですけど、
パスワード設定されるとログインできるようになってしまうのでロックしておく。
無意味かもしれないけど、いつも使ってるubuntuがデフォルトロックされているらしいので・・・
//-l : アカウントをロックするオプション sudo passwd -l root
6. パスワード無しsudoの禁止
ユーザ名を変更してしまえば、パスワード無しでsudoができなくなっているらしい。
が、不安なのでパスワードなしsudoができる設定を削除しておく。
sudo rm /etc/sudoers.d/010_pi-nopasswd
7. [おまけ]ホスト名の変更
/etc/hostname
、/etc/hosts
のraspberrypiを任意のものに書き換える。
タイミングが良ければ再起動しておく。
sudo shutdown -r now
8. raspi-configでOSの設定
ラズパイコンフィグを開く。
sudo raspi-config
- Consoleログインの設定
3 Boot Options
→ B1 Desktop/CLI
→ B1 Console
- Localeの設定
4 Localisation Options
→ L1 Change Locale
en_US.UTF-8 UTF-8
ja_JP.EUC-JP EUC-JP
ja_JP.UTF-8 UTF-8
を有効にする
- TimeZoneの設定
4 Localisation Options
→ L2 Change Time Zone
Asia
→ Tokyo
9. swapの無効化
ラズパイのmicroSDはswapが有効だと速攻で壊れるらしいので無効にしておく。
sudo swapoff --all sudo systemctl stop dphys-swapfile sudo systemctl disable dphys-swapfile
Linuxはここから
Linuxの初回起動で設定する。
以下のサイトを参考にさせていただきました。
1. sshの設定
1-2. 鍵の転送
ラズパイでホームディレクトリに.sshディレクトリを作成しておく。
mkdir ~/.ssh
「ファイル(F) → SSH SCP...」でSCPウィンドウを開く。
From: 公開鍵のパス
To: ~/.ssh/
で設定して、「Send」
1-3. 公開鍵の設定
ラズパイでの作業。
.sshディレクトリのパーミッション設定して、
公開鍵ファイルに鍵を追加して、
公開鍵ファイルのパーミッションを設定する。
んで、要らなくなった公開鍵ファイル(id_rsa.pub)を削除
chmod 700 ~/.ssh cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys rm ~/.ssh/id_rsa.pub
1-4. sshd_configの変更
/etc/ssh/sshd_configをエディタで開いて編集する。
sudo vi /etc/ssh/sshd_config
- パスワード認証の無効化
PasswordAuthentication yes
→ PasswordAuthentication no
- 空パスワードの無効化
PermitEmptyPasswords yes
→ PermitEmptyPasswords no
- rootユーザのログイン無効化
PermitRootLogin prohibit-password
→ PermitRootLogin no
- sshのport番号の変更
Port 22
→ Port 任意のポート番号
sshdサービスの再起動
sudo systemctl restart sshd