<?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>parruda.net</title>
	<atom:link href="http://parruda.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://parruda.net</link>
	<description>Dicas sobre Linux, iPhone, e o que mais eu puder ajudar</description>
	<lastBuildDate>Tue, 21 Jul 2009 02:53:13 +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>Qual Linux estou usando?</title>
		<link>http://parruda.net/2009/07/20/qual-linux-estou-usando/</link>
		<comments>http://parruda.net/2009/07/20/qual-linux-estou-usando/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 02:50:52 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Iniciante]]></category>
		<category><![CDATA[descobrir]]></category>
		<category><![CDATA[distribuição]]></category>
		<category><![CDATA[estou]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[qual]]></category>
		<category><![CDATA[usando]]></category>
		<category><![CDATA[versão]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=164</guid>
		<description><![CDATA[Hoje fui contratado para reconfigurar um Apache. Problema de virtual host. Mas quando caí no shell, a primeira coisa que me perguntei foi: onde está o httpd.conf? Isso depende da distribuição, se ele foi instalado através de um gerenciador de pacotes. Pra descobrir qual distribuição estamos usando é bem facil:
cat /etc/*release
cat /etc/motd
cat /etc/issue
uname -a
Esses 4 [...]]]></description>
			<content:encoded><![CDATA[<p>Hoje fui contratado para reconfigurar um Apache. Problema de virtual host. Mas quando caí no shell, a primeira coisa que me perguntei foi: onde está o httpd.conf? Isso depende da distribuição, se ele foi instalado através de um gerenciador de pacotes. Pra descobrir qual distribuição estamos usando é bem facil:</p>
<blockquote><p>cat /etc/*release<br />
cat /etc/motd<br />
cat /etc/issue<br />
uname -a</p></blockquote>
<p>Esses 4 comandos vão te dar uma pista bem próxima, senão exata, de qual distribuição estamos falando. <img src='http://parruda.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Eu sei que a dica é simples, mas é o tipo de coisa tão simples que a gente nunca se preocupa em aprender!</p>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2009/07/20/qual-linux-estou-usando/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tutorial: Acessando remotamente via VNC um computador com linux que está protegido por um firewall que não é controlado por você, usando túnel ssh</title>
		<link>http://parruda.net/2009/07/14/tutorial-acessando-remotamente-via-vnc-um-computador-com-linux-que-esta-protegido-por-um-firewall-que-nao-e-controlado-por-voce-usando-tunel-ssh/</link>
		<comments>http://parruda.net/2009/07/14/tutorial-acessando-remotamente-via-vnc-um-computador-com-linux-que-esta-protegido-por-um-firewall-que-nao-e-controlado-por-voce-usando-tunel-ssh/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 19:48:34 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Utilidades]]></category>
		<category><![CDATA[acessar vnc atrás de firewall]]></category>
		<category><![CDATA[túnel ssh]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[vinagre]]></category>
		<category><![CDATA[vnc]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=75</guid>
		<description><![CDATA[Sim, eu tenho controle sobre o firewall da minha empresa. Mas a questão é: e se eu não tivesse? E se eu fosse um funcionário de outro departamento senão o de informática e precisasse terminar um serviço de casa? Se minha estação de trabalho fosse Windows seria fácil. A solução seria usar o LogmeIn. Mas [...]]]></description>
			<content:encoded><![CDATA[<p>Sim, eu tenho controle sobre o firewall da minha empresa. Mas a questão é: e se eu não tivesse? E se eu fosse um funcionário de outro departamento senão o de informática e precisasse terminar um serviço de casa? Se minha estação de trabalho fosse Windows <span style="text-decoration: line-through;">seria fácil</span>. A solução seria usar o <a href="http://www.logmein.com" target="_blank">LogmeIn</a>. Mas FELIZMENTE, é Ubuntu. Então vamos lá.</p>
<ul>
<li><strong>Ingredientes:</strong></li>
</ul>
<p><strong>1.</strong> PC no trabalho, com o Ubuntu e o compartilhamento de Área de Trabalho ativado:</p>
<p><em>Sistema &gt; Preferencias &gt; Área de Trabalho Remota</em></p>
<p>Deixe como na figura abaixo, setando sua própria senha, é claro:</p>
<div id="attachment_79" class="wp-caption alignnone" style="width: 465px"><img class="size-full wp-image-79" title="Preferências da Área de Trabalho Remota" src="http://parruda.net/wp-content/uploads/2009/07/screenshot_002.jpeg" alt="Preferências da Área de Trabalho Remota" width="455" height="418" /><p class="wp-caption-text">Não esqueça de setar uma senha!</p></div>
<p><strong>2.</strong> PC da minha casa, com Ubuntu e os pacotes openssh-server e xtightvncviewer instalados</p>
<p>Como root, instale os pacotes:</p>
<p><span style="font-size: xx-small;">apt-get install openssh-server xtightvncviewer</span></p>
<ul>
<li><strong>Procedimento</strong></li>
</ul>
<p>A mágica funciona assim: você faz uma conexão ssh para o PC da sua casa. Com alguns parâmetros passados na linha de comando do ssh, você consegue fazer com que o ssh-server da sua casa fique escutando em uma determinada porta XXXX com o IP 127.0.0.1, e todo tráfego para o IP 127.0.0.1 na porta XXXX no PC da sua casa será direcionado pelo túnel ssh que liga o PC da sua casa ao PC do seu trabalho (em uma porta específica).</p>
<p>Pareceu complicado? Vamos ver na prática!</p>
<p><strong>1.</strong> Do PC do seu trabalho, execute o comando:</p>
<p><span style="font-size: xx-small;">ssh -C -N -R 5905:localhost:5900 seuusuario@ip.da.sua.casa</span></p>
<p>E misteriosamente, nada acontece&#8230; o prompt fica piscando&#8230;</p>
<p>A explicação:</p>
<p>-C <em>Ativa a compressão dos dados trafegados pela conexão do ssh</em></p>
<p>-N <em>Faz com que nenhum comando seja executado ao estabelecer a conexão. Ou seja, você não vai cair num shell na sua casa</em></p>
<p>-R 5905:localhost:5900 <em>Aqui está a mágica. Esta opção diz que todo tráfego realizado em direção ao PC da sua casa, na porta 5905, será redirecionado pelo túnel para o PC do seu trabalho, na porta 5900 (porta padrão do VNC)</em></p>
<p><strong>Obs</strong>.: Por default, o openssh-server da sua casa vai ficar escutando na porta que você indicou apenas na interface de loopback (127.0.0.1 ou localhost)</p>
<p><strong>2.</strong> Agora vá pra casa! Quando chegar lá, presumindo que você também instalou o xtightvncviewer como eu escrevi, rode o comando:</p>
<p><span style="font-size: xx-small;">xtightvncviewer -encodings tight -quality 7 -compresslevel 9 -depth 8 localhost::5905</span></p>
<p>Digite a senha que você setou nas Preferências da Área de Trabalho Remota e&#8230; Voilá!</p>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2009/07/14/tutorial-acessando-remotamente-via-vnc-um-computador-com-linux-que-esta-protegido-por-um-firewall-que-nao-e-controlado-por-voce-usando-tunel-ssh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux: Os 15 comandos que os iniciantes precisam saber</title>
		<link>http://parruda.net/2009/07/13/linux-os-15-comandos-que-os-iniciantes-precisam-saber/</link>
		<comments>http://parruda.net/2009/07/13/linux-os-15-comandos-que-os-iniciantes-precisam-saber/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 19:03:06 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Iniciante]]></category>
		<category><![CDATA[cat]]></category>
		<category><![CDATA[chown]]></category>
		<category><![CDATA[comandos do linux]]></category>
		<category><![CDATA[cp]]></category>
		<category><![CDATA[grep]]></category>
		<category><![CDATA[ls]]></category>
		<category><![CDATA[mv]]></category>
		<category><![CDATA[rm]]></category>
		<category><![CDATA[shutdown]]></category>
		<category><![CDATA[su]]></category>
		<category><![CDATA[sudo]]></category>
		<category><![CDATA[top]]></category>
		<category><![CDATA[touch]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=64</guid>
		<description><![CDATA[1. Super usuário &#8211; sudo e su
Uma das características principais de segurança do linux é seu sistema de permissão, que restringe bastante quem pode fazer o que. Muitos comandos e operações só estão disponíveis para o usuário root. Se você obter uma resposta como &#8220;permissão negada&#8221; ao tentar fazer alguma coisa através da linha de [...]]]></description>
			<content:encoded><![CDATA[<p><strong>1. Super usuário &#8211; sudo e su</strong></p>
<p>Uma das características principais de segurança do linux é seu sistema de permissão, que restringe bastante quem pode fazer o que. Muitos comandos e operações só estão disponíveis para o usuário root. Se você obter uma resposta como &#8220;permissão negada&#8221; ao tentar fazer alguma coisa através da linha de comando, você precisa deixar o sistema saber que você tem permissão para fazê-lo, se tornando o super usuário (você vai precisar entrar com a senha de root).</p>
<p>Existem 2 maneiras distintas de se fazer isso. A primeira é o <em>sudo</em>, que permite um usuário a rodar certos comandos pré-definidos com permissões de super usuário. Isso é útil se, por exemplo, você quer que um usuário seja capaz de instalar um programa, mas não tenha a permissão de realizar qualquer outra tarefa de super usuário. Ter acesso ilimitado como root pode permitir que um usuário danifique o sistema se ele não souber o que está fazendo.<br />
O comando sudo só funciona para executar 1 comando de cada vez, da seguinte forma:</p>
<blockquote><p>sudo comando-para-executar</p></blockquote>
<p>Ex.: editando um arquivo de configuração do sistema</p>
<blockquote><p>sudo vim /etc/fstab</p></blockquote>
<p>O sistema vai pedir a sua senha. A senha que você vai digitar fica invisível, logo, não se desespere se o que você estiver digitando não aparecer. Por default, o comando sudo será bastante limitado à quais comandos são permitidos.</p>
<p>A outra maneira, que eu uso a todo momento, é o comando <em>su</em>. Este comando vai criar uma sessão como root no console atual, dando a você permissões ilimitadas sobre o sistema. Use este comando com muito cuidado!<br />
O seu uso é muito simples. Tudo o que você precisa fazer é digitar su e apertar ENTER.</p>
<blockquote><p>su</p></blockquote>
<p>Quando você acabar de realizar todas as tarefas como root, digite <em>exit</em> para finalizar a sessão.</p>
<p><strong>2. Mudando de diretório &#8211; cd</strong></p>
<p>Navegar pelos seus arquivos utilizando comandos pode parecer meio complicado, mas é bem fácil, uma vez que você se acostuma com isso. Esse comando, assim como alguns próximos neste artigo, vai permitir que você navegue pelo seu HD através do console sem perder muito tempo.</p>
<p>Para mudar de diretório você deve usar o comando <em>cd</em>, que significa Change Directory.<br />
Ex.:</p>
<blockquote><p>cd /home</p>
<p>cd /etc</p>
<p>cd /var/log</p>
<p>cd .. <em>Este comando vai te levar para 1 diretório acima do atual</em></p></blockquote>
<p><strong>3. Listando arquivos e diretórios &#8211; ls</strong></p>
<p>É claro que o maior propósito de se navegar pelo seu HD é a possibilidade de ver quais arquivos/diretórios existem. Usando o comando ls você pode ver o conteúdo do diretório atual (ou qualquer caminho especificado, vide exemplo). Existem dezenas de opções úteis no comando <em>ls</em>, o que significa que você pode dizer ao comando como se comportar quando executado, apenas incluindo um pouquinho de informação extra no comando. Exemplos:</p>
<blockquote><p>ls <em>Mostra todos os arquivos/pastas EXCETO as escondidas</em></p>
<p>ls -a <em>Mostra todos os arquivos/pastas, incluindo as escondidas</em></p>
<p>ls -l <em>Lista com mais detalhes</em></p>
<p>ls -s <em>Mostra o tamanho dos arquivos</em></p>
<p>ls -sh <em>Mostra o tamanho dos arquivos numa forma simples de ler</em></p>
<p>ls -lh <em>Combina -l e -sh</em></p>
<p>ls &#8211;help <em>Lista todas as opções disponíveis</em></p></blockquote>
<p><strong>4. Copiando &#8211; cp</strong></p>
<p>O comando <em>cp</em> é usado para copiar um arquivo ou diretório.</p>
<blockquote><p>cp arquivo-origem.txt caminho/de/destino/arquivo.txt</p>
<p>cp -f origem destino <em>Este comando vai forçar sobrescrever no destino sem perguntar.</em></p>
<p>cp -r pasta-de-origem destino <em>Este comando vai copiar um diretório inteiro, assim como seu conteúdo recursivamente.</em></p>
<p>cp &#8211;help <em>Mostra todas as opções disponíveis.</em></p></blockquote>
<p>Lembre-se: Você pode usar mais de uma opção de cada vez. Por exemplo, você pode usar <em>-fr</em> para forçar sobrescrever o destino enquanto faz uma cópia recursiva.</p>
<p><strong>5. Mover &#8211; mv</strong></p>
<p>O comando <em>mv</em> funciona de forma parecida ao comando <em>cp</em>, exceto que ele vai deletar os arquivos de origem uma vez que a duplicação estiver completa.</p>
<blockquote><p>mv arquivo-de-origem.txt caminho/de/destino/arquivo.txt</p>
<p>mv -f origem destino <em>Força sobrescrever sem perguntar.</em></p>
<p>mv -r pasta-de-origem destino <em>Vai mover o diretório e seu conteúdo recursivamente.</em></p>
<p>mv &#8211;help <em>Mostra todas as opções disponíveis.</em></p></blockquote>
<p><strong>6. Deletar &#8211; rm</strong></p>
<p>O comando rm é usado para deletar arquivos e diretórios. Sempre seja cauteloso com este comando, especialmente quando você usar a opção force ou recursive.</p>
<blockquote><p>rm arquivo.txt</p>
<p>rm -f arquivo.txt <em>Força deletar sem pedir confirmação.</em></p>
<p>rm -r diretório <em>Deleta o diretório e seu conteúdo, recursivamente. USE COM ATENÇÃO!</em></p></blockquote>
<p><strong>7. Criar um diretório &#8211; mkdir</strong></p>
<p>Criar um diretório é fácil com o comando <em>mkdir</em>:</p>
<blockquote><p>mkdir nome-do-diretório</p></blockquote>
<p><strong>8. Criar um novo arquivo &#8211; touch</strong></p>
<p>O comando <em>touch</em> vai criar um novo arquivo vazio, ou, se o arquivo já existe, o comando vai atualizar o status acessado/modificado do arquivo.</p>
<blockquote><p>touch nome-do-arquivo</p></blockquote>
<p><strong>9. Editor de Texto &#8211; vim</strong></p>
<p>O editor de text <em>vim</em> é bem rápido e leve, porém, pode ser um pouco complicado aprender seus comandos. Existem diversos sites que explicam seus comandos. Clique <a href="http://scottklarr.com/s/vim-commands" target="_blank">aqui</a> para ver uma lista de sites com informações dobre o Vim.</p>
<p><strong>10. Exibir o conteúdo de um arquivo &#8211; cat</strong></p>
<p>Esse comando é bastante simples, mas muito útil para ver rapidamente o conteúdo de um arquivo sem precisar usam um editor.</p>
<blockquote><p>cat nome-do-arquivo</p></blockquote>
<p><strong>11. Buscando strings &#8211; grep</strong></p>
<p>O comando <em>grep</em> é um pouco mais complexo, mas faz por merecer estar na lista dos 15 principais comandos do linux que você tem que aprender com seu coração! O comando grep vai procurar um arquivo, texto ou qualquer outra entrada e retornar quaisquer linhas que contenham a string que vc especificar. Digamos que você precisa procurar dentro de um arquivo de log por todos os erros que tenham a ver com o mysql. Ao invés de ter que ler todo o arquivo para achar as linhas que você precisa, o grep faz isso por você!</p>
<blockquote><p>grep &#8216;mysql&#8217; arquivo-de-log.log</p>
<p>grep -i &#8217;string&#8217; arquivo <em>Busca a string &#8217;string&#8217; sem se importar com maiúsculas/minúsculas.</em></p>
<p>grep &#8217;string&#8217; arquivo1 arquivo2 arquivo3 <em>Procura em vários arquivos</em></p>
<p>comando | grep &#8217;string&#8217; <em>Procura a a string &#8220;string&#8221; na saída de texto retornada pelo comando &#8220;comando&#8221;.</em></p>
<p>grep &#8211;help <em>Lista todas as opções disponíveis. E são muitas&#8230;</em></p></blockquote>
<p><strong>12. Permissões de arquivos &#8211; chmod</strong></p>
<p>Algumas vezes você precisa mudar as permissões de um arquivo para que outros usuários e grupos possam ler, escrever ou executar-lo. Existem 2 comandos que servem para isso. O primeiro é o <em>chown</em>, que muda o dono/grupo do arquivo.</p>
<blockquote><p>chown novo-usuarios arquivo</p></blockquote>
<p>O segundo comando é o <em>chmod</em>, que permite que você modifique as permissões do arquivo. Exemplos simples:</p>
<blockquote><p>chmod +x arquivo</p>
<p>chmod 755 arquivo</p></blockquote>
<p>Para mais informações sobre como usar o comando chmod para mudar permissões específicas baseadas em usuários e grupos, veja este artigo do <a href="http://en.wikipedia.org/wiki/Chmod" target="_blank">Wikipédia sobre o chmod</a>.</p>
<p><strong>13. Tabela de processos &#8211; top</strong></p>
<p>O comando <em>top</em> é muito útil. Ele vai mostrar os processos que mais consomem recursos, assim como algumas informações como o uso de CPU, uptime, usuários e uso de memória.</p>
<p><strong>14. Ligar/Desligar &#8211; shutdown</strong></p>
<blockquote><p>shutdown now <em>Desliga o sistema imediatamente.</em></p>
<p>shutdown -t 10 <em>Desliga o sistema em 10 segundos.</em></p>
<p>shutdown -r now <em>Reinicia o computador.</em></p></blockquote>
<p><strong>15. Iniciando e parando serviços</strong></p>
<p>Este comando permite que você inicie, pare ou reinicie serviços do sistema.</p>
<blockquote><p>/etc/init.d/nome-do-serviço [start|stop|restart]</p></blockquote>
<p>Ex:</p>
<blockquote><p>/etc/init.d/httpd start</p>
<p>/etc/init.d/mysql stop</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2009/07/13/linux-os-15-comandos-que-os-iniciantes-precisam-saber/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Como restringir alguns usuários do Zimbra a enviar e/ou receber emais para apenas o domínio local</title>
		<link>http://parruda.net/2009/07/10/como-restringir-alguns-usuarios-do-zimbra-a-enviar-eou-receber-emais-para-apenas-o-dominio-local/</link>
		<comments>http://parruda.net/2009/07/10/como-restringir-alguns-usuarios-do-zimbra-a-enviar-eou-receber-emais-para-apenas-o-dominio-local/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 22:58:07 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Utilidades]]></category>
		<category><![CDATA[envio]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[recebimento]]></category>
		<category><![CDATA[restringir]]></category>
		<category><![CDATA[restringir domínios]]></category>
		<category><![CDATA[restringir usuários]]></category>
		<category><![CDATA[zimbra]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=30</guid>
		<description><![CDATA[Certa vez um cliente me pediu para restringir apenas alguns usuários do Zimbra a enviar e receber emails apenas para o domínio do correio da empresa. Fuçando na internet, não achei uma documentação que explicasse como fazer ambas as restrições, apenas cada uma separadamente.
Infelizmente, as inúmeras soluções existentes no Wiki do Zimbra não coexistem em [...]]]></description>
			<content:encoded><![CDATA[<p>Certa vez um cliente me pediu para restringir apenas alguns usuários do Zimbra a enviar e receber emails apenas para o domínio do correio da empresa. Fuçando na internet, não achei uma documentação que explicasse como fazer ambas as restrições, apenas cada uma separadamente.<br />
Infelizmente, as inúmeras soluções existentes no Wiki do Zimbra não coexistem em paz. Fui procurar ajuda na documentação oficial do Postfix. Resolvi meu problema e vou postar aqui como.<br />
Este tutorial é baseado no Zimbra Colaboration Suite 5.0.14 Open Source.</p>
<p>PS.: Tudo é feito com o usuário zimbra. Para utilizar este usuário, logue-se como root e digite:</p>
<p><span style="font-size: xx-small;">su &#8211; zimbra</span></p>
<p>Edite o arquivo <em>/opt/zimbra/conf/zmmta.cf</em></p>
<p>Procure a linha:</p>
<p><span style="font-size: xx-small;">POSTCONF virtual_transport   LOCAL postfix_virtual_transport</span></p>
<p>Logo abaixo a ela, adicione as seguintes linhas:</p>
<p><span style="font-size: xx-small;">POSTCONF smtpd_sender_restrictions          FILE postfix_sender_restrictions.cf<br />
POSTCONF smtpd_restriction_classes          restringe_envio,restringe_recebimento<br />
POSTCONF restringe_envio                    FILE postfix_restringe_envio.cf<br />
POSTCONF restringe_recebimento                    FILE postfix_restringe_recebimento.cf</span></p>
<p>Agora crie o arquivo <em>/opt/zimbra/conf/enviar</em> com o seguinte conteúdo:</p>
<p><span style="font-size: xx-small;">contarestrita@dominiodaempresa.com.br restringe_envio</span></p>
<p>Crie o arquivo <em>/opt/zimbra/conf/receber</em> com o seguinte conteúdo:</p>
<p><span style="font-size: xx-small;">contarestrita@dominiodaempresa.com.br restringe_recebimento</span></p>
<p>Crie o arquivo <em>/opt/zimbra/conf/dominios</em> com o seguinte conteúdo:</p>
<p><span style="font-size: xx-small;">dominiodaempresa.com.br OK</span></p>
<p>Troque o &#8220;dominiodaempresa.com.br&#8221; pelo seu domínio do correio.</p>
<p>Edite o arquivo <em>/opt/zimbra/conf/postfix_recipient_restrictions.cf</em> e adicione isto NA PRIMEIRA LINHA DO ARQUIVO:</p>
<p><span style="font-size: xx-small;">check_recipient_access hash:/opt/zimbra/conf/receber</span></p>
<p>Crie o arquivo <em>/opt/zimbra/conf/postfix_restringe_recebimento.cf </em>com o seguinte conteúdo:</p>
<p><span style="font-size: xx-small;">check_sender_access hash:/opt/zimbra/conf/dominios, reject</span></p>
<p>Crie o arquivo <em>/opt/zimbra/conf/postfix_restringe_envio.cf</em> com o seguinte conteúdo:</p>
<p><span style="font-size: xx-small;">check_recipient_access hash:/opt/zimbra/conf/dominios, reject</span></p>
<p>Crie o arquivo <em>/opt/zimbra/conf/postfix_sender_restrictions.cf </em>com o seguinte conteúdo:</p>
<p><span style="font-size: xx-small;">check_sender_access hash:/opt/zimbra/conf/enviar</span></p>
<p>Pra finalizar, crie os db&#8217;s dos arquivos &#8220;<em>enviar</em>&#8220;, &#8220;<em>receber</em>&#8220;, e &#8220;<em>dominios</em>&#8221; para que o postfix possa lê-los:</p>
<p><span style="font-size: xx-small;">cd /opt/zimbra/conf<br />
postmap enviar<br />
postmap receber<br />
postmap dominios</span></p>
<p>Reinicie o MTA do zimbra:</p>
<p><span style="font-size: xx-small;">zmmtactl stop<br />
zmmtactl start</span></p>
<p>Vou explicar para que servem os 3 arquivos principais:</p>
<ul>
<li><strong>/opt/zimbra/conf/dominios</strong></li>
</ul>
<p>Lista dos domínios permitidos para os usuarios contidos nos arquivos enviar e receber</p>
<ul>
<li><strong>/opt/zimbra/conf/enviar</strong></li>
</ul>
<p>Lista dos usuários que só podem enviar emails para os domínios contidos em <em>/opt/zimbra/conf/dominios</em>. Separe cada usuário por linha, respeitando a sintaxe do arquivo.</p>
<ul>
<li><strong>/opt/zimbra/conf/receber</strong></li>
</ul>
<p>Lista dos usuários que só podem receber emails dos domínios contidos em <em>/opt/zimbra/conf/dominios</em>. Separe cada usuário por linha, respeitando a sintaxe do arquivo.</p>
<p>Espero ter ajudado <img src='http://parruda.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2009/07/10/como-restringir-alguns-usuarios-do-zimbra-a-enviar-eou-receber-emais-para-apenas-o-dominio-local/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Virtualização com XEN no Debian Etch</title>
		<link>http://parruda.net/2008/07/19/virtualizacao-com-xen-no-debian-etch/</link>
		<comments>http://parruda.net/2008/07/19/virtualizacao-com-xen-no-debian-etch/#comments</comments>
		<pubDate>Sat, 19 Jul 2008 20:57:41 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Cobra]]></category>
		<category><![CDATA[xen debian etch virtualização maquina virtual hyperviso]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=12</guid>
		<description><![CDATA[
INTRODUÇÃO

O objetivo deste tutorial é mostrar as instruções passo a passo para instalar o XEN em um Debian Etch pré instalado (sistema básico) e com os repositórios corretamente configurados. Todos os programas utilizados se encontram no repositório do Etch, logo, não será feito uso de arquivos externos, tão pouco será necessário compilar alguma coisa.
Antes de [...]]]></description>
			<content:encoded><![CDATA[<ul>
<li><strong>INTRODUÇÃO</strong></li>
</ul>
<p>O objetivo deste tutorial é mostrar as instruções passo a passo para instalar o XEN em um Debian Etch pré instalado (sistema básico) e com os repositórios corretamente configurados. Todos os programas utilizados se encontram no repositório do Etch, logo, não será feito uso de arquivos externos, tão pouco será necessário compilar alguma coisa.</p>
<p>Antes de começarmos, vamos a algumas definições utilizadas neste tutorial:</p>
<p><strong>Dom0</strong> -&gt; Máquina hospedeira (host), onde será instalado o Xen Hypervisor</p>
<p><strong>DomU</strong> -&gt; Máquinas virtuais, abreviando Unprivileged Domain</p>
<p><strong>LVM</strong> -&gt; Acrônimo para a expressão inglesa <em><strong>Logical Volume Management</strong></em> para designar um padrão de gerenciamento de partições em disco IDE/SCSI/FC. Foi desenvolvido inicialmente pela IBM, seguindo-se outras empresa e instituições, como HP e a <span class="mw-redirect">Open Group</span>.</p>
<p>Ao contrário do método tradicional de particionamento, a implementação <strong>LVM</strong> cria um grande disco virtual, que pode inclusive ter mais de um dispositivo de armazenamento, e <em>divide</em> em <em>partições virtuais</em>. A grande vantagem é permitir o redimensionamento das áreas de modo dinâmico, ou seja, com o sistema operacional sendo utilizado. <em>(fonte Wikipédia <a href="http://pt.wikipedia.org/wiki/LVM" target="_blank">http://pt.wikipedia.org/wiki/LVM</a>)</em></p>
<ul>
<li><strong>INSTALAÇÃO</strong></li>
</ul>
<p>Depois de se logar em um console (modo texto) como ROOT, vamos começar com o Kernel, libc e todas as ferramentas necessárias para o funcionamento do XEN:</p>
<blockquote><p>lab04est011:~# apt-get install linux-image-2.6-xen-vserver-686 xen-hypervisor-3.0.3-1-i386-pae xen-tools xen-linux-system-2.6.18-4-xen-vserver-686 linux-headers-2.6-xen-vserver-686 libc6-xen bridge-utils lvm2</p></blockquote>
<p>Agora já temos o XEN Hypervisor instalado, assim como o seu Kernel &#8220;patcheado&#8221;.</p>
<p>Antes de dar o boot no novo Kernel é necessário alterar algumas configurações em /etc/xen/xend-config.sxp para que a rede  das máquinas virtuais funcionem em modo bridge</p>
<blockquote><p>lab04est011:~# vim /etc/xen/xend-config.sxp</p></blockquote>
<p>Altere a linha</p>
<blockquote><p>(network-script network-dummy)</p></blockquote>
<p>para</p>
<blockquote><p>(network-script network-bridge)</p></blockquote>
<p>Agora vamos reiniciar o sistema pelo Kernel do XEN.</p>
<blockquote><p>lab04est011:~# reboot</p></blockquote>
<p>Dentro do novo sistema, vamos conferir como ficaram as interfaces de rede pelo comando <em>ifconfig</em>:</p>
<blockquote><p>lab04est011:~# ifconfig<br />
eth0       Encapsulamento do Link: Ethernet  Endereço de HW 00:E0:7D:FB:DA:26<br />
inet end.: 172.16.1.66  Bcast:172.16.1.255  Masc:255.255.255.0<br />
endereço inet6: fe80::2e0:7dff:fefb:da26/64 Escopo:Link<br />
UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1<br />
RX packets:345 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:111 errors:0 dropped:0 overruns:0 carrier:0<br />
colisões:0 txqueuelen:0<br />
RX bytes:37628 (36.7 KiB)  TX bytes:15052 (14.6 KiB)</p>
<p>lo         Encapsulamento do Link: Loopback Local<br />
inet end.: 127.0.0.1  Masc:255.0.0.0<br />
endereço inet6: ::1/128 Escopo:Máquina<br />
UP LOOPBACKRUNNING  MTU:16436  Métrica:1<br />
RX packets:8 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0<br />
colisões:0 txqueuelen:0<br />
RX bytes:560 (560.0 b)  TX bytes:560 (560.0 b)</p>
<p>peth0      Encapsulamento do Link: Ethernet  Endereço de HW FE:FF:FF:FF:FF:FF<br />
endereço inet6: fe80::fcff:ffff:feff:ffff/64 Escopo:Link<br />
UP BROADCASTRUNNING NOARP  MTU:1500  Métrica:1<br />
RX packets:492 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:122 errors:0 dropped:0 overruns:0 carrier:0<br />
colisões:0 txqueuelen:1000<br />
RX bytes:47544 (46.4 KiB)  TX bytes:16658 (16.2 KiB)<br />
IRQ:19 Endereço de E/S:0xe400</p>
<p>vif0.0     Encapsulamento do Link: Ethernet  Endereço de HW FE:FF:FF:FF:FF:FF<br />
endereço inet6: fe80::fcff:ffff:feff:ffff/64 Escopo:Link<br />
UP BROADCASTRUNNING NOARP  MTU:1500  Métrica:1<br />
RX packets:111 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:345 errors:0 dropped:0 overruns:0 carrier:0<br />
colisões:0 txqueuelen:0<br />
RX bytes:15052 (14.6 KiB)  TX bytes:37628 (36.7 KiB)</p>
<p>xenbr0     Encapsulamento do Link: Ethernet  Endereço de HW FE:FF:FF:FF:FF:FF<br />
endereço inet6: fe80::200:ff:fe00:0/64 Escopo:Link<br />
UP BROADCASTRUNNING NOARP  MTU:1500  Métrica:1<br />
RX packets:202 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0<br />
colisões:0 txqueuelen:0<br />
RX bytes:20653 (20.1 KiB)  TX bytes:0 (0.0 b)</p>
<p>lab04est011:~#</p></blockquote>
<p>peth0 -&gt; interface utilizada para fazer o bridge entre as interfaces virtuais e a interface real</p>
<p>vif0.0 -&gt; interfacel utilizada para que o Dom0 se comunque com a rede.</p>
<p>xenbr0 -&gt; bridge que contém peth0 e vifX.Y</p>
<p>Cada interface de rede de cada máquina virtual criada terá uma interface correspondente no Dom0, chamada de vifX.Y, onde X representa o domínio e Y o número da placa de rede da máquina virtual. Resumindo, a primeira interface de rede da terceira máquina virtual se chamaria vif2.0 no Dom0. A segunda interface de rede da primeira máquina virtual se chamaria vif1.1 no Dom0. E por aí vai&#8230; lembre-se que a contagem começa com 0 (zero).</p>
<ul>
<li><strong>CRIANDO O SISTEMA BASE (MODELO)</strong></li>
</ul>
<p>Vamos gerar um sistema base do Debian e usá-lo como modelo para esta e futuras máquinas virtuais que venham a ser criadas. Para fazer isso, utilizamos a ferramenta <em>debootstrap</em>.</p>
<p>O <em>debootstrap</em> cria  uma instalação do Debian (apenas sistema base) em um diretório. Vamos criar uma pasta para receber este sistema base.</p>
<blockquote><p>lab04est011:~# mkdir base</p></blockquote>
<p>O debootstrap precisa de uma fonte para baixar os arquivos do sistema básico do debian. Podemos usar o próprio CD1 de instalação do Debian, ou até mesmo um repositório online. Neste tutorial vamos utilizar o CD1 do Debian.</p>
<p>Insira o CD1 do Debian Etch na unidade de cdrom e monte-o em /mnt:</p>
<blockquote><p>lab04est011:~# mount /dev/cdrom /mnt</p></blockquote>
<p>Agora vamos criar o sistema base na pasta &#8220;base&#8221;. Esta operação pode demorar um pouco:</p>
<blockquote><p>lab04est011:~# debootstrap etch base file:/mnt</p></blockquote>
<p>E desmontamos o cdrom</p>
<blockquote><p>lab04est011:~# umount /dev/cdrom</p></blockquote>
<p>Precisamos configurar alguns arquivos da base que não veem configurados pelo debootstrap. Vamos utilizar os arquivos do Dom0, copiando-os para a base e alterá-los quando necessário, na hora de copiar a base para a partição da máquina virtual:</p>
<blockquote><p>lab04est011:~# cp /etc/fstab base/etc</p>
<p>lab04est011:~# cp /etc/hosts base/etc</p>
<p>lab04est011:~# cp /etc/apt/* base/etc/apt/</p>
<p>lab04est011:~# cp /etc/network/interfaces base/etc/network/</p></blockquote>
<p>É preciso copiar os módulos do Kernel do XEN para o sistema base:</p>
<blockquote><p>lab04est011:~# cp -arpv /lib/modules/2.6.18-6-xen-vserver-686 base/lib/modules/</p></blockquote>
<ul>
<li><strong>CRIANDO AS MÁQUINAS VIRTUAIS</strong></li>
</ul>
<p>O primeiro passo é criar os volumes lógicos que vão abrigar as máquinas virtuais. Desmonte a partição que vai receber os volumes lógicos, caso ela esteja montada. Neste exemplo é /dev/hda3.</p>
<blockquote><p>lab04est011:~# umount /dev/hda3</p></blockquote>
<p><em>Obs.: Não podemos esquecer de remover eventuais entradas desta pastição no arquivo /etc/fstab !</em></p>
<p>Preparando a partição para receber os volumes lógicos:</p>
<blockquote><p>lab04est011:~# pvcreate /dev/hda3</p></blockquote>
<p>Criando o grupo lógico chamado VM:</p>
<blockquote><p>lab04est011:~# vgcreate vm /dev/hda3</p></blockquote>
<p>Agora vamos criar as partições que vão abrigar nossa primeira máquina virtual (vou chamá-la de VM1). Por questões didáticas de simplificação, criarei a máquina virtual utilizando todos os arquivos em uma única partição. Logo, teremos apenas duas partições: / e SWAP.</p>
<p>Criando a partição &#8220;/&#8221; com 2Gb em /dev/vm/vm1.raiz:</p>
<blockquote><p>lab04est011:~# lvcreate -L2G -n vm1.raiz vm</p></blockquote>
<p>Criando a partição SWAP, com 512Mb em /dev/vm/vm1.swap:</p>
<blockquote><p>lab04est011:~# lvcreate -L512M -n vm1.swap vm</p></blockquote>
<p>Criando o sistema de arquivos EXT3 na partição &#8220;/&#8221;:</p>
<blockquote><p>lab04est011:~# mkfs.ext3 /dev/vm/vm1.raiz</p></blockquote>
<p>Setando a partição /dev/vm/vm1.swap como swapspace:</p>
<blockquote><p>lab04est011:~# mkswap /dev/vm/vm1.swap</p></blockquote>
<p>Agora vamos montar a partição raiz da máquina virtual em /mnt</p>
<blockquote><p>lab04est011:~# mount /dev/vm/vm1.raiz /mnt</p></blockquote>
<p>E copiar o sistema base para a partição</p>
<blockquote><p>lab04est011:~# cp -arpv base/* /mnt/</p></blockquote>
<p>Precisamos configurar alguns arquivos na máquina virtual. Mas antes, vamos dar um chroot em /mnt</p>
<blockquote><p>lab04est011:~# chroot /mnt</p></blockquote>
<p>Agora vamos atualizar o sistema</p>
<blockquote><p>lab04est011:~# apt-get update</p>
<p>lab04est011:~# apt-get upgrade</p></blockquote>
<p>Instalar o pacote libc6-xen, que resolve o bug das mensagens do kernel</p>
<blockquote><p>lab04est011:~# apt-get install libc6-xen</p></blockquote>
<p>Agora vamos configurar o /etc/fstab</p>
<blockquote><p>lab04est011:~# vim /etc/fstab</p></blockquote>
<blockquote><p># /etc/fstab: static file system information.<br />
#<br />
# &lt;file system&gt; &lt;mount point&gt;   &lt;type&gt;  &lt;options&gt;       &lt;dump&gt;  &lt;pass&gt;<br />
proc            /proc           proc    defaults        0       0<br />
/dev/hda2       /               ext3    defaults,errors=remount-ro 0       1<br />
/dev/hda1       none            swap    sw              0       0<br />
/dev/hdb        /media/cdrom0   udf,iso9660 user,noauto     0       0<br />
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0</p></blockquote>
<p>Este é o arquivo é uma cópia do /etc/fstab do Dom0, lembra? Precisámos editá-lo para que se adeque à realidade da nossa máquina virtual, que possui apenas 2 partições (raiz e swap). Altere o arquivo para que ele fique como o abaixo:</p>
<blockquote><p># /etc/fstab: static file system information.<br />
#<br />
# &lt;file system&gt; &lt;mount point&gt;   &lt;type&gt;  &lt;options&gt;       &lt;dump&gt;  &lt;pass&gt;<br />
proc            /proc           proc    defaults        0       0<br />
/dev/hda2       /               ext3    defaults,errors=remount-ro 0       1<br />
/dev/hda1       none            swap    sw              0       0</p></blockquote>
<p>Porque escolhemos /dev/hda1 para swap e /dev/hda2 para raiz?? As partições criadas não eram /dev/vm/vm1.raiz e /dev/vm/vm1.swap???</p>
<p>Calma&#8230; isso será explicado no passo de criação do arquivo de inicialização da máquina virtual.</p>
<p>Agora vamos configurar a interface de rede da máquina virtual. edite o arquivo /etc/network/interfaces</p>
<blockquote><p>lab04est011:~# vim /etc/network/interfaces</p></blockquote>
<blockquote><p># This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).</p>
<p># The loopback network interface<br />
auto lo<br />
iface lo inet loopback</p>
<p># The primary network interface<br />
auto eth0<br />
iface eth0 inet dhcp</p></blockquote>
<p>Neste tutorial utilizaremos um IP atribuído por um servidor DHCP. Neste caso, a configuração acima está adequada. No caso de usarmos IP fixo, devemos configurar este arquivo conforme abaixo:</p>
<blockquote><p># This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).</p>
<p># The loopback network interface<br />
auto lo<br />
iface lo inet loopback</p>
<p># The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address xxx.xxx.xxx.xxx # ip desejado<br />
netmask xxx.xxx.xxx.xxx # máscara de rede<br />
gateway xxx.xxx.xxx.xxx # ip do gateway</p></blockquote>
<p>No caso de IP fixo, não podemos esquecer de configurar o arquivo /etc/resolv.conf</p>
<blockquote><p>lab04est011:~# echo nameserver xxx.xxx.xxx.xxx &gt; /etc/resolv.conf</p></blockquote>
<p>Onde xxx.xxx.xxx.xxx é o IP do servidor DNS.</p>
<p>Agora vamos configurar o arquivo /etc/hosts</p>
<blockquote><p>lab04est011:~# vim /etc/hosts</p></blockquote>
<blockquote><p>127.0.0.1       localhost<br />
127.0.1.1       lab04est011.local     lab04est011</p>
<p># The following lines are desirable for IPv6 capable hosts<br />
::1     ip6-localhost ip6-loopback<br />
fe00::0 ip6-localnet<br />
ff00::0 ip6-mcastprefix<br />
ff02::1 ip6-allnodes<br />
ff02::2 ip6-allrouters<br />
ff02::3 ip6-allhosts</p></blockquote>
<p>Altere-o para que fique como abaixo:</p>
<blockquote><p>127.0.0.1       localhost<br />
127.0.1.1       vm1</p>
<p># The following lines are desirable for IPv6 capable hosts<br />
::1     ip6-localhost ip6-loopback<br />
fe00::0 ip6-localnet<br />
ff00::0 ip6-mcastprefix<br />
ff02::1 ip6-allnodes<br />
ff02::2 ip6-allrouters<br />
ff02::3 ip6-allhosts</p></blockquote>
<p>E por último, vamos definir o hostname com o comando</p>
<blockquote><p>lab04est011:~# echo vm1 &gt; /etc/hostname</p></blockquote>
<p>E configurar o locales</p>
<blockquote><p>lab04est011:~# apt-get install locales</p>
<p>lab04est011:~# dpkg-reconfigure locales</p></blockquote>
<p>Selecione os locales que desejar. Neste caso utilizaremos os listados abaixo por questão de compatibilidade:</p>
<blockquote><p>[*] pt_BR ISO-8859-1</p>
<p>[*] pt_BR.UTF-8 UTF-8</p></blockquote>
<p>Depois escolha como padrão &#8220;pt_BR.UTF-8&#8243;.</p>
<p>Agora saímos do ambiente chroot e desmontamos a partição /dev/vm/vm1.raiz</p>
<blockquote><p>lab04est011:~# exit</p>
<p>lab04est011:~# umount /dev/vm/vm1.raiz</p></blockquote>
<p>Vamos agora criar o script de inicialização da máquina virtual.</p>
<p>Os scripts devem ficar na pasta /etc/xen. Vamos criar um para a nossa &#8220;vm1&#8243;</p>
<blockquote><p>lab04est011:~# vim /etc/xen/vm1</p></blockquote>
<blockquote><p>name = &#8220;vm1&#8243;<br />
kernel = &#8220;/boot/vmlinuz-2.6.18-6-xen-vserver-686&#8243;<br />
ramdisk = &#8220;/boot/initrd.img-2.6.18-6-xen-vserver-686&#8243;<br />
memory = 128<br />
root = &#8220;/dev/hda2 ro&#8221;<br />
disk = [ 'phy:/dev/vm/vm1.raiz,hda2,w', 'phy:/dev/vm/vm1.swap,hda1,w' ]<br />
vif = [ 'mac=00:00:00:00:00:01' ]</p></blockquote>
<p>E finalmente chegou o momento de ligarmos a máquina virtual.</p>
<p>lab04est011:~# xm create -c vm1</p>
<p>Entre com o usuário root. O sistema não vai pedir senha porque a mesma ainda nao foi criada, então criá-la:</p>
<blockquote><p>vm1:~# passwd</p></blockquote>
<p>E converter o passwd para shadow</p>
<blockquote><p>vm1:~# pwconv</p></blockquote>
<p>E pronto!</p>
<p>Para sair do console da máquina virtual, use a sequência de teclas CTRL+].</p>
<p>Para que a máquina virtual inicia automaticamente a cada boot do Dom0, crie a pasta /etc/xen/auto</p>
<blockquote><p>lab04est011:~# mkdir /etc/xen/auto</p></blockquote>
<p>E crie links simbólicos apontando para o script de inicialização da máquina:</p>
<blockquote><p>lab04est011:~# ln -s /etc/xen/vm1 /etc/xen/auto/vm1</p></blockquote>
<ul>
<li><strong>ADMINISTRAÇÃO DAS MÁQUINAS VIRTUAIS</strong></li>
</ul>
<p>Abaixo segue uma lista com alguns comandos para administrar as máquinas virtuais:</p>
<p>Desligando uma máquina virtual:</p>
<blockquote><p>lab04est011:~# xm shutdown -H vm1</p></blockquote>
<p>Reiniciando uma máquina virtual:</p>
<blockquote><p>lab04est011:~# xm reboot vm1</p></blockquote>
<p>Desligando abruptamente uma máquina virtual:</p>
<blockquote><p>lab04est011:~# xm destroy vm1</p></blockquote>
<p><em><strong>ATENÇÃO</strong>: Este comando é equivalente ao desligamento abrupto de uma máquina real (ex faltar luz). Só utilize-o em casos extremos, por exemplo, perda de controle da máquina virtual. O uso deste comando poderá causar danos como o corrompimento do filesystem e a perda de dados.</em></p>
<p>Listando as máquinas virtuais que estão ligadas:</p>
<blockquote><p>lab04est011:~# xm list</p></blockquote>
<p><strong></strong>Ao listar as máquinas, poderão aparecer algumas letras que indicam o estado das<br />
mesmas. As principais são:<br />
­ r (running): indica que a máquina está executando alguma tarefa;<br />
­ b (blocked): indica um bloqueio de atividade, geralmente causado por espera para acesso a<br />
dispositivos;<br />
­ p (paused): indica que a VM sofreu pausa (veja a seguir como estabelecer pausa na<br />
execução);<br />
­ s (shutdown): indica que a máquina está em processo de shutdown;<br />
­ c (crashed): indica que máquina sofreu um &#8220;crash&#8221;. Essa situação deve ser do conhecimento<br />
do hypervisor para que o estado &#8220;c&#8221; seja listado;<br />
­ d (dying): indica que a máquina está saindo do ar mas ainda não terminou por algum motivo<br />
temporário. Esse estado geralmente ocorre durate shutdown ou crash da máquina.</p>
<p>Um TOP do sistema e das máquinas virtuais:</p>
<blockquote><p>lab04est011:~# xm top</p></blockquote>
<p>Pausar uma máquina virtual:</p>
<blockquote><p>lab04est011:~# xm pause vm1</p></blockquote>
<p>Tirar a pausa:</p>
<blockquote><p>lab04est011:~# xm unpause vm1</p></blockquote>
<p>Mudar a quantidade de memória da máquina virtual em &#8220;tempo de execução&#8221;:</p>
<blockquote><p>lab04est011:~# xm mem-set vm1 512</p></blockquote>
<p>Para maiores informações, e mais comandos, consulte a documentação do XEN, ou digite:</p>
<blockquote><p>lab04est011:~# man xm</p></blockquote>
<ul>
<li><strong>COMANDOS ÚTEIS PARA MANIPULAR VOLUMES LÓGICOS</strong></li>
</ul>
<p>Listar volumes físicos:</p>
<blockquote><p>lab04est011:~# pvs</p></blockquote>
<p>Remover volumes físicos</p>
<blockquote><p>lab04est011:~# pvremove /dev/hda3</p></blockquote>
<p>Listar os grupos e as suas informações:</p>
<blockquote><p>lab04est011:~# vgs</p></blockquote>
<p>Remover um grupo de volumes:</p>
<blockquote><p>lab04est011:~# vgremove vm</p></blockquote>
<p>Listar os volumes lógicos definidos:</p>
<blockquote><p>lab04est011:~# lvs</p></blockquote>
<p>Remover um volume lógico:</p>
<blockquote><p>lab04est011:~# lvremove /dev/vm/vm1.raiz</p></blockquote>
<p>Renomear um volume lógico:</p>
<blockquote><p>lab04est011:~# lvrename /dev/vm/vm1.taiz /dev/vm/vm2.raiz</p></blockquote>
<p>Redimensionar um volume lógico:</p>
<blockquote><p>lab04est011:~# lvresize -L -5G /dev/vm/vm1.raiz</p></blockquote>
<p><em>Obs: Ao redimensionar um volume lógico, parte do sistema de arquivos (caso exista) será perdido. Se não houver dados ou sistema de arquivos, bastará formatar o volume lógico (mkfs.ext3 /dev/vm/vm1.raiz, por exemplo). Caso haja dados, a primeira opção será fazer um backup dos mesmos para um posterior retorno. A segunda opção será redimensionar o sistema de arquivos. Para cada tipo de sistema de arquivos haverá um comando próprio para esta ação. É importante ressaltar que o redimensionamento do sistema de arquivos também poderá causar perda de dados.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2008/07/19/virtualizacao-com-xen-no-debian-etch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como queimar uma ISO pelo modo texto?</title>
		<link>http://parruda.net/2008/05/09/como-queimar-uma-iso-pelo-modo-texto/</link>
		<comments>http://parruda.net/2008/05/09/como-queimar-uma-iso-pelo-modo-texto/#comments</comments>
		<pubDate>Fri, 09 May 2008 21:08:07 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Iniciante]]></category>
		<category><![CDATA[cdrecord]]></category>
		<category><![CDATA[iso]]></category>
		<category><![CDATA[modo texto]]></category>
		<category><![CDATA[queimar imagem]]></category>
		<category><![CDATA[queimar iso]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=8</guid>
		<description><![CDATA[Continuando a série &#8220;como eu faço isso sem o modo gráfico?&#8221;, eis aqui a dica de como gravar uma imagem iso num CD ou DVD pela linha de comando.
Quem faz essa mágica é o cdrecord. No modo texto, ou numa janela de terminal, faça:
cdrecord dev=/dev/cdrom -data /caminho/do/arquivo.iso -v -v
Os &#8220;-v&#8221; &#8217;s são para dar verbose [...]]]></description>
			<content:encoded><![CDATA[<p>Continuando a série &#8220;como eu faço isso sem o modo gráfico?&#8221;, eis aqui a dica de como gravar uma imagem iso num CD ou DVD pela linha de comando.</p>
<p>Quem faz essa mágica é o <strong>cdrecord</strong>. No modo texto, ou numa janela de terminal, faça:</p>
<blockquote><p>cdrecord dev=/dev/cdrom -data /caminho/do/arquivo.iso -v -v</p></blockquote>
<p>Os &#8220;-v&#8221; &#8217;s são para dar verbose duplamente, ou seja, a saída do programa será bastante detalhada.</p>
<p>Se você tiver um CD ou DVD RW, você pode também usar o cdrecord para apagá-lo:</p>
<blockquote><p>cdrecord dev=/dev/cdrom blank=fast</p></blockquote>
<p>Se você não possui o cdrecord instalado:</p>
<blockquote><p>sudo apt-get install cdrecord # no ubuntu</p>
<p>apt-get install cdrecord # no debian, como root</p>
<p>yast -i cdrecord # no SUSE, como root</p></blockquote>
<p>Em breve postarei um tutorial para criação de uma ISO com seus arquivos.</p>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2008/05/09/como-queimar-uma-iso-pelo-modo-texto/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Problema Resolvido: VMware Server 1.0.5 no Ubuntu Hardy Heron (8.04) LTS, kernel 2.6.24</title>
		<link>http://parruda.net/2008/05/08/problema-resolvido-vmware-server-105-no-ubuntu-hardy-heron-804-lts-kernel-2624/</link>
		<comments>http://parruda.net/2008/05/08/problema-resolvido-vmware-server-105-no-ubuntu-hardy-heron-804-lts-kernel-2624/#comments</comments>
		<pubDate>Thu, 08 May 2008 15:11:45 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Cobra]]></category>
		<category><![CDATA[8.04]]></category>
		<category><![CDATA[hardy]]></category>
		<category><![CDATA[heron]]></category>
		<category><![CDATA[lts]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=9</guid>
		<description><![CDATA[Assim que instalei o novo Ubuntu (8.04) no meu notebook, me deparei com um problema: o VMware Server não instalava, dando erro em algumas libs. Resolvi escrever um mini-tutorial explicando como resolver o problema.
Obs: esta dica serve para qualquer distro com o kernel 2.6.24, fazendo-se apenas algumas modificações nos caminhos dos arquivos.
Primeiro, baixe o VMware [...]]]></description>
			<content:encoded><![CDATA[<p>Assim que instalei o novo Ubuntu (8.04) no meu notebook, me deparei com um problema: o VMware Server não instalava, dando erro em algumas libs. Resolvi escrever um mini-tutorial explicando como resolver o problema.</p>
<p>Obs: esta dica serve para qualquer distro com o kernel 2.6.24, fazendo-se apenas algumas modificações nos caminhos dos arquivos.</p>
<p>Primeiro, baixe o <a href="http://www.vmware.com/download/server/" target="_blank">VMware Server 1.05</a> e o patch <a href="http://parruda.net/downloads/vmware-any-any-update115.tar.gz">vmware-any-any-update115</a>. Não esqueça de instalar os pacotes necessários ao vmware:</p>
<blockquote><p>sudo apt-get install openbsd-inetd build-essential linux-headers-$(uname -r)</p></blockquote>
<p>Instale o VMware como de costume até aparecer um erro na compilação. Extraia o pacote de update:</p>
<blockquote><p>tar -xzvf vmware-any-any-update115.tar.gz</p></blockquote>
<p>e rode o <em>runme.pl</em></p>
<blockquote><p>cd vmware-any-any-update115</p>
<p>./runme.pl</p></blockquote>
<p>O patch continua a instalação do VMware automaticamente. Ao final do processo você vai notar que não consegue rodar o VMware. Aí vem o pulo do gato. Rode os comandos:</p>
<blockquote><p>sudo cp /usr/lib/libpng12.so.0 /usr/lib/vmware/lib/libpng12.so.0/</p>
<p>sudo cp /usr/lib/gcc/i486-linux-gnu/4.2.3/libgcc_s.so /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1 # se o seu Ubuntu é 32bit</p></blockquote>
<p>ou</p>
<blockquote><p>sudo cp /usr/lib/gcc/x86_64-linux-gnu/4.2.3/libgcc_s.so /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1 # se você usa a versão 64bit</p></blockquote>
<p>Pronto! É só rodar o vmware e ir pro abraço!</p>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2008/05/08/problema-resolvido-vmware-server-105-no-ubuntu-hardy-heron-804-lts-kernel-2624/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Manipulando arquivos .gz, .tar.gz e .tar.bz2 no Linux</title>
		<link>http://parruda.net/2008/04/28/manipulando-arquivos-gz-targz-e-tarbz2-no-linux/</link>
		<comments>http://parruda.net/2008/04/28/manipulando-arquivos-gz-targz-e-tarbz2-no-linux/#comments</comments>
		<pubDate>Mon, 28 Apr 2008 22:48:20 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Iniciante]]></category>
		<category><![CDATA[descompactando]]></category>
		<category><![CDATA[descompactar]]></category>
		<category><![CDATA[extraindo]]></category>
		<category><![CDATA[extrair]]></category>
		<category><![CDATA[manipulando arquivos]]></category>
		<category><![CDATA[pacote]]></category>
		<category><![CDATA[tar]]></category>
		<category><![CDATA[tar.bz2]]></category>
		<category><![CDATA[tar.gz]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=7</guid>
		<description><![CDATA[Muita gente recém chegada ao Linux sente dificuldade ao lidar com arquivos compactados. Tudo bem que há uma grande facilidade para extrair o conteúdo desses arquivos pela interface gráfica, mas e quando só temos a tela preta com o cursor piscando? Como fazer? Segue um mini tutorial sobre manipulação desses tipos de arquivos pelo modo [...]]]></description>
			<content:encoded><![CDATA[<p>Muita gente recém chegada ao Linux sente dificuldade ao lidar com arquivos compactados. Tudo bem que há uma grande facilidade para extrair o conteúdo desses arquivos pela interface gráfica, mas e quando só temos a tela preta com o cursor piscando? Como fazer? Segue um mini tutorial sobre manipulação desses tipos de arquivos pelo modo texto.</p>
<h3><strong>Extraindo arquivos</strong></h3>
<p>Para extrair os arquivos compactados no formato .tar.gz, faça:</p>
<blockquote><p>tar -xzvf arquivo.tar.gz</p></blockquote>
<p>E no formato .tar.bz2:</p>
<blockquote><p>tar -jxvf arquivo.tar.bz2</p></blockquote>
<address>* Você precisa ter o pacote bzip2 instalado</address>
<p>Para extrair o conteúdo de um arquivo .gz, basta fazer:</p>
<blockquote><p>gunzip nomedoarquivo.gz</p></blockquote>
<p><em>* Note que após a operação, o arquivo .gz some, dando lugar ao arquivo original.</em></p>
<h3><strong>Comprimindo arquivos</strong></h3>
<p>Para criar arquivos .tar.gz:</p>
<blockquote><p>tar czvf arquivo.tar.gz arquivos</p></blockquote>
<p>E para criar arquivos .tar.bz2:</p>
<blockquote><p>tar cjvf arquivo.tar.bz2 arquivos</p></blockquote>
<p>Para compactar usando o gzip:</p>
<blockquote><p>gzip arquivo</p></blockquote>
<p><em>* Note que após a operação, o arquivo some, dando lugar ao arquivo .gz.</em></p>
<p>Maiores informações:</p>
<blockquote><p>man tar</p>
<p>man gzip</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2008/04/28/manipulando-arquivos-gz-targz-e-tarbz2-no-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ies4Linux: Internet Explorer no Linux</title>
		<link>http://parruda.net/2008/04/28/ies4linux-internet-explorer-no-linux/</link>
		<comments>http://parruda.net/2008/04/28/ies4linux-internet-explorer-no-linux/#comments</comments>
		<pubDate>Mon, 28 Apr 2008 22:15:41 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Utilidades]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[ie4linux]]></category>
		<category><![CDATA[ies4linux]]></category>
		<category><![CDATA[internet explorer para linux]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[opensuse]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=6</guid>
		<description><![CDATA[Sabe aqueles momentos em que você morre de raiva porque não consegue abrir seu site favorito no Firefox? E quando você não consegue acessar o site do seu banco? Seus problemas acabaram!
A dica pode parecer estranha, mas porque você não abre com o Internet Explorer? Já sei: &#8220;Mas o Internet Explorer é do Windows&#8230;&#8221;. Eis [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" style="float: left;" src="/imagens/ies4linux.jpg" alt="" />Sabe aqueles momentos em que você morre de raiva porque não consegue abrir seu site favorito no Firefox? E quando você não consegue acessar o site do seu banco? Seus problemas acabaram!<br />
A dica pode parecer estranha, mas porque você não abre com o Internet Explorer? Já sei: &#8220;Mas o Internet Explorer é do Windows&#8230;&#8221;. Eis a solução!</p>
<p><a href="http://www.tatanka.com.br/ies4linux/page/Pt/P%C3%A1gina_Inicial" target="_blank"><strong>IEs4Linux</strong></a> é a forma <strong>mais simples</strong> de ter o Microsoft Internet Explorer rodando no Linux.</p>
<p>Para instalar, verifique se você possui os pacotes wine e cabextract instalados. Se você usa Ubuntu ou Debian, use os comandos:</p>
<blockquote><p>dpkg -l |grep -i wine</p>
<p>dpkg -l |grep -i cabextract</p></blockquote>
<p>Se você usa SUSE ou algum outro sabor de Linux que utiliza sistema de empacotamento RPM, use os comandos:</p>
<blockquote><p>rpm -qa |grep -i wine</p>
<p>rpm -qa |grep -i cabextract</p></blockquote>
<p>Se não tiver esses pacotes instalados, faça:</p>
<blockquote><p>sudo apt-get install wine cabextract  # no o ubuntu</p>
<p>apt-get install wine cabextract  # no debian, como root</p>
<p>yast -i wine cabextract # no SUSE, como root</p></blockquote>
<p>Aí é só baixar aqui o pacote .tar.gz da última versão, extraí-lo, rodar o &#8220;ies4linux&#8221; e seguir as instruções. Para facilitar, aí vai um comando no estilo &#8220;One Liner&#8221; que baixa o pacote, extrai e roda o executável ies4linux. Rode-o numa janela de terminal.</p>
<blockquote><p>wget http://www.tatanka.com.br/ies4linux/downloads/ies4linux-latest.tar.gz &amp;&amp; tar zxvf ies4linux-latest.tar.gz &amp;&amp; cd ies4linux-* &amp;&amp; ./ies4linux</p></blockquote>
<p>Agora sim, você vai poder voltar a mandar torpedos pelo site da OI, dentre outras coisas <img src='http://parruda.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2008/04/28/ies4linux-internet-explorer-no-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Usando o Postfix como Gateway para filtro de mensagens (ClamAV + SpamAssassin) no Debian Etch</title>
		<link>http://parruda.net/2008/04/25/usando-o-postfix-como-gateway-para-filtro-de-mensagens-no-debian-etch/</link>
		<comments>http://parruda.net/2008/04/25/usando-o-postfix-como-gateway-para-filtro-de-mensagens-no-debian-etch/#comments</comments>
		<pubDate>Fri, 25 Apr 2008 19:56:10 +0000</pubDate>
		<dc:creator>Paulo Arruda</dc:creator>
				<category><![CDATA[Cobra]]></category>
		<category><![CDATA[anti spam]]></category>
		<category><![CDATA[anti vírus]]></category>
		<category><![CDATA[antispam]]></category>
		<category><![CDATA[antivírus]]></category>
		<category><![CDATA[clamav]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[etch]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[spamassassin]]></category>
		<category><![CDATA[spamc]]></category>
		<category><![CDATA[spamd]]></category>

		<guid isPermaLink="false">http://parruda.net/?p=5</guid>
		<description><![CDATA[Hoje eu precisei ajudar um amigo a configurar um Postfix no firewall para que ele receba as mensagens de correio eletrônico, filtre seu conteúdo e mande-as para o servidor de correio interno (Qmail). Resolvi postar a solução aqui no blog, baseada nas documentações encontradas neste link e neste link.
Vamos lá. Para instalar o Postfix, o [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.postfix.org" target="_blank"><img class="alignleft" style="float: left;" src="http://www.postfix.org/mysza.gif" alt="" width="130" height="91" /></a>Hoje eu precisei ajudar um amigo a configurar um <a href="http://www.postfix.org" target="_blank">Postfix</a> no firewall para que ele receba as mensagens de correio eletrônico, filtre seu conteúdo e mande-as para o servidor de correio interno (Qmail). Resolvi postar a solução aqui no blog, baseada nas documentações encontradas neste <a href="http://www.postfix.org/STANDARD_CONFIGURATION_README.html#firewall" target="_blank">link</a> e neste <a href="http://www.unitednerds.org/thefallen/docs/index.php?area=Postfix&amp;tuto=Clamav-gsoares" target="_blank">link</a>.</p>
<p>Vamos lá. Para instalar o <a href="http://www.postfix.org" target="_blank">Postfix</a>, o <a href="http://www.clamav.net/" target="_blank">Clamav</a> e o <a href="http://spamassassin.apache.org/" target="_blank">Spamassassin</a>:</p>
<blockquote><p>apt-get install postfix spamassassin spamc clamav</p></blockquote>
<p>Agora edite o arquivo <em>/etc/defaults/spamassassin</em> e mude <em>ENABLED=0</em> para <em>ENABLED=1</em>. Edite também o arquivo <em>/etc/spamassassin/local.cf</em> e descomente as linhas:</p>
<blockquote><p>rewrite_header Subject *****SPAM*****</p>
<p>report_safe 1</p>
<p>required_score 5</p>
<p>use_bayes 1</p>
<p>bayes_auto_learn 1</p></blockquote>
<p>Inicie o serviço do spamassassin:</p>
<blockquote><p>/etc/init.d/spamassassin start</p></blockquote>
<p>Agora crie a pasta <em>/var/spool/filter</em></p>
<blockquote><p>mkdir /var/spool/filter</p>
<p>chown clamav /var/spool/filter</p></blockquote>
<p>Dentro do arquivo <em>/etc/postfix/master.cf</em> procure pela linha que começa com <em>smtp inet</em> e altere para que fique como abaixo:</p>
<blockquote><p>smtp  inet    n       &#8211;       n       &#8211;       &#8211;       smtpd</p>
<p>-o content_filter=clamav:clamav</p></blockquote>
<p>Dentro do mesmo arquivo, adicione após a última linha:</p>
<blockquote><p>clamav unix    &#8211;       n       n       &#8211; 15       pipe</p>
<p>flags=Rq user=clamav argv=/usr/lib/postfix/clamav-filter.sh -f ${sender}  &#8212;  ${recipient}</p></blockquote>
<p>Ainda no <em>master.cf</em>, procure a linha que começa com a palavra <em>local</em> e comente-a.</p>
<p>Agora vamos para o arquivo <em>/etc/postfix/main.cf</em>. Procure as linhas abaixo, altere as que existirem como está abaixo (ou acrescente as linhas que nao existirem):</p>
<blockquote><p>myorigin = seudominio.com</p>
<p>mydestination =</p>
<p>local_recipient_maps =</p>
<p>local_transport = error:local mail delivery is disabled</p>
<p>mynetworks = 127.0.0.0/8 12.34.56.0/24 # sua rede interna</p>
<p>relay_domains = correio.local # a sua maquina de correio para a qual o gateway vai mandar os emails</p>
<p>parent_domain_matches_subdomains = debug_peer_list smtpd_access_maps</p>
<p>relay_recipient_maps =</p>
<p>transport_maps = hash:/etc/postfix/transport</p>
<p>command_time_limit = 1h</p></blockquote>
<p>Agora, crie o arquivo <em>/etc/postfix/transport</em> com a linha:</p>
<blockquote><p>seudominio.com   smtp:correio.local</p></blockquote>
<p>Execute:</p>
<blockquote><p>postmap /etc/postfix/transport</p></blockquote>
<p>Baixe o script do <a href="mailto:thefallen@unitednerds.org">Deives Michellis</a> para a pasta <em>/usr/lib/postfix</em></p>
<blockquote><p>cd /usr/lib/postfix</p>
<p>wget http://www.parruda.net/downloads/clamav-filter.sh</p>
<p>chmod +x clamav-filter.sh</p></blockquote>
<p>E pronto! Agora mande um</p>
<blockquote><p>/etc/init.d/postfix restart</p>
<p>tail -f /var/log/mail.info</p></blockquote>
<p>e monitore se as mensagens estão sendo repassadas para o seu servidor da rede local, e se estão indo filtradas!</p>
]]></content:encoded>
			<wfw:commentRss>http://parruda.net/2008/04/25/usando-o-postfix-como-gateway-para-filtro-de-mensagens-no-debian-etch/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
