21 de janeiro de 2008

Teste do gnome-blog!

Opa,

Após uma postagem do meu amigo Enderson, resolvi buscar um programinha para ajudar nas postagens do meu blog e achei o gnome-blog. Ele é bem simples e vai me ajudar bastante. ;-)

Fica ai a dica para quem usa Linux.

Aplicação em PHP para alterar senha no AD

Opa,

Primeiro a velha dica, "Este é um post técnico, para os que não entendem de Linux favor pular!" :-)

Agora vamos ao que interessa, eu gosto de dizer que eu adoro meu trabalho pelo simples fato de não ter que mexer em lixo, mas às vezes sou obrigado a mexer no lixo para resolver algumas solicitações. Uma delas foi criar uma aplicação em PHP que pudesse alterar a senha do usuário no Active Directory da Mico$oft. No mesmo instante eu pensei: "Isso deve ser moleza, já devem ter pelo menos uns 100 scripts prontos ou até mesmo projetos no sourceforge.net!", bem, para a minha surpresa isso demorou mais do que eu esperava. Para usar o php+ldap para acessar a base do AD é simples, para fazer consultas também é simples, mas para alterar/adicionar/excluir dados da base do AD o negócio é mais embaixo. Foi necessário criar um certificado raiz no servidor do AD e copiá-lo para o Linux, é isso mesmo que você está pensando, o AD só permite essas operações rodando sobre ssl (porta 636).

Para criar o certificado no servidor do AD será necessário (caso não esteja instalado) adicionar o serviço de certificação, se conecte no seu servidor AD, vá até adicionar/remover programas, depois adicionar/remover componentes, na lista marque a opção Serviços de Certificação e clique em OK/Finish ou qualquer outra coisa que seja, já esqueci! Após instalado abra o Serviço de Certificação (Iniciar / Ferramentas Administrativas / Autoridade de certificação), clique com o botão direito do mouse sobre o servidor que foi criado e escolha propriedades, depois clique no botão "Exibir certificado", na janela que aparecer escolha a aba "Detalhes" e clique no botão "Copiar para arquivo...", clique em avançar, escolha o formato codificado na base 64 e clique em avançar, escolha o local onde será gerado o certificado e depois OK/Finish ou qualquer outra coisa que seja, pronto! Criamos o certificado raiz do servidor AD, agora precisamos copiar para o servidor Linux, de preferência copie esse arquivo utilizando uma maneira segura (SSH).

Com o arquivo no servidor Linux mova-o para a pasta /etc/ssl/certs (Gentoo e OpenSuSE), ajuste as permissões (chmod 644 e chown root:) e execute o comando c_rehash. Abra o arquivo /etc/openldap/ldap.conf e adicione as seguintes linhas:
TLS_REQCERT never

TLS_CACERT /etc/ssl/certs/nome_certificado_copiado_do_ad.pem
TLS_CACERTDIR /etc/ssl/certs
Depois disso reinicie o serviço do Apache, crie sua aplicação PHP e pronto, lembrando que é necessário compilar o php com suporte a ldap e ssl! Abaixo tem um exemplo de uma aplicação para alterar a senha do usuário, lembre-se de adicionar as tags do php. Maiores informações no site do php.
$AD_server = "ldaps://srvad.teste.com";
$AD_Auth_User = "Administrador@teste.com";
$AD_Auth_PWD = "senha_administrador";
$AD_dn = 'CN=Users,DC=teste,DC=com';
$uid = "usuario_alterar";
$pwdold = "senha_antiga";
$pwdtxt = "novasenha";

$protocolVersion = 3;

$ldap = ldap_connect($AD_server);
if (!ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, $protocolVersion)) {
exit('Falha em definir protocolo na versao '.$protocolVersion);
}
ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);
ldap_bind($ldap);
if (ldap_errno($ldap) !== 0) {
exit('Nao foi possivel conectar no servidor');
}
ldap_bind($ldap, $AD_Auth_User,$AD_Auth_PWD);
if (ldap_errno($ldap) !== 0) {
exit('ERRO: '.ldap_error($ldap));
}
$searchResults = ldap_search($ldap, $AD_dn, 'cn=*'.$uid.'*');
// no matching records
if ($searchResults === false){
exit('Usuario nao encontrado');
}

if (!is_resource($searchResults)){
exit('Erro na consulta.');
}
$newPassword = "\"" . $pwdtxt . "\"";
$len = strlen($newPassword);
$newPassw = "";

for($i=0;$i<$len;$i++) { $newPassw .= "{$newPassword{$i}}\000"; } $info["unicodepwd"] = $newPassw; $entry = ldap_first_entry($ldap, $searchResults); if (!is_resource($entry)){ exit('Couldn\'t get entry'); } $userDn = ldap_get_dn($ldap, $entry); $resultado = ldap_modify($ldap, $userDn, $info); if($resultado) { echo "Senha alterada com sucesso! "; }else{ echo "Erro! "; echo ldap_error($ldap)." "; }

7 de janeiro de 2008

Ano Novo = Novidades!!!

Opa,

É verdade, começa o ano e as novidades vão aparecendo, primeiro uma que na verdade chegou antes do ano novo, mas só estou apresentando agora, meu Notebook!!! É verdade, após muuuuuuuuito tempo finalmente consegui comprar, assim que possível tiro umas fotos dele ou gravo um vídeo do Desktop para a galera.

A segunda realmente chegou em 2008, podem comemorar, passei na prova que fiz em Recife para a LPI (Linux Professional Institute), assim que chegar o certificado e a carteirinha vou tirar umas fotos para a galera também. Agora é começar os estudos para a versão 2, já que sou LPIC-1 e pretendo tirar o LPIC-2 também. Ah! A galera que fez comigo (Wagner e Alexandre) também passaram.

Bem, por enquanto é isso, espero em breve ter mais novidades (boas).

5 de janeiro de 2008

Ano Novo em Porto de Galinhas!!!

Peeeeeeennnnnssssssssseeeeeeeee numa festa de Ano Novo onde todos estavam, como a galera dizia na casa, "MUUUIIITTTHHHHHOOOOO DOIDHOOOOO!!!!", hehehe...


Essa farra foi pra ficar na história, valeu galera!!! Até a próxima!!!

21 de dezembro de 2007

Mensagens de Fim de Ano!

Opa, resolvi mandar as mensagens de fim de ano juntas, portanto:

FELIZ NATAL E UM ÓTIMO ANO NOVO PARA TODOS NÓS!!!

Espero que todos os nossos sonhos se realizem e todas aquelas coisas que o povo deseja nessa época! :-P

OBS.: Ainda não chegou o resultado da prova! :-(

Boas festas!

29 de novembro de 2007

LPIC-1 ai vou eu!!!

Opa, pois é... ultimamente nem tenho passado por aqui, estou estudando para fazer a prova de certificação LPI em Recife-PE no dia 01/12/2007.

Espero conseguir essa primeira certificação para poder estudar para as provas do nível 2 (LPIC-2).

Bem, é isso!!! Espero que meus milhões de fãs estejam torcendo por mim... :-D

1 de novembro de 2007

PENTACAMPEÃO!!!

Opa!!!

A pergunta é: "Você já falou com um PENTACAMPEÃO hoje???"
Vou nem falar muito pois, como dizem, "as imagens valem mais que mil palavras!!!"


TODO MUNDO TENTA!!!


TEM GENTE ATÉ QUE INVENTA!!!


MAS SÓ O TRICOLOR É PENTA!!!!!!!!!