Instalar servidor Tomcat no Linux – Debian

Publicado: 01/03/2012 em Linux, Programação, Serviços IP
Tags:,

Logo do apache-tomcatO Tomcat é um servidor web Java, mais especificamente, um container de servlets. As especificações do Java Servlet e o JavaServer Pages são desenvolvidas através de um processo comunitário. Desenvolvido pela Apache Software Foundation, é distribuído como software livre dentro do conceituado projeto Apache Jakarta, sendo oficialmente endossado pela Sun como a implementação de referência para as tecnologias Java Servlet e JavaServer Pages (JSP). Ele cobre parte da especificação J2EE com tecnologias como servlet e JSP.

Ele tem a capacidade de atuar também como servidor web, ou pode funcionar integrado a um servidor web dedicado como o Apache. Como servidor web, ele provê um servidor web HTTP puramente em Java.

1) Pré requisito: Java instalado
Instalar o OpenJDK ou o Sun-Java, conforme descrito no post Instalar Java no Linux Debian.
Obs: é recomendável deixar a variável JAVA_HOME definida. Caso esta não seja definida, o Tomcat procura o java em alguns diretórios que são comuns para o OpenJDK, o sun-java, e para várias versões do J2SE.

Para o caso do OpenJDK, fazer:
# JAVA_HOME='/usr/lib/jvm/java-6-openjdk/'
# export JAVA_HOME

No entanto, esta definição não será vista no contexto dos usuários, bem como será perdida quando de nova iniciação da máquina. Para fazer com que esta definição seja permanente e visível por todos os usuários, disponibilize esta definição através do arquivo /etc/environment o qual é executado imediatamente após o boot da máquina. Acrescente ao final deste arquivo a seguinte linha:
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk/

2) Instalar o Apache Tomcat
2.1) Certificar-se que não existe o Tomcat instalado

$ apt-cache policy tomcat?
libtomcat6-java:
Instalado: (nenhum)
Candidato: 6.0.35-1+squeeze2

tomcat6:
Instalado: (nenhum)
Candidato: 6.0.35-1+squeeze2

Pela resposta do sistema, vê-se que não existe Tomcat instalado. E a versão 6 do Tomcat é a disponível no repositório Debian, candidata à instalação.

2.2) Instalar o Tomcat como um servidor, para todo sistema

# apt-get install tomcat6 tomcat6-admin tomcat6-docs

A instalação do servidor Tomcat realizada deixa-o como um webapp ROOT padrão, o qual mostra uma página mínima. O funcionamento do servidor Tomcat pode ser visto com o navegador em http://IP-servidor:8080/ , onde se obterá a seguinte tela:

Tela padrão do servidor Tomcat

O java estará ativo, conforme pode ser visto pelo comando:
$ ps -A | grep java
10996 ? 00:00:03 java

Ainda sobre os pacotes instalados:

  • tomcat6-docs : contém a documentação do Tomcat 6.0, empacotado como um webapp que pode ser acessado por padrão em http://IP-Servidor:8080/docs.
  • tomcat6-admin : a administração do servidor Tomcat é realizada através deste pacote, o qual contém duas aplicações webs. Uma vez instalada, pode-se fazer acesso as aplicações “manager webapp” (em http://IP-servidor:8080/manager/html) e “host-manager webapp” (em http://IP-servidor:8080/host-manager/html).

Após a instalação, a estrutura de diretórios do Tomcat é a seguinte:

/usr/
     share/tomcat6/
     ├── bin/
     └── lib/
     share/tomcat6-admin/
     ├── host-manager/
     └── manager/
     share/tomcat6-docs/
     └── docs/
     share/tomcat6-examples/
     └── examples/
     share/tomcat6-root/
     └── default_root/

2.3) Configurar o servidor Tomcat
Uma vez que o Tomcat esteja executando no servidor, o próximo passo é fazer sua configuração básica. Existem dois processos de configuração básicos: através dos arquivos de configuração XML e através da defição das variáveis de ambiente apropriadas. Os dois mais importantes arquivos de configuração do Tomcat são “server.xml” e “web.xml”. Por padrão, estes arquivos são /etc/tomcat6/server.xml e /etc/tomcat6/web.xml.

Os arquivos/pastas a serem observados inicialmente são:
– arquivo /etc/default/tomcat6;
– pasta /etc/tomcat6/.

a) Configurar a porta do servidor Tomcat
Por padrão o Tomcat 6.0 é executado sob um conector HTTP na porta 8080 e sob um conector AJP na porta 8009. Para mudar estes valores padrões, no intuito de evitar conflitos com outros servidores no sistema, deve-se alterar as seguintes linhas em /etc/tomcat6/server.xml, conforme exemplo para porta 8085:

<Connector port="8085" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
...
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

b) Configurar as facilidades de administração do Tomcat
O pacote tomcat6-admin contém duas webapps com finalidades de administração:

  • webapp “host-manager”, a qual pode ser acessada por padrão em http://IP-servidor:8080/host-manager/html. Ela pode ser utilizada para criar hosts virtuais dinamicamente. O acesso à aplicação host-manager é protegida por senha: há necessidade de definir um usuário com o papel de “admin“;
  • webapp “manager”, a qual pode ser acessada por padrão em http://IP-servidor:8080/manager/html. Através deste é possível ter o status do servidor e reiniciar as webapps. O acesso à aplicação manager também é protegida por senha: há necessidade de definir um usuário com o papel de “manager“.

Estes usuários devem ser definidos em /etc/tomcat6/tomcat-users.xml. Por padrão, após a instalação nenhum usuário está definido para acessar as aplicações web “/manager/html” e “/host-manager/html”.

Veja um exemplo:

<tomcat-users>
<user username="admin1"  password="admin1" roles="admin" fullName="Tomcat Administrator-1" />
<user username="admin2"  password="admin2" roles="manager" fullName="Tomcat Administrator-2" />
<user username="jose" password="jose" roles="admin,manager" />
<user username="maria" password="maria" roles="contadora" />
</tomcat-users>

 

Não esquecer de iniciar o servidor tomcat:
/etc/init.d/tomcat6 restart

Neste exemplo acima, tem-se:
– os usuários admin1 e jose com direito de acesso à aplicação “/host-manager/html”;
– os usuários admin2 e jose com direito de acesso à aplicação “/manager/html”.

3) Logs do Tomcat
O log do Tomcat está disponibilizado na pasta /var/log/tomcat6/ .

4) Exemplos de Tomcat webapps

O pacote tomcat6-exemplos contém uma coleção de exemplos de aplicações web que podem ser usados ​​para testar ou demonstrar as características de Servlets API e JSP, que podem ser acessados através da URL http://IP-servidor:8080/examples. Para instalar, basta inserir o seguinte comando no terminal:

# apt-get install tomcat6-examples

Referências:
1- Apache Tomcat6 Documentation
2- Instalar Java no Linux Debian
3- Apache Tomcat
4- Tomcat Configuration
5- Installing Tomcat 6 on Debian Squeeze
6- Como instalar e configurar Apache-Tomcat 6 no Debian com o Apache2

comentários
  1. Camilo Lopes disse:

    Muito bom!! parabens!

  2. Rodrigo Porto disse:

    Bom dia,
    Gostaria de saber se é possível o TomCat trabalhar com portas diferentes para acesso ao serviço http tipo 8080 e a administração tipo 8081, gostaria de diferenciar as portas para estes serviços por questão de segurança. Caso positivo, qual o arquivo que devo alterar.

    Desde já agradeço,
    Rodrigo Porto

Deixe um comentário, pois isto é muito motivante para continuarmos este trabalho