RaspberryPi4で遊んでみる(1)-お決まりのセットアップ-
10万円で何する?
わが町にも例の定額給付金のご案内が来ましてね。特に何かするわけでは無いんですが、貯金っていうのもなんだかなぁ〜って思いまして、やってみたかったことをやってみたいなと
そうだRaspi買おう
Raspi4が新しくでたな〜って数ヶ月前に出ていたことを思い出す。
電子工作なんて高校の技術の授業以来…Arduinoなんて大学以来…とはいえIOTっぽことはやってみたいな〜って思ってはいたので、ポチ
上のもの全部あるって感じですね。まぁ割引もあったのでアキバで揃えても変わらないくらいかなと。LSIクーラーとかファンとかね
セットアップ
今回のゴール
- 日本語キーボードで操作
- OS言語は英語でOK
- セキュリティーには配慮
- SSHで操作したいのでそれっぽくする
OS
今回買ったもんは、すでに64GBのSDカードにRaspbianがはいっていたので、ありがたく使わせていただきました。
つまり、電源をつけるともう虹色のCircleが出てきてpiユーザーで自動ログインされようとします。OSのイメージを持ってくるのは少し面倒なので助かりました。
どうしてもDebian系がいやでUbuntuを入れたい!なら入れ替えますが、今回はまぁそのままで
Raspiのデフォルトユーザはpiなので、そのpasswordを設定とOS言語設定、Wifi設定をここで行います。GUI経由なので難なくいけます。
起動後はsystem updateします。これはかなり時間がかかりました。中身は知りませんが、、、
その間にむき出しのLSIたちにヒートシンクをつけてあげます。そんなに熱くならないでしょ?って思ったけど、意外と熱いのね。CPUとメモリ(RAM)につけてあげました。
ちなみに、僕の場合は矢印が使えなかったんので、
https://blog.cles.jp/item/10152を参照にしてsudo apt-get install vim &uninstall vim-tinyにしました。最小構成なんですねデフォルトは
あとこれからいっぱい、apt-getするので、最初にかましておきます
1 2 |
sudo apt update sudo apt -y upgrade |
ユーザをいじる
お外でいじる可能性を考慮して、
- Abolish : PI user →Validate my user
- Activate root user password authorization
を実施します。ラズパイはrootにはpassword protectないです。こわい
1 2 3 4 5 6 |
### Copy user #### #make new user $sudo adduser my_new_user #Check groups pi is belong to <span class="pln">$groups pi<br><br>#give same authority to my_new_user as pi <br><span lang="en">#Required adm(admin)</span><br><span class="nb">$sudo </span>usermod <span class="nt">-aG (groups) my_new_user</span><br><br>#Copy contents in /home/<br>sudo cp <span class="pun">-</span>r <span class="pun">/</span>home<span class="pun">/</span>pi<span class="com">/* /home/my_new_user<br>$<br>### Auto login ###<br>#Edit light desktop manager<br>#Stop auto login to pi<br>$sudo vi <span class="pun">/</span>etc<span class="pun">/</span>lightdm<span class="pun">/</span>lightdm<span class="pun">.</span>conf<br><span class="go">--> Comment out : autologin-user=pi<br><br><span class="nb">$sudo </span>vim /etc/systemd/system/autologin@.service <br>--> User rewrite:<span class="gp">ExecStart=-/sbin/agetty --autologin my_new_user<br><br>### Disable pi user###<br># Expire date is changed to past date <br>$sudo usermod <span class="pun">--</span>expiredate <span class="lit">1</span> pi<br></span><br>### Change root pw ####<br>$sudo passwd root<br><br>### Reboot to reflect setting ###<br>sudo shutdown -h now<br><br></span></span></span> |
1 |
ってことで、新ユーザをつくりました。
ちなみにrebootは-hをつけることで通常は電源断かsystem downか選べますが、raspiはそもそも電源つなぐと自動起動で電源ボタンなるものがないのでどうなるんだと思いまして実験しました。
結果は変わらないので、最悪-hつけなくてもいいですが、心の余裕の観点からつけたほうがいいかと
sshをちゃんとする
ゴールは
- rootログイン禁止。パスワードログイン禁止。秘密鍵で通過
- 固定IP化
ではサーバー(raspi)側でSSH-keys生成と制限します、ip固定にしたいのんで、いかを参考にして固定しました
wifiならwlan0, 有線なんらlan0ですね。dnsとrouterはおなじなので同値。route -nでもしらべられる
1 |
1 |
<span class="pln"><br />### make keys ###<br />$ssh</span><span class="pun">-</span><span class="pln">keygen </span><span class="pun">-</span><span class="pln">t rsa<br />$mkdir ~/.ssh<br />$cd ~/.ssh<br />$cat <span class="pun">~</span><span class="str">/.ssh/</span>id_rsa<span class="pun">.</span>pub <span class="pun">>></span> <span class="pun">~</span><span class="str">/.ssh/</span>authorized_keys <br />$rm id_rsa<span class="pun">.</span>pub<br />$chmod <span class="lit">600</span><span class="pun"> ~</span><span class="str">/.ssh/</span>authorized_keys<br /><br />### Tighten restriction on SSH###<br />$sudo vi /etc/ssh/sshd_config<br />Port 22 --> (ANY number)<br />PermitRootLogin --> none<br />PasswordAuthentication --> no<br /><br />## reflect change ###<br />sudo service ssh restart<br /></span> |
Client側ではid_rsaは頑張って接続先に持ってくる。SSHによる制限を厳しくする前に、SCPで以て来るのんがいいかと.同一LANなら以下で
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
### Check devices in same lan ### $arp -a ### SCP ### scp 192.168.**.** ### Change ssh config Host hoge HostName 192.168.**.** User harold Port (correspond to below number) IdentityFile ~/.ssh/id_rsa ##chmod ## chmod 700 ~/.ssh chmod 600 ~/.ssh/id_rsa |
以下、参考
https://monoist.atmarkit.co.jp/mn/articles/1912/11/news022_3.html
ってことで、おわり。今後も救世主たらんことを