Amazon ec2 AWS的tomcat bitnami堆栈问题

Amazon ec2 AWS的tomcat bitnami堆栈问题,amazon-ec2,ubuntu-16.04,file-permissions,tomcat8,bitnami,Amazon Ec2,Ubuntu 16.04,File Permissions,Tomcat8,Bitnami,我在AWS上配置了一个bitnami tomcat实例。现在,tomcat默认作为用户tomcat启动,而aws上的默认用户是bitnami。这适用于99%的情况。然而,在我的例子中,我需要访问登录用户的主文件夹——在本例中是bitnami(为了清楚起见,我不需要通过java servlet访问/home/bitnami中的文件)。我不想硬编码路径,而是希望通过System.getProperty(user.dir)获取主目录。这个返回/home/tomcat作为tomcat总是作为tomcat

我在AWS上配置了一个bitnami tomcat实例。现在,tomcat默认作为用户tomcat启动,而aws上的默认用户是bitnami。这适用于99%的情况。然而,在我的例子中,我需要访问登录用户的主文件夹——在本例中是bitnami(为了清楚起见,我不需要通过java servlet访问/home/bitnami中的文件)。我不想硬编码路径,而是希望通过System.getProperty(user.dir)获取主目录。这个返回/home/tomcat作为tomcat总是作为tomcat启动。 在更改catalina.sh权限后,我尝试以用户bitnami的身份运行catalina.sh-效果良好。现在,我想设置一个使用bitnami用户启动tomcat的AMI。当我向AWS模板中的用户数据添加su-bitnami-c'/opt/bitnami/apache-tomcat/bin/catalina.sh start'时,我看到tomcat已经启动(用ps-ef | grep-java检查)。但是,没有提供任何网页(包括默认的tomcat页面)。我已经更改了工作目录和日志目录的目录权限。Catalina.out显示服务器已启动。
关于如何实现这一点有什么想法吗?

Bitnami工程师在这里。将服务更改为在bitnami帐户下运行可能会带来安全风险,因为bitnami用户具有sudo权限,如果tomcat受到攻击,他将在您的服务器中拥有管理员权限。我建议您找到一种不同的方法来解决这个问题,例如创建一个不同的文件夹,而不是使用用户的主文件夹,这样您就不需要更改服务配置。如果您确实想进行更改,请停止tomcat服务,修改tomcat的ctl.sh文件以使用bitnami而不是tomcat,并更改安装文件夹的权限。更多信息