おりそ.doc

自分のしたことをアウトプットする場所

【備忘録】ログイン不可ユーザー作成+スイッチユーザーする方法

はじめに

今回の環境はコレ。

  • 設定いじるサーバーはAmazonLinux2023

  • Windows10上のGitBashで操作

経緯

  • ひとつのサーバーに複数のWEB公開ツールを作りたい

  • 1ユーザー : 1ツール にしたら管理しやすいのではないか

  • めんどいから外部からのログインはできないようにしたい

結論⇒ログイン不可ユーザーにしたらいいんじゃないか。しかし、内部からスイッチユーザーしたい。

1. ログイン不可ユーザーの作成

以下、記事を参考

atmarkit.itmedia.co.jp

それでは行きます。

下記コマンドを実行

  • 新規作成
# useradd -s /bin/false <ユーザー名>
  • 作成済みに変更したいとき
# usermod -s /bin/false <ユーザー名>

オプションの意味はこうらしい

ユーザーのログインシェル(フルパスで指定)を指定する(指定しなかった場合、デフォルト設定を用いる)

参考はコチラ

atmarkit.itmedia.co.jp

で、やってみた結果がこちら。 作成したいユーザー名は「tit-wiki」とする。

$ sudo useradd -s /bin/false tit-wiki
$ ls ..
xxx  tit-wiki
$ ls -al ../tit-wiki
ls: cannot open directory '../tit-wiki': Permission denied
[ec2-user@ip-10-0-0-10 ~]$ sudo ls -al ../tit-wiki
total 12
drwx------. 2 tit-wiki tit-wiki  62 Aug 12 07:29 .
drwxr-xr-x. 4 root     root      38 Aug 12 07:29 ..
-rw-r--r--. 1 tit-wiki tit-wiki  18 Jan 28  2023 .bash_logout
-rw-r--r--. 1 tit-wiki tit-wiki 141 Jan 28  2023 .bash_profile
-rw-r--r--. 1 tit-wiki tit-wiki 492 Jan 28  2023 .bashrc
$

作れました。

あ、ちゃんとSSH出来ないかも確認しとこう。

$ ssh tit-wiki@xxx.net
tit-wiki@xxx.net: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
$

うん、ちゃんと弾かれる。 これで変なログインとかの心配しなくていいから安心だね。

2. ログイン不可ユーザーにスイッチユーザーする

では行きます。

と、その前に。

これを調べる前、「普通にルートからスイッチユーザーしたらいいんじゃね?」って思ったんですよ。

で、思い切ってしてみたんですよね。

そしたら出来なかった。

# su tit-content
su: user tit-content does not exist or the user entry does not contain all the required fields
#

直訳したのがコレ。

su: ユーザー tit-content が存在しないか、ユーザーエントリに必須フィールドがすべて含まれていません

いつもの調子ではスイッチユーザーできないらしい。

でもしたいよスイッチユーザー。

いろいろ調べた結果、ユーザー追加したときのようにオプションがいるらしいことが分かった。

i-think-it.net

ログイン不可ユーザーはシェルを持ってないからスイッチユーザーできないらしい。

へえ~~~(ブランクN年オタク)

まあコレどおりにしてみようじゃないか。

やり方はコレ。

# su - <ユーザー名> -s /bin/bash

じゃあさっそく確認しながらやってみよう。

# whoami
root
# su - tit-wiki -s /bin/bash
Last login: Sat Aug 12 07:44:13 UTC 2023 on pts/0
$ whoami
tit-wiki
$

できた~。

さいごに

雑にまとめると、

  • ログイン不可ユーザーは作れる

  • ログイン不可ユーザーにスイッチユーザーはできる

でした。

また一つ、学びを得ました。