quinta-feira, 29 de julho de 2010

Departamentos de TI estão migrando serviços de baixo risco para a nuvem.

Na hora de armazenar suas aplicações e dados, empresas ainda veem a nova plataforma com cautela.

Os departamentos de TI continuam a proceder com cautela quando se trata de cloud computing, segundo os resultados de uma recente pequisa realizada pela consultoria TPI.
A empresa entrevistou 140 tomadores de decisão de TI sobre suas perspectivas e planos para o cloud computing e descobriu que quase quatro em cada cinco empresas estão estudando soluções nesta plataforma. E três em cada cinco companhias pretendem realmente implementá-las.
"As organizações que estão migrando alguns serviços de TI para a nuvem estão fazendo isso com projetos-piloto ou serviços de baixo risco", declarou Kevin Smilie, chefe da unidade de negócios baseados em cloud computing da TPI. "Elas não estão convencidas de que os serviços de nuvem estão prontos para atender as exigências  das operações mais nobres de seus núcleos. Primeiramente, eles estão testando setores não-críticos de sua infra-estrutura, para poder dominar o serviços de cloud e sua própria gestão sobre eles, limitando seus riscos operacionais".
Embora quase metade dos pesquisados considere virtualizar servidores e desktops, serviços de armazenamento baseados em nuvem e hospedagem de e-mails e aplicativos de mensagens, eles estão sendo mais cautelosos sobre o movimento de sistemas core business nesta plataforrma: apenas 10% estavam contemplando a nuvem de ERP; e apenas 7% estavam discutindo implementar aplicações verticais da indústria baseadas na nuvem, como softwares médicos de faturamento e sistema de reservas das companhias aéreas, de acordo com o TPI.
"Esses serviços são demasiadamente importantes para os clientes para que o mercado insira-os tão cedo no cloud computing", disse Smilie.
As principais preocupações das empresas com a nuvem
A pesquisa da TPI considerou que os compradores de TI tiveram cinco preocupações a respeito do cloud computing:
- 79% preocupam-se com a segurança dos dados, achando-a inadequada;
- 50% preocupam-se com os requisitos de regulamentação;
- 50% preocupam-se com a continuidade dos negócios ou questões de recuperação em caso de crash;
- 49% preocupam-se com a integração dos sistemas.
Já o punhado de pioneiros que utilizou as ofertas de cloud computing no ERP, implementando até mesmo aplicações verticais na nuvem tem feito isso por uma razão, segundo Smilie: redução de custos. "As empresas têm gasto enormes quantidades de capital e fundos operacionais na implantação e manutenção desses sistemas ao longo dos anos. Dada a escolha, eles não querem continuar com esse comportamento.
Smilie comenta que a maioria dos clientes optará por serviços de nuvem privada para aplicativos de missão crítica, para atenuar os riscos, enquanto elas deslocarão seus investimentos em software de capital para despesas operacionais. "Os clientes querem serviços em nuvem que atendam suas necessidades de negócios a custos mais baixos, com os níveis de serviço de classe empresarial e de segurança. E, geralmente, eles não estão no espaço de nuvens públicas", afirmou Smilie.
"Os prestadores de serviços de TI estão respondendo com ofertas de cloud privado destinadas a atender às demandas de segurança dos compradores de Tecnologia", declarou Smilie. "O conceito de cloud público iniciado para o consumidor trabalha com a proposta de que todos aceitam o mesmo nível de serviço e segurança. Essa opção simplesmente não existe para as grandes empresas".
(Stephanie Overby)
Ref: http://idgnow.uol.com.br/mercado/2010/07/29/departamentos-de-ti-estao-migrando-servicos-de-baixo-risco-para-a-nuvem/

quarta-feira, 28 de julho de 2010

Mais uma praga para os administradores de rede.

Recentemente a Dell , uma das maiores fabricantes de computadores do mundo, confirmou que algumas placas-mãe usadas para substituir peças defeituosas em servidores rack PowerEdge vinham contaminadas com vírus em seu firmware – o software semipersistente que gerencia a lógica da placa.


O firmware em questão também é usado para a administração do servidor: em muitos casos, milhares de servidores precisam ser administrados ao mesmo tempo, e o software na placa-mãe facilita isso. Era nesse espaço que o vírus estava alojado. A ação do vírus em si é desconhecida, mas apenas servidores com Windows foram afetados (novidade!?!?...).

A empresa confirmou a existência do problema no fórum público de suporte técnico. Os modelos afetados são PowerEdge R310, PowerEdge R410, PowerEdge R510 e PowerEdge T410. Apenas placas-mãe usadas para substituir computadores que tiveram defeito contém o vírus, segundo a Dell. Nenhum servidor teria sido vendido infectado. O problema apenas se manifesta em algumas configurações específicas.

A empresa não forneceu informações a respeito das do comportamento da praga, mas afirmou que está entrando em contato com todos os clientes que receberam placas defeituosas.

Embora a distribuição de vírus junto com pen drives e MP3 players já tenham sido registradas algumas vezes, não há nenhum vírus sequer conhecido que atue ou infecte firmwares de placas-mãe, exceto algumas pragas feitas em laboratório para provar que isso é possível. É a primeira notícia pública de um ataque desse tipo em uma escala considerável.

Um vírus desse tipo não poderia ser removido com a formatação do disco rígido. Apenas a reprogramação do firmware seria capaz de eliminar a praga definitivamente.

Para todos os efeitos os especialistas tratam como um caso isolado, porém você já passou o antivírus na sua firmware hoje?  Ainda não existe no mercado softwares para esse tipo de verificação, isso significa que não tem como saber se estamos ou não com algum tipo de código malicioso instalado em nossa firmware, isso implica em mais uma preocupação para os administradores de infra-estrutura, como se já tivéssemos poucas!...

Vírus em placas-mãe não podem ser removidos
com a formatação do disco rígido. Na foto, um
PowerEdge R510. (Foto: Divulgação)

Ref.:http://g1.globo.com/tecnologia/noticia/2010/07/virus-sao-encontrados-em-placas-mae-de-servidores-dell.html acesso em 28/07/2010

terça-feira, 27 de julho de 2010

Windows 7 autenticando no SAMBA.


Há alguns dias postei um artigo de como fazer o samba autenticar os usuários no Active Directory da Microsoft, porem depois de algum tempo me deparei com um problema:

Os clientes que executam o Windows 7 não conseguiam se autenticar no servidor samba.

Depois de muita pesquisa descobri que o Windows 7 vem por configurado para usar segurança de sessão NTLMv2, e o samba ainda não utiliza esse tipo de segurança de sessão.

A solução não é complexa, porém tem que editar uma diretiva de grupo.

O processo é o seguinte:

1 – “Iniciar, Executar”  e digite: “secpol.msc”.


2 – Clique em “Diretivas Locais” –> “Opções de Segurança” ou “Local Policies” –> “Security Options”.


3 – Navegue até a opção “Segurança de Rede: Nível de autenticação LAN Manager” ou “Network Security: LAN Manager authentication leve”.


4 – Por Default Windows seta a policy para “NTVLM2 responses only”. Mude para “Enviar LM and NTLM – usar segurança da sessão NTLMV2 se negociada”. ou em inglês “LM and NTLM – use NTLMV2 session security if negotiated”.

Ref.: http://blog.lcmm.info/?p=35 acesso em 27/06/2010.

Istalando Jasmine para bilhetagem de impressão.

A muito tempo venho tentando encontrar um software que me forneça informações sobre o que os usuários da minha rede andam imprimindo, e essa é uma necessidade não só minha mas de vários administradores de rede por esse mundão a fora, bem depois de muita pesquisa e muito teste encontrei alguns que supriram minhas necessidades, e o mais importante fosse de graça.

Hoje vou falar sobre um deles, chamado Jasmine, ele foi desenvolvido em PHP, Perl, python e MySQL, roda em plataforma Unix e funciona em conjunto com o CUPS, e quando sai uma impressão ele pega todos os dados e joga em uma base de dados em MySQL que posteriormente pode ser consultada em qualquer browser de internet via PHP.

O JASmine está na versão 0.0.3 e pode ser baixado no próprio site no endereço:

http://jasmine.berlios.de/dokuwiki/doku.php

Ele é composto em 3 partes:

A primeira parte é um banco de dados em MySQL.
 

A segunda parte é um script em Perl para escutar as impressoras e guardar as informações de impressão na base de dados MySQL, utiliza também o programa pkpgcounter feito em python que conta números de páginas de impressão independente do formato (ex: PostScript, RAW, PCL, etc…).
 

A última parte é a página em PHP5 que fica conectada ao banco de dados e nos fornece as informações referentes as impressões, algumas delas estão citadas abaixo:

Nome do usuário, quantidade de folhas, hora e data da impressão.
título do arquivo impresso (receita-bolo.doc, eu_e_aninha.jpg)
total de impressão de cada usuário, cada impressora, cada servidor(se tiver mais que 1).

Sua instalação e configuração é simples porem requer um pouco de conhecimento na plataforma Linux e seus comandos básicos.

Pré requisitos:

- cups (e suas dependencias, pacotes de PPD’s e etc)
- httpd
- mysql-server
- python
- python-imaging
- php
- php-mysql
- php-gd
- perl
- python-devel

No CentOS podemos usar o comando yum e instalar todos os pacotes de uma só vez:
# yum install –y cups httpd  mysql-server python python-imaging php php-mysql  php-gd python-devel perl

Após instalar, vamos para o Jasmine . . .

Vamos primeiro baixar e configurar o banco do Jasmine:
# cd /tmp/
# wget http://nayco3.free.fr/Jasmine/Releases/0.0.3/JASmine-MySQL-0.0.3.tar.bz2


O mysql-server após a istalação vem sem senha para o usuario root, alguns SOs possuem scripts para configurar isso , mas, manualmente vamos alterar para não ter problemas de acesso indesejado ao banco de dados e/ou comprometimento de segurança.
# mysqladmin -u root password senha_nova

vamos descompactar o arquivo baixado:

#  tar -zvjf JASmine-MySQL-0.0.3.tar.bz2
# cd JASmine-MySQL-0.0.3


Vamos criar a base de dados do jasmine e importar os dados do jasmine:

# mysql -u root -p
# password: *****

# mysql> CREATE DATABASE print;
# mysql> GRANT ALL ON print.* TO jasmine@localhost IDENTIFIED BY ‘sql_password’;
# mysql> FLUSH PRIVILEGES;
# mysql> exit;
# mysql -u root -p print < jasmine.sql
# password: *****


Agora vamos configurar e instalar o backend do Jasmine para o cups:

# cd /tmp/
# wget http://nayco3.free.fr/Jasmine/Releases/0.0.3/JASmine-Backend-0.0.3.tar.bz2
# tar -xvjf JASmine-Backend-0.0.3.tar.bz2
# cd JASmine-Backend-0.0.3


Dentro da pasta JASmine-Backend vamos descompactar o programa pkpgcounter-2.10.tar.gz e instalar usando o python. Lembre-se que o Python deve estar instalado no seu servidor, senão não será possível instalar o pkpgcounter.
# tar -xvzf pkpgcounter-2.10.tar.gz
# cd pkpgcpunter-2.10
# python setup.py install


Depois de instalar o pkpgcounter vamos voltar na pasta JASmine-Backend e vamos copiar o script em Perl chamado jasmine para a pasta /usr/lib/cups/backend, depois de copiado vamos na pasta backend em /usr/lib/cups/backend e vamos atribuir a permissão 755 no arquivo jasmine. Lembre-se que o Perl deve estar instalado no seu servidor senão o script não vai funcionar.
# cd ..
# cp jasmine /usr/lib/cups/backend/
# cd /usr/lib/cups/backend
# chmod 755 jasmine
# chown root jasmine


Vamos editar o arquivo jasmine e configurar nosso banco de dados. Use o editor de sua preferência, aqui estou usando o vim.
# vim jasmine

Procure pelas linhas do MySQL:
my $Dbhost=”MYSQL_HOST”; —-> Host onde se encontra o banco de dados.
my $Dblogin=”MYSQL_LOGIN”; —-> Login do usuário que vai acessar o banco.
my $Dbpassword=”MYSQL_PASS”; —-> Senha do usuário que vai acessar o banco.
my $DBdatabase=”MYSQL_DB”; —-> Nome do banco de dados do Jasmine.


E altere para:

my $DBhost=”localhost”;
my $DBlogin=”jasmine”;
my $DBpassword=”sql_password”;
my $Dbdatabase=”print”;

Procure pela linha:

my $Debug_Mode=1;


E altere para:
my $Debug_Mode=0;

Salve o arquivo e feche, reinicie o CUPS com o comando:
# /etc/init.d/cups restart

Agora vamos para etapa final, que é o JASmine-Web-0.0.3.

Lembre-se: O Apache deve estar instalado com suporte a php e funcionando.
# cd /tmp/
# wget http://nayco3.free.fr/Jasmine/Releases/0.0.3/JASmine-Web-0.0.3.tar.bz2


Descompacte a pasta JASmine-Web-0.0.3.tar.bz2, renomeie a pasta JASmine-Web-0.0.3 para jasmine e coloque na pasta onde o apache procura o site. ex: /srv/www/html/.
# tar xjf JASmine-Web-0.0.3.tar.bz2 -C /var/www/html/
# cd /var/www
# mv JASmine-Web-0.0.3 jasmine


Entre na pasta jasmine que você acabou de mover, procure pelo arquivo config.php.dist e copie para o mesmo diretório com o nome config.php.

# cd jasmine
# cp config.php.dist config.php


Agora vamos editar o arquivo config.php e configurar nosso banco de dados. Use o editor de sua preferência, no meu caso estou usando o vi.
# vim config.php

Procure pelas linhas:
// Database vars
$DB_host=”MYSQL_SERVER”; —> nome do host onde esta o banco de dados.
$DB_login=”MYSQL_USER”; —-> login do usuário que vai acessar o banco.
$DB_pass=”MYSQL_PASSWORD”; —-> senha do usuário que vai acessar o banco.
$DB_db=”MYSQL_DB”; —-> nome do banco de dados.


Altere para:
// Database vars
$DB_host=”localhost”;
$DB_login=”jasmine”;
$DB_pass=”sql_password”;
$DB_db=”print”;


Salve o arquivo e feche. Reinicie o httpd com o comando:
# service httpd restart

Praticamente a instalação terminou, agora é so acessar o CUPS e instalar as impressoras (http://localhost:631).

Obs.: por padrão a intarface de configuração web do cups so pode ser acessada de dentro do Server, ou seja pelo localhost, se quiser acessar de outra maquina tem que configurar o arquivo /etc/cups/cupsd.conf.

Um detalhe importantíssimo para o correto funcionamento é que a URI(endereço da impressora) inicie com “jasmine:”

Exemplo de URI cups = socket://ip_do_servidor:9100
Exemplo de URI cups + jasmine = jasmine:socket://ip_do_servidor:9100
Para verificar os relatórios de acessar o http://ip_do_servidor/jasmine/

segunda-feira, 26 de julho de 2010

Configurando Samba para autenticar usuários no Active Directory.

Como citado no post anterior, o Active Directory é uma ótima opção para se manter uma base de dados unificada de usuários dentro de uma rede de computadores.

Neste post pretendo da maneira mais simples possível, fazer uma receitinha de bolo, com os passos para que os usuários de uma rede consigam acessar arquivos e impressoras em um servidor Linux de forma transparente, usando as credenciais cadastradas previamente no Active Directory da Microsoft.

Ambiente:

Os testes foram feitos usando um servidor com CentOS 5.1, autenticando em um Active Directory configurado em um Servidor com 2008 Server, e estações com Windows XP, Vista e 7.

Vamos considerar:

Domínio: SEUDOMINIO.LOCAL
DOMINIO NET BIOS: SEUDOMINIO
Servidor Linux: SERVLNX.SEUDOMINIO.LOCAL
Servidor Windows: SERVWIN.SEUDOMINIO.LOCAL
Rede: 10.1.1.0
Mascara: 255.255.255.0
IP servidor Linux: 10.1.1.2
IP servido Windows: 10.1.1.1

Considerações iniciais:

Vamos considerar uma instalação básica do servidor Linux, com as devidas configurações de rede. E o Active Directory devidamente instalado e configurado no servidor Windows, já com as GPOs e usuários cadastrados e funcionando.

É muito importante que ela esteja enxergando as outras maquinas da rede pelo seu nome completo, por exemplo: EST-01.SEUDOMINIO.LOCAL

Acessar o arquivo /etc/hosts do servidor Linux e inserir no final do arquivo o nome completo da maquina no domínio:

#vim /etc/hosts

 Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               SERVLNX.SEUDOMINIO.LOCAL SERVLNX  localhost.localdomain localhost
10.1.1.1     SERVWIN.SEUDOMINIO.LOCAL        SERVWIN

Instalar os seguintes pacotes:

# yum install samba samba-common samba-client

Configurando o samba:

Vamos fazer um backup do arquivo de configuração antes de altera-lo:

# cp /etc/samba/smb.conf /etc/samba/smb.conf_ori

Agora vamos as configurações, acesse o arquivo de configuração do samba e altere as seguintes opções:

#vim /etc/samba/smb.conf

# Parâmetro do Samba
[global]

# Coloque o nome netbios do domínio
workgroup = SEUDOMINIO

# Coloque o o nome completo do domínio
realm = SEUDOMINIO.LOCAL

# Coloque o tipo de autenticação
security = ads

# Servidor LDAP para consulta de usuários e grupos do AD
password server = SERVWIN.SEUDOMINIO.LOCAL


# Range de UIDs e GIDs usados pelos usuários do domínio
idmap uid = 10000-20000
idmap gid = 10000-20000

# Configurações de log
log file = /var/log/samba/%m.log
max log size = 50

Agora vamos configurar o servidor Kérberos:

Edite o arquivo /etc/krb5.conf conforme abaixo:

# vim /etc/krb5.conf

[libdefaults]
default_realm = SEUDOMINIO.LOCAL

[realms]

SEUDOMINIO.LOCAL = {

kdc = SERVWIN.SEUDOMINIO.LOCAL
admin_server = SERVWIN.SEUDOMINIO.LOCAL
default_domain = SEUDOMINIO.LOCAL

[domain_realm]

.seudominio.local = SEUDOMINIO.LOCAL

seudominio.local =SEUDOMINIO.LOCAL

Agora vamos editar o arquivo /etc/nsswitch.conf conforme abaixo:

passwd: files
group: files
shadow: files

para:

passwd: files winbind
group: files winbind
shadow: files

Vamos sincronizar a hora do nosso servidor Linux com o servidor Windows:

# ntpdate SERVWIN.SEUDOMINIO.LOCAL

Reinicie os serviços:

# /etc/init.d/smb restart
# /etc/init.d/winbind restart

Agora vamos Ingressar a máquina no domínio:

# net ads join -U administrador

Coloque a senha de administrador de domínio e aguarde a mensagem:

 "Joined ' SERVLNX ' to realm ‘SEUDOMINIO.LOCAL’ "


Reinicie os serviços:

# /etc/init.d/smb restart
# /etc/init.d/winbind restart

Verificar se instalação e configuração estão ok:

# wbinfo -u

 Devem retornar os usuários do domínio.

# getent passwd

Devem retornar os usuários locais da máquina.

# wbinfo -g

Devem retornar os grupos do domínio

# getent group

Devem retornar os grupos locais da máquina.

Definir serviços para subir no boot, pelo chkconfig:

# chkconfig --level 345 smb on
# chkconfig --level 345 winbind on

sexta-feira, 23 de julho de 2010

Unificando a base de autenticação de usuários em uma rede.

Já faz algum tempo que passei a usar o Active Directory da Microsoft em minha rede, depois disso, só elogios á esse produto da Microsoft, a segurança e o numero de políticas que você pode incorporar na rede, permite um gerenciamento centralizado e muito eficiente.

Uma das inúmeras funcionalidades do AD é a unificação da base de autenticação dos usuários, ou seja, você tem um banco de dados único de contas de usuários que podem ser acessados por vários recursos da rede. Isso é muito interessante, principalmente em redes que tem vários recursos e/ou serviços que requerem autenticação como: Acesso a internet, Acesso a arquivos, acesso a softwares, etc., de uma maneira bem simples em um ambiente com maquinas rodando softwares da Microsoft.

Mas como tudo tem um porem, em uma rede corporativa, nem sempre, ou quase nunca, conseguimos um ambiente homogêneo, mas sim um ambiente hostil o qual nos força a integramos vários tipos de tecnologias, tanto proprietárias como open-source, seja pelo custo, pela qualidade ou pela possibilidade de customizações, e acertos.

Essa integração nem sempre é simples, tanto para os administradores quanto para os usuários, e um dos maiores problemas que me deparei ao usar vários tipos de tecnologia é justamente a autenticação. Cada serviço ou recurso que era instalado na rede, eu tinha que criar contas de usuários, dar permissões, passar o login e a senha para os usuários e o pior de tudo, torcer para eles não perderem a senha, mas isso sempre acontecia, não sabiam qual era o seu usuário naquele serviço ou qual das senhas tinha que usar. Isso se tornava um obstáculo, e muitas vezes faziam de uma tarefa simples uma dor de cabeça.

Mas como só não achamos a solução para a morte, vários recursos (Quase Todos), tem algum tipo de mecanismo que permite você usar uma base de dados externa para autenticação de usuários, e como o AD faz bem esse papel, por que não usarmos sua base para autenticarmos os nossos usuários. Assim eles terão apenas um usuário e senha para usar todos os recursos da rede, e se trocarem a senha em qualquer um deles, será trocada em todos os outros automaticamente. Bom né!

Hoje vou iniciar um serie de posts que visam ajudar os administradores de rede que como eu necessite unificar sua base de autenticação de usuários e tenha optado pelo Active Directory para tal.

Por favor, comentem os posts, postem duvidas, sugestões e eventuais erros que eu tenha cometido.

"O sábio não é aquele que sabe tudo sobre alguma coisa, mas sim aquele que sabe alguma coisa sobre tudo..."


Forte Abraço.

Leandro Moreira.