LoginSignup
3
3

More than 5 years have passed since last update.

Linux環境で共用アカウントを使用する場合にパスワードを使用しない

Posted at

背景

  • サーバアプリケーションを動かす環境として、アプリケーション専用アカウントを用意している。
  • アプリケーションのメンテナンス作業は複数の担当者が行えるようにしたい。
  • 上記担当者にはアプリケーションのメンテナンス作業だけ行えるようにして、システム管理者権限は与えたくない。
  • アプリケーション専用アカウントのパスワードの共用はやりたくない。
  • そもそも、アプリケーション専用アカウントはログイン禁止にしたい。

環境

$ cat /etc/os-release | grep PRETTY_NAME
  • PRETTY_NAME="CentOS Linux 7 (Core)"
  • PRETTY_NAME="Ubuntu 14.04.4 LTS"

内容

sudoコマンドでsu - アプリケーション専用アカウントのみ実行できるように設定する。
設定例は以下の通り。

$ sudo visudo
/etc/sudoers
%git ALL=(ALL:ALL) /bin/su - git

hogeアカウントを作成する。

$ sudo useradd -m hoge
$ sudo passwd hoge 

hogeアカウントにsu - git権限を付与する。

$ sudo gpasswd -a hoge git

gitアカウントのパスワードログインを禁止する。

$ sudo moduser -L git

補足

sudo su - git権限の付与はシステム管理者の特権になりますが、sudo su - git権限を持つ人が~git/.ssh/authorized_keysに公開鍵を登録することで、SSHログインを許可することができるため、これを防ぐ世為にはgitアカウントで公開鍵認証を禁止する必要があります。設定は以下の通り。

/etc/ssh/sshd_config
Match User git
  PubkeyAuthentication yes

※SELinuxで制限かけたほうがよさそうな気がするけど、やり方わからん。気が向いたらそのうち調べる。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3