nyabot’s diary

電気猫の夢を見るお話

Raspberry Piのユーザー名を変更する

Raspberry Piではユーザー名とパスワードは初期設定値が公開されているため、そのまま使うのはセキュリティ上のリスクになります。

正直どの程度危険性があるのか私はまだ理解できていないのですが、、端末にアクセスした人が誰でも操作できる状態、というのが良くないことはわかります。

今回OSを再インストールしたため、ユーザー名を変更しておきます。
(今まではパスワードは変えていたものの、ユーザー名は「pi」のまま使用していました。)

ユーザー名変更の手順は、以下の通り。

  1. Raspberry PiCLIで起動するようにしておく
  2. 仮ユーザーを追加する
  3. 仮ユーザーでログインし、既存のユーザー名(pi)を変更する
  4. 仮ユーザーを削除する
  5. (任意)Raspberry PiGUIで起動するように戻す

なお、事前にOSのインストールと初期設定、IPアドレスの固定を済ませ、SSHで別PCから接続して作業しています。

nyabot.hatenablog.com

nyabot.hatenablog.com

nyabot.hatenablog.com

Raspberry PiCLIで起動するようにしておく

まずは事前準備として、ラズパイをCLIで起動するように設定変更します。
SSHで別ユーザーでログインしても、同時にGUIではユーザー「pi」でログインされていて、「pi」を変更できない、という現象が発生する模様。若干ややこしいですね。 あらかじめ起動時のモードをCLIにしておくことで、ユーザー「pi」で自動ログインしないようにし、ユーザー名を変更できるようにします。

$ sudo raspi-config

設定画面が出てくるので、「3. Boot Options」→「B1 Desktop/CLI」→「B1 Console」と選択。終了して再起動。

仮ユーザーを追加する

先述の通りログイン中のユーザー名には変更を加えられないようなので、一時的に別のユーザーを追加し、そちらにログインした上で初期ユーザーを変更します。

# 仮ユーザー(tmp)を追加  
$ sudo useradd -M tmp  

# 仮ユーザー(tmp)をsudoグループに追加  
$ sudo gpasswd -a tmp sudo  

$ sudo passwd tmp  
新しいパスワード:{新しいパスワードを入力}  
新しいパスワードを再入力してください:{新しいパスワードを入力}

これで仮ユーザーの追加ができたので、一旦ログアウトします。

$ exit

仮ユーザー(tmp)でログインし、既存ユーザー(pi)を変更する

作成した仮ユーザー(tmp)でログインします。

$ ssh tmp@192.xxx.xx.xx

ユーザー(pi)の名前を、新しく設定するユーザー名(任意、ここではnewuser)に変更。

$ sudo usermod -l newuser pi

ホームディレクトリとグループを修正。

$ sudo usermod -d /home/newuser -m newuser  
$ sudo groupmod -n newuser pi

仮ユーザーを削除する

$ sudo userdel tmp

ユーザー名の変更関連は以上。

(任意)Raspberry PiGUIで起動するように戻す

VNCとかでGUIで動かせると便利なこともあるので、使うようであればGUI起動に戻しておきます。

$ sudo raspi-config

先ほどと同じ「3. Boot Options」→「B1 Desktop/CLI」から。

nyabot.hatenablog.com

VNC、最初はすごいと思ったけどぶっちゃけあんまり使わない、、

つづく。