
Estou ciente das implicações de executar o Tomcat na porta 80, mas estou procurando uma solução rápida. Estou tentando seguir issotutorial. Segui o tutorial com duas alterações:
- tomcat6 é o nome de usuário tomcat é executado como
- A localização do arquivo conf do Tomcat:
/usr/share/tomcat6/bin/catalina.sh
Mas ainda estou recebendo erros de permissão. Java está dizendo que não consegue vincular à porta 80. O que mais devo fazer? Que outras informações devo fornecer para as pessoas depurarem? Só para confirmar, não há mais nada rodando na porta 80
Responder1
Você pode alterar a propriedade AUTOBIND /etc/default/tomcat6
para "sim" da seguinte maneira:
AUTHBIND=yes
Reinicie o seu Tomcat e isso permitirá que você use a porta privilegiada disponível (1-1023).
Responder2
Existem duas maneiras diferentes de fazer isso sem realmente tocar na configuração do Tomcat.
Você pode criar um script iptables que redirecione o tráfego da porta 80 para a porta 8080 (então você não precisa mexer nas configurações do Tomcat)
para tabelas de ip
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8080 -j REDIRECT --to-port 80
faria o truque! (faça um script para que seja feito automaticamente no uppstart
ou você pode criar um proxy reverso Apache que realmente faça proxy das conexões com o seu servidor Tomcat por meio dele (isso é bom, pois ele pode realmente armazenar solicitações em cache e acelerar as conexões para você)
Responder3
No conector HTTP do Tomcat, certifique-se de que seu conector na porta 80 esteja vinculado a TODAS as interfaces ou 0.0.0.0 , em vez de apenas 127.1 . Isso pode explicar por que você não consegue se conectar a um URL como http://10.0.0.2:80 mas você pode com http://127.1:80
Responder4
Inicie os serviços Tomcat usando authbind, isso permitirá ao usuário iniciar portas menores que 1024, não precisamos redirecionar ou iptables.
apt-get instalar authbind -y
Para instalar o software Authbind
chmod -R 755 /etc/authbind
grupo deve ser grupo de usuários.
chown -Rh root:group /etc/authbind
Depois disso execute os comandos abaixo
cd /etc/authbind/byuid
Como exemplo, vamos imaginar que o ID do usuário é 2.000, você pode usar o número do seu ID de usuário
eco '0.0.0.0/0:1,1023' > 2000
Esse arquivo deve pertencer ao usuário e ao grupo.
chown: 2000
mod 700 2000
Adicione a linha abaixo no arquivo de inicialização do Tomcat $CATALINA_BASE/startup.sh
export JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"
Para iniciar o Tomcat usando o serviço Authbind startup.sh
Comente a linha abaixo
#$CATALINA_HOME/bin/startup.sh
Adicione este final como o final do arquivo
AUTHBIND_COMMAND="/usr/bin/authbind --deep /bin/bash -c "
$AUTHBIND_COMMAND $CATALINA_HOME/bin/startup.sh
agora você deve poder iniciar os serviços do Tomcat como usuário com menos de 1.024 portas.