首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使Tomcat 9与authbind一起工作以绑定到端口80?

问如何使Tomcat 9与authbind一起工作以绑定到端口80?
EN

Server Fault用户
提问于 2017-12-21 00:40:01
回答 1查看 20.1K关注 0票数 3

不幸的是,Tomcat对authbind的使用是没有文档的,这使得将Tomcat 9绑定到端口80是一个挑战,而不是以root的形式运行。我在Ubuntu 16.04上尝试了以下几种方法:

1)在server.xml中,将中的属性端口更改为80。

2)安装authbind。

3)将AUTHBIND=yes添加到setenv.sh中

4)创建具有777权限和所有者tomcat的文件/etc/authbind/byport/80。

如果我以根用户身份运行startup.sh,它可以正常工作。但是,如果我以非特权用户"Tomcat“的身份执行此操作,脚本将显示"tomcat",没有错误消息。但浏览器显示“无法连接”。

如果我运行authbind startup.sh,结果是相同的。由于缺乏启动脚本中的错误消息,我不知道问题的原因。

可能相关信息: tomcat是从zip文件中安装的,而不是从repo安装的。

还有什么是我忽略了让这件事成功的诀窍吗?这在官方文件中是非常缺失的。

EN

回答 1

Server Fault用户

发布于 2018-08-27 19:59:21

在CENTOS 6服务器和TOMCAT 7中,我必须:

  • 安装authbind
代码语言:javascript
复制
 yum install authbind-2.1.1-0.x86_64.rpm 
  • 为用户tomcat创建文件80
代码语言:javascript
复制
touch /etc/authbind/byport/80; chmod 500 /etc/authbind/byport/80; chown tomcat /etc/authbind/byport/80
  • 将端口8080更改为80
代码语言:javascript
复制
vim /usr/share/tomcat/conf/server.xml
代码语言:javascript
复制
Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"
  • 更改服务tomcat中的变量TOMCAT_SCRIPT:
代码语言:javascript
复制
vim /etc/init.d/tomcat
代码语言:javascript
复制
TOMCAT_SCRIPT="${TOMCAT_SCRIPT:-/usr/local/bin/authbind -deep /usr/sbin/tomcat}"
  • 然后重新发射tomcat
代码语言:javascript
复制
service tomcat restart
票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/889122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档