sexta-feira, 11 de dezembro de 2009

Exame 70-291

Realizei hoje o Exame 70-291 para fechar a formação MCSA Windows Server 2003.


A prova foi composta de 53 questões, sendo que as 4 últimas foram simulações.

As perguntas eram bem curtas e objetivas. A maioria das alternativas tinham apenas 1 linha. Não reparei nenhuma pegadinha. A prova em geral foi fácil.

Fui aprovado com 780 !

sábado, 21 de novembro de 2009

Inserir um DC Windows Server 2003 R2 em uma floresta cujo controlador de Schema é Windows Server 2003

A estrutura do Schema do Active Directory varia entre as versões do Windows Server. Por exemplo, se fomos adicionar um DC Windows Server 2008 em uma Floresta cujo controlador de Schema é um DC com Windows Server 2003, devemos rodar o adprep /forestprep que está localizado na mídia do Windows Server 2008.

Hoje fui criar um Child Domain com um DC 2003 R2 e o controlador de Schema era 2003
Deparei com o seguinte erro:


The Active Directory Installation Wizard cannot continue because the forest is not prepared for installing Windows Server 2003. Use the Adprep command-line tool to prepare both the forest and the domain. For more information about using the Adprep, see Active Directory Help.

The version of the Active Directory schema of the source forest is not compatible with the version of Active Directory on this computer

Peguei o disco 2 do Windows Server 2003 R2, inseri no DC Primario e naveguei até \CMPNENTS\R2\ADPREP\

Executei o comando:

adprep.exe /forestprep

Vai aparecer uma mensagem que a atualização irá refletir em toda a floresta. Para continuar, pressione C e depois enter.

Pronto ! O Schema da Floresta foi atualizado para o Windows Server 2003 R2. Após isso, reiniciei o dcpromo e tive êxito ao criar o child domain

sexta-feira, 13 de novembro de 2009

Recriar perfil de Usuário no Windows Vista

Quem está acostumada a recriar o Profile do usuário no Windows XP irá encontrar certa dificuldade ao realizar o mesmo procedimento no Windows Vista. Irá se deparar com o erro "O Windows fez logon com um perfil temporário..."

Para contornarmos esse problema , devemos ir no regedit na seguinte chave:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

Dentro desta chave, exclua a chave correspondente ao usuário.

Pronto ! Renomeie o perfil antigo , reinicie a máquina e logue com o usuário em questão.

Perfil zerado criado !

Exame 70-646

Após 4 meses de preparação , hoje realizei o exame 70-646 MCITP Server Administrator Windows Server 2008.

O exame é composto de 40 questões cujo objetivo principal das questões é mais conceitual do que técnico. A prova é bem elaborada , aliás , todas as novas provas da Microsoft estão avaliando melhor os candidatos, pois o foco é conceito.

Confesso que até a questão 30 tinha certeza que não iria passar. Digamos que 10 % das questões respondi com certeza. As demais foram por eliminação e chutômetro. Por Deus, da 30 em diante a situação clareou para mim: caiu bastante WSUS, Monitoramento através do WSRM, Configuração do FSRM e Backup, esses são meus pontos fortes. Tenho certeza que da 30 até a 40 não errei nenhuma.

Fui aprovado com 845 pontos. Agradeço a Deus por me ajudar nas questões que foram mais difíceis.

Estou muito feliz em ter sido aprovado neste exame, pois fechei todas as provas da formação MCITP Server Administrator.

domingo, 8 de novembro de 2009

Instalação do Snort + AcidBase

O Snort é um NIDS (Sistema de Detecção de Intruso na Rede) que gera alertas no caso de tentativa de ataques à uma rede coorporativa. Ele gera logs de acordo com a configuração feita no arquivo /etc/snort/snort.conf, salva estas informações em um Banco de Dados e as exibe em uma interface Web desenvolvida em PHP.

Neste tutorial , aprenderemos como configurar o pacote Snort + Apache + Mysql + Acidbase + PHP5


apt-get install mysql-server
apt-get install snort-mysql

Marcar para Não Configurar o Banco de Dados

Habilita o Snort aSalvar os Logs no Banco de Dados.
No arquivo /etc/snort/snort.conf, descomentar a linha

output database: log, mysql, user=snort password=senha dbname=snort host=localhost

E comente a linha

#output log_tcpdump: tcpdump.log

Criar a Base de Dados do Snort

mysql -u root -p
create database snort;
grant all privileges on snort.* to “snort”@“localhost” identified by “senha”;

Rodar o Script que cria a estrutura da Base de Dados do Snort apache.conf

cd /usr/share/doc/snort-mysql
gzip –d create_mysql.gz
mysql –u root –p snort < create_mysql
rm /etc/snort/db-pending-config

Reinicie o snort e Verifique se está tudo ok

/etc/init.d/snort restart

Instalar o Apache , PHP e outras dependências

apt-get install apache2
apt-get install php5-mysql
apt-get install libphp-adodb
apt-get install acidbase

No arquivo /etc/apache2/apache2.conf inserir a linha

Include /etc/acidbase/apache.conf

No Arquivo /etc/acidbase/apache.conf , colocar o endereço da sua rede local , como em :

allow from 192.168.1.0/255.255.255.0

Reinicie o apache e os outros serviços

/etc/init.d/apache2 restart
/etc/init.d/mysql restart
/etc/init.d/snort restart


Agora acesse http://servidor/acidbase

Desabilitando acesso via SSH do usuário root

Por medidas de segurança, devemos mudar a porta padrão de acesso via SSH e desabilitar o acesso do usuário root. Motivo: o usuário root existe em todos os sistemas linux e por padrão , tem permissão de acesso via SSH.

Acesse o arquivo /etc/ssh/sshd_config e mude de "yes" para "no" a seguinte linha:

PermitRootLogin no

No mesmo arquivo, mude a linha port 22 para port

Reinicie o SSH


/etc/init.d/ssh restart

Crie outro usuário no Sistema e o coloque no grupo root

Quando se logar no sistema via SSH como o novo usuário, digite "su" e entre com a senha do root. Pronto ! Agora você pode ter acesso total ao sistema !

segunda-feira, 2 de novembro de 2009

FwAnalog - Analisando os Logs do Iptables

O Fwanalog é uma ferramenta com interface Web que interpreta os logs do Iptables gerando um relatório HTML.

Com o FwAnalog podemos verificar quais são os ataques mais comuns no nosso servidor, quais as portas mais scanneadas, qual hora os pacotes são bloqueados com mais frequência, os IP's externos dos atacantes, enfim , muita informação importante para qualquer administrador de rede preocupado com a segurança de seus servidores.

Distribuição testada: Debian 5.0

apt-get install fwanalog

Para gerar os Logs, digite

fwanalog

Por padrão , o fwanalog salva os arquivos gerados na pasta /var/www/fwanalog.
Podemos mudar esse valor. Para isto abrimos o arquivo /etc/fwanalog/fwanalog.opts e editamos a primeira linha que é outdir="/var/www/fwanalog"

Podemos criar um site no apache e direcionar os logs para lá.

Vimos com este tutorial como é simples a instalação e configuração do fwanalog, uma ferramenta muito útil para qualquer administrador de redes.

Migração de Servidor Exchange para o Zimbra - O Básico

Esse tutorial visa mostrar o procedimento básico para migrar contas do Microsoft Exchange para o Zimbra Colaboraiton Server.

O Procedimento foi testado no Zimbra 6 instalado no Debian 5. A estação responsável pela migração estava com o Windows XP SP2 e outlook 2003 instalados.

Segue abaixo os procedimentos:

1.Na estação com o Windows XP , registre a dll ole32.dll com o comando regsvr ole32.dll
2.Instale o Outlook 2003, logue-se nela com a conta de Administrador e crie um perfil de e-mail do Exchange para esta conta
3. Baixe do site http://email.com.br/downloads/utilitarios o Migration Wizard para Exchange
4. A primeira tela do assistente pergunta o IP do servidor Zimbra, o usuário e senha do usuário administrador, aquele que vc cadastrou quando instalou o programa
5. Se o certificado do Zimbra não estiver instalado na estação, aparecerá uma mensagem de erro. Pode clicar em OK.
6.Selecione o Domínio cujas contas serão migradas
7. Em "select the MAPI profile", selecione o perfil da conta exchange do Administrador e avançar
8. Clique em Object Picker e selecione a conta do usuário Exchange que será migrada para o Zimbra. Avançar
9. Selecione os itens que serão migrados. Avançar
10. Clique em avançar mais uma vez e pronto ! A conta foi migrada para o Zimbra.

Ativando o Anti-Spam e o Anti-Vírus do Zimbra

Quando instalamos o Zimbra, o Kit de Segurança composto por ClamAV, Amavis e Spamassassim éstão desabilitados.
O Amavis é um Programa que faz a filtragem de E-Mails em um servidor.A filtragem é dividida em Scanner de Virus e Anti-Spam. O clamAV é responsável por scannear os vírus nos e-mails que chegam e o spamassassin é responsável por identificar os spams que chegam. Os três programas dependem um do outro.

Segue abaixo os passos necessários para uma configuração básica. O recomendável é ler cada arquivo de configuração e adaptar as opções ao seu ambiente.


No arquivo /opt/zimbra/conf/amavisd.conf


Descomentar as linhas

# @bypass_virus_checks_maps = (1);
# $final_virus_destiny = D_DISCARD

No arquivo /opt/zimbra/conf/spamassassin/local.cf

Descomentar:

# rewrite_header Subject *****SPAM*****
# report_safe 1
# lock_method flock
# required_score 5.0
# use_bayes 1
# bayes_auto_learn 1

No arquivo /opt/zimbra/conf/clamd.conf

Descomentar:

LocalSocket /opt/zimbra/data/clamav/clamav.sock
ScanPE yes
ScanELF yes
DetectBrokenExecutables yes
ScanOLE2 yes
ScanPDF yes
ScanMail yes
PhishingSignatures yes
PhishingScanURLs yes
ScanHTML yes
ScanArchive yes

Relay Autenticado no Zimbra

O IP's dos provedores de Banda Larga não nos permite enviar e-mails para provedores tais como UOL, Yahoo, IG dentre outros. Para mantermos um servidor de e-mail interno contornando esse problema, devemos configurar um smart host, ou seja um servidor SMTP externo que receberá todas as mensagens que nossa empresa envia para fora, realizará a consulta DNS e encaminhará para o provedor.

Segue abaixo as linhas que devem ser colocadas em /opt/zimbra/postfix-2.6.5.2z/conf/main.cf

relayhost = smtp.meuprovedor.com.br:25
# Linha que informa que o servidor acima requer autenticação
smtp_sasl_auth_enable = yes
smtp_cname_overrides_servername = no
# Essa linha determina como o pacote contendo o usuário e senha será enviado. Da #forma como está configurado abaixo, é a que a maioria dos provedores aceitam
#(locaweb,allnet,etc)
smtp_sasl_security_options= noanonymous
smtp_sasl_password_maps = hash:/opt/zimbra/conf/senha_relay

Crie um arquivo com o nome de senha_relay em /opt/zimbra/conf com a seguinte linha

smtp.meuprovedor.com.br TAB minhaconta@meuprovedor.com.br:123456

após inserir as linhas digite:

su - zimbra
postfix reload
postmap hash:/opt/zimbra/conf/senha_relay

Instalação do Zimbra

O ZCS Zimbra Colaboration Suite é uma alternativa de Software Livre para Exchange e Lotus Domino. Possui as funções de Compartilhamento de Tarefas, Calendários, Pastas de E-Mail, Agenda, além de permitir a sincronização com Dispositivos Móveis. O Zimbra também permite a integração com o Exchange e possui um plug-in para ser usado com o Microsoft Outlok 2003 e 2007. Esse plug-in só está disponível para versão Paga.

Esse é o primeiro de uma série de tutoriais sobre o Zimbra.


A instalação foi testada no Debian 5.0


Baixar o Zimbra no Site abaixo. Selecionar Debian 5

wget http://www.zimbra.com/community/downloads.html\zcs-5.0.9_GA_2533.DEBIAN5.0.20080815215219.tgz

Instalando os pacotes que o Zimbra precisa

apt-get install sudo libgmp3c2 libexpat1 libstdc++5 sysstat

Ative o sysstat em /etc/default sysstat mudando a chave de false para true

Removendo o Exim para não conflitar com o MTa do Zimbra

apt-get remove --purge exim4
apt-get remove --purge exim4-base
apt-get remove --purge exim4-config
apt-get remove --purge exim4-daemon-light

Altere o arquivo /etc/hosts

192.168.5.10 zimbra_server zimbra_server.meudominio.com.br



Descompactar o Arquivo baixado

tar xzf zcs-5.0.9_GA_2533.DEBIAN5.0.20080815215219.tgz

Executar o Script de Instalação

./install.sh

Instalar todas as opções disponíveis

No menu que se abrir, selecione somente a opção de alterar a senha e depois pressione "a" para aplicar. Só aguardar a

instalação e inicialização do serviço

Para verificar se o Status dos Serviços

su - zimbra
zmcontrol status

antispam Running
antivirus Running
ldap Running
logger Running
mailbox Running
mta Running
snmp Running
spell Running
stats Running

Para iniciar algum serviço

zmcontrol start


Para logar na console de administração do servidor

https://192.168.1.3:7071/zimbraAdmin/

quinta-feira, 15 de outubro de 2009

Gateway SMTP com SpamAssassin + Clamav + Amavis + Postfix

O objetivo deste tutorial é mostrar uma solução de Gateway SMTP Linux integrando 4 Produtos: Postfix, Clamav, Amavis e Spamassassin.
O principal meio para entrada de vírus em uma rede coorporativa é o e-mail. O Spam é outro fator preocupante para qualquer Administrador de Redes. Esse Gateway pode ser implantado
na frente de qualquer Servidor de E-Mail como Lotuso Domino, Exchange, Zimbra e outros. Para aumentarmos ainda mais a segurança , podemos implantar essa solução de Gateway SMTP
em um servidor fora da nossa Infra-Estrutura, evitando assim que Vírus e Spam's consumam a Banda de Internet.


Instalar os programas necessários:

apt-get install postfix
apt-get install spamassassin
apt-get install clamav
apt-get install amavis

No arquivo /etc/postfix/main.cf inserir as seguintes linhas abaixo

# Desabilitando a Entrega Local
mydestination =
local_recipient_maps =
local_transport = error:local mail delivery is disabled


# Habilitando a Origem - Esse é o domínio externo
myorigin = wilson.com.br


# Habilite as Redes Locais, inclusive a placa WAN

mynetworks = 192.168.0.0/24

# HAbilitando de qual dominio a mensagem será roteada

relay_domains = wilson.com.br

# Habilitando o mapeamento de Transporte

transport_maps = hash:/etc/postfix/transport

# Habilitando os usuarios de e-mail

relay_recipient_maps = hash:/etc/postfix/relay_recipients

No arquivo /etc/postfix/master.cf comentar a seguinte linha

# Desabilitar a Entrega Local no arquivo master.cf

#local unix - n n - - local

Agora crie 2 arquivos em /etc/postfix, um com o nome de relay_recipients e outro com transport

relay_recipients

#
# Aqui consta todos os e-mails externos dos seus usuários, se faltar alguns, o postfix não irá rotear as mensagens
wilson@wilson.com OK

Transport

#
# Aqui tem o nome do servidor que irá ser roteada as mensagens
# Domínio IP do servidor
wilson.com.br smtp:192.168.0.77


# Atualizando as COnfigurações


postmap hash:/etc/postfix/transport
postmap hash:/etc/postfix/relay_recipients

/etc/init.d/postfix restart


# Visualizar os Logs das Mensagens que entram

tail -f /var/log/mail.info



Acessar o arquivo /etc/defaults/spamassassin e mude ENABLED=0 para ENABLED=1


Acesse o arquivo /etc/spamassassin/local.cf e descomente as linhas:


rewrite_header Subject *****SPAM*****

report_safe 1

required_score 5

use_bayes 1

bayes_auto_learn 1

Ou entao se preferir, pode acessar o site abaixo que ela gera um arquivo local.cf com as configurações que vc escolher

http://www.yrex.com/spam/spamconfig.php

Reinicie o Serviço SpamAssassin


Ativando o Amavis

Acesse o arquivo /etc/postfix/master.cf e adicione as seguintes linhas no final:

# AMAVISD
#
smtp-amavis unix - - n - 10 smtp
-o smtp_data_done_timeout=1200
-o smtp_send_xforward_command=yes
-o disable_dns_lookups=yes
-o max_use=20
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=
-o local_recipient_maps=
-o virtual_mailbox_maps=
-o virtual_alias_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_delay_reject=no
-o smtpd_client_restrictions=permit_mynetworks,reject
-o smtpd_helo_restrictions=
-o smtpd_milters=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks_style=host
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
-o smtpd_error_sleep_time=0
-o smtpd_soft_error_limit=1001
-o smtpd_hard_error_limit=1000
-o smtpd_client_connection_count_limit=0
-o smtpd_client_connection_rate_limit=0
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings


Adicione no arquivo /etc/postfix/main.cf a seguinte linha

content_filter = smtp-amavis:[127.0.0.1]:10024


Restart no PostFix

/etc/init.d/postfix restart

Restart no Amavis

/etc/init.d/amavis restart

Testando a Eficiência do seu Anti-Virus

Vamos criar um arquivo que simula um vírus. Assim podemos testar se nosso anti-vírus está funcionando corretamente.

No bloco de notas, copie o seguinte código

X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

Salve o arquivo com o nome de virus.com

Agora é só mandar por e-mail, rodar scan..etc

terça-feira, 13 de outubro de 2009

Gateway HTTP com Squid + ClamAv + HAVP + SquidGuard

HAVP é um proxy Anti-Vírus para Linux. A função principal dele é scannear todo tráfego HTTP que passa por ele. Ele previne que seja feito download de arquivos infectados, abertura de página com scripts maliciosos dentre outros.

O SquidGuard são listas de sites divididas por temas. Com isso podemos efetuar o bloqueio atráves da classificação do tema dos sites.

Nesse tutorial, integramos o HAVP com o Squid. Para completar , colocamos o SquidGuard para reforçar ainda mais a segurança do nosso Servidor.


1. Instalar o Squid

2. Instalar o Clamav

apt-get install clamav clamav-base clamav-freshclam

3. Instalar o HAVP

Inserir o seguinte repositório no Sources.list

deb http://volatile.debian.org/debian-volatile etch/volatile main contrib non-free

Adquiri a Chave GPG com esse comando

wget -q http://www.debian.org/volatile/etch-volatile.asc -O- | apt-key add -

Instalação

apt-get install havp

4 Editar o arquivo /etc/havp/havp.config


# Acesso para acesso ao Proxy
USER havp
GROUP havp

# Faz o Log de Virus Encotnrados
LOG_OKS true

# Porta que o HAVP escuta
PORT 8080

# Default
BIND_ADDRESS 127.0.0.1

TEMPLATEPATH /etc/havp/templates/br

# Ativa o Engine do ClamAv para o filtro HTTP
ENABLECLAMLIB true
ENABLECLAMD false


5. No arquivo /etc/squid/squid.conf colocar as linhas antes das ACL

cache_peer localhost parent 8080 0 no-query no-digest no-netdb-exchange default
# A linha dá erros em alguns squid's
cache_peer_access localhost allow all
acl HTTP proto HTTP
never_direct allow HTTP

6 . Reinicie o Squid e o HAVP

/etc/init.d/squid restart
/etc/init.d/havp restart

7. Programe a Atualizacao do clamAV

Para saber onde está o clamAV

which freshclam

No webmin, selecionar Tarefas Agendadas. Colocar o seguinte comando para ser executado

/usr/bin/freshclam

Para Testar se o Gateway esta filtrando os virus, acessar o link

http://www.eicar.org/download/eicar_com.zip

Instalação e Configuração do SquidGuard

1 Instalacao do Squid Guard

apt-get install squidguard

2. Baixar as BlackLists

wget -c http://squidguard.mesd.k12.or.us/blacklists.tgz
wget -c http://www.shallalist.de/Downloads/shallalist.tar.gz

3 Copia as Blacklists para o diretorio /var/lib/squidguard/db/

cp blacklists.tgz shallalist.tar.gz /var/lib/squidguard/db/
cd /var/lib/squidguard/db/

4 Descompactar as blacklists

tar -zxvf blacklists.tgz
tar -zxvf shallalist.tar.gz

5 Modelo do Arquivo /etc/squid/squidGuard.conf


# /etc/squid/squidGuard.conf


dbhome /var/lib/squidguard/db/blacklists
logdir /var/log/squid



dest porn {
domainlist porn/domains
urllist porn/urls
}


dest proxy {
domainlist proxy/domains
urllist proxy/urls
}


acl {
default {
pass !porn !proxy all
redirect http://wilson-betaserver.blogspot.com.br
}
}


6. Converte as lista para uso

squidGuard -C all

7. Atribue as permissoes

chown -R proxy:proxy /var/lib/squidguard/db/*
find /var/lib/squidguard/db -type f | xargs chmod 644
find /var/lib/squidguard/db -type d | xargs chmod 755

8 Inserir essa linha antes das ACL

redirect_program /usr/bin/squidGuard

9. Reiniciar Squid

/etc/init.d/squid restart

10. Confirmacao se esta funcionando

tail /var/log/squid/squidGuard.log

Se aparecer essas linhas esta ok

2008-06-14 09:16:02 [4521] squidGuard 1.2.0 started (1208175362.060)
2008-06-14 09:16:02 [4521] squidGuard ready for requests (1208175362.105)

Regras de Segurança IPTABLES

# Protege contra os "Ping of Death"
$IPTABLES -A FORWARD -p icmp --icmp-type echo-request -m limit --limit
1/s -j ACCEPT

# Protege contra os ataques do tipo "Syn-flood, DoS, etc"
$IPTABLES -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT

# Permitir repassamento (NAT,DNAT,SNAT) de pacotes etabilizados e os
relatados ...
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Logar os pacotes mortos por inatividade ...
$IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG

# Protege contra port scanners avançados (Ex.: nmap)
$IPTABLES -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit
--limit 1/s -j ACCEPT

# Protege contra pacotes que podem procurar e obter informações da
rede interna ...
$IPTABLES -A FORWARD --protocol tcp --tcp-flags ALL SYN,ACK -j DROP

# Protege contra todos os pacotes danificados e ou suspeitos ...
$IPTABLES -A FORWARD -m unclean -j DROP

# Bloqueando tracertroute
$IPTABLES -A INPUT -p udp -s 0/0 -i $ENT --dport 33435:33525 -j DROP

# Protecoes contra ataques
$IPTABLES -A INPUT -m state --state INVALID -j DROP

# Performance - Setando acesso a web com delay minimo
$IPTABLES -t mangle -A OUTPUT -o $ENT -p tcp --dport 53 -j TOS
--set-tos Minimize-Delay
$IPTABLES -t mangle -A OUTPUT -o $ENT -p tcp --dport 80 -j TOS
--set-tos Minimize-Delay

# Deixa passar as portas UDP do servidores DNS, e Rejeitar o restante
$IPTABLES -A INPUT -i $ENT -p udp -s $IPDNSPROVEDOR -j ACCEPT
$IPTABLES -A INPUT -i $ENT -p udp -s $IPDNSPROVEDOR -j ACCEPT
$IPTABLES -A INPUT -i $ENT -p udp -j REJECT

# Bloqueia qualquer tentativa de conexao de fora para dentro por TCP
$IPTABLES -A INPUT -i $ENT -p tcp --syn -j DROP

# Mesmo assim fechar todas as portas abaixo de 32000
$IPTABLES -A INPUT -i $ENT -p tcp --dport :32000 -j DROP

# Responde pacotes icmp especificados e rejeita o restante
$IPTABLES -A INPUT -i $ENT -p icmp --icmp-type host-unreachable -j ACCEPT
$IPTABLES -A INPUT -i $ENT -p icmp --icmp-type source-quench -j ACCEPT
$IPTABLES -A INPUT -i $ENT -p icmp -j REJECT --reject-with
icmp-host-unreachable

# Rejeita o Kazaa (não testado ainda)
#$IPTABLES -A FORWARD -p tcp -m string --string X-Kazaa-Username: -j
REJECT --reject-with tcp-reset

# libera acesso interno da rede
$IPTABLES -A INPUT -p tcp --syn -s $REDEINT -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --syn -s $REDEINT -j ACCEPT
$IPTABLES -A FORWARD -p tcp --syn -s $REDEINT -j ACCEPT

# libera o loopback
$IPTABLES -A OUTPUT -p tcp --syn -s 127.0.0.1/255.0.0.0 -j ACCEPT

# libera conexoes de fora pra dentro
$IPTABLES -A INPUT -p tcp --destination-port 80 -j ACCEPT
#$IPTABLES -A INPUT -p tcp --destination-port 443 -j ACCEPT
#$IPTABLES -A INPUT -p tcp --destination-port 20 -j ACCEPT
#$IPTABLES -A INPUT -p tcp --destination-port 21 -j ACCEPT
#$IPTABLES -A INPUT -p tcp --destination-port 22 -j ACCEPT

#libera conexoes de dentro pra fora:
$IPTABLES -A OUTPUT -p tcp --destination-port 80 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --destination-port 3306 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --destination-port 22 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --destination-port 20 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --destination-port 21 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --destination-port 86 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --destination-port 5190 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --destination-port 443 -j ACCEPT

# libera o bittorrent - (não testado)
# troque o X.X.X.X pelo IP da máquina correspondente
#$IPTABLES -A INPUT -p tcp --destination-port 1214 -j ACCEPT
#$IPTABLES -t nat -A PREROUTING -i ppp0 -p tcp --dport 1214 -j DNAT
--to-dest X.X.X.X
#$IPTABLES -A FORWARD -p tcp -i ppp0 --dport 1214 -d X.X.X.X -j ACCEPT
#$IPTABLES -t nat -A PREROUTING -i ppp0 -p udp --dport 1214 -j DNAT
--to-dest X.X.X.X
#$IPTABLES -A FORWARD -p udp -i ppp0 --dport 1214 -d X.X.X.X -j ACCEPT

# faz o icq receber arquivos - (não testado)
# troque o X.X.X.X pelo IP da máquina correspondente
#$IPTABLES -A INPUT -p tcp --destination-port 2000:3000 -j ACCEPT
#$IPTABLES -t nat -A PREROUTING -i ppp0 -p tcp --dport 2000:3000 -j
DNAT --to-dest X.X.X.X
#$IPTABLES -A FORWARD -p tcp -i ppp0 --dport 2000:3000 -d X.X.X.X -j ACCEPT
#$IPTABLES -t nat -A PREROUTING -i ppp0 -p udp --dport 2000:3000 -j
DNAT --to-dest X.X.X.X
#$IPTABLES -A FORWARD -p udp -i ppp0 --dport 2000:3000 -d X.X.X.X -j ACCEPT

# compartilha a web na rede interna
$IPTABLES -t nat -A POSTROUTING -s $REDEINT -o ppp0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

# bloqueia o resto
$IPTABLES -A INPUT -p tcp --syn -j DROP
$IPTABLES -A OUTPUT -p tcp --syn -j DROP
$IPTABLES -A FORWARD -p tcp --syn -j DROP

# bloqueia ping
echo "0" > /proc/sys/net/ipv4/icmp_echo_ignore_all

segunda-feira, 12 de outubro de 2009

iptables - script básico

# Generated by iptables-save v1.4.2 on Mon Oct 12 13:47:41 2009
*mangle
:PREROUTING ACCEPT [24987:9959134]
:INPUT ACCEPT [14010:2346272]
:FORWARD ACCEPT [10973:7611900]
:OUTPUT ACCEPT [13936:935526]
:POSTROUTING ACCEPT [24913:8548388]
COMMIT
# Completed on Mon Oct 12 13:47:41 2009
# Generated by iptables-save v1.4.2 on Mon Oct 12 13:47:41 2009
*filter
:FORWARD ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:scanner - [0:0]
#
# Dropa pacotes TCP indesejáveis
#
-A FORWARD -p tcp -m state --state NEW -j LOG ! --syn --log-level 6 --log-prefix "FIREWALL: NEW sem syn: "
-A FORWARD -p tcp -m state --state NEW -j DROP ! --syn
#
# Proteção contra ping da morte
#
-A FORWARD -p icmp -m limit --icmp-type echo-request --limit 1/s -j ACCEPT
#
# Proteção contra ataque de loop-back
-A INPUT -m state --state INVALID -j DROP
#
# Protecao contra Ataque de Port Scanner
#
-A INPUT -p tcp -m tcp -i eth1 --tcp-flags SYN,ACK,FIN,RST,URG,PSH SYN,ACK,FIN,RST,URG,PSH -j scanner
-A scanner -m limit --limit 15/minute -j LOG
-A scanner -j DROP
#
# Permite Sites
#
-A INPUT -p tcp -m tcp -i eth1 --dport 8001 -j ACCEPT
#
# Permite Webmin
#
-A INPUT -p tcp -m tcp -i eth1 --dport 10000 -j ACCEPT
#
# Permite SSH
#
-A INPUT -p tcp -m tcp -i eth1 --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp -i eth1 -j DROP
COMMIT
# Completed on Mon Oct 12 13:47:41 2009
# Generated by iptables-save v1.4.2 on Mon Oct 12 13:47:41 2009
*nat
:OUTPUT ACCEPT [0:0]
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o eth1 -j MASQUERADE
#
# DNAT para Sites
#
-A PREROUTING -p tcp -m tcp -i eth1 --dport 8001 -j DNAT --to-destination 192.168.0.77
COMMIT
# Completed on Mon Oct 12 13:47:41 2009



Colocar essas seguintes linhas no rc.local


#
# Desativa o ping broadcasts
#
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
#
# Desativa o recurso Source Route
#
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
#
# Previne Ataques de Syn Cookies
#
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
#
# Previne que o Firewall Responda Flags provindos da mesma interfaces
#
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
#
#

Modelo Básico - squid.conf

http_port 3128
visible_hostname srvlxabreu02

cache_access_log /var/log/squid/access.log
# Configuracoes do Cache
cache_mem 64 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 512 KB
minimum_object_size 0 KB

cache_swap_low 90
cache_swap_high 95

# Autenticacao
auth_param basic program /usr/lib/squid/msnt_auth
auth_param basic children 5
auth_param basic realm Controle de Acesso a Internet

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_Ports port 80 443
acl purge method PURGE
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

# ACL

acl redelocal src 192.168.0.0/255.255.255.0
acl usuarios_liberados proxy_auth "/etc/squid/usuarios_liberados"
acl sites_bloqueados url_regex -i "/etc/squid/sites_bloqueados"
acl sites_liberados url_regex -i "/etc/squid/sites_liberados"

http_access allow localhost
http_access deny sites_bloqueados
http_access allow sites_liberados
http_access allow usuarios_liberados
http_access deny all

Instalacao e Configuração do SquidGuard

Instalação e Configuração do SquidGuard

1 Instalacao do Squid Guard

apt-get install squidguard

2. Baixar as BlackLists

wget -c http://squidguard.mesd.k12.or.us/blacklists.tgz
wget -c http://www.shallalist.de/Downloads/shallalist.tar.gz

3 Copia as Blacklists para o diretorio /var/lib/squidguard/db/

cp blacklists.tgz shallalist.tar.gz /var/lib/squidguard/db/
cd /var/lib/squidguard/db/

4 Descompactar as blacklists

tar -zxvf blacklists.tgz
tar -zxvf shallalist.tar.gz

5 Modelo do Arquivo /etc/squid/squidGuard.conf


# /etc/squid/squidGuard.conf


dbhome /var/lib/squidguard/db/blacklists
logdir /var/log/squid



dest porn {
domainlist porn/domains
urllist porn/urls
}


dest proxy {
domainlist proxy/domains
urllist proxy/urls
}


acl {
default {
pass !porn !proxy all
redirect http://wilson-betaserver.blogspot.com.br
}
}


6. Converte as lista para uso

squidGuard -C all

7. Atribue as permissoes

chown -R proxy:proxy /var/lib/squidguard/db/*
find /var/lib/squidguard/db -type f | xargs chmod 644
find /var/lib/squidguard/db -type d | xargs chmod 755

8 Inserir essa linha antes das ACL

redirect_program /usr/bin/squidGuard

9. Reiniciar Squid

/etc/init.d/squid restart

10. Confirmacao se esta funcionando

tail /var/log/squid/squidGuard.log

Se aparecer essas linhas esta ok

2008-06-14 09:16:02 [4521] squidGuard 1.2.0 started (1208175362.060)
2008-06-14 09:16:02 [4521] squidGuard ready for requests (1208175362.105)


11. Fim

Linux - Dois Ip's na mesma placa de Rede

Basta inserirmos no arquivo rc.local a seguinte linha

ifconfig ethx:0 192.168.0.1

Utilizando o Hping

O hping é um programa que server para fazer o mapeamento de uma rede, verificando quais hosts estão disponíveis atrás do firewall.

Segue abaixo os comandos mais comuns:

hping -p --syn -f -r

onde

--syn manda um pacote com o flag syn ligado. Ideal para mapear firewall com filtro de pacotes
-f pacotes fragmentados
-r Mostra o numero de IPID. Serve para verificar se o host mapeado tem muitos conexoes no momento.

sábado, 10 de outubro de 2009

Instalação e Configuração de um Controlador de Domínio Linux - PDC Samba

1. Instalar o Samba
apt-get install samba apt-get install smbclient
2. Criar usuarios no Webmin
3. Criar os Grupos
4. Inserir os Usuarios nos Grupos criados.
5. No Webmin, sincronizar os usuarios
6. No Webmin, resetar a senha dos usuarios no console do Samba
7. Usar esse arquivo como modelo

Conceder Permissoes as Pastas Compartilhadas:

chgrp g_rh /arquivos/rh
chmod 775 /arquivos/rh

Criando contas das Estacoes do Dominio:

useradd -d /dev/null -s /bin/false estacao01$passwd -l estacao01$smbpasswd -a -m estacao01

Criar o Arquivo netlogon.bat em /var/samba/netlogon

Criar uma pasta profiles em /var com as seguintes permissões:

chmod 1777 /var/profiles

Modelo de Configuracao do Samba que está funcionando em ambiente de produção

# Samba config file created using SWAT
# from UNKNOWN ()
# Date: 2009/09/12 14:14:38

[global]
netbios name = srvdebian02
workgroup = wilson.local
server string = Servidor PDC
domain master = yes
domain logons = yes
logon script = netlogon.bat
logon home = \\%L\%U.profiles
logon path = \\%L\profiles\%U

security = user
encrypt passwords = yes
enable privileges = yes
passdb backend = tdbsam
preferred master = yes
local master = yes
os level = 100
wins support = yes

printing = cups
load printers = yes
enable privileges = yes

[homes]
comment = Home Directories
valid users = %S
create mask = 0700
directory mask = 0700
browseable = No

[printers]
comment = All Printers
path = /var/spool/samba
create mask = 0700
printable = Yes
browseable = No

[print$]
comment = Printer Drivers
path = /var/lib/samba/printers

[netlogon]
browseable = no
path = /etc/netlogon
read only = yes

[profiles]
path = /var/profiles
writeable = yes
browseable = no
create mask = 0600
directory mask = 0700

[RH]
writeable = yes
path = /arquivos/rh
write list = @g_rh
force group = g_rh
valid users = @g_rh
create mode = 775
directory mode = 775

[Producao]
writeable = yes
path = /arquivos/producao
write list = @g_producao
force group = g_producao
valid users = @g_producao
create mode = 775
directory mode = 775

[Engenharia]
writeable = yes
path = /arquivos/engenharia
write list = @g_engenharia
force group = g_engenharia
valid users = @g_engenharia
create mode = 775
directory mode = 775

quarta-feira, 23 de setembro de 2009

NTOP - Instalacao

Instalacao do NTOP
apt-get install apache2

apt-get install ntop
# Cadastre a Senha

/usr/sbin/ntop -P /var/lib/ntop -U ntop -A
/etc/init.d/ntop start
Acesso:http://ip:3000

Squid - Autenticacao no AD

O Squid pode utilizar uma consulta LDAP para autenticar na Base do Active Directory através do módulo msntauth

No arquivo /etc/hosts colocar 192.168.0.10 srv-02

No arquivo /etc/squid/msntauth.conf digitar

server srv-02 srv-02 wilson.local

No arquivo /etc/squid/squid.conf digitar a seguinte linha
auth_param basic program /usr/lib/squid/msnt_authauth_param basic children 5auth_param basic realm Controle de Acesso a Internet
# Essa linha determina a lista dos usuarios que poderao acessar a netacl usuarios_liberados proxy_auth "/etc/squid/usuarios_liberados"

OCS Inventory Senha Inicial

Após instalar o OCS Inventory, Acessar o seguinte arquivo:
/etc/apache2/conf.d/ocsreports.conf

2. Limpar os seguintes campos
# Authorize for setup# # # For Apache 1.3 and 2.0# # AuthType Basic# AuthName "OCS Reports Setup"# AuthUserFile /etc/ocsinventory/htpasswd.setup# # For Apache 2.2# # AuthType Basic# AuthName "OCS Reports Setup"# AuthUserFile /etc/ocsinventory/htpasswd.setup# # Require valid-user#

3. Restart no Apache2
/etc/init.d/apache2 restart

Ativando o NAT

NAT é a tradução do Endereço IP interno para o Externo. Esse recurso permite que micros em uma rede local naveguem na internet sem possuir um IP público.

# Script para Ativa o NAT e o compartilhamento de Conexao# Deve ser colado em /etc/rc.local# Ele ativa automaticamente o NAT na placa quando o PC é iniciado

modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Instalacao do Cacti

Cacti é um software via web que gera gráfico estatísticos de desempenho de servidores e Qualquer equipamento que possui o protocolo SNMP

apt-get install apache2
apt-get install mysql-server
apt-get install cacti

Selecione Yes para configurar o db-common e selecione a opção apache2

Obs.: Pagina Inicial: http://servidor/cacti
Usuario: admin
Senha: admin

Selecionar Rdtool 1.2 - é a segunda opcao

colocar essa linha no arquivo /etc/crontab

*/1 * * * * root /usr/bin/php /var/www/cacti/poller.php > /dev/null 2>&1

/etc/init.d/cron restart

Instalacao do ZABBIX

Zabbix é um software de monitoramento de rede. Com ele podemos monitorar Roteadores, Servidores Linux e Windows, Links de Internet, Switches e qualquer outro equipamento que possui o protocolo SNMP.

apt-get install apache2
apt-get install mysql-server

colocar no /etc/apt/sources.list a linha

deb http://mirror.opf.slu.cz/zabbix unstable contrib deb http://mirror.opf.slu.cz/zabbix unstable contrib

# Atualiza o repositorio

apt-get update

# Instalacao das biliotecas

apt-get install libldap2-dev libmysqlclient-dev libssl-dev libsnmp-dev

apt-get install libapache2-mod-php5 php5-gd php5-mysql

# Instalar o FrontEnd PHP

apt-get install zabbix-frontend-php

# Instalar o ZABBIX

apt-get install zabbix-server-mysql

# Modificar o PHP. ini

/etc/php5/apache2/php.ini
Descomentar a linha date.timezone = America/Sao_Paulo

Instalacao do Agente Windows

1. Fazer download em :

http://www.zabbix.com/download.php

2. Instalar o winzip para descompactar o arquivo

3. Extrair os arquivo para c:\zabbix

4 . Criar um arquivo de nome zabbix_agentd.conf com o conteudo abaixo


# This is config file for zabbix_agent
# To get more information about ZABBIX,
# go http://www.zabbix.com

# IP address of ZABBIX server
# Connections from other hosts will be denied

Server=localhost

# Spend no more than Timeout seconds on processing
# Must be between 1 and 30

Timeout=3

####### USER-DEFINED MONITORED PARAMETERS #######
# Format: UserParameter=,
# Note that shell command must not return empty string or EOL only
#UserParameter=system.test,who|wc -l
### Set of parameter for monitoring MySQL server (v3.23.42 and later)
### Change -u and add -p if required
#UserParameter=mysql.ping,mysqladmin -uroot ping|grep alive|wc -l
#UserParameter=mysql.uptime,mysqladmin -uroot status|cut -f2 -d":"|cut -f1 -d"T"
#UserParameter=mysql.threads,mysqladmin -uroot status|cut -f3 -d":"|cut -f1 -d"Q"
#UserParameter=mysql.questions,mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S"
#UserParameter=mysql.slowqueries,mysqladmin -uroot status|cut -f5 -d":"|cut -f1 -d"O"
#UserParameter=mysql.qps,mysqladmin -uroot status|cut -f9 -d":"
#UserParameter=mysql.version,mysql -V


Vá no prompt do DOS (cmd) e instale o agente da seguinte forma:

cd\zabbix

C:\zabbix>zabbix_agentd.exe -i -c c:\zabbix\zabbix_agentd.conf
zabbix_agentd.exe [2092]: Service “ZABBIX Agent” installed successfully.
zabbix_agentd.exe [2092]: Event source “ZABBIX Agent” installed successfully.

inicie o serviço do zabbix pelo services.msc


Apos iniciar , va para interface de administracao do Zabbix entre em configuration, hosts, create hosts. Adicione o host recem criado.



sábado, 12 de setembro de 2009

Cadastrar Usuarios no SAMBA

Para adicionar novos usuarios no Samba é importante saber que ele precisa estar previamente criado no Linux. Isso pode ser feito da seguinte forma:

# adduser usuario

A partir daí, para criar o usuário no Samba:

# smbpasswd -a usuario

E para excluir: # smbpasswd -x usuario

quinta-feira, 10 de setembro de 2009

Instalacao do Webmin - Administracao via Web de Servidores Linux

Webmin é uma ferramenta que permite Administrar e Configurar um servidor Linux pela Web. A Administração é feita por módulos. Temos módulos para Postfix, Squid, MySql, Fetchmail, SpamAssassin e outros. Também é possivel realizar a instalação de módulos adicionais.

1. inserir no arquivo /etc/apt/sources.list a seguinte linha de repositorio

deb http://download.webmin.com/download/repository sarge contrib

agora , execute os seugintes comandos:

apt-get update
apt-get install webmin

https://192.168.0.7:10000/

Usuario : root
Senha: a senha do root do seu servidor

quarta-feira, 9 de setembro de 2009

Instalação do Nessus Server

Nessus é um programa cuja função é procurar vulnerabilidades em uma rede. Ele utiliza vários plug-ins e realiza testes nas portas abertas. Após os testes, emite um relatório detalhado de todos os erros encontrados e a solução para corrigí-los

apt-get install nessusd
# nessus-adduser
digite o nome de usuario
na proxima tela, pressionar ctrl D para pular
cadastre a senha.
reinicie o servico
/etc/init.d/nessusd restart

pode logar com o usuario e senha recem criado