Raspberry Pi OSだとpiユーザーというのが標準で用意されている。クラウドイメージだとディストリビューション名のユーザーがデフォルトで用意されている(例えばcentos, fedora, ubuntu, debian, cloud-user など)。
後者だと多くの場合、パスワード認証は許可されていないのである程度安全だが、前者の場合はセットアップ後にデフォルトのパスワードの raspberry
を別のものに変更しないと安全ではない。そこで、次のように対処してみる。
まず、ユーザーを作成する。
sudo adduser myname
次にユーザーでsudoコマンドが使えるように、グループsudoに追加する。
sudo usermod -aG sudo myname
(現時点のRHEL,Fedora,CentOSなどはsudoグループではなくwheelなので注意。バージョンが変わると変更があるかもしえないので、都度確認すること)
次に、SSHDの設定を開いて、SSH接続を許可するユーザー(AllowUsers)を記述する。
sudo vi /etc/ssh/sshd_config AllowUsers myname
上記設定を反映させるためにSSHDサービスを再起動する。
sudo systemctl restart sshd
これで
- 既存のユーザー(例ではpiユーザーなど)は、コンソールログインは可能だがSSH接続は不可。
- 新しく作ったmynameユーザーでは、SSHおよびコンソールログインが可能。
のように動作するようになる。 本稿では述べないが、このあとさらに新しいユーザーで公開鍵認証のみを許可すると良い。
ちなみに上記の「コンソールログイン」とは、ここではディスプレイとキーボードを接続してそれらを使って端末に直接アクセスすることをそう呼んでいる。