How Do I Use Port 80 or 443 on My Server as a Non-Root User on Linux

Still need help?

The Atlassian Community is here for you.

Ask the community

The content on this page relates to platforms that are not supported by JIRA. Consequently, Atlassian can not guarantee providing any support for it. Please be aware that this material is provided for your information only, and using it is done so at your own risk.

Problem

On Linux, non-root users are not able to bind to ports below 1024. For security reasons, it's not recommended to run Atlassian software as a root user. This guide will outline options to be used so that your server can be accessible on port 80 or 443.

Resolution

Using iptables

iptables can be used to redirect connections from port 80 to 8060. The following commands can be used to redirect the traffic:

iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 8060 -j ACCEPT
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8060

If Fisheye/Crucible has been configured for SSL on port 8061 for example, the following commands will redirect traffic from port 443 to 8061:

iptables -A INPUT -i eth0 -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 8061 -j ACCEPT
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8061

Using a proxy

A proxy server running as root can bind to port 80 or 443 and proxy all the traffic for Fisheye. Our documentation that helps describe this process can be found at Integrating with other web servers

Description

On Linux, non-root users are not able to bind to ports below 1024. For security reasons, it's not recommended to run Atlassian software as a root user. This guide will outline options to be used so that your server can be accessed on port 80 or 443.

ProductFisheye, Crucible
Last modified on Oct 12, 2018

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.