Buenas!
Pessoal, por esses dias precisei fazer uma implementação do Jboss 7.1 em cima de um CentOS 6.2 x86_64.
Bom, dei uma olhada na net se já havia alguma documentação mais prática para esse cenário, como não encontrei algo atualizado resolvi compartilhar meus passos.
Basicamente os passos são:
1 - Instalação mínima do CentOS
2 - Instalação de algumas dependências.
3 - Instalação do JDK.
4 - Instalação do Jboss.
5 - Configuração do serviço Jboss.
6 - Configurações do Jboss.
1 - Instalação mínima do CentOS.
Basicamente é instalar o SO sem qualquer pacote desnecessário. No menu de instalação do CentOS existe a opção "Minimal". Escolha ela e mande bala.
2 - Instalação de algumas dependências.
Esse ponto é opcional, mas eu costumo fazer para facilizar o trabalho e agora e posteriormente.
yum install vim tcpdump iptraf wget gunzip
yum upgrade
3 - Instalação do JDK.
Pode ser usado o OpenJDK ou o JDK da Sun. Eu preferi colocar o JDK da Sun devido a maior demanda deste por parte dos programadores que conheço.
- Download do JDK:
Essa é a última versão enquanto escrevo esse artigo.
- Instale o RPM:
rpm -ivh jdk-7u3-linux-x64.rpm
Ele deve instalar a estrutura principal em /usr/java/jdk*
OBS.: Onde eu coloco *, ajuste de acordo com o nome correto da pasta.
Uma prática legal é criar link simbólico padrão para o jdk. Dessa forma, sempre que precisar atualizar bastará alterar o link. Nesse exemplo criei uma pasta em /opt chamada java:
mkdir /opt/java
Dentro dessa pasta criei um link para o jdk instalado.
cd /opt/java
ln -s /usr/java/jdk* jdk
- Criar as variáveis de ambiente
cd /etc/profile.d
Cria o arquivo java.sh e colocar o conteúdo abaixo:
vim java.sh
################
JAVA_HOME=/opt/java/jdk
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=$JAVA_HOME/lib
LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amb64
export JAVA_HOME PATH CLASSPATH LD_LIBRARY_PATH
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=$JAVA_HOME/lib
LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amb64
export JAVA_HOME PATH CLASSPATH LD_LIBRARY_PATH
################
chmod 755 java.sh
4 - Instalação do Jboss
- Fazer o download da última versão:
- Descompacte em um lugar de sua escolha:
No meu caso decompactei em uma área reservada montada em /storage
cd /storage
gunzip jboss-as-7.1.1.Final/jboss-as-7.1.1.Final.zip
Assim como o JDK, criaremos um link para essa pasta:
cd /opt/java
ln -s /storage/jboss-as-7.1.1.Final jboss
- Criar as variáveis de ambiente:
cd /etc/profile.d
Criar o arquivo jboss.sh e colocar o conteúdo abaixo:
vim jboss.sh
################
JBOSS_HOME=/opt/java/jboss
PATH=$PATH:$JBOSS_HOME/bin
export JBOSS_HOME PATH
PATH=$PATH:$JBOSS_HOME/bin
export JBOSS_HOME PATH
################
chmod 755 jboss.sh
- Criar usuário para executar o Jboss:
useradd jboss
passwd jboss
5 - Configuração do serviço Jboss.
Esse passo é para criarmos um script de inicialização do Jboss, ou seja, padronizarmos a aplicação.
O próprio Jboss já vem com o exemplo de script para o init.d, usaremos ele fazendo apenas alguns ajustes.
cd /etc/init.d
cp -a /opt/java/jboss/bin/init.d/jboss-as-standalone.sh jboss
Agora precisamos apenas ajustar a variável JBOSS_HOME nesse script. Ela fica na linha 28.
vim jboss
JBOSS_HOME=/opt/java/jboss
A documentação oficial sugere a criação de uma pasta para colocar o conf de inicialização:
mkdir /etc/jboss-as
cd /etc/jboss-as
cp -a /opt/java/jboss/bin/init.d/jboss-as.conf .
OBS.: Isso não influencia no funcionamento do Jboss. É apenas para o script de inicialização.
Nesse arquivo, apenas descomentei a variável JBOSS_USER colocando o usuário criado para o jboss.
No meu caso:
JBOSS_USER=jboss
- Criar entrada no chkconfig:
chkconfig --add jboss
chkconfig jboss on
6 - Configurações do Jboss.
Por último precisamos ajustar as permissões de acesso ao Jboss.
Inicialmente basta publicarmos a console de gerenciamento dele para uma interface acessível remotamente.
OBS.: Por padrão ela vem publicada apenas em localhost.
cd /opt/java/jboss/standalone/configuration/
vim standalone.xml
Perto da linha 275 edite o endereço das interfaces "public" e "management":
################
<interface name="management">
<inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
</interface>
<interface name="public">
<inet-address value="${jboss.bind.address:0.0.0.0}"/>
</interface>
<!-- TODO - only show this if the jacorb subsystem is added -->
<interface name="unsecure">
<!--
~ Used for IIOP sockets in the standard configuration.
~ To secure JacORB you need to setup SSL
-->
<inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
</interface>
</interfaces>
################
Assim você já conseguirá acessar e usar o seu jboss, mas ainda aconselho fortemente ler as dicas de segurança no endereço abaixo (em referências).
Pessoal, desculpe se eu esquecer algum detalhe mas escrevi bem rápido com a maioria das informações de cabeça (fiz a instalação esses dias). Se lembrar de mais alguma informação vou colocando aqui e se verificarem que esqueci algo, por favor, fiquem a vontade para contribuir.
Em breve pretendo publicar algo sobre hardening em Jboss.
Abraço!
Referências adicionais:
Nenhum comentário:
Postar um comentário