如何更改tomcat 8端口
我试图通过这个配置[conf / server.xml]在Ubuntu 14.04中将Tomcat的端口更改为80:
至:
我收到此错误:
13-Oct-2015 18:09:10.626 SEVERE [main] org.apache.coyote.AbstractProtocol.init Failed to initialize end point associated with ProtocolHandler ["http-nio-80"] java.net.SocketException: Permission denied
我做错了什么? 或者缺少什么?
谢谢…
要在Ubuntu / Unix中的1024以下端口上运行Tomcat,该服务需要root权限。 那你不想要。
通过iptables
使用端口重定向
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
使用authbind启动tomcat服务,这将允许用户启动小于1024的端口,我们不需要重定向或iptables。
sudo apt-get install authbind -y
安装Authbind软件
sudo chmod -R 755 / etc / authbind
组应该是用户组。
sudo chown -Rh root:group / etc / authbind
之后运行以下命令
cd / etc / authbind / byuid
例如,让imagne用户ID为2000,您可以使用您的用户ID号
sudo echo’0.0.0.0/0:1,1023’> 2000
该文件应由用户和组拥有。
sudo chown:2000
sudo chmod 700 2000
在tomcat启动文件$ CATALINA_BASE / startup.sh中添加以下行
export JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"
使用Authbind服务startup.sh启动tomcat
评论以下行
#$CATALINA_HOME/bin/startup.sh
将此End添加为文件的末尾
AUTHBIND_COMMAND="/usr/bin/authbind --deep /bin/bash -c " $AUTHBIND_COMMAND $CATALINA_HOME/bin/startup.sh
现在你应该能够以少于1024个端口的用户启动tomcat服务。