<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tiago Gomes</title>
	<atom:link href="http://www.tiagogomes.eti.br/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.tiagogomes.eti.br</link>
	<description>LPIC ID - LPI000129445   -   ITIL FOUNDATION V2 ID - SR341901</description>
	<lastBuildDate>Mon, 05 Jul 2010 17:19:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Balanceamento entre links com Mikrotik</title>
		<link>http://www.tiagogomes.eti.br/balanceamento-entre-links-mikrotik/</link>
		<comments>http://www.tiagogomes.eti.br/balanceamento-entre-links-mikrotik/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 20:42:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>
		<category><![CDATA[balanceamento]]></category>
		<category><![CDATA[ECMP]]></category>
		<category><![CDATA[link]]></category>
		<category><![CDATA[loadbalance]]></category>
		<category><![CDATA[mikrotik]]></category>
		<category><![CDATA[PCC]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/?p=96</guid>
		<description><![CDATA[
Existem duas técnicas bastante utilizadas para balancemanetos entre links, o ECMP (Equal Cost Multi-Path) e o PCC (per-connection-classifier), em se tratando de mikrotik. No PCC ocorre a divisão em igual fluxo a partir de parâmetros pré-definidos, como src-address, src-port, dst-address, dst-port. Ou seja, o PCC torna-se ótimo para balanceamento e alta disponibilidade em cenários onde [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.tiagogomes.eti.br/wp-content/uploads/2010/03/teste.jpg.png" onclick=""><img src="http://www.tiagogomes.eti.br/wp-content/uploads/2010/03/teste.jpg-225x300.png" alt="" title="teste.jpg" width="225" height="300" class="alignnone size-medium wp-image-99" /></a><br />
Existem duas técnicas bastante utilizadas para balancemanetos entre links, o ECMP (Equal Cost Multi-Path) e o PCC (per-connection-classifier), em se tratando de mikrotik. No PCC ocorre a divisão em igual fluxo a partir de parâmetros pré-definidos, como src-address, src-port, dst-address, dst-port. Ou seja, o PCC torna-se ótimo para balanceamento e alta disponibilidade em cenários onde há preocupação em manter sessões a partir de origem, como msn e tráfego SSL. Para esta técnica, disponível apenas a partir da versa 3.24 do RouterOs, os pacotes tem de retornar pela wan onde entraram, fazendo assim necessário a classificação do tráfego nas wan&#8217;s a partir das critérios definidos, forçando a sair pelo gateways onde as sessões estão persistentes. No ECMP os pacotes podem sair por wan&#8217;s diferentes das que entraram, apesar de mascarar uma única saída, a entrega dos pacotes continuará sendo a partir de diferentes  gateways, não forçando que a entrega seja feito a partir de sua origem quando se estabeleceu a sessão. O ECMP possibilita a escabilidade de carga entre links, podendo definir que o maior link participe mais do balanceamento que outro, ou seja, entre 1 link com taxas de 3Mb/s e outro de 1Mb/s podemos definir o que o link 1 atue com 2/3 no balanceamento e o outro com 1/3 .         </p>
<p><strong>Cenário:</strong></p>
<p><strong>Dois links de igual tamanho:</strong></p>
<p>Link1 : 192.168.1.254<br />
Link2 : 192.168.2.254</p>
<p><strong>Interfaces Wan Mikrotik:</strong></p>
<p>ether2: 192.168.1.250<br />
ether3: 192.168.2.250</p>
<p><strong>Interface local Mikrotik :</strong></p>
<p>ether1: 192.168.0.1</p>
<p><strong>Técnicas: </strong></p>
<p><a href="#ECMP">ECMP</a><br />
<a href="#PCC">PCC</a></p>
<p><strong>ECMP</strong><a id="ECMP" title="ECMP" name="ECMP"></a></p>
<p>;Definição de interfaces</p>
<p><code>/ ip address<br />
add address=192.168.0.1/24 network=192.168.0.0 broadcast=192.168.0.255 interface=ether1<br />
add address=192.168.1.250/24 network=192.168.1.0 broadcast=192.168.1.255 interface=ether2<br />
add address=192.168.2.250/24 network=192.168.2.0 broadcast=192.168.2.255 interface=ether3</code></p>
<p>;Failover e definição de balanceamento 1:1 . Caso o check-gateway aponte falha em um gateway ele irá remover o gateway da listagem  </p>
<p><code>/ ip route<br />
add dst-address=0.0.0.0/0 gateway=192.168.1.254,192.168.2.254 check-gateway=ping </code></p>
<p>;Saídas dos pacotes pelas interfaces Nateado para os ip&#8217;s de respectivos  </p>
<p><code>/ ip firewall nat<br />
add chain=srcnat out-interface=ether2 action=masquerade<br />
add chain=srcnat out-interface=ether3 action=masquerade</code></p>
<p>; Marcação de conexões e rotas para mascaramento da saída independente da origem, quem entra pela wan1 pode sair pela wan2</p>
<p><code>/ ip firewall mangle<br />
add chain=input in-interface=ether2 action=mark-connection new-connection-mark=wlan1_conn<br />
add chain=input in-interface=ether3 action=mark-connection new-connection-mark=wlan2_conn<br />
add chain=output connection-mark=wlan1_conn action=mark-routing new-routing-mark=to_wla1<br />
add chain=output connection-mark=wlan2_conn action=mark-routing new-routing-mark=to_wla2   </code>  </p>
<p><code>/ ip route<br />
add dst-address=0.0.0.0/0 gateway=192.168.1.254 routing-mark=to_wla1<br />
add dst-address=0.0.0.0/0 gateway=192.168.2.254 routing-mark=to_wla2<br />
</code><br />
<strong>PCC</strong><a id="PCC" title="PCC" name="PCC"></a></p>
<p>;Definição de interfaces</p>
<p><code>/ ip address<br />
add address=192.168.0.1/24 network=192.168.0.0 broadcast=192.168.0.255 interface=ether1<br />
add address=192.168.1.250/24 network=192.168.1.0 broadcast=192.168.1.255 interface=ether2<br />
add address=192.168.2.250/24 network=192.168.2.0 broadcast=192.168.2.255 interface=ether3</code></p>
<p>;Marcar as conexões de entrada para que saiam pela interface que entrou</p>
<p><code> / Ip firewall mangle<br />
add chain=input in-interface=ether2 action=mark-connection new-connection-mark=wlan1_conn add chain=input in-interface=ether2 action=mark-connection new-connection-mark=wlan1_conn<br />
add chain=input in-interface=ether3 action=mark-connection new-connection-mark=wlan2_conn add chain = input in-interface=ether3 action=mark-connection new-connection-mark=wlan2_conn</code></p>
<p>; Marcação de saída no roteador para encaminhamento adequado</p>
<p><code>add chain=output connection-mark=wlan1_conn action=mark-routing new-routing-mark=to_wlan1<br />
add chain=output connection-mark=wlan2_conn action=mark-routing new-routing-mark=to_wlan2</code></p>
<p>; Através da política de roteamento forçaremos as saídas pelos respectivos gateways. </p>
<p><code>add chain=prerouting  dst-address=192.168.1.0/24  action=accept in-interface=ether1<br />
add chain=prerouting  dst-address=192.168.2.0/24  action=accept in-interface=ether1</code></p>
<p>; Iremos dividir em dois grupos para marcação de rotas para Internet a partir da política de roteamento, excluindo o tráfego local, já que o prerounting, na marcação, captura todo tráfego. Usaremos como critério de balanceamento e distinção entre sessões de rotas &#8220;source and destination addressees&#8221; </p>
<p><code>add chain=prerouting dst-address-type=!local in-interface=ether1 per-connection-classifier=both-addresses:2/0 \<br />
    action=mark-connection new-connection-mark=wlan1_conn passthrough=yes<br />
add chain=prerouting dst-address-type=!local in-interface=ether1 per-connection-classifier=both-addresses:2/1 \<br />
    action=mark-connection new-connection-mark=wlan2_conn passthrough=yes</code></p>
<p>; Marcação dos pacotes oriundas das conexões já marcadas</p>
<p><code>add chain=prerouting connection-mark=wlan1_conn in-interface=ether1 action=mark-routing new-routing-mark=to_wlan1<br />
add chain=prerouting connection-mark=wlan2_conn in-interface=ether1 action=mark-routing new-routing-mark=to_wlan2<br />
</code><br />
; Criando rota para cada marcação</p>
<p><code>/ ip route<br />
add dst-address=0.0.0.0/0 gateway=192.168.1.254 routing-mark=to_wlan1 check-gateway=ping<br />
add dst-address=0.0.0.0/0 gateway=192.168.2.254 routing-mark=to_wlan2 check-gateway=ping<br />
</code><br />
; Habilitando Failover</p>
<p><code>add dst-address=0.0.0.0/0 gateway=192.168.1.254 distance=1 check-gateway=ping<br />
add dst-address=0.0.0.0/0 gateway=192.168.2.254 distance=2 check-gateway=ping<br />
</code><br />
; Mascararemos o tráfego para saída a partir das devidas interfaces, de acordo o ip de origem</p>
<p><code>/ ip firewall nat<br />
add chain=srcnat out-interface=ether2 action=masquerade<br />
add chain=srcnat out-interface=ether3 action=masquerade</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/balanceamento-entre-links-mikrotik/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Alteração em índice de vídeos (Download Progressivo)</title>
		<link>http://www.tiagogomes.eti.br/alteracao-em-indice-de-videos-download-progressivo/</link>
		<comments>http://www.tiagogomes.eti.br/alteracao-em-indice-de-videos-download-progressivo/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 15:57:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>
		<category><![CDATA[bitrate]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[gpac]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[mp4box]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/?p=90</guid>
		<description><![CDATA[Problema com demora ao carregar vídeos em downloads progressivos(via HTTP) pode ser facilmente resolvido com multiplexador para arquivos MP4, chamado MP4Box. Esse problema se dá ao fato de não haver tempo de intercalação definido para os dados, ou seja, intervalo de tempo para leitura das informações sobre o vídeo, do index. Essas informações são: tempo, [...]]]></description>
			<content:encoded><![CDATA[<p>Problema com demora ao carregar vídeos em downloads progressivos(via HTTP) pode ser facilmente resolvido com multiplexador para arquivos MP4, chamado MP4Box. Esse problema se dá ao fato de não haver tempo de intercalação definido para os dados, ou seja, intervalo de tempo para leitura das informações sobre o vídeo, do index. Essas informações são: tempo, bitrate entre outros . Grosseiramente falando , é necessário trazer o index do vídeo para frente! rs. </p>
<p>O Script abaixo altera o tempo de intercalação para 300 ms fazendo com que o vídeo seja carregado de forma instantânea enquanto é baixado pelo player, ainda é possível enviar o vídeo através de FTP no mesmo script.</p>
<p>Dependências para o MP4Box: gpac build-essential zlib1g-dev </p>
<p>O script para conversão chamada outro script para envio ftp, segue os dois códigos:</p>
<ul>
<strong>Script de conversão: alteraind.sh</strong></ul>
<p><code><br />
#! /bin/bash</p>
<p>#<br />
# Tiago Gomes Pereira - 27/01/2010<br />
#</p>
<p>if [ ! $1 ] || [ ! $2 ]<br />
then<br />
        echo "Falta nome do vídeo ou caminho local , Estrume"<br />
        echo "alteraind.sh nomedovideo.mp4 /host.com.br/video/2009/11"<br />
        exit 19<br />
fi</p>
<p>######################### VARIAVEIS<br />
# Com tempo de índice de 300ms</p>
<p># Nome Vídeo<br />
VIDEO=$1<br />
# Caminho<br />
caminho=$2</p>
<p>##################################<br />
# Extrai caminhos de diretório<br />
localdir=`dirname $VIDEO`</p>
<p># Extrai arquivo<br />
localfile=`basename $VIDEO`</p>
<p>cd $localdir</p>
<p>################ Executa Conversão<br />
/usr/local/bin/MP4Box -inter 300 $localfile &#038;<br />
#################</p>
<p>################# Se conversão Ok, manda , se não, manda também.<br />
if [ $? = "0" ] ; then</p>
<p>   echo `date "+%Y-%m-%d %H:%M:%S INFO: [ VIDEO ] SUCESSO NA CONVERSAO DE $VIDEO"` >> /var/log/enviovideo.log<br />
   /bin/envftp.sh $VIDEO $caminho &#038;</p>
<p> else</p>
<p>     echo `date "+%Y-%m-%d %H:%M:%S ERRO: [ VIDEO ] ERRO NA CONVERSAO DE $VIDEO"` >> /var/log/enviovideo.log<br />
     /bin/envftp.sh $VIDEO $caminho &#038;<br />
fi</p>
<p></code></p>
<ul>
<strong>script para envio FTP: envftp.sh</strong></ul>
<p><code><br />
#! /bin/bash<br />
#<br />
# Tiago Gomes Pereira - 27/01/2010<br />
#</p>
<p>if [ ! $1 ] || [ ! $2 ]<br />
then<br />
        echo "Falta nome do vídeo ou caminho , Estrume"<br />
        echo "envftp.sh nomedovideo.mp4 /host.com.br/video/2009/11"<br />
        exit 19<br />
fi</p>
<p>VIDEO1=$1<br />
CAMINHO1=$2</p>
<p>####################### Dados FTP<br />
caminhoArq="$VIDEO1"<br />
host=host.com<br />
usuario="usuario"<br />
senha="senha"</p>
<p># Identificação de arquivos e diretórios remotos a serem utilizados pelo ftp</p>
<p>localdir=`dirname $caminhoArq`<br />
localfile=`basename $caminhoArq`</p>
<p>#################################</p>
<p>echo `date "+%Y-%m-%d %H:%M:%S INFO: [ FTP ] INICIO DA TRANSFERENCIA DE $VIDEO1 EM http://host.com/$CAMINHO1"` >> /var/log/enviovideo.log</p>
<p>################### Transação FTP<br />
ftp -un $host <<EOF<br />
quote USER $usuario<br />
quote PASS $senha<br />
lcd $localdir<br />
cd $CAMINHO1<br />
binary<br />
put $localfile<br />
quit<br />
EOF<br />
################################<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/alteracao-em-indice-de-videos-download-progressivo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bridge Mikrotik</title>
		<link>http://www.tiagogomes.eti.br/bridge-mikrotik/</link>
		<comments>http://www.tiagogomes.eti.br/bridge-mikrotik/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 17:54:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>
		<category><![CDATA[bloqueio dhcp]]></category>
		<category><![CDATA[bloqueio vírus]]></category>
		<category><![CDATA[bridge]]></category>
		<category><![CDATA[mikrotik]]></category>
		<category><![CDATA[neighbor]]></category>
		<category><![CDATA[provedor]]></category>
		<category><![CDATA[virus]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/?p=78</guid>
		<description><![CDATA[Há tempos procuramos uma forma prática para filtro e classificação de pacotes através de bridges em determinados segmentos da rede. Heis que surge a solução, e de peso,  utilizando apenas uma Router Board com mikrotik que mais assemelha-se a um pequeno HUB. Com isso, é possível substituir aquelas CPU&#8217;S que ocupam espaço e estão [...]]]></description>
			<content:encoded><![CDATA[<p>Há tempos procuramos uma forma prática para filtro e classificação de pacotes através de bridges em determinados segmentos da rede. Heis que surge a solução, e de peso,  utilizando apenas uma Router Board com mikrotik que mais assemelha-se a um pequeno HUB. Com isso, é possível substituir aquelas CPU&#8217;S que ocupam espaço e estão sujeitas a mais um grau de complexidade no que diz respeito a falhas e configuração.</p>
<ul>
<strong>Especificação do equipamento:<br />
</strong></ul>
<p>Dimensões &#8211;  Peso: 12 cm x 09 cm x 28 cm / Peso: 210 g<br />
CPU: Atheros AR7240 300MHz Processador de Rede<br />
Memoria: 32MB DDR SDRAM onboard<br />
Armazenamento: 64MB onboard NAND memory chip<br />
Ethernet: Cinco portas 10/100 (switch) com Auto-MDI/X<br />
Consumo de Energia: 6W consumo medio, máximo 10W<br />
Sistema Operacional: MikroTik RouterOS v3, Level4<br />
Preço: Entre R$ 179,00 a R$ 192,00</p>
<p>O propósito é que o tráfego em determinado segmento da rede ou domínio de colisão entre por uma porta ( a qual enxergará demais portas &#8211; Trunk ) e seja passado às demais portas as quais os hosts direcionados estejam conectados. As portas, com excessão da ether1 , não se comunicarão entre si. Além dos filtros para dropagem de alguns vírus e malware, e tráfego broadcast, será impedido tráfego oriundos da porta 67 e protocolo UDP ( servidores que desejam fornecer o DHCPOFFER na rede) a fim de evitar servidores dhcp alheios ofereçam ip a nossos clientes.</p>
<p><strong>
<ul>
Cenário:</ul>
<p></strong></p>
<p>. O link a partir do segmento de rede o qual o tráfego será repassado para os demais pontos entrará na ETHER1, assim como tráfego do backbone.<br />
. Clientes internos ou seguimentos que se conectam com o Link entrante ficarão entre a ETHER2 e a ETHER4 .<br />
. Opcionalmente a ETHER5  será utilizada por outro segmento que realiza enlace com algum ponto conectado à RouterBoard, uma antena repetidora que recebe tráfego do link entrante, mas pode ser utilizado como outro cliente das demais portas. </p>
<p><a href="http://www.tiagogomes.eti.br/wp-content/uploads/2010/03/RB2.jpg1.png" onclick=""><img src="http://www.tiagogomes.eti.br/wp-content/uploads/2010/03/RB2.jpg1-265x300.png" alt="" title="RB2.jpg" width="265" height="300" class="alignnone size-medium wp-image-80" /></a></p>
<p><strong>
<ul>
 Criando a interface Bridge entre as portas :</ul>
<p></strong></p>
<p><code>/interface bridge<br />
add admin-mac=00:00:00:00:00:00 ageing-time=5m arp=enabled auto-mac=yes comment="" disabled=no forward-delay=15s l2mtu=1524 max-message-age=20s mtu=1500 name=bridge1 priority=\<br />
    0x8000 protocol-mode=none transmit-hold-count=6<br />
</code><br />
<strong>
<ul>
Adicionando as portas à Bridge</ul>
<p></strong></p>
<p><code>/interface bridge port<br />
add bridge=bridge1 comment="" disabled=no edge=auto external-fdb=auto horizon=none interface=ether1 path-cost=10 point-to-point=auto priority=0x80<br />
add bridge=bridge1 comment="" disabled=no edge=auto external-fdb=auto horizon=none interface=ether5 path-cost=10 point-to-point=auto priority=0x80<br />
add bridge=bridge1 comment="" disabled=no edge=auto external-fdb=auto horizon=none interface=ether4 path-cost=10 point-to-point=auto priority=0x80<br />
add bridge=bridge1 comment="" disabled=no edge=auto external-fdb=auto horizon=none interface=ether3 path-cost=10 point-to-point=auto priority=0x80<br />
add bridge=bridge1 comment="" disabled=no edge=auto external-fdb=auto horizon=none interface=ether2 path-cost=10 point-to-point=auto priority=0x80</code></p>
<p>.. e permitindo filtros a patir do firewall</p>
<p><code>/interface bridge settings<br />
set use-ip-firewall=yes use-ip-firewall-for-pppoe=no use-ip-firewall-for-vlan=no</code></p>
<p><strong>
<ul>
 Bloqueando tráfego entre as portas exclusive a ether1, pois essa será nossa trunk</ul>
<p></strong></p>
<p><code>/interface bridge filter<br />
add action=drop chain=forward comment="" disabled=no in-bridge=bridge1 in-interface=!ether1 out-bridge=bridge1 out-interface=!ether1<br />
</code><br />
<strong>
<ul>
Adicionando NAT ao ip firewall para tratamento do tráfego da bridge pela camada de aplicação ( Firewall filter convencional do MK  ):</ul>
<p></strong></p>
<p><code>/ip firewall nat<br />
add action=accept chain=srcnat comment="" disabled=no out-interface=bridge1</code></p>
<p><strong>
<ul>
Adicionando filtros para dropar malware&#8217;s, dhcp a partir de clientes, forward entre portas, etc &#8230; </ul>
<p></strong></p>
<p><code>/ip firewall filter<br />
add action=drop chain=forward comment="BLoqueia DHCP cliente" disabled=no \<br />
    in-bridge-port=!ether1 protocol=udp src-port=67<br />
add action=accept chain=forward comment="allow established connections" \<br />
    connection-state=established disabled=no<br />
add action=accept chain=forward comment="allow related connections" \<br />
    connection-state=related disabled=no<br />
add action=drop chain=forward comment="drop invalid connections" \<br />
    connection-state=invalid disabled=no<br />
add action=drop chain=virus comment="Drop virus" disabled=no dst-port=69 \<br />
    protocol=udp<br />
add action=drop chain=virus comment="Drop Blaster Worm" disabled=no dst-port=\<br />
    135-139 protocol=tcp<br />
add action=drop chain=virus comment="Drop Messenger Worm" disabled=no \<br />
    dst-port=135-139 protocol=udp<br />
add action=drop chain=virus comment="Drop Blaster Worm" disabled=no dst-port=\<br />
    445 protocol=tcp<br />
add action=drop chain=virus comment="Drop Blaster Worm" disabled=no dst-port=\<br />
    445 protocol=udp<br />
add action=drop chain=virus comment=________ disabled=no dst-port=593 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment=________ disabled=no dst-port=1024-1030 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Drop MyDoom" disabled=no dst-port=1080 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment=________ disabled=no dst-port=1214 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="ndm requester" disabled=no dst-port=1363 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="ndm server" disabled=no dst-port=1364 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="screen cast" disabled=no dst-port=1368 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment=hromgrafx disabled=no dst-port=1373 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment=cichlid disabled=no dst-port=1377 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment=Worm disabled=no dst-port=1433-1434 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Bagle Virus" disabled=no dst-port=2745 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Drop Dumaru.Y" disabled=no dst-port=2283 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Drop Beagle" disabled=no dst-port=2535 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Drop Beagle.C-K" disabled=no dst-port=\<br />
    2745 protocol=tcp<br />
add action=drop chain=virus comment="Drop MyDoom" disabled=no dst-port=\<br />
    3127-3128 protocol=tcp<br />
add action=drop chain=virus comment="Drop Backdoor OptixPro" disabled=no \<br />
    dst-port=3410 protocol=tcp<br />
add action=drop chain=virus comment=Worm disabled=no dst-port=4444 protocol=\<br />
    tcp<br />
add action=drop chain=virus comment=Worm disabled=no dst-port=4444 protocol=\<br />
    udp<br />
add action=drop chain=virus comment="Drop Sasser" disabled=no dst-port=5554 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Drop Beagle.B" disabled=no dst-port=8866 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Drop Dabber.A-B" disabled=no dst-port=\<br />
    9898 protocol=tcp<br />
add action=drop chain=virus comment="Drop Dumaru.Y" disabled=no dst-port=\<br />
    10000 protocol=tcp<br />
add action=drop chain=virus comment="Drop MyDoom.B" disabled=no dst-port=\<br />
    10080 protocol=tcp<br />
add action=drop chain=virus comment="Drop NetBus" disabled=no dst-port=12345 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Drop Kuang2" disabled=no dst-port=17300 \<br />
    protocol=tcp<br />
add action=drop chain=virus comment="Drop SubSeven" disabled=no dst-port=\<br />
    27374 protocol=tcp<br />
add action=jump chain=forward comment="jump to the virus chain" disabled=no \<br />
    jump-target=virus<br />
add action=accept chain=forward comment="Allow HTTP" disabled=no dst-port=80 \<br />
    protocol=tcp<br />
add action=accept chain=forward comment="Allow SMTP" disabled=no dst-port=25 \<br />
    protocol=tcp<br />
add action=accept chain=forward comment="allow TCP" disabled=no protocol=tcp<br />
add action=accept chain=forward comment="allow ping" disabled=no protocol=\<br />
    icmp<br />
add action=accept chain=forward comment="allow udp" disabled=no protocol=udp<br />
add action=drop chain=forward comment="drop everything else" disabled=no</code></p>
<p>.. Desabilitando o Discovery Neighbor. Não permitir tráfego do protocolo CDP assim bloqueando a descoberta de interfaces mikrotik pela rede</p>
<p><code>/ip neighbor discovery<br />
set bridge1 discover=no<br />
set ether1 discover=no<br />
set ether2 discover=no<br />
set ether3 discover=no<br />
set ether4 discover=no<br />
set ether5 discover=no</code></p>
<p>Espero ter ajudado, qualquer dúvida enviem comentários ou diretamente pelo email: <a href="mailto:algodas@gmail.com">algodas@gmail.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/bridge-mikrotik/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Viva à Resistência!</title>
		<link>http://www.tiagogomes.eti.br/viva-a-resistencia/</link>
		<comments>http://www.tiagogomes.eti.br/viva-a-resistencia/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 19:09:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/?p=67</guid>
		<description><![CDATA[Bob Marley Day!
]]></description>
			<content:encoded><![CDATA[<p>Bob Marley Day!</p>

<a href="http://www.tiagogomes.eti.br/viva-a-resistencia/dsc01049/" onclick="" title='DSC01049'><img width="150" height="150" src="http://www.tiagogomes.eti.br/wp-content/uploads/2010/03/DSC01049-150x150.jpg" class="attachment-thumbnail" alt="Bob Marley Day" title="DSC01049" /></a>
<a href="http://www.tiagogomes.eti.br/viva-a-resistencia/dsc01048/" onclick="" title='DSC01048'><img width="150" height="150" src="http://www.tiagogomes.eti.br/wp-content/uploads/2010/03/DSC01048-150x150.jpg" class="attachment-thumbnail" alt="Bob Marley Day" title="DSC01048" /></a>

]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/viva-a-resistencia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ano Novo!</title>
		<link>http://www.tiagogomes.eti.br/ano-novo/</link>
		<comments>http://www.tiagogomes.eti.br/ano-novo/#comments</comments>
		<pubDate>Thu, 31 Dec 2009 19:50:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/?p=59</guid>
		<description><![CDATA[Como é de prache e mesmo sem saber se vocês ainda tem saco para as ditas felicitações, independente  da finalidade, rsrsrs ( comercial, alfinetada &#8211; eu venho me divertindo muito) , aqui vai o meu: Feliz Ano Novo!! O que vale é o que se deseja independente do objetivo.
Este ano foi bem legal, amadurecimento profissional, [...]]]></description>
			<content:encoded><![CDATA[<p>Como é de prache e mesmo sem saber se vocês ainda tem saco para as ditas felicitações, independente  da finalidade, rsrsrs ( comercial, alfinetada &#8211; eu venho me divertindo muito) , aqui vai o meu: Feliz Ano Novo!! O que vale é o que se deseja independente do objetivo.</p>
<p>Este ano foi bem legal, amadurecimento profissional, boas experiências relacionados a esse, ajustes e adaptações para convívio corporativo e um reconhecimento legal e que me faz bem . Nos aspectos pessoais  alguns problemas se retratam de forma ainda mais comum, as opiniões das pessoas estão cada vez mais voláteis às circunstâncias que as favorecem, ou ainda, pior, as circunstâncias que as tornam mais amigáveis . Ví que todos estão sujeitos a isto, mas intervalos de tempos tão pequenos e tão bem sincronizados é sacanagem! rsrs. Enfim, continuei a cometer alguns erros e mantive alguns péssimos hábitos , me preciptei em algumas atitudes (ô arrependimento!) mas acreditem , alguns, mas apenas alguns destes erros quero para toda vida, porque mostram que continuo autêntico nas eventualidades que me incomodam e ao que não faço nem desejo aos outros. Conheci pessoas legais  e pude perceber de forma mais clara o real valor da família, principalmente meus pais, estes e mais algumas pessoas me fazem bem a cada minuto corrente e que diminuem o tempo de vida útil do Ano que se passa. Este ano foi de *#&amp;er , legal mesmo e ano que vem será muito melhor pela lei natural das coisas, a positividade a serviço da positividade rsrs. Abraço a todos e se divirtam muito!</p>
<p>Tiago Gomes</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/ano-novo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Maildrop não atualiza maildirsize após alteração em base virtual?</title>
		<link>http://www.tiagogomes.eti.br/maildrop-nao-atualiza-maildirsize-apos-alteracao-em-base-virtual/</link>
		<comments>http://www.tiagogomes.eti.br/maildrop-nao-atualiza-maildirsize-apos-alteracao-em-base-virtual/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 23:48:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>
		<category><![CDATA[ldap]]></category>
		<category><![CDATA[maildirsize]]></category>
		<category><![CDATA[maildrop]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[quota]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/?p=37</guid>
		<description><![CDATA[Para entender
Para solucionar
Para entender:
Problemas nas passagens de parâmetro do authlib para o maildrop ( quota e bla, bla, blá ) ?? Este problema torna-se típico quando há necessidade de alteração em serviço de delivery ( maildrop ) na utilização de anti-spam como o tmda e ou spam-assassin. Em meu caso , parâmetros do OpenLdap que [...]]]></description>
			<content:encoded><![CDATA[<p><a href="#entender">Para entender</a><br />
<a href="#solucionar">Para solucionar</a></p>
<p><strong><a id="entender" title="entender" name="entender">Para entender:</a></strong></p>
<p>Problemas nas passagens de parâmetro do authlib para o maildrop ( <span style="text-decoration: line-through;">quota e bla, bla, blá</span> ) ?? Este problema torna-se típico quando há necessidade de alteração em serviço de delivery ( maildrop ) na utilização de anti-spam como o tmda e ou spam-assassin. Em meu caso , parâmetros do OpenLdap que seriam passados pelo authlib, tiveram de ser passados e muitas vezes resgatados (forçadamente) através do maildroprc, para que fosse possivel os testes de confirmação e armazenamento temporário de mensagens em um mailbox temporário, para entrega posterior à confirmação. Depois de algumas alterações no master.cf para passagem de parâmetros ao maildroprc , valores de quota passaram a não ser resgatados pelo maildrop. No processo de recompilação do maildrop (erronêamente achando que o problema fosse o maildirquota desabilitado). Com auxílio do <a href="http://www.courier-mta.org/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.courier-mta.org');" target="_blank">Sam Varshavchik’s</a> que fortaleceu alguns pontos e expurgou algumas lendas sobre o maildrop.</p>
<p>&gt; A partir da versão 1.8 não é necessário parâmetro de configuração como &#8211;with-authlib , é nativo do maildrop o suporte ao authlib</p>
<p>&gt; Passagem de parâmetros de arquivo para armazenar variáveis para contas virtuais com: &#8211;with-confdir=maildropldaprc , torna-se desnecessário se você já mapeia no postfix os atributos da base para as contas virtuais. Por exemplo: /etc/authlib/authldaprc já é presente no authlib .</p>
<p>&gt; &#8220;group+world writable&#8221; no binário do maildrop é uma péssima idéia para pensar em ownar o Maildir dos usuários.</p>
<p>&gt; Basear-se em um forma de configuração citada no NOTE do arquivo INSTALL é imprecíndivel e desnecessários agregar mais de uma em uma compilação:<br />
<code> NOTE:</code></p>
<p>When using the standalone maildrop build with courier-authlib, one<br />
of the following configurations must be used:</p>
<p>* Your mail server must invoke maildrop as the root user (the -d<br />
flag reads the mail account&#8217;s uid and gid, then drops root) .<br />
* Manually change the permissions on the maildrop binary to be<br />
setuid root.<br />
* Manually change the permissions on the courier-authlib&#8217;s socket<br />
directory (/usr/local/var/spool/authdaemon by default) to be<br />
globally readable or executable.</p>
<p>&gt; Certifique-se de ter um maildrop assim :</p>
<p><code>hrd:~ # maildrop -v<br />
maildrop 2.0.4 Copyright 1998-2005 Double Precision, Inc.<br />
GDBM extensions enabled.<br />
Courier Authentication Library extension enabled.<br />
Maildir quota extension enabled.<br />
This program is distributed under the terms of the GNU General Public<br />
License. See COPYING for additional information.</code></p>
<p>Fazendo assim, por exemplo: <code>./configure --sysconfdir=/etc --enable-sendmail=/usr/sbin/sendmail --enable-trusted-users=root maildrop vmail --enable-syslog=1 --enable-maildirquota --enable-maildrop-uid=100 --enable-maildrop-gid=8<br />
</code></p>
<p>&gt; No master.cf , caso não seja passado apenas &#8220;-d {$recipient}&#8221; ao maildrop , trate de ler as variáveis passadas na ordenação do Shell.</p>
<p>Se for assim (não maildroprc, não forçar variáveis para tratamento no delivery e não customizar serviço de delivery ):<br />
<code> maildrop  unix  -       n       n       -       -       pipe<br />
flags=DRhu user=maildrop argv=/usr/local/bin/maildrop -d ${recipient}</code><br />
Se for assim:<br />
<code> maildrop  unix  -       n       n       -       -       pipe<br />
flags=DRhu user=maildrop argv=/usr/local/bin/maildrop /etc/maildroprc -d<br />
${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop} ${sender}</code></p>
<p>Ordem de passagem ao maildroprc: <code>$1 = ${user}@${nexthop} $2 = ${extension}  ......... </code></p>
<p><strong><a id="solucionar" title="solucionar" name="solucionar">Para Solucionar:</a></strong></p>
<p><strong><em>No master.cf:</em></strong></p>
<p>maildrop  unix  &#8211;       n       n       &#8211;       &#8211;       pipe<br />
flags=DRhu user=maildrop argv=/usr/local/bin/maildrop /etc/maildroprc<br />
-d  ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop} ${sender}</p>
<p><strong><em>No script de consulta na base /usr/bin/quotz :</em></strong></p>
<p><code> #!/bin/bash</code></p>
<p>LDAPHOST=&#8221;ldap.server.com.br&#8221;<br />
LDAPBASE=&#8221;dc=mail,dc=server,dc=com,dc=br&#8221;<br />
LDAPSEARCH=&#8221;dc=mail,dc=server,dc=com,dc=br&#8221;<br />
LDAPBIND=&#8221;cn=admin,dc=mail,dc=server,dc=com,dc=br&#8221;<br />
LDAPBINDPASS=&#8217;senhaaa&#8217;<br />
LDAPSEARCHATTRIBUTE=quota</p>
<p>BUSCA=`ldapsearch -x -h $LDAPHOST -b $LDAPBASE &#8220;(&amp;(mail=$1)(objectclass=CourierMailAccount))&#8221; -D $LDAPBIND -w $LDAPBINDPASS $LDAPSEARCHATTRIBUTE | grep quota: `</p>
<p>VALOR=`echo $BUSCA | cut -d &#8216;:&#8217; -f 2`<br />
echo $VALOR</p>
<p><strong><em>No maildroprc:</em></strong></p>
<p><code>##########MAILDROPRC#############</code></p>
<p>EXTENSION=&#8221;$3&#8243;<br />
RECIPIENT=tolower(&#8220;$4&#8243;)<br />
LOGNAME=tolower(&#8220;$5&#8243;)<br />
USER=tolower(&#8220;$5&#8243;)<br />
HOST=tolower(&#8220;$6&#8243;)<br />
HOME=&#8221;/boxvirtual/$HOST/$USER&#8221;<br />
SENDER=&#8221;$7&#8243;<br />
DEFAULT=&#8221;/boxvirtual/$HOST/$USER&#8221;<br />
DEST=&#8221;Maildir&#8221;</p>
<p>logfile &#8220;/tmp/maildrop.log&#8221;</p>
<p># Importação de valores de quota do ldap e valores atuais do maildirsize</p>
<p># Resgatar valor atual do maildirsize no momento da entrega da mensagem<br />
QUOTASIZE=`/usr/bin/head -n1 $DEFAULT/Maildir/maildirsize`</p>
<p># Consulta valor da quota para o usuário<br />
QUOTALDAP=`/usr/bin/quotz $USER@$HOST`</p>
<p>if ( &#8220;$EXTENSION&#8221; ne &#8220;&#8221; )<br />
{<br />
DELIMITER=&#8221;+&#8221;<br />
}<br />
log &#8220;QUOTA ATUAL: $QUOTASIZE NOVA: $QUOTALDAP&#8221;</p>
<p>RECIPIENT=&#8221;$LOGNAME$DELIMITER$EXTENSION@$HOST&#8221;<br />
log &#8220;Recip: $RECIPIENT&#8221;</p>
<p>if (!$SENDER)<br />
{<br />
SENDER = &#8220;&lt;&gt;&#8221;<br />
}</p>
<p>`test -e $HOME`<br />
if ( $RETURNCODE != 0 )<br />
{<br />
`mkdir -p $HOME`<br />
`maildirmake $HOME/Maildir`<br />
`maildirmake -q $QUOTALDAP /boxvirtual/$HOST/$USER/Maildir`<br />
`chmod 0700 $HOME/Maildir`<br />
}<br />
log &#8220;home: $HOME&#8221;</p>
<p># Se a quota se diferenciar entre valor na base e o valor no maildir parte para atualização</p>
<p>if ( $QUOTASIZE != $QUOTALDAP )<br />
{<br />
`maildirmake -q $QUOTALDAP /boxvirtual/$HOST/$USER/Maildir`<br />
log &#8220;FOI&#8221;<br />
}<br />
if ( $SENDER eq &#8220;MAILER-DAEMON@server.com.br&#8221; )<br />
{<br />
to &#8220;/boxvirtual/$HOST/$USER/$DEST&#8221;;<br />
}<br />
else<br />
{<br />
if ( $RECIPIENT eq $SENDER )<br />
{<br />
if ( $QUOTASIZE != $QUOTALDAP )<br />
{<br />
`maildirmake -q $QUOTALDAP /boxvirtual/$HOST/$USER/Maildir`<br />
}<br />
to &#8220;/boxvirtual/$HOST/$USER/$DEST&#8221;;<br />
}<br />
else<br />
{<br />
`test -e /boxvirtual/$HOST/${USER}/.tmda_install`<br />
if ( $RETURNCODE == 0 )<br />
{<br />
include &#8220;/boxvirtual/$HOST/${USER}/.tmda_install&#8221;<br />
}<br />
if ( $TMDA eq &#8220;Y&#8221; )<br />
{<br />
EXTENSION=&#8221;$3&#8243;<br />
RECIPIENT=&#8221;$LOGNAME$DELIMITER$EXTENSION@$HOST&#8221;<br />
SENDER=&#8221;$7&#8243;</p>
<p>to &#8220;| /usr/local/tmda/bin/tmda-filter&#8221;</p>
<p>}<br />
else<br />
{<br />
to &#8220;/boxvirtual/$HOST/$USER/$DEST&#8221;;<br />
}<br />
}<br />
}</p>
<p>#    FIM MAILDROPRC</p>
<p>Espero ter ajudado. Grande abraço e até a próxima.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/maildrop-nao-atualiza-maildirsize-apos-alteracao-em-base-virtual/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RoundCube Mail &#8211; Patch to password change  in LDAP Authentication  . V2.0 Stable</title>
		<link>http://www.tiagogomes.eti.br/roundcube-mail-patch-change-password-on-ldap-authenticate-v20-stable/</link>
		<comments>http://www.tiagogomes.eti.br/roundcube-mail-patch-change-password-on-ldap-authenticate-v20-stable/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 00:02:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/?p=26</guid>
		<description><![CDATA[The RoundcubeMail is in fact one of the greatest innovations of open source webmail. Code very structured  and approach to web standards much improved, using Ajax and promote greater interactivity and speed, on your latest version stable consolidated itself as the best webmail IMAP in my opinion.
I am providing a patch adapted by me [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://roundcube.net" onclick="javascript:pageTracker._trackPageview('/outbound/article/roundcube.net');">RoundcubeMail</a> is in fact one of the greatest innovations of open source webmail. Code very structured  and approach to web standards much improved, using <a href="http://pt.wikipedia.org/wiki/AJAX_(programa%C3%A7%C3%A3o)" onclick="javascript:pageTracker._trackPageview('/outbound/article/pt.wikipedia.org');">Ajax</a> and promote greater interactivity and speed, on your latest version stable consolidated itself as the best webmail IMAP in my opinion.</p>
<p>I am providing a patch adapted by me to password change on roundcubmail authentication in LDAP. This patch applies to the stable version <a href="http://roundcube.net" onclick="javascript:pageTracker._trackPageview('/outbound/article/roundcube.net');">roundcubemail</a>, v2.0. There were many changes in Beta for stable but some functions had to be rewritten. Some instances of such functions as:<br />
<code> $ OUTPUT-&gt; add_handler ( 'userpasswd', 'rcmail_passwd_form');</code></p>
<p>But absent in passwd.inc had to be added due to changes made in func.inc. I hope to contribute with all the changes that were waiting for this release.</p>
<p><a href="http://www.tiagogomes.eti.br/wp-content/uploads/2009/03/patchroundcube-tiagoalgodas2.diff">Download Patch<br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/roundcube-mail-patch-change-password-on-ldap-authenticate-v20-stable/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Premissas técnicas básicas para segurança em ambientes Linux.</title>
		<link>http://www.tiagogomes.eti.br/premissas-tecnicas-basicas-para-seguranca-em-ambientes-linux/</link>
		<comments>http://www.tiagogomes.eti.br/premissas-tecnicas-basicas-para-seguranca-em-ambientes-linux/#comments</comments>
		<pubDate>Tue, 07 Oct 2008 22:18:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/premissas-tecnicas-basicas-para-seguranca-em-ambientes-linux/</guid>
		<description><![CDATA[&#160;
O conceito de Segurança da informação é muito mais complexo que atributos técnicos abordados neste artigo. Tratar de segurança da Informação é enxergar  a Tecnologia da informação como processo de negócio aplicados a sustentabilidade de uma corporação. Por isso, este artigo aborda algumas recomendações básicas para aplicações técnicas a servidores. Sugiro que não se [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal">&nbsp;</p>
<p class="MsoNormal" style="text-align: justify; line-height: 150%"><span style="font-size: 11pt; line-height: 150%; font-family: Arial">O conceito de Segurança da informação é muito mais complexo que atributos técnicos abordados neste artigo. Tratar de segurança da Informação é enxergar <span> </span>a Tecnologia da informação como processo de negócio aplicados a sustentabilidade de uma corporação. Por isso, este artigo aborda algumas recomendações básicas para aplicações técnicas a servidores. Sugiro que não se limite <span> </span>a estes comandos ou configurações, é imprescindível ler as Normas ISO/IEC 27001 e a BS17799 , onde são abordados aspectos de gestão e normas práticas aplicadas aos processos de negócio. Espero que </span><span style="font-size: 11pt; line-height: 150%; font-family: Arial">ajude induzir o contato com as peculiaridades relacionadas ao assunto. Boa leitura e grande abraço a todos!</span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Arial"></span></p>
<p class="MsoNormal" style="text-align: justify; line-height: 150%"><span style="font-size: 11pt; line-height: 150%; font-family: Arial"> induzir ao contato com as particularidades e pecurliaridades  características ao assunto. Boa leitura e grande abraço a todos!</span></p>
<p>Link para : <a href="http://www.tiagogomes.eti.br/wp-content/uploads/2008/10/linux-security.pdf" onclick="javascript:pageTracker._trackPageview('/downloadstiagogomes./wp-content/uploads/2008/10/linux-security.pdf');" title="Premissas técnicas básicas para segurança em ambientes Linux">Premissas técnicas básicas para segurança em ambientes Linux</a><span style="font-size: 11pt; line-height: 150%; font-family: Arial"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/premissas-tecnicas-basicas-para-seguranca-em-ambientes-linux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>considerações sobre a LPI</title>
		<link>http://www.tiagogomes.eti.br/consideracoes-sobre-a-lpi/</link>
		<comments>http://www.tiagogomes.eti.br/consideracoes-sobre-a-lpi/#comments</comments>
		<pubDate>Thu, 19 Jun 2008 13:45:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/consideracoes-sobre-a-lpi/</guid>
		<description><![CDATA[
Há alguns dias conclui com êxito as fases (duas provas) para LPIC-1, a certificação Linux provida pela Linux Professional Institute. Trata-se de uma certificação padrão para averiguação da qualificação para administração de ambientes Linux por grandes corporações no Brasil e no mundo. A prova 101 ( a primeira ) tem como maiores pesos atribuídos a [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.lpibrasil.com.br/images/home/logo_lpi.gif" height="53" width="280" /></p>
<p>Há alguns dias conclui com êxito as fases (duas provas) para LPIC-1, a certificação Linux provida pela <a href="http://www.lpi.org" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.lpi.org');">Linux Professional Institute</a>. Trata-se de uma certificação padrão para averiguação da qualificação para administração de ambientes Linux por grandes corporações no Brasil e no mundo. A prova 101 ( a primeira ) tem como maiores pesos atribuídos a gerência de pacotes e configuração do X, sendo a segunda(102) direcionada à aspectos básicos e medianos de redes além de serviços aplicados como o httpd e configuração do Samba e do Apache, além de cálculos simples de subnets.  De nada adiantaria decorar parâmentros e opções de comandos e sintaxes de configuração se não tivesse o auxílio de simulados dedicados, acreditem , passei mais tempo resolvendo simulados providos por livros e sites  direcionados, revisados do ano de 2007, do que revisando os conteúdos direcionados â certificação que  já havia estudado. No que diz respeito ao material didático o <a href="http://focalinux.cipsga.org.br" onclick="javascript:pageTracker._trackPageview('/outbound/article/focalinux.cipsga.org.br');">Guia FOCA Linux </a>me forneceu embasamento suficiente para aprovação, material muito robusto e com abordagem muito direcionada ao que é cobrado pelas provas e ótimo material para consulta por administradores. Próximo passo pretendido será alguma cetificação voltado a <a href="http://pt.wikipedia.org/wiki/ITIL" onclick="javascript:pageTracker._trackPageview('/outbound/article/pt.wikipedia.org');">Governança em T.i </a>, afim de focar na gestão de qualidade e boas práticas aplicados a serviços de Ti internos e externos, <a href="http://pt.wikipedia.org/wiki/ITIL" onclick="javascript:pageTracker._trackPageview('/outbound/article/pt.wikipedia.org');">ITIL</a>, tema de meu trabalho de conclusão de curso, seria uma boa pedida, mas sobre isto falaremos depois. Abraço e boa sorte a todos.</p>
<p>Mais informações sobre a <a href="http://www.lpi.org" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.lpi.org');">LPI</a> no site da  <a href="http://www.lpibrasil.com.br" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.lpibrasil.com.br');">LPI Brasil</a>  .</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/consideracoes-sobre-a-lpi/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Rotina para calcular IP aplicada ao gerenciador</title>
		<link>http://www.tiagogomes.eti.br/rotina-para-calcular-ip-aplicada-ao-gerenciador/</link>
		<comments>http://www.tiagogomes.eti.br/rotina-para-calcular-ip-aplicada-ao-gerenciador/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 19:38:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artigos]]></category>

		<guid isPermaLink="false">http://www.tiagogomes.eti.br/rotina-para-calcular-ip-aplicada-ao-gerenciador/</guid>
		<description><![CDATA[Iêpa!
Levando em consideração que alguns casos requeiram prover Ip´s para arquivos do dhcpd, criei uma pequena rotina para gerar ip&#8217;s para subnets com 30 bits destinados a Rede, máscara 255.255.255.252,  podendo ser utilizada ou não com qualquer interface de gerenciamento de redes e provedores. Esta rotina foi desenvolvida associada ao código do gerenciador citado em [...]]]></description>
			<content:encoded><![CDATA[<p>Iêpa!</p>
<p>Levando em consideração que alguns casos requeiram prover Ip´s para arquivos do dhcpd, criei uma pequena rotina para gerar ip&#8217;s para subnets com 30 bits destinados a Rede, máscara 255.255.255.252,  podendo ser utilizada ou não com qualquer interface de gerenciamento de redes e provedores. Esta rotina foi desenvolvida associada ao código do <a href="http://www.tiagogomes.eti.br/gerenciador-rapido/" onclick="">gerenciador</a> citado em posts antigos, onde a função é chamado antes da gravação dos ips no arquivo de configuração do dhcpd.</p>
<p><em>calculaip () {</p>
<p>for ipd in `cat /etc/rc.d/hosts.liberadosMAC`;do<br />
IPSOURCE=`echo $ipd | cut -d &#8216;;&#8217; -f 2 &gt;&gt; /etc/rc.d/ipord`<br />
done;</p>
<p>for ipd in `cat /etc/rc.d/ipord`;do<br />
IPSOURCE=`echo $ipd | cut -d &#8216;;&#8217; -f 2 `</p>
<p>done;</p>
<p>ip=`echo $IPSOURCE`<br />
ip1=`echo $ip | cut -d &#8216;.&#8217; -f 4`<br />
ip2=`echo $ip | cut -d &#8216;.&#8217; -f 3`<br />
if [ $ip1 -lt  "250"  ]  ; then<br />
nfinaladdr=$(($ip1 + 4));<br />
nfinalrede=$(($nfinaladdr &#8211; 2));<br />
nfinalgw=$(($nfinalrede + 1));<br />
nfinalbroad=$(($nfinaladdr + 1));<br />
ipaddr=&#8221;192.168.$ip2.$nfinaladdr&#8221;<br />
ipnet=&#8221;192.168.$ip2.$nfinalrede&#8221;<br />
ipgw=&#8221;192.168.$ip2.$nfinalgw&#8221;<br />
ipbroad=&#8221;192.168.$ip2.$nfinalbroad&#8221;<br />
&lt;!&#8211;more&#8211;&gt;</p>
<p>elif [ $ip1="250" ]  ; then<br />
$ip2=$(($ip2 + 1));<br />
$ip1=0;</p>
<p>nfinaladdr=$(($ip1 + 4));<br />
nfinalrede=$(($nfinaladdr &#8211; 2));<br />
nfinalgw=$(($nfinalrede + 1));<br />
nfinalbroad=$(($nfinaladdr + 1));<br />
ipaddr=&#8221;192.168.$ip2.$nfinaladdr&#8221;<br />
ipnet=&#8221;192.168.$ip2.$nfinalrede&#8221;<br />
ipgw=&#8221;192.168.$ip2.$nfinalgw&#8221;<br />
ipbroad=&#8221;192.168.$ip2.$nfinalbroad&#8221;</p>
<p>fi</p>
<p>}</p>
<p></em>Abaixo a rotina de gravação no arquivo /etc/dhcpd.conf</p>
<p><em>calculaip<br />
echo $ipmac | tr a-z A-Z  &gt;&gt; $caminhoIPMAC<br />
#cadastro na lista de acesso do Proxy-cache<br />
ipmac2=`echo $ipmac | cut  -d &#8216;;&#8217; -f 2`<br />
mac=`echo $ipmac | cut  -d &#8216;;&#8217; -f 3`<br />
nome=`echo $ipmac | cut -d &#8216;;&#8217; -f 4`</p>
<p>#GRAVAÇÃO NO ARQUIVO</p>
<p>echo &#8220;subnet $ipnet netmask 255.255.255.252 {&#8221; &gt;&gt; /etc/rc.d/hostsDHCPD<br />
echo &#8220;option broadcast-address $ipbroad;&#8221; &gt;&gt; /etc/rc.d/hostsDHCPD<br />
echo &#8220;option routers $ipgw;&#8221; &gt;&gt; /etc/rc.d/hostsDHCPD<br />
echo &#8220;host $nome {&#8221; &gt;&gt; /etc/rc.d/hostsDHCPD<br />
echo &#8220;hardware ethernet $mac;&#8221; &gt;&gt; /etc/rc.d/hostsDHCPD<br />
echo &#8220;fixed-address $ipaddr;&#8221; &gt;&gt; /etc/rc.d/hostsDHCPD<br />
echo &#8220;}}&#8221; &gt;&gt; /etc/rc.d/hostsDHCPD<br />
</em><br />
Note que a gravação é feita em um arquivo temporário linkado ao arquivo de configuração do DHCPd, o arquivo /etc/rc.d/hostsDHCPD . Para linkar ao dhcpd.conf será necessário colocar apenas <em>$ ./etc/rc.d/hostsDHCPD</em> no arquivo de configuração do DHCP para que seja adicionado as linhas para cada Host do dhcpd.</p>
<p>O gerenciador adaptado a esta realidade encontra-se disponível neste <a href="http://201.73..162.98/basket/gerenciador" onclick="javascript:pageTracker._trackPageview('/outbound/article/201.73..162.98');">Aqui</a>. Uma versão sem bugs também estará disponível preciso apenas &#8220;restorar&#8221; meu sistemas de Arquivos do SVN , rsrsrs. Abraço e até a próxima.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tiagogomes.eti.br/rotina-para-calcular-ip-aplicada-ao-gerenciador/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
