DNS da google com problemas para resolver nomes da árvore mg.gov.br

abril 3, 2012

Pessoal,

ainda não descobri o porque do problema mas gostaria de compartilhar com vocês que os servidores dns da google (8.8.8.8 e 8.8.4.4) não estão conseguindo resolver nada que está abaixo da árvore mg.gov.br. Caso precisem acessar algum domínio do Estado de Minas gerais usem outro servidor dns que não seja o da google.

Att.

Leonardo Gomes Duarte


Configurando SSL no servidor de aplicação Tomcat/JBOSS – Aceitar conexões SSL somente se o cliente apresentar um certificado válido

março 27, 2012

Prezados leitores,

há algum tempo não escrevo nada e não alimento o blog com informações.

Quando criei este blog não tinha ideia do quanto é necessário tempo para manter as informações daqui em dia. Como todos vocês devem saber tempo é uma coisa cada vez mais rara e comigo não é diferente. Devemos nos manter sempre atualizados para garantir empregabilidade e competitividade neste nosso mercado de tecnologia e para isto é necessário muito estudo e dedicação e com isto as prioridades surgem e acabamos deixando várias coisas de lado. Bom, agora que justifiquei minha ausência por este longo período vamos ao que interessa realmente.

Neste post irei detalhar e apresentar um “how-to” para configurar seu servidor de aplicações tomcat para aceitar conexões “ssl” (Secure Socket Layer) apenas se o “client” apresentar um certificado válido emitido e assinado pela sua própria “CA” (Certificate authority).

Vamos ao “how-to”:

1 – Criar diretórios:

CA e dentro do diretório CA criar os diretórios private e newcerts

2 – Criar, dentro do diretório CA, a base de dados e o arquivo de índice para os certificados que vamos assinar:

echo ’01’ > serial

touch index.txt

3 – Criar, dentro do diretório CA, um arquivo de configuração openssl.cnf com o seguinte conteúdo:

#

# OpenSSL configuration file.

#

# Establish working directory.

dir = .

[ ca ]

default_ca = MINHA_CA

[ MINHA_CA ]

serial = $dir/serial

database = $dir/index.txt

new_certs_dir = $dir/newcerts

certificate = $dir/cacert.pem

private_key = $dir/private/cakey.pem

default_days = 365

default_md = md5

preserve = no

email_in_dn = no

nameopt = default_ca

certopt = default_ca

policy = policy_match

[ policy_match ]

countryName = match

stateOrProvinceName = match

organizationName = match

organizationalUnitName = optional

commonName = supplied

emailAddress = optional

[ req ]

default_bits = 1024 # Size of keys

default_keyfile = key.pem # nome das chaves que serao criadas

default_md = md5 # algoritmo de digest utilizado

string_mask = nombstr # tipo de caracteres permitidos

distinguished_name = req_distinguished_name

req_extensions = prefeituras_req

[ req_distinguished_name ]

# Variable name Prompt string

#———————- ———————————-

0.organizationName = Organization Name (company)

organizationalUnitName = Organizational Unit Name (department, division)

emailAddress = Email Address

emailAddress_max = 40

localityName = Locality Name (city, district)

stateOrProvinceName = State or Province Name (full name)

countryName = Country Name (2 letter code)

countryName_min = 2

countryName_max = 2

commonName = Common Name (hostname, IP, or your name)

commonName_max = 64

# Valores padrao para evitar digitar tanto.

# Variable name Value

#————————————————————

0.organizationName_default = MINHA_CA

localityName_default = Belo Horizonte

stateOrProvinceName_default = Minas Gerais

countryName_default = BR

[ CA_PARTICULAR ]

basicConstraints = CA:TRUE

subjectKeyIdentifier = hash

authorityKeyIdentifier = keyid:always,issuer:always

[ prefeituras_req ]

basicConstraints = CA:FALSE

subjectKeyIdentifier = hash

Rode dentro do diretório CA:

openssl req -new -x509 -extensions CA_PARTICULAR -keyout private/cakey.pem -out cacert.pem -days 3650 -config ./openssl.cnf

Este comando vai gerar dois arquivos, são eles:

Uma chave privada em private/cakey.pem .

Um certificado raiz CA cacert.pem.

Obtendo informações do certificado gerado:

openssl x509 -in cacert.pem -noout -text

Informação sobre datas de criação e expiração:

openssl x509 -in cacert.pem -noout -dates

Informação da finalidade do certificado:

openssl x509 -in cacert.pem -noout -purpose

Criar as requisições de assinatura:

openssl req -new -nodes -out req.pem -config ./openssl.cnf

Este processo irá gerar dois arquivos:

Uma chave privada chamada key.pem

Uma requisição de assinatura de certificados req.pem

Renomear os arquivos acima. Colocar um nome sugestivo:

mv key.pem chave_privada-key.pem

mv req.pem chave_publica-req.pem

certificado_assinado.pemVerificar informações da requisição com o comando abaixo:

openssl req -in chave_publica-req.pem -text -verify -noout

Assinar a requisição:

openssl ca -out certificado_assinado.pem -config ./openssl.cnf -infiles chave_publica-req.pem

Este comando acima atualizou a database CA (index.txt) e produziu dois arquivos:

O certificado certificado_assinado.pem

A cópia do certificado newcerts/01.pem

Gerar o arquivo pkcs12 (pfx) e pkcs7 (JKCES) para a inclusão no servidor de aplicação tomcat ou no browser:

openssl pkcs12 -export -in certificado_assinado.pem -inkey chave_privada-key.pem -out CERTIFICADO-pkcs12.pfx

keytool -genkey -alias MINHA_CA -keyalg RSA -validity 7 -keystore MINHA_CA.jks

keytool -import -alias cacert -keystore MINHA_CA.jks -trustcacerts -file cacert.pem

*Atentar para os certificados usados no comando, todo certificado que for assinado deverá ser inserido neste keystore com o comando (keytool -import -alias certificado1 -keystore MINHA_CA.jks -trustcacerts -file certificado1.pem) para que o tomcat confie no mesmo.

Revogar certificados:

openssl ca -revoke newcerts/cert.pem -config ./openssl.cnf

Configurar TOMCAT/JBOSS:

Edite o arquivo server.xml e adicione/altere a lina como demonstrado abaixo:

Linha necessária no conf do JBOSS e TOMCAT para forçar a solicitação de um certificado válido para estabelecer a conexão:

<Connector acceptCount=”100″ clientAuth=”true” disableUploadTimeout=”true” enableLookups=”false” keystoreFile=”caminho_para_o_arquivo_pfx” keystorePass=”senha” keystoreType=”PKCS12″ maxHttpHeaderSize=”8192″ maxSpareThreads=”75″ maxThreads=”150″ minSpareThreads=”25″ port=”443″ scheme=”https” secure=”true” sslProtocol=”TLS” truststoreFile=”caminho_para_o_arquivo_jks” truststorePass=”senha” truststoreType=”JCEKS”/>

Bom pessoal, espero que seja útil para alguém. Lembro que tive que estudar muito para fazer isto funcionar e para chegar nesta documentação na época em que fui mexer com isto pela primeira vez.

Forte abraço a todos e até a próxima.

Att.

Leonardo Gomes Duarte


Que tipo de lâmpada usar em sua casa?! Lâmpadas Microsoft?! Será?!

maio 29, 2011

… (lâmpada Microsoft)
– Ao instalar uma lâmpada Microsoft em sua casa, todas as demais queimariam, pois lâmpadas Microsoft sempre supõem ser a única lâmpada da casa
– Ao instalar uma lâmpada não original, cada vez que você a acendesse, apareceria uma mensagem na frente do interruptor, avisando das grandes vantagens de se adquirir uma lâmpada Microsoft genuína
– Essa lâmpada atrai muito mais insetos, vírus e vermes do ambiente, ficando em pouco mais de seis meses tão encardida com coisas grudadas nela tão firmemente, na prática impedindo que a luz dela seja vista, de forma que é melhor trocar por uma nova do que tentar limpar
– Frequentemente a lâmpada pararia de responder aos comandos do interruptor, se recusando a desligar, precisando ser retirada do bocal e recolocada, ou desligar o disjuntor da casa
– A cada semana você precisaria atualizar sua lâmpada para mantê-la segura, evitando execução de “níveis de corrente arbitrários”, que poderiam danificar sua lâmpada, e até mesmo outros eletrodomésticos


Qual distribuição Linux usar?

fevereiro 3, 2010

Boa noite caros leitores,

descobri um link muito interessante em uma comunidade linux que faço parte e gostaria de compartilha-lo no meu blog.

Hoje em dia a maior birra dos usuários que resolvem começar o uso do S.O Linux é na hora de escolher qual distribuição utilizar. Existem muitas, mas muitas distribuições no mercado e realmente ficamos confusos na hora de adotar uma distro.

Para aqueles que estão com este problema que é de muita gente segue o link para tentarem descobrir qual distro de adapta melhor a você:

http://www.zegeniestudios.net/ldc/index.php?lang=pt-br

Att.

Leonardo Gomes Duarte.


Olá a todos!

janeiro 19, 2010

Sejam bem vindos ao meu blog.
Pretendo incluir aqui algumas experiências vividas profissionalmente e pessoalmente e compartilhar conhecimento.
Atualmente sou administrador de rede Sênior em uma rede de médio/grande porte cujo ambiente de servidores é 95% formado por servidores com S.O. Linux. Dentro deste ambiente, aprendi e continuo aprendendo a cada dia ( acho que este é o mal de todos que trabalham com tecnologia ).
Atualmente detenho a certificação LPIC-1 e estou estudando para obtenção do nível 2 e 3 com as especializações em alta-disponibilidade e virtualização, e segurança, os estudos estão meio vagarosos devido eu ter acabado de concluir uma pós-graduação em segurança da informação e estar focado no desenvolvimento da monografia.
Posteriormente à carreira LPI pretendo prestar as provas para RHCE e depois disto vamos ver algumas certificações na área de segurança.
Bom, tenho 22 anos e um caminho enorme pela frente ainda e pretendo, com este blog, expor ao mundo a minha trajetória, ajudando quem tem objetivos que eu já concluí e obtendo ajuda de quem tinha os mesmos objetivos que eu e já concluiu.

Quando tiverem alguma dúvida em relação a ambientes linux, procurem este site, pois caso eu não saiba sanar a dúvida terei imenso prazer em pesquisar, estudar e ajuda-los, não porque sou muito gente boa (risos) mas porque estarei aprendendo e me aperfeiçoando desta forma(risos).

Bom, a princípio é isto!

Um grande abraço a todos!