Como acessar o Apache Tomcat em execução no Windows Server 2012 (junto com o serviço SMTP da Microsoft)

1

Estou executando o Apache Tomcat como meu único servidor HTTP no Windows Server 2012.

O Tomcat foi instalado como um serviço e está vinculado à porta 80. O arquivo server.xml teve address="0.0.0.0" adicionado ao conector e o Firewall do Windows está aberto para todas as solicitações da Porta 80.

Meu aplicativo precisa enviar alertas de e-mail aos usuários. A entrega direta por meio de um serviço SMTP hospedado localmente (Apache James) não é confiável. Para garantir a entrega desses e-mails, optei por retransmitir meus e-mails por meio do nosso principal serviço de e-mail, o serviço Office365 on-line da Microsoft. Para retransmitir através deste serviço, a criptografia TLS e outras medidas de segurança são necessárias. Como você pode imaginar, o serviço SMTP da Microsoft funciona bem, mas eu tive dificuldades para fazer com que qualquer outro serviço baseado em Windows ou Java fosse retransmitido corretamente. Para habilitar a entrega de email, instalei o serviço SMTP interno do Windows Server.

Essa configuração funcionou muito bem, até que a última rodada de atualizações do Windows foi instalada ontem à noite. Agora, não consigo acessar meu servidor Tomcat e todas as solicitações na porta 80 não são bem-sucedidas. Os logs do Tomcat estão sendo exibidos:

SEVERE: Error initializing endpoint
java.lang.Exception: Socket bind failed: [730013] An attempt was made to access a socket in a way forbidden by its access permissions.
  at org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:589)
  ...

Meu Googling resultou em vários links, sugerindo que o Socket Pooling do IIS é o culpado.

Eu tentei reservar a porta 80 para o tomcat usando netsh http add iplisten 192.168.1.8 e isso permite que o Tomcat seja iniciado e vinculado localmente. Agora posso ver meu site do Tomcat usando http://localhost/ ou http://127.0.0.1/ na máquina local. No entanto, o acesso via http://192.168.1.8/ ou por qualquer conexão de rede ainda falha.

Não consigo encontrar nenhuma documentação sobre como desabilitar completamente o pool de soquetes do IIS no Windows Server 2012 (todos os links se referem a versões antigas e scripts que parecem ter sido removidos / superintendados na versão atual do servidor.

ATUALIZAÇÃO: Parece que a instalação do serviço SMTP do Windows (não depreciado) também instala e executa automaticamente o IIS. O processo de instalação mostra apenas as ferramentas de gerenciamento - mas quando você verifica os consoles de gerenciamento do IIS, há o site padrão, monopolizando a porta 80 por si só. E, claro, ele assume o controle antes que qualquer servidor da Web de terceiros seja iniciado. Suspiro. Alterar o site do IIS para uma porta diferente ou pará-lo completamente parece permitir que o Tomcat funcione novamente.

    
por Adclone 15.08.2013 / 04:13

0 respostas