如何使用无登录 shell 安装 Tomcat 服务器

如何使用无登录 shell 安装 Tomcat 服务器

我们如何创建一个没有登录 shell 的用户帐户来运行 Tomcat 服务器。

没有登录 shell 的用户帐户的用途是什么?

非登录 shell 用户如何使用非登录用户 ID 执行 Tomcat 服务器的安装?

答案1

要创建没有 shell 的系统用户帐户:

$ sudo useradd -r -m -d ${TOMCAT_HOME} -s /sbin/nologin tomcat

通过将 shell 设置为/sbin/nologin帐户更难被意外泄露(例如,为用户 tomcat 设置密码,然后有人尝试登录)。它还将阻止使用 创建 shell sudo su tomcat -

但是,仍然可以使用 sudo 以该用户身份运行命令:

$ sudo -u tomcat COMMAND

如果使用包管理器,请确保它尚未为您创建 tomcat 用户。如果从存档中提取,请确保存档位于 tomcat 用户可以访问的位置(例如,/tmp)。

答案2

  1. 通过创建一个具有 shell 的普通用户帐户,该 shell 不存在或不允许用户运行任何命令。例如 shell 可能是/bin/nologin/bin/true

  2. 这个想法是将 Tomcat 文件的所有权赋予某个用户,而不是超级用户(即“root”),这样当您运行 Tomcat 时,您不必以“root”身份运行该进程。只是为了安全。

  3. 这很可能是不可能的。我会创建一个普通用户帐户,进行安装,然后将该帐户的登录 shell 更改为其他工作 shell(参见 1)。

相关内容