Posts com Tag ‘tomcat’

Neste post vamos tratar de algumas complementariedades importantes para o perfeito funcionamento do servidor de mapas Geoserver no Linux/Debian. Seguiremos uma linha de roteiro de instalação do ambiente e do aplicativo, com enfoque na segurança. Este post complementa os demais posts que fizemos abordando o servidor Geoserver.

1. Instalar o Java

O primeiro passo para o colocar o Geoserver em funcionamento é a instalação da máquina virtual Java, que pode ser realizado através de apt-get. Existe um post neste blog que descreve a instalação do Java, e isto pode ser verificado aqui.

2. Instalar o Tomcat
A maneira mais fácil é utilizando o apt-get. Existe um post neste blog que descreve a sua instalação do Tomcat, e isto pode ser verificado aqui.

Chamamos a atenção aos seguintes espectos:

  • a instalação default do Tomcat é na porta 8080. Se desejar alterar, por exemplo para a porta 8085, deve-se alterar o arquivo /etc/tomcat6/server.xml
  • para uma maior segurança, alterar os usuários iniciais e perfis em /etc/tomcat6/tomcat-users.xml, conforme post referenciado acima.
  • para verificar o bom funcionamento do Tomcat acessando a URL http://server-IP:8085/manager/html , com user/passw: admin / admin

3. Instalar o Geoserver
Existe um post neste blog que descreve a instalação do Geoserver, e isto pode ser verificado aqui. É baixar o arquivo do sitio do próprio aplicativo e descompactá-lo na pasta apropriada de forma ao Tomcat poder servir.

Para verificar o bom funcionamento do ambiente Java, Tomcat e o Geoserver, acessar a URL http://server-IP:8085/manager/html   (ou porta 8080 se não houve modificação). O usuário/senha default para login após a instalação é admin/geoserver.

Chamamos a atenção aos seguintes aspectos:

  • no momento da instalação também é gerado um outro usuário chamado “root”. Que deve ser utilizado em caso de alguma emergência, quando o login pelo administrador não for possível. A senha para este usuário estará disponibilizada no arquivo /var/lib/tomcat6/webapps/geoserver/data/security/masterpw.info
  • se não for utilizar os serviços WCS e WFS, desabitá-los:
    Retirar serviços desnecessários: services -> WCS (desmarcar “Enable WCS”) e services -> WFS (desmarcar “Enable WFS”).
  • alterar as informações de contato através de: About & Status –> Contact Information
  • é importante fazer a alteração da senha default do usuário admin através do menu Security -> Users,Groups,Rules -> admin
  • remover arquivo users.properties.olg: rm /var/lib/tomcat6/webapps/geoserver/data/security/users.properties.old
  • remover arquivo masterpw.info em /var/lib/tomcat6/webapps/geoserver/data/security/masterpw.info , após tomar conhecimento da senha do usuário “root” contido neste arquivo.
  • limitar a lista de SRS do serviço WMS apenas aqueles de necessidade: services -> WMS -> Limited SRS list. Esta caixa, por exemplo, poderia ser preenchida por: 4326, 4674, 3857, 4269
  • Quanto aos logs: em produção, fixar o perfil de logs Settings –> Global –> LoggingProfile –> PRODUCTION_LOGGING.properties
    • relatório de logs que obtemos em About&Status –> GeoserverLogs é oriundo do arquivo /var/lib/tomcat6/webapps/geoserver/data/geoserver.log
    • profile de logs:  Settings –> Global –> LoggingProfile   são os arquivos depositados  em /var/lib/tomcat6/logs

4. Geoserver atrás de um proxy
Não é uma boa política expor na internet o Geoserver, mesmo que se esteja usando o Tomcat ou o Jetty. Uma opção mais segura é utilizar um servidor web mais estável, como o Apache. Uma boa solução é lançar mão de um proxy através do servidor Apache. Este servidor redirecionaria as requisições para o Tomcat, que estaria mais seguro numa rede protegida interna. É isto que vamos descrever nesta parte deste post.
4.1 Habilitar protocolo ajp na máquina do Geoserver
Editar o arquivo /var/lib/tomcat6/conf/server.xml e descomentar a linha:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Com isto cria-se um conector na porta 8009 para o protocolo ajp.
Não esquecer de reiniciar o tomcat:
# /etc/init.d/tomcat6 restart

AJP: “Apache JServ Protocol” – trata-se de um protocolo binário que pode redirecionar requisições de entrada de um servidor web para um servidor de aplicação que fica por trás do servidor web. Implementadores da Web normalmente usam o AJP em uma implantação de balanceamento de carga, onde um ou mais servidores Web de front-end alimentam pedidos para um ou mais servidores de aplicação. Tanto o container Apache Tomcat servlet como o container Jetty servlet suportam o AJP.

4.2 Instalar o Apache na máquina front-end
Existe um post neste blog que descreve a instalação do Apache, e isto pode ser verificado aqui.

4.3 Instalar módulos proxy do Apache na máquina front-end
# a2enmod proxy proxy_ajp
# /etc/init.d/apache2 restart

Existe um post neste blog que descreve os procedimntos para instalação de módulos do Apache, e isto pode ser verificado aqui.

4.4 Configurar o funcionamento do proxy
Editar o arquivo /etc/apache2/apache2.conf e inserir as seguintes linhas:

# ProxyPass
ProxyPass /geoserver   ajp://192.168.1.101:8009/geoserver
<Location /geoserver>
Order deny,allow
Deny from all
Allow from all
</location>

ProxyPass /meumapa    ajp://192.168.1.101:8009/meumapa
<Location /meumapa>
Order deny,allow
Deny from all
Allow from all
</location>

Os dois comandos de redirecionamento acima fará com que:
– toda requisição para /geoserver será redirecionada para o host 192.168.1.101, na porta 8009, utilizando o protocolo ajp
– toda requisição para /meumapa será redirecionada para o host 192.168.1.101, na porta 8009, utilizando o protocolo ajp

Não esquecer de reiniciar o apache:
# /etc/init.d/apache2 restart

4.5 Fazer requisições normalmente
utilizando um navegador, acessar normalmente o servidor de front-end através das seguintes URL:
http://<IP-servidor_front-end>/geoserver
http://<IP-servidor_front-end>/meumapa
Observe que o servidor de front-end é acessado normalmente pela porta 80.

5. Mensagem Importante
Se este post fora útil para você, não deixe de comentar. Além de ser um estímulo importante, pode melhorar este trabalho. Com certeza é muito mais trabalhoso fazer uma boa documentação do que implementar.

Sucesso!

Referências:
1- Instalar Geoserver no Linux – Debian

Anúncios

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:

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

1. GeoServer – introdução
Logo GeoServerO GeoServer é um Software Livre licenciado pela GNU GENERAL PUBLIC LICENSE (GPL), mantido pelo Open Planning Project (mantenedor principal), que permite o desenvolvimento de soluções de Webmapping, integrando diversos repositórios de dados geográficos com simplicidade e alta performance. É um servidor de código aberto escrito em Java que permite aos usuários compartilhar e editar dados geoespaciais. Projetado para a interoperabilidade, ele produz dados a partir das principais fontes de dados espaciais utilizando padrões abertos.

É a implementação de referência do Open Geospatial Consortium (OGC) para os padrões Web Feature Service (WFS) e Web Coverage Service (WCS), bem como um servidor de alto desempenho certificado de serviços web (WMS). GeoServer se constitui no componente central de uma web Geoespacial. O foco do GeoServer é facilitar o uso e suporte para os padrões abertos, a fim de permitir qualquer um de compartilhar rapidamente suas informações geoespaciais de uma maneira interoperável.

OpenLayers, uma biblioteca livre de mapeamento, está integrada ao GeoServer, fazendo com que a geração de mapas seja fácil e rápida. GeoServer é construído com Geotools, um conjunto de ferramentas Java GIS de software livre (licenciamento LGPL).

GeoServer pode exibir dados em qualquer um dos aplicativos de mapeamento populares, como Google Maps, Google Earth, Yahoo Maps e Microsoft Virtual Earth. Além disso, GeoServer pode se conectar com arquiteturas GIS tradicionais, tais como ESRI ArcGIS.


2. Requerimentos Java

Instalar o OpenJDK ou o Sun-Java, conforme descrito no post Instalar Java no Linux Debian, pois o GeoServer requer que a máquina virtual Java esteja instalada no ambiente da máquina hospedeira. Um Java Development Kit (JDK) não é necessário para executar o GeoServer.
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.

3. Requerimentos servidor HTTP

GeoServer é empacotado como um servlet independente para uso com containers existentes como o Apache Tomcat ou o Jetty. O Jetty é o grande concorrente do Tomcat, o qual ficou famoso principalmente por ter sido utilizado no passado como o servlet container do JBoss. A grande vantagem do Jetty com relação ao Tomcat é a sua fácil configuração. Em 2009, o projeto Jetty mudou seus componentes principais para ser um projeto da Fundação Eclipse.

Assim, tem-se duas maneiras de colocar o Geoserver em funcionamento: com container Jetty e com o container Tomcat. Descreveremos deste ponto em diante as duas formas de instalação.

4. Instalar o GeoServer utilizando o container Jetty numa máquina Linux – Debian
4.1Jetty
a) Instalar o Jetty
Jetty é um projeto “open-source” fornecendo um servidor HTTP, cliente HTTP e “javax.servlet container”. É um concorrente do Tomcat e é utilizado como o servlet container do JBoss. Talvez a grande vantagem do Jetty com relação ao Tomcat é a sua fácil configuração.
Para instalar o Jetty:
apt-get install jetty libjetty-java libjetty-extra libjetty-extra-java

Fazendo esta instalação, teremos:

/usr/share/jetty/ Diretório HOME do Jetty na distribuição Debian. Outros diretórios são “linkados” a partir deste diretório HOME.
/var/log/jetty/ Pasta de logs do Jetty
/usr/share/jetty/webapps/ Pasta para as aplicações Java (“webapp static deployment directory”).
OBS: na verdade webapps é um apontador para a pasta /var/lib/jetty/webapps
/etc/jetty/jetty.xml Arquivo de configuração do servidor Jetty
/etc/init.d/jetty start|stop|restart Comandos para iniciar|parar|reiniciar o Jetty

b) Configurar o Jetty
Versão do Jetty: uma maneira fácil de identificar a versão do Jetty é olhar o seu log, que pode ser encontrado em /var/log/jetty. Observando o conteúdo de qualquer arquivo “stderrout.log” desta pasta, tem-se a versão do jetty que está rodando. No momento deste post, tínhamos neste arquivo de log:
[main] INFO org.mortbay.log - jetty-6.1.24

Ou seja, temos a versão 6.1 do Jetty.

É preciso fazer uma rápida configuração para o Jetty funcionar legal, editando /etc/default/jetty:

/*  Obrigatórias */
NO_START=0                  ## Libera a inicialização do servidor.
JETTY_HOST=0.0.0.0     ## Define que o servidor irá "ouvir" todas as interfaces.
/* Opcionais */
# Default for number of days to keep old log files in /var/log/jetty/
LOGFILE_DAYS=10
# The network port used by Jetty
JETTY_PORT=8080

e Reiniciar o Jetty:

# /etc/init.d/jetty restart

Agora, com o navegador, já podemos verificar o funcionamento do Jetty acessando http://IP-servidor:8080 e obtendo a seguinte página:
Tela inicial do Jetty

OBS: um teste manual rápido do funcionamento do Jetty também pode ser feito da seguinte forma:
/usr/share/jetty# java -jar start.jar e após este comando acessar com o navegador a página inicial do jetty conforme acima.

Pronto! Agora as aplicações Java (arquivos .war) podem ser adicionandas no diretório /usr/share/jetty/webapps
Após inserir uma aplicação no diretório, o Jetty deve ser reiniciado.
A URL para acessar a aplicação será  http://IP-servidor:8080/aplicacaowar

OBS: nesta pasta /usr/share/jetty/webapps pode-se colocar um link simbólico para a pasta onde está a aplicação (por exemplo, as páginas HTML e Javascript da aplicação). Para isto, use o comando:
/usr/share/jetty/webapps# ln -s /var/www/geoinformacao/teste teste
Assim, veja uma possível listagem desta pasta /usr/share/jetty/webapps:


lrwxrwxrwx 1 root    root    geoinformacao -> /var/www/geoinformacao/versao04
-rw-r--r-- 1 root    root    geoserver.war
-rw-r--r-- 1 jetty   adm     README.TXT
drwxr-xr-x 2 jetty   adm     root
lrwxrwxrwx 1 root    root    solr -> /usr/share/solr/web
lrwxrwxrwx 1 root    root    teste -> /var/www/geoinformacao/teste
lrwxrwxrwx 1 root    root    versao05 -> /var/www/geoinformacao/versao05

Por último, não esquecer de reiniciar o Jetty para o que o link simbólico tenha efeito:
# /etc/init.d/jetty restart

4.2. GeoServer
a) Baixar o Geoserver
Navegue até a página de Download do GeoServer e escolha a opção “Web Archive”, ou seja, baixe o arquivo WAR.

b) Descompactar o Geoserver
Utilize o seguinte comando:

$ unzip geoserver-2.3.2-war.zip

OBS: ficará disponível o arquivo geoserver.war . No momento deste post, versão estável do GeoServer: 2.3.2

c) Disponibilizar o Geoserver no diretório de webapps do Jetty
Copiar o arquivo geoserver.war para o diretório que contém o container de aplicações webapps.

# mv geoserver.war /usr/share/jetty/webapps/.
# /etc/init.d/jetty restart

Quando reiniciar o Jetty, este reconhecerá o arquivo WAR e imediatamente começará a implantar o aplicativo web. Este processo leva algum tempo e depende do hardware usado. Após isso, é só acessar com o navegador http://IP-servidor:8080/geoserver que a página inicial do Geoserver será mostrada. Para entrar na área restrita, o nome de usuário é admin e a senha é geoserver.

d) Configurar o ambiente do Geoserver para funcionar com o Jetty
A área onde o GeoServer amazena toda sua configuração é chamada “Geoserver data directory”. Mas a cada reiniciação do Jetty é feita a re-extração do Geoserver do arquivo “.war” e a área default do “Geoserver data directory” é reiniciada. Ou seja, todas as configurações do Geoserver são perdidas. Veja uma “fotografia” desta pasta no momento deste post:

drwxr-xr-x jetty jetty Jun 30 .
drwxr-xr-x root  root  Jun 30 ..
drwxr-xr-x jetty jetty Jun 30 coverages
drwxr-xr-x jetty jetty Jun 30 data
drwxr-xr-x jetty jetty Jun 30 demo
-rw-r--r-- jetty jetty Jun 30 global.xml
drwxr-xr-x jetty jetty Jun 30 gwc
-rw-r--r-- jetty jetty Jun 30 gwc-gs.xml
drwxr-xr-x jetty jetty Jun 30 gwc-layers
drwxr-xr-x jetty jetty Jun 30 layergroups
-rw-r--r-- jetty jetty Jun 30 logging.xml
drwxr-xr-x jetty jetty Jun 30 logs
drwxr-xr-x jetty jetty Jun 30 palettes
drwxr-xr-x jetty jetty Jun 30 plugIns
-rw-r--r-- jetty jetty Jun 30 README.rst
drwxr-xr-x jetty jetty Jun 30 security
drwxr-xr-x jetty jetty Jun 30 styles
drwxr-xr-x jetty jetty Jun 30 user_projections
drwxr-xr-x jetty jetty Jun 30 validation
-rw-r--r-- jetty jetty Jun 30 wcs.xml
-rw-r--r-- jetty jetty Jun 30 wfs.xml
-rw-r--r-- jetty jetty Jun 30 wms.xml
drwxr-xr-x jetty jetty Jun 30 workspaces

Recomenda-se alocar o “Geoserver data directory” em uma outra área que não seja apagada a cada reiniciação do Jetty. Para isto deve-se criar uma variável de ambiente chamada “GEOSERVER_DATA_DIR”, que apontará para este local externo. O Geoserver, na sua iniciação, verificará se esta variável está definida e a utilizará. Caso contrário, utilizará a área default reservada pelo Jetty que no ambiente de teste utilizado no momento deste post era /var/cache/jetty/data/Jetty_0_0_0_0_8080_geoserver.war__geoserver__.m1t4op/webapp/data .

Mas como configurar esta variável de ambiente, por exemplo, apontando para “/var/www/geoserver_data”? É simples, em duas etapas:
Etapa-1: editar o arquivo /root/.bashrc e incluir a seguinte linha ao seu final:
export GEOSERVER_DATA_DIR=/var/www/geoserver_data

Etapa-2: utilizar os comandos complementares abaixos:

# source /root/.bashrc
# /etc/init.d/jetty restart

OBS:
1) o arquivo .bashrc é lido e executado a cada bash start-up e é destinado a popular o shell com variáveis de ambientes e aliases, e executar comandos que o usuário necessita no seu start-up.
2) o comando “source /root/.bashrc” executa aquele arquivo .bashrc imeditamente.

Mas como saber o local que o Geoserver está utilizando para o seu “Geoserver data directory”? Muito fácil, e existem duas formas:
1- Forma-1: acessar o Geoserver como administrador, utilizar o menu “About & Status” -> “Server Status”. No caso default,
se verá o “Geoserver Data directory” como /var/cache/jetty/data/Jetty_0_0_0_0_8080_geoserver.war__geoserver__.m1t4op/webapp/data
2- Forma-2: acessar o arquivo atual de log do Jetty (no momento deste post era o arquivo /var/log/jetty/2012_06_30.stderrout.log , onde se encontra logado o local utilizado como “GEOSERVER_DATA_DIR”:

30 Jun 12:31:17 INFO [geoserver.global] - 
------------------------------------------
- GEOSERVER_DATA_DIR: /var/www/geoserver_data
------------------------------------------

Criar um novo diretório de dados do Geoserver
Uma vez que o diretório de dados default “Geoserver Data directory” fora criado, deve-se copiá-lo (incluindo seus subdiretórios) para sua nova localização externa. Continuando com os mesmos parâmetros que vimos utilizando anteriormente, deve-se fazer:

# cp -R /var/cache/jetty/data/Jetty_0_0_0_0_8080_geoserver.war__geoserver__.m1t4op/webapp/data/* /var/www/geoserver_data/.

 

e) Recomendações de segurança para o Geoserver em produção
Observar o conteúdo do arquivo /var/cache/jetty/data/Jetty_0_0_0_0_8080_geoserver.war__geoserver__.m1t4op/webapp/data/security/masterpw.info:

This file was created at 2012/10/26 12:23:25
The generated master password is: IHg”UwfH
Test the master password by logging in as user “root”
This file should be removed after reading !!!.

Este arquivo, além de users.properties.old, devem ser removidos:
# rm /var/cache/jetty/data/Jetty_0_0_0_0_8080_geoserver.war__geoserver__.m1t4op/webapp/data/security/masterpw.info
# rm /var/cache/jetty/data/Jetty_0_0_0_0_8080_geoserver.war__geoserver__.m1t4op/webapp/data/security/users.properties.old


5. Instalar o GeoServer utilizando o container Tomcat numa máquina Linux – Debian

5.1. Instalar o Tomcat
Instale o Tomcat conforme descrito no post “Instalar servidor Tomcat no Linux – Debian“. No caso, o Tomcat estará respondendo na porta 8080.

5.2. Baixar o GeoServer
Navegue até a página de Download do GeoServer e escolha a opção “Web Archive”, ou seja, baixe o arquivo WAR.

5.3. Descompactar

Faça a descompressão do arquivo baixado que, quando da criação deste post, fora realizado da seguinte forma:

$ unzip geoserver-2.1.3-war.zip

5.4. Disponibilizar o geoserver no diretório de webapps do Tomcat
Copiar o arquivo geoserver.war para o diretório que contém o container de aplicações webapps.

# cp geoserver.war /var/lib/tomcat6/webapps/.

Quando reiniciar o Tomcat, este reconhecerá o arquivo WAR e imediatamente começará a implantar o aplicativo web. Este processo leva algum tempo e depende do hardware usado. Reinicie o Tomcat da seguinte forma:

# /etc/init.d/tomcat6 restart

Observe que fora criada a pasta /var/lib/tomcat6/webapps/geoserver/ contendo os arquivos Java executáveis do Geoserver.

5.5. Executar o Geoserver
Estando o Tomcat sendo executado na porta 8080 no localhost, a URL de acesso ao Geoserver será http://IP-servidor:8080/geoserver .

5.6 Recomendações de segurança para as versões Geoserver anteriores à 2.5
a) Observar o conteúdo do arquivo /var/lib/tomcat6/webapps/geoserver/data/security/masterpw.info:

This file was created at 2012/10/26 12:23:25
The generated master password is: IHg"UwfH
Test the master password by logging in as user "root"
This file should be removed after reading !!!.

Este arquivo deve ser removido:
# rm /var/lib/tomcat6/webapps/geoserver/data/security/masterpw.info

b) Observar o conteúdo do arquivo /var/lib/tomcat6/webapps/geoserver/data/security/users.properties.old:

# This is the admnistrator (as well as whoever else has the ROLE_ADMINISTRATOR attached)
admin=geoserver,ROLE_ADMINISTRATOR
# These are sample users you may uncomment if you want to test locking down wfs (see service.properties)
#wfst=wfst,ROLE_WFS_READ,ROLE_WFS_WRITE
#wfs=wfs,ROLE_WFS_READ

Este arquivo deve ser removido:
# rm /var/lib/tomcat6/webapps/geoserver/data/security/users.properties.old

c) Mudar a senha de administrador, que fora criada na instalação do Geoserver:
Senha default: admin/geoserver

5.7 Recomendações de segurança para o Geoserver versão 2.5
O Geoserver vem com dois usuários administrativos habilitados a fazer login na aplicação:
– username: root, password: geoserver
– username: admin, password: geoserver

a) Usuário root
Por segurança, a senha deste usuário deve ser trocado assim que o Geoserver for instalado. Esta é trocada facilmente fazendo-se login no Geoserver e, através do menu principal à esquerda, acessar a opção “security -> Passwords”.

Quando a tela de tratamento de “Passwords” for aberta, troque a senha do usuário root utilizando o link “Change password” conforme a figura abaixo.
Geoserver 2.5: trocar senha do usuário root.
 
OBS: a senha do usuário root default é “geoserver”. Esta é guardada de forma criptografada em /var/lib/tomcat6/webapps/geoserver/data/security/masterpw/default/passwd .

b) Usuário admin
Também sua senha deve ser trocada assim que o Geoserver for instalado. Através da opção “User,Groups,Roles -> Users/Groups” disponibilizada a partir do menu principal do Geoserver, clicar no hyperlink “admin” conforme a figura abaixo e trocar a senha do usuário.
Geoserver2.5: trocar senha do usuário admin.

5.8 Arquivo de Logs
O lugar padrão dos logs do Geoserver é /geoserver/data/logs/geoserver.log. Estes mesmos logs podem ser visualizados através do painel do Geoserver pela opção “GeoServer Logs”.
 
6. Layers default
Quando da instalação do Geoserver, alguns layers default estão disponíveis. Através da operação GetCapabilities utilizando um navegador é possível itentificar estes layers:
http://IP-servidor:8080/geoserver/wms?service=wms&version=1.1.1&request=GetCapabilities

Veja os resultados obtidos:

nurc:Arc_Sample
nurc:Img_Sample
sf:archsites
sf:bugsites
tiger:giant_polygon
nurc:mosaic
tiger:poi
tiger:poly_landmarks
sf:restricted
sf:roads
sf:sfdem
topp:states
sf:streams
topp:tasmania_cities
topp:tasmania_roads
topp:tasmania_state_boundaries
topp:tasmania_water_bodies
tiger:tiger_roads

7. Desinstalar
Caso necessite desinstalar o Geoserver, basta remover o GeoServer webapp do diretório das aplicações de webapps do container.

Referências
1- Utilizar o GeoServer
2- O Geoserver em produção e com segurança
Veja também:
3- Geoserver
4- GeoServer Data Directory
5- GIS Tutorials
6- seiti.eti.br
7- Projeto Jetty
8- Introdução ao Jetty
9- Documentação do Jetty//Devian-Packages
10- Geoserver 2.5 Security