Cron-apt – Otimizando a atualização dos servidores Debian
March 4, 2010 by alexos · 2 Comments
A atualização dos servidores pode tornar-se uma tarefa chata quando você tem repetir está mesma ação diversas vezes. Para automatizar está tarefa uso o script cron-apt. Como o nome já diz ele agenda a execução do apt-get ou aptitude para atualizar os pacotes de seu sistema
Segue aqui um pequeno how-to para implantação desta ferramenta que tem sido uma mão na roda no meu dia a dia.
NOTA: A atualização automatizada dos pacotes não é recomendada para as versões testing e unstable do Debian. Mesmo na versão stable use por sua conta e risco.
Instale o pacote cron-apt
sudo aptitude install cron-apt
Edite o arquivo /etc/cron-apt/config descomentando as seguintes linhas:
APTCOMMAND=/usr/bin/aptitude
MAIL=”/var/log/cron-apt/mail”
Agora descomente e edite as seguintes linhas deste mesmo arquivo
MAILTO=”INFORME SEU EMAIL AQUI”
De
MAILON=”error”Para
MAILON=”always”
De
SYSLOGON=”upgrade”Para
SYSLOGON=”always”
De
DEBUG=”output”Para
DEBUG=”always”
Por padrão ele apenas baixa os pacotes sem instalá-los usando a opção dist-upgrade. Aqui mostro como mudar está ação que não é muito interessante para servidores pois a opção dist-upgrade pode apagar pacotes importantes.
Edite o arquivo /etc/cron-apt/actions.d/3-download alterando a seguinte linha
De
dist-upgrade -d -y -o APT::Get::Show-Upgraded=truePara
safe-upgrade -y -o APT::Get::Show-Upgraded=true
O cron-apt está agendado para ser executado às 04 da manhã todos os dias. Para mudar este agendamento edite a seguinte linha no arquivo /etc/cron.d/cron-apt
0 4 * * * root test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt
Eu por exemplo agendo as minhas atualizações para as 23 horas. Então minha configuração fica da seguinte forma:
0 23 * * * root test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt
Como informei anteriormente tenha muito cuidado ao usar ferramentas automatizas na gestão dos seus sistemas. Por isso recomendo fortemente a configuração do envio de emails, assim você poderá acompanhar de forma segura todas as ações realizadas por está ferramenta.
Infraestrutura para Aplicações Web Seguras parte 1 – Sistema ( Updated )
February 25, 2010 by alexos · Leave a Comment
Neste artigo abordarei como montar/manter um servidor seguro. Uso o Debian GNU/Linux como sistema base mas todas as ferramentas e procedimentos listados servem para qualquer Unix-like.
Um dos grandes inimigos na implementação de qualquer solução é o tempo. Tudo tem que ser feito no menor tempo possível, com o menor gasto possível e com 0% de falha. Para respeitamos todas essas premissas as orientações apresentadas serão de rápida implementação e fácil manutenção.
Hardening
Trocando em miúdos o hardening é o fortalecimento de um sistema, serviço ou aplicação com o objetivo de minimizar ou dificultar a ação de hackers e crackers.
Iniciamos o hardening antes da instalação do sistema. Neste momento planejamos:
1 – Daemons/serviços que serão disponibilizados;
2 – Particionamento;
1 – Como o foco do nosso artigo são aplicações Web já sabemos que vamos trabalhar com o Quarteto Fantástico – Linux, Apache, PHP e MySQL ou Postgresql. De antemão já temos definidos os serviços que serão disponibilizados.
2 – Com isso definido recomendo que o diretório /var permaneca numa partição separada, lá ficarão os arquivos do site no /var/www e os arquivos do banco em /var/lib/mysql.
Dependendo da aplicação é possivel que o BD cresca rapidamente então recomendo separar a maior parte do disco para está partição e também recomendo a utilzação do sistema de arquivos XFS.
Quer saber porque recomendo o uso deste sistema de arquivos? CLIQUE AQUI
Feito todo o planejamento e com o S.O. instalado iniciaremos os procedimentos de pós-instalação:
1 – Atualizar todo o sistema. No caso do Debian recomendo antes de tudo ajustar o arquivo sources.list removendo todo o conteúdo e adicionado os seguintes repositórios:
deb http://ftp.us.debian.org/debian stable main contrib
deb http://security.debian.org/ stable/updates main contrib
Feito isso use o velho e bom aptitude update && aptitude safe-upgrade
2 – Remova todos os serviços desnecessários:
Recomendo a instalação do Nmap, assim de forma fácil e rápida descobriremos as portas abertas e os serviços em execução.
Exemplo:
nmap localhost
Starting Nmap 5.21 ( http://nmap.org ) at 2010-02-25 00:53 BRT
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000021s latency).
Hostname localhost resolves to 2 IPs. Only scanned 127.0.0.1
Not shown: 996 closed ports
PORT STATE SERVICE
xx/tcp open xxx
xxx/tcp open xxxx
xxx/tcp open xxx
xxx/tcp open xxxxxNmap done: 1 IP address (1 host up) scanned in 0.22 seconds
Você poderá remover a aplicação indesejada usando o comando aptitude remove [aplicação] ou apenas impedir que ela seja executada durante o boot, como por exemplo o MTA exim usando o comando update-rc.d -f exim remove. Dessa forma o exim permanecerá instalado, por ser dependência para outras aplicações, mas não será executado durante o boot.
3 – Use o sudo
Evite logar no sistema usando o usuário root e não deixe que membros da equipe façam o mesmo, assim é possivel fortalecer a auditoria de autenticação, instalação e remoção de pacotes e ações que podem danificar o sistema.
4 – Bloqueie o usuário root
Use o comando usermod -L root para bloquear o login usando o usuário root.
5 – Mude a porta padrão do ssh e bloqueie o login do usuário root
Segurança por obscuridade é uma das técnicas utilizadas para dificultar o footprinting, e o port scanning do seu sistema.
Para fazer estas modificações acesse o arquivo /etc/ssh/sshd_config e altere as seguintes linhas:
Port 22
para por exemplo
Port 3000
PermitRootLogin yes
para
PermitRootLogin no
Refinando o processo de Hardening
Algumas ferramentas podem ser utilizadas para ajudar no processo de hardening do sistema. Recomendo fortemente o uso das seguintes ferramentas:
Hntool
Este é um novo projeto do meu amigo sergipano Hugo Doria que vem crescendo bem rápido e vem contando com novas contribuições diariamente.
O objetivo desta ferramenta é facilitar a vida do Sysadmin informando as melhorias necessárias para fortalecer os serviços e o próprio sistema.
Como ele é totalmente modular fica muito fácil contribuir. Se você quer aprender a programar em Python essa é hora.
Contribua com o desenvolvimento do Hntool. A comunidade de brasileira de segurança da informação agradece.
Bastille
O Bastille protege o sistema operacional, configurando o sistema de maneira pro-ativa para aumentar sua segurança e reduzir as chances de comprometimento. Ele também pode ser usado para assessorar no processo de Hardening do sistema, reportando e detalhando cada configuração de segurança usada pelo programa.
Ele auxilia o usuário/administrador do sistema a escolher exatamente como fortalece-lo. No modo de operação/hardening padrão, ele interage com o usuário fazendo perguntas , explicando cada tópico para, então, criar uma política baseada nas respostas do usuário. Logo em seguida, aplica-se as políticas no sistema. No modo de auditoria, ele cria um relatório para ensinar o usuário sobre as configurações de segurança disponíveis, além de informar quais configurações foram definidas/ajustadas.
Para ajudar na instalação e configuração disponibilizo o capitulo referente ao Bastille que criei para minha aula na Pós em Segurança da Informação da Unijorge.
Monitoramento Seguro
Após todos os ajustes necessários é hora de monitorar e manter o ambiente sempre disponível e seguro. Para isso recomendo a instalação das seguintes ferramentas:
Ossec HIDS
O OSSEC é um escalável, multi-plataforma, e open source HIDS. Ele integra análise de log, checagem de integridade de arquivos, politica centralizada, detecção de rootkit, alerta em tempo real e resposta automática.
Para facilitar a implentação postei 03 artigos com a instalação do Ossec Server, o Agente e a Interface Web.
Lenbrando que existe a opção da instalação local ( standalone ) permitindo que você seja alertado através do email.
Munin
O Munin é uma ferramenta de gerência de desempenho muito simples de instalar e configurar. Ela permite que você obtenha informações em tempo real de como anda o seu sistema.
Veja o post que disponibilizei sobre está excelente ferramenta.
Apticron
O Apticron é um script que alerta via email diariamente sobre novas atualizações no seu servidor, no alerta você encontra a lista de pacotes que precisam ser atualizados e todo o changelog.
Acesse os links 1 ou 2 para obter informações de como instalar e configurar está ferramenta bastante útil.
Conclusão
Finalizo aqui a 1a. parte da nossa saga. Peço desculpas aos leitores que querem mais informações técnicas sobre os assuntos abordados, só que o objetivo destes artigos é trazer recomendações e referências rápidas. Prometo trazer informações mais técnicas sobre os assuntos abordados em breve.
Infraestrutura para Aplicações Web Seguras – Motivação
February 25, 2010 by alexos · Leave a Comment
A Web é a porta de entrada de todas as empresas. Quando você deseja obter informações sobre uma cooporação ou um produto, intuitivamente você acessa o Google e busca o site da empresa/produto desejado.
Quem não disponibiliza informações sobre seus produtos/serviços na Internet está fadado ao fracasso, isso significa que a cada dia mais e mais administradores estão montando suas infra-estruturas com o único objetivo.
DISPONIBILIZAR INFORMAÇÕES NA INTERNET.
Para confirmar a observação acima leia a entrevista feita pela Information Week com o CIO da Casas Bahia Frederico Wanderley.
O grande questão é E A SEGURANÇA? Será que ao pensar em disponibilizar suas informações na internet estas cooporações se preocupam se elas estão disponíveis, integras e confidenciais?
Será que o administrador da rede está preocupado em fortalecer o sistema operacional e os serviços? Será que o desenvolvedor do site está preocupado que sua aplicação seja escrita obdecendo criterios básicos de segurança?
Vocês poderiam me responder antes de clicar nos links abaixo. Qual a relação existente entre Google, Microsoft, HSBC e Sony?
Resposta: Todas elas sofreram defacement. Todas elas tiveram suas portas de entrada invadidas e usavam Linux.
Antes que venham uma avalache de trolls, isso não significa que o Linux é inseguro pois todas as aplicações foram atacadas através SQL Injection .
Nesta série de 3 artigos quero ajudar meus irmãos SysAdmins passando uma série de referências de como manter uma infraestrutura para aplicações Web segura. Só que o SysAdmin não é nenhum mestre dos magos pois se o sistema estiver todo reforçado e a aplicação for desenvolvida “nas coxas” seu trabalho foi jogado no lixo.
Na 1a parte abordaremos como preparar o sistema básico ( S.O. ) seguindo boas práticas simples e efetivas. Na 2a. parte abordaremos como montar e manter um SGBD de forma segura e para finalizar abordaremos como desenvolver e testar aplicações web com foco em segurança.
OBS: O objetivo dessa série de artigos não é virar um tratado de segurança de aplicações web. A intenção é compartilhar minha experiência e aprender com a experiência dos leitores. Como não sou DBA, nem desenvolvedor posso me enganar em alguns destes assuntos e peço a toda a comunidade que contribua tornando estes artigos os mais completos possíveis.
Changes
January 31, 2010 by alexos · 7 Comments
Ontem migrei meu 2o laptop para o Debian Squeeze, com o ótimo resultado que venho tendo usando ele no meu AA1 resolvi que estava na hora de abandonar de vez o Ubuntu.
A mudança de distro veio muito porque não preciso de todas as firulas que o Ubuntu vem trazendo a cada nova versão. A cada 06 meses vejo que o usuário avançado está perdendo espaço já que o objetivo desta distro é facilitar o máximo para o usuário leigo/médio.
Uso Debian Stable em servidores a muito tempo porém quando comprei o AA1 resolvi instalar o Squeeze. Por ser um laptop só para trabalho onde não preciso de muitas features, nem muita beleza ( Compiz, 3D, Cubo, etc) ele se encaixou como uma luva.
Faz um bom tempo que não contribuo ativamente na Comunidade Ubuntu-BR e vejo que a cada dia isso vem se tornando uma realidade.
Estou muitissimo satisfeito com minha colaboração no Projeto Gnome participando do Sysadmin Team e do Moderator Team pois estou trabalhando com o que mais gosto que é manter uma infraestrutura.
O melhor é que agora eu sou neutro, não preciso levantar a bandeira de nenhuma distro, e se o fizer vai ser pelas vantagens e alegrias que ela me proporciona.
Sou muito grato pelo que o Ubuntu e a Comunidade Ubuntu-BR fizeram por mim porém mudei totalmente meu foco e preciso de uma distro que atenda estas necessidades com simplicidade e sem frescuras.
É isso ai. O tempo passa o tempo voa….
Usando o SSH over Tor
November 30, 2009 by alexos · 2 Comments
De vez em quando caimos naquela situação que precisamos conectar um servidor remoto com o ssh e um filho de Deus resolve bloquear o uso dessa porta no firewall.
Mas para nós guerreiros Super Sayajin nivel 4 isso é café pequeno. Tudo se resolve em minutos com o uso do connect-proxy.
Sempre tenho o tor + privoxy rodando em minha máquina para situações especiais então ele será usado para criar um túnel permitindo minha conexão tão desejada.
Instale os pacotes necessários
aptitude install tor connect-proxy
Configure o ssh para usar o tor adicionando as seguintes linhas no arquivo config dentro do diretório .ssh no seu /home:
Host [ Nome do servidor]
ProxyCommand connect-proxy -S [ IP_Proxy:PORTA ] [ IP ou NOME SERVIDOR ] [ PORTA ]
Veja o exemplo
vim ~/.ssh/config
Host backup
ProxyCommand connect-proxy -S localhost:9050 backup.foo.bar 22
* Neste caso foi usado um proxy socks 5, se for um proxy http use a opção -H
Para conectar faça o seguinte
ssh -l [usuário] backup
Por exemplo
ssh -l alexos backup
Autenticando o Ocomon no AD
October 27, 2009 by alexos · 5 Comments
O Ocomon é um conhecido sistema de helpdesk que vem sendo melhorando a cada versão, porém o suporte a autenticação no Active Directory ainda é bem precário. Para suprir está necessidade surgiu a classe PHP LDAP,
Neste artigo veremos como usar está classe permitindo que o Ocomon autentique diretamente no AD.
Mão na massa!!!
Prevendo que o Ocomon já está instalado e configurado iremos instalar os pacotes e configurar os arquivos que permitirão a integração.
Instalando os pacotes
aptitude install php5-ldap unzip
Habilite o módulo ldap no apache2
a2enmod authnz_ldap
Reinicie o apache2
apache2ctl restart
Baixe o adLDAP
wget -c http://prdownloads.sourceforge.net/adldap/adLDAP_3.2.zip?download
Descompacte o arquivo copiando para o diretório /var/www/ocomon/includes/classes
unzip adLDAP_3.2.zip -d /var/www/ocomon/includes/classes
Edite o arquivo adLDAP.php alterando as seguintes linhas com informações do seu dominio:
protected $_account_suffix = “@acme.local”;
protected $_base_dn = “DC=acme,DC=local”;
protected $_domain_controllers = array (“192.168.100.100″);
Edite o arquivo /var/www/ocomon/includes/config.inc.php comentando e seguinte linha
define ( “AUTH_TYPE” , “SYSTEM”); //DEFAULT
e descomente a linha
define ( “AUTH_TYPE”, “LDAP”); // ALTERNATIVE
Acesse o diretório /var/www/ocomon/includes/common e renomei o arquivo login.php
cd /var/www/ocomon/includes/common
mv login.php login.php.ORIG
Agora baixe o arquivo login.php pronto para autenticação no AD salvado no diretório /var/www/ocomon/includes/common.
Feito isso é só testar. Acesse o Ocomon e logue usando o usuário do AD, ele automaticamente criará a conta do usuário no banco.
DICA: Após você logar com seu usário do AD, será criado seu usuário no banco de dados do Ocomon, para fazer esse usuário ser o Administrador do Ocomon faça o seguinte:
Volte o tipo de autenticação para SYSTEM editando o arquivo config.php.inc, faça login com admin/admin, clique no menu Admin -> Usuários e edite o seu usuário passando-o para Administrador.
Depois basta voltar o tipo de autenticação paraLDAP novamente, depois faça login com seu usuário e senhas do AD e administre o sistema Ocomon normalmente.
Fonte: VoL
Postfix: Habilite o Auto-Reply/Vacation usando o Autoresponse
October 9, 2009 by alexos · 3 Comments
Qual o Sysadmin que nunca se deparou com seu chefe informando numa sexta-feira perto do final do expediente que entrará de férias na segunda. Informando que precisa que seus emails sejam respondidos automaticamente avisando suas férias?
Foi para resolver está situação que o Charles criou o Autoresponse. Este script foi criado para auxiliar o postfix na tarefa de responder automaticamente a mensagens.
Sua instalação é muito mas muito simples e o troço funciona que é uma beleza.
Agora vamos por a mão na massa!!!
Baixe e descompacte o Autoresponse
mkdir ~/tmp
cd ~/tmp
wget -c http://www.nefaria.com/scriptz/autoresponse-1.6.3.tar.gz
tar -xvf autoresponse-1.6.3.tar.gz
Acesse o diretório criado e execute os comandos para a instalação
cd autoresponse
useradd -d /var/spool/autoresponse -s ‘which nologin’ autoresponse
mkdir -p /var/spool/autoresponse/log /var/spool/autoresponse/responses
cp ./autoresponse /usr/local/sbin/
chown -R autoresponse.autoresponse /var/spool/autoresponse
chmod -R 0770 /var/spool/autoresponse
Faça uma cópia de segurança do arquivo /etc/postfix/master.cf
cd /etc/postfix
cp master.cf master.cf.ORIG
Edite o master.cf e localize a seguinte linha
smtp inet n – n – – smtpd
Adicione a seguinte linha, abaixo da informada anteriormente
-o content_filter=autoresponder:dummy
A linha ficará assim:
smtp inet n – n – – smtpd
-o content_filter=autoresponder:dummy
Adicione a linha abaixo no final da seção “# Other external delivery methods.“:
autoresponder unix – n n - - pipe
flags=Fq user=autoresponse argv=/usr/local/sbin/autoresponse -s ${sender} -r ${original_recipient} -S ${sasl_username} -C ${client_address}
Saia salvando o arquivo e execute o seguinte comando:
postconf -e ‘autoresponder_destination_recipient_limit = 1′
Reinicie o postfix
/etc/init.d/postfix restart
Feito. Apartir de agora o postfix responderá automaticamente os emails quando necessário.
Para autocriar uma mensagem de resposta automática via email:
Envie um e-mail para [usuário]+autoresponse@seudominio.com.br onde “usuário” é a conta de e-mail para o usuário que você está definindo a mensagem de resposta automática. A mensagem deve ser proveniente da conta de email do próprio usuário (por razões de segurança), caso contrário uma resposta automática não será criada.
Se você tem uma mensagem pré-existente, será excluída e o usuário será notificado por e-mail que a mensagem de resposta automática foi desativada. Pense nisso como um interruptor. Se você não tiver um pré-existente mensagem de resposta automática, a mensagem que você enviar passará a ser a sua resposta automática. Você deseja formatar a mensagem exatamente como você gostaria que ela aparecesse.
Você também poderá criar uma mensagem automática através da console:
Para habilitar a autoresposta digite:
autoresponse -e usuário@seudominio.com.br
O VI será aberto para que você possa digitar a mensagem que será exibida no corpo do email.
Para desabilitar a autoresposta
autoresponse -d usuário@seudominio.com.br
Para habilitar novamente:
autoresponse -E usuário@seudominio.com.br
Para deletar a autoresposta
autoresponse -D usuário@seudominio.com.br
NOTA: Em alguns momentos ao desativar, reativar ou mudar a mensagem tive que apagar o diretório do usuário que foi criado em /var/spool/autoresponse/responses/[usuario@dominio.com.br] e em /var/spool/autoresponse/logs/[usuario@dominio.com.br] para que o autoresponse voltasse a funcionar para esse usuário.
Fonte: Nefaria
Dia do SysAdmin
Parabéns SysAdmins!!!!
Para homenagear esses loucos que trocam a sua vida para manter os sistemas, servidores e outras parafernalhas hi-tec ai vai o Adminspotting ( Escolha seu futuro…Escolha Sysadmin ).

Saiu do forno – OSSEC v2.1
June 30, 2009 by alexos · Leave a Comment
O Ossec HIDS faz parte do meu dia a dia a um bom tempo. Ele é o cara que me mostra se tudo está correndo bem nos servidores que monitoro, permitindo sempre uma ação pró-ativa.
O Ossec é ferramenta básica para qualquer Sysadmin que não quer ser pego de surpresa. Hoje saiu um novo release dessa excelente ferramenta.
Veja as novas features disponibilizadas:
* Configuração Centralizada
* Reinicialização do agente remotamente
* Checagem de integridade em tempo real
* Novo suporte a regras de log
Mais informações no changelog

Localizando máquinas infectadas com o worm Conficker
April 2, 2009 by alexos · 5 Comments
No dia 1o. abril todas as midias estavam focadas em um único assunto relacionado a redes e internet. Todo o planeta estava em alerta por causa da ação de um worm chamado Conficker.
No Slashdot e em todos os sites especializados no assunto segurança da informação surgiam a cada momento novos posts sobre este o worm,.
Isto me lembra muito cerca de 09 anos atrás um worm devastador chamado Sircam, esse cara fez um estrago imenso na rede Petrobrás onde eu trabalhava na época.
Porém como não poderia deixar ser Fyodor e sua trupe criaram uma nova feature no NMAP. Esta feature permite scanear uma rede a procura por hosts infectados com o worm Conficker. .
Para isso digite o seguinte comando:
nmap -PN -T4 -p139,445 -n -v –script smb-check-vulns,smb-os-discovery –script-args safe=1 [Rede_Alvo]
Se a máquina estiver limpa surgirá o aviso: Conficker: Likely CLEAN, senão surigirá Conficker: Likely INFECTED
Divirtam-se!!!






English
