Raspberry Pi OSのデフォルトユーザーはpi
です。
しかし、おれ様の名前はpiじゃないぞ!😡と思う方もいるでしょうし、自分の名前にしたいですよね。
さらに言えば、パスワードを適切に設定していれば問題ありませんが、pi
ユーザ名とありがちなパスワード(raspberry
やpassword
など)の組み合わせで辞書攻撃されたり、ブルートフォース攻撃で突破されたりするかもしれません1。
そこで、デフォルトユーザーのpi
を使わずに、独自のユーザー名を使ってみましょう。
なお、この記事はRaspberry Pi OS Lite版(GUIなし)での方法です。Desktop版(GUIあり)だともう少しややこしくなります。
ユーザーを作ろう
まずは、デフォルトユーザーpi
でSSH接続してログインします。
ユーザーを作成する前に
実はpi
ユーザーは様々なグループに所属していて、いろんな権限を持っています。
例えばsudo
グループに所属しているので、sudo
コマンドが使えます。
新しく作ったユーザーはこれらのグループに所属していないので、sudo
コマンドが使えないなどの不都合があります。
そもそも、pi
ユーザーはどんなグループに所属しているのでしょうか。
$ id uid=1000(pi) gid=1000(pi) groups=1000(pi),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),105(input),109(netdev),997(gpio),998(i2c),999(spi)
いろんなグループが出てきました。sudo
、audio
、i2c
などいろいろありますね。
それぞれのグループが何に使われているかを調べて、必要なものだけ設定するのがベストでしょうが、新しいユーザーも同じグループに全部所属させておいてもよいでしょう。
ユーザー作成
まずは新しいユーザーを作成します。例として、mikan
という名前のユーザーを作成します。
$ sudo adduser mikan Adding user `mikan' ... Adding new group `mikan' (1001) ... Adding new user `mikan' (1001) with group `mikan' ... Creating home directory `/home/mikan' ... Copying files from `/etc/skel' ... New password: Retype new password: passwd: password updated successfully Changing the user information for mikan Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y
フルネームや部屋番号など聞かれますが、全部空白で良いです。 太古の昔からある仕組みなので、今ではほとんど使われないでしょうが、こういう設定項目が残っています。
これで新しいユーザーとグループができ、ホームディレクトリ/home/mikan
もできました。
所属グループの設定
先ほど出てきた様々なグループに全部所属させましょう。ただし、piグループはpiユーザー用のグループなので不要です。
$ sudo usermod -aG adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio mikan
これでグループが同じになりました。
ログインの確認
新しいユーザーでログインできるか確認してみましょう。新しくSSHでログインしても良いですし、ローカルホストにログインしても良いです。
$ ssh mikan@localhost mikan@localhost's password: Linux raspberrypi 4.19.57-v7+ #1244 SMP Thu Jul 4 18:45:25 BST 2019 armv7l 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. mikan@raspberrypi:~ $
作成したユーザーでログインできていれば成功です。
デフォルトユーザー(pi)削除
先ほどまではpiユーザーで作業していましたが、ログアウトしてしまいましょう。削除します。
ユーザーの削除
新しく作ったmikanユーザーでログインし、piユーザーを削除します。
$ sudo userdel pi
これでpiユーザーが消えました。ホームディレクトリ/home/pi
は残ったままになります。
もし、ホームディレクトリごと消したい場合は、sudo userdel -r pi
と、-r
オプションを付けます。
piユーザーがログインしている状態では削除できませんのでご注意ください。
(もしくは)ログイン禁止
ユーザーを消さずに、ログインを禁止するだけにもできます。 この場合は再度ログインを許可すれば元のまま復活します。
$ sudo usermod -s /bin/false pi
これでpi
ユーザーはパスワードがあっていようが、ログインできなくなります。
これはログインシェルを/bin/false
に変えるコマンドで、ログイン後にシェルの起動をせず直ちにログアウトする動作になります。
元に戻すには、次のようにします。
$ sudo usermod -s /bin/bash pi
これで、ログインするとbashが起動して操作できるようになります。
-
ユーザー名を変えればよいというものではありませんよ。ともかく、推測されにくいパスワードを使うことや、SSHなら公開鍵認証を使うことが重要です。↩