Configurando o Jetty para aceitar conexões de todos os hosts no Ubuntu Lucid

15

Quero que o Jetty atenda conexões de qualquer host na porta 8080. Meu /etc/default/jettyarquivo tem: -

NO_START=0
JETTY_HOST=
JETTY_PORT=8080

O servidor é uma pequena instância do EC2 baseada em uma AMI do servidor Lucid Lynx de 32 bits. O APT é configurado com o multiverso ativado e o repositório de parceiros canônicos ativado. O Jetty é 6.1.22 do repositório do parceiro.

Quando inicio o jetty sudo /etc/init.d jetty start, ele funciona e ouve as conexões do host local, mas não de outros: -

ubuntu@ip-10-224-70-51:/etc/network/if-pre-up.d$ sudo netstat -nlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
413/sshd
tcp6       0      0 127.0.0.1:8080          :::*                    LISTEN
5655/jsvc
tcp6       0      0 :::22                   :::*                    LISTEN
413/sshd
udp        0      0 0.0.0.0:68              0.0.0.0:*
260/dhclient3
Active UNIX domain sockets (only servers)
Proto RefCnt Flags       Type       State         I-Node   PID/Program name    P
ath
unix  2      [ ACC ]     STREAM     LISTENING     1407     1/init              @
/com/ubuntu/upstart
unix  2      [ ACC ]     STREAM     LISTENING     4021     407/dbus-daemon     /
var/run/dbus/system_bus_socket

Qualquer idéia de por que minha configuração do Jetty não parece estar ouvindo outros hosts seria muito apreciada!

Jim Downing
fonte

Respostas:

13

Encontrei! Você precisa: -

JETTY_HOST=0.0.0.0

para ouvir outros hosts. Portanto, um arquivo / etc / default / jetty mínimo inclui: -

JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
NO_START=0
JETTY_HOST=0.0.0.0
JETTY_PORT=8080 
Jim Downing
fonte
2
algumas distribuições de molhe não passam JETTY_HOST env var. adicionar -Djetty.port=$JETTY_PORTao ambiente JAVA_OPTIONS (ou similar)
ithkuil 8/11
Por alguma razão estranha no Ubuntu, esta opção é rotulada como sendo de qual host o jetty aceitará conexões. Me enganou por um tempo.
Synchro
Você também pode usar JETTY_ARGSem /etc/default/jetty(com aspas):JETTY_ARGS="jetty.host=127.0.0.1 jetty.port=8080 jetty.spdy.port=8443 jetty.secure.port=443"
Ludovic Kuty
3

Para quem quer usar o Jetty no Ubuntu com o Java JDK da Sun, estas são as coisas que precisam ser alteradas /etc/default/jetty:

NO_START=0    # so jetty can be started.

JETTY_HOST=0.0.0.0    # so jetty listens to all hosts.

JETTY_PORT=8999    # optionally, port on which jetty listens (in my case 8999).

JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun    # very important, your JAVA_HOME dir.

É tudo o que é necessário para executar o jetty no ubuntu. (Passei uma hora e percebi que estava faltando, JAVA_HOMEembora eu o tenha definido em .bashrc)

Por sorte
fonte