quinta-feira, 23 de julho de 2009

Compartilhamento Internet

Um dos usos mais comuns e mais simples de um servidor linux é o compartilhamento de conexões.
Através desse compartilhamento de um servidor, podemos incluir outros serviços, como squid (sevidor proxy), filtros de conteúdo, firewall, dentre outros.
Para que possamos compartilhar e recomendável termos um equipamento com duas placas de redes, ficará mais fácil configurarmos as regras do firewall.
Depois do sistema operacional instalado, teremos que fazer as devidas configurações,.
No linux, o compartilhamento é feito usnado o Iptables, o firewall integrando ao kernel, então vamos ativar o compartilhamento, é necessário três comandos.

# modprobe iptable_nat
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A POSTROUNTING -o eth2 -j MASQUERADE


O primeiro comando ativa o iptable_nat, o módulo Iptables responsável por oferecer suporte ao roteamento de pacotes via NAT.

O segundo ativa "ip_forward", o módulo responsável pelo encaminhando de pacotes utilizado pelo módulo iptable_nat.

O terceiro comando cira uma regra de roteamento, que orienta o servidor a direcionar para a internet todos os pacotes (recebidos dos clientes) que se destinarem a endereços que não façam parte da rede local. A partir daí, o servidor passa ser o gateway da rede.

O eth2 no nosso terceiro comando será substituido pela placa de rede referente a que está recebendo o sinal da internet, esse comando compartilha a conexão proveniente da placa da internet com todas as demais placas de redes do servidor.

Podemos junto com esses três comandos uma série de serviços, como firewall, cache, mas com passar do tempo irei postamos complementos desse post.

Um grande abraço...

Mande uma mensagem e/ou comente esse e os demais posts.

albertoaalmeida@gmail.com



quarta-feira, 4 de março de 2009

Kernel Slackware 12 para maquinas scsi

Boa noitee pessoal,
A algum tempo atrás eu estava com problemas para instalar o slackware 12 no meu notebook, sempre travava na hora de carregar o kernel, em algumas pesquisas descobrir essa lista abaixo:
Lista completa (em inglês) dos Kernel’s que pode usar ao arrancar pelo CD.
  • adaptec.s - Supports most Adaptec SCSI and RAID controllers.
  • ataraid.i - bare.i with support for ATA RAID chipsets.
  • bare.i - The standard, generic IDE/ATAPI kernel.
  • bareacpi.i - bare.i with support for ACPI.
  • ibmmca.s - Supports old IBM Microchannel (PS/2) machines.
  • jfs.s - bare.i with support for IBM’s JFS and AIC7xxx.
  • old_cd.i - Supports very old CD drives.
  • pportide.i - Supports parallel-port disks and CD drives.
  • raid.s - Kernel with support for Compaq Smart Array, MylexDAC960, AcceleRAID, and eXtremeRAID controllers.
  • sata.i - bare.i with support for various SATA controllers.
  • scsi.s, scsi2.s, scsi3.s: Support various SCSI controllers.
  • speakup.s - bare.i with Speakup speech and Adaptec AIC7xxx SCSI.
  • xfs.s - bare.i with support for SGI’s XFS and AdaptecAIC7xxx support. *NO* ext2/ext3/reiserfs!

Bem após algumas tentativas, pois no artigo encontrado citava o adaptec.s, porém com meu notebook não funcionou.

Utilizei o kernel speakup.s e funcionou perfeitamente, hoje estou postando do meu slackware 12 rodando normalmente, queria ter postando antes, pois essa pesquisa foi feita na mesma época em que encontrei a instalação do slackware em video.

Bem pessoal espero que aproveitem essa nova dica.

Abraço a todos.


domingo, 4 de janeiro de 2009

Instalação do Slackware 12 em video.

Pessoal, achei esse video na net mostrando a instalação do Slackware 12, para as pessoas mais jovens no linux (distribuição slackware) pode ser muito útil, espero que aproveitem.







Fonte: www.youtube.com
tuxtoriais.wordpress.com/2007/10/14/como-instalar-o-slackware-12/

domingo, 14 de dezembro de 2008

MTA Exim


Hoje em dia, o e-mail executa um papel importantíssimo e absolutamente essencial na comunicação. A praticidade e rapidez com o que se podem enviar mensagens pela internet a vários destinatários, elegeram essa ferramenta como um dos principais recursos de comunicação utilizados na atualidades.

Com o seu crescimento, essa tecnologia trouxe consigo diversos benefícios, porém, trouxe malefícios também, como a grande proliferação de e-mails indesejados, ou seja, os Spams, os vírus e/ou códigos maliciosos que vêm acarretando prejuízos financeiros, seja por perda de tempo, com leituras de informações confidênciais ou com a destruição de informações preciosas da empresas.

O objetivo desse post e falar sobre o MTA (Mail Transfer Agent) Exim, juntamente com o anti-virus Clamav e anti-spam SpamAssassin.

O Exim é um MTA livre desenvolvido pela Universidade de Cambridge por Philip Hazel em 1995, para usos de serviços de computação da universidade e para ser usado por sistemas Unix conectados a internet. Esse software está disponível livremente sob os termos da Licença Pública Geral (GNU GPL).

Dentre as inúmeras vantagens do Exim sobre outros MTA do mercado, têm-se a segurança e a facilidade de controle e auditoria, além do poder das configurações e da facilidade de integração com bancos de dados e outras ferramentas.


O Clam Antivirus (Clamav) é um antivírus open source que possui versões para Windows (o ClamWin) e Linux, com atualizações diárias. É disponibilizado pela licença GPL. O Clamav para Linux, pode ser usado pela linha de comando, ou baixando um pacote especial para ser usada em uma interface gráfica, pelo pacote ClamTK.

O Clamav é um pacote de ferramentas anti-vírus específico para correio eletrônico em servidores de e-mail. O Clamav possui várias funcionalidades. Algumas delas:
· Análise em linha de comando;
· análise automática “ao acesso”;
· suporte incorporado da maioria dos formato de correio.

O SpamAssassin é um programa de computador licenciado por meio da licença Apache e utilizado como filtro de spam enviado através de mensagem eletrônica.

Esse post é uma parte do meu projeto de estágio da faculdade, o objetivo e na próxima postagem mostrar a instação e cofiguração do MTA na distribuição Slacwkare.

Abraços...



terça-feira, 18 de novembro de 2008

Firewall com iptables Linux

Imagine um cenário onde teremos uma interface de rede voltada para o roteador de saída(INTERNET) com o ip 192.168.100.2 eem eth1 para rede 192.168.254.0/24 em eth0 para rede local. Segue um exemplode firewall para esta situação.

Módulos necessários:

iptable_nat
ip_tables
ipt_state
ip_conntrack
ip_conntrack_ftp
ipt_multiport
ip_nat_ftp
iptable_mangle
ipt_tos
ipt_limit
ipt_ttl
iptable_filter
ipt_MASQUERADE
ipt_LOG
#ipt_layer7
nf_nat
iptable_mangle
xt_string
ts_kmp
xt_MARK
xt_mark
xt_CONNMARK

######## SCRIPT DE FIREWALL #################

#!/bin/bash
################################ Limpa tables e seta variaveis do kernel ############################
echo "Iniciando firewall.."
echo "Limpando tabelas e setando variaveis do kernel.."
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

### Variaveis ###
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 2 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 2 > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo 2 > /proc/sys/net/ipv4/conf/eth1/rp_filter
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo "0" > /proc/sys/net/ipv4/conf/eth0/accept_source_route
echo "0" > /proc/sys/net/ipv4/conf/eth1/accept_source_route

### Seta Politicas de privacidade ###
echo "Setando politicas de privacidade.."
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

# Abre a interface de loopback.
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

########################## SNAT - COMPARTILHAMENTO ########################
echo "Habilitando compartilhamento.."
iptables -t nat -A POSTROUTING -s 192.168.254.0/24 -j SNAT --to-source 192.168.100.2
More...
########################## Seta prioridades TOS ##########################
echo "Dando prioridades TOS para portas e ips importantes.."
PRIO="20 21 25 53 80 110 137 139 445 443 8046 20000"
IPSPRIO="192.168.10.0/24 192.168.3.0/24"

for i in $PRIO; do
echo " -Prioridade para porta $i tcp/udp"
iptables -t mangle -A PREROUTING -p tcp --dport $i -j TOS --set-tos 16
iptables -t mangle -A PREROUTING -p udp --dport $i -j TOS --set-tos 16
iptables -t mangle -A PREROUTING -p tcp --sport $i -j TOS --set-tos 16
iptables -t mangle -A PREROUTING -p udp --sport $i -j TOS --set-tos 16
done

for i in $IPSPRIO; do
echo " -Dada prioridade para ip $i"
iptables -t mangle -A PREROUTING -s $i -j TOS --set-tos 16
iptables -t mangle -A PREROUTING -d $i -j TOS --set-tos 16
iptables -t mangle -A PREROUTING -p icmp -s $i -j TOS --set-tos 16
iptables -t mangle -A PREROUTING -p icmp -d $i -j TOS --set-tos 16
done

##################### Bloqueio de sites por string ##################
echo "Fazendo bloqueio por palavras.."
PALAVRAS="putaria putas gays playboy superiorpics"

for i in $PALAVRAS; do
echo " -Bloqueio feito para a string $i"
iptables -t mangle -A FORWARD -p tcp --dport 80 -m string --string "$i" --algo kmp -j DROP
done

################### Libera serviços para este roteador #############
echo "Liberando portas de servicos a para esse roteador.."
PORTSALLOW="53 80 123 8046 8081 8082 20000 4445 5550"

for i in $PORTSALLOW; do
iptables -A INPUT -p tcp --dport $i -j ACCEPT
iptables -A INPUT -p udp --dport $i -j ACCEPT
iptables -A INPUT -p tcp --sport $i -j ACCEPT
iptables -A INPUT -p udp --sport $i -j ACCEPT
done

############################### REDIRECIONAMENTO DE PORTAS ###############
echo "Redirecionando portas da internet para micros da rede interna.."
EXTIP="192.168.100.2"

iptables -A PREROUTING -t nat -i eth1 -p tcp -d $EXTIP --dport 8081 -j DNAT --to 192.168.10.5:80

iptables -A PREROUTING -t nat -i eth1 -m multiport -p tcp -d $EXTIP --dport 4550,5550,3650,3550,90 -j DNAT --to 192.168.254.31
iptables -A PREROUTING -t nat -i eth1 -m multiport -p udp -d $EXTIP --dport 4550,5550,3650,3550,90 -j DNAT --to 192.168.254.31

######################Protege contra pacotes danificados e alguns ataques
## PROTECOES
# ------------------------------------------------------
# CONTRA TROJANS
echo "Bloqueando contra trojans e logando pacotes.."
iptables -N TROJAN
iptables -A TROJAN -j LOG --log-prefix '** TROJANS E WORMS **' --log-level debug
iptables -A FORWARD -p tcp --dport 666 -j TROJAN
iptables -A FORWARD -p tcp --dport 4000 -j TROJAN
iptables -A FORWARD -p tcp --dport 6000 -j TROJAN
iptables -A FORWARD -p tcp --dport 6006 -j TROJAN
iptables -A FORWARD -p tcp --dport 16660 -j TROJAN
iptables -A FORWARD -p tcp --dport 135 -i eth1 -j TROJAN
iptables -A FORWARD -p tcp --dport 137 -i eth1 -j TROJAN
iptables -A FORWARD -p tcp --dport 139 -i eth1 -j TROJAN
iptables -A FORWARD -p udp --dport 69 -i eth1 -j TROJAN
iptables -A TROJAN -j DROP

####### #BLOQUEIA PING EM EXCESSO

echo "Bloqueando ping flood.." iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
# Libera pacotes tcp e udp de conexoes ja estabelecidas ou relacionadas

iptables -A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

### Bloqueia Tudo Que chega a esse roteador e bloqueia FORWARD para rede interna #######################
echo "Bloquando tudo que restou.."
iptables -A INPUT -p tcp -j DROP
iptables -A INPUT -p udp -j DROP
iptables -A FORWARD -i eth1 -p tcp -j DROP
iptables -A FORWARD -i eth1 -p udp -j DROP
echo "Firewall iniciando!"



Esse artigo tem como fonte o site: www.marcelosantana.com.br, é de um grande amigo/parceiro grande conhecedor do mundo linux, espero que aproveitem e tirem o máximo de informação possível.

Abraços..