
12:14

Ramon Gadelha
,
3 Comments
Depois de algum tempo (anos!) sem atualizar este blog, eis que achei algum tempo para postar algo interessante, principalmente para mail admins.
Há alguns meses, precisei segmentar em um gateway SMTP, vários domínios diferentes, por IPs de saídas diferentes, eis que depois de ler a documentação do Postfix e suar um pouco a camisa (não seriam os dedos? :-D), encontrei a solução, e a descrevo neste artigo.
A versão do Postfix para essa solução é a 2.7.1. O servidor necessitará de vários IPs válidos, devidamente configurados com seus reversos e tudo mais.
Como o objetivo deste artigo não é ensinar como compilar ou instalar o Postfix, então vamos por a mão na massa a partir de já.
Como se sabe, você pode configurar vários transports no Postfix, que funcionam de maneira independente um do outro, inclusive com configurações que podem se sobrepor as configurações do main.cf!
Imaginemos que tenhamos 3 IPs de saída: 1.1.1.1, 1.1.1.2 e 1.1.1.3. Cada um deles poderá ter um ou mais domínios alocados. E cada um deles (IPs) deverá ter seu transport.
A primeira coisa a se fazer, é criar os transports. Para isso, abra o arquivo master.cf com seu editor preferido, geralmente localizado em /etc/postfix/master.cf.
A configuração dos transport seguem da seguinte maneira:
transport_1 unix - - n - - smtp
-o smtp_bind_address=1.1.1.1
transport_2 unix - - n - - smtp
-o smtp_bind_address=1.1.1.2
transport_3 unix - - n - - smtp
-o smtp_bind_address=1.1.1.3
Após configurar esses transports, é necessário mapeá-los para que o Postfix saiba por onde entregar as mensagens, ou então irá fazê-lo pelo transport padrão, que é o que já vem configurado durante a instalação.
Para isso, criaremos um arquivo de mapeamento chamado transport_table em /etc/postfix/transport_table.
/@meudominio1\.com\.br/ :transport_1
/@meudominio2\.com\.br/ :transport_2
/@meudominio3\.com\.br/ :transport_3
Você também pode mapear vários domínios em um transport.
Feito isso, agora é hora de compilar nosso hash, para isso digitamos:
$ postmap /etc/postfix/transport_table
Terminou? Não.
Agora vem a "mágica" pro Postfix entender como seguir esse mapeamento e dar finalmente utilização aos transports novos que foram criados.
Para fazer a "grande mágica", abra o arquivo /etc/main.cf e adicione a seguinte linha:
sender_dependent_default_transport_maps = regexp:/etc/postfix/transport_table
Feito isso, basta dar um restart no Postfix. Opa, por que não um simples reload? A documentação oficial do Postfix recomenda um restart completo no daemon após qualquer modificação nos transports.
$ postfix restart
Feito isso, basta enviar e-mails com os domínios que você mapeou e conferir em seus cabeçalhos o IP de saída. Caso não tenha dado certo, verifique a versão de seu Postfix e refaça o que foi mostrado neste artigo.
Espero que esse artigo tenha sido útil, pois passei alguns dias pesquisando sobre isso e é raridade encontrar tutoriais falando sobre este assunto.

10:05

Ramon Gadelha
,
21 Comments
Um certo dia instalei o Windows Vista no meu PC em uma partição separada.
Mas me enganei na hora de escolher a partição, e instalei em uma de apenas 10GB, ou seja, impraticável para o Vista.
Então baixei um programa para redimensionar outra partição e dar espaço para aumentar a de 10GB, usei o tal do EASEUS Partition Manager (NUNCA USE ESTE PROGRAMA) e, POMBAS, falhou!
Resultado: perdi todos os dados da partição que eu redimensionei! Pelomenos ele redimensionou...
O problema, é que eu burramente não fiz backup de nada e nesta partição tinha arquivos importantes meus e da minha mulher, que não poderiam ser perdidos de maneira alguma.
Qual a solução? Saí procurando no Oráculo que tudo sabe. Eis que encontrei uma maravilhosa ferramenta chamada TestDisk.
O TestDisk é uma ferramenta OpenSource, funciona tanto em Linux quanto Windows e também em outros sistemas operacionais.
TestDisk: http://www.cgsecurity.org/wiki/TestDisk_Download
Recuperando a partição deletada.
Esta parte do artigo basea-se no uso em Windows Vista, mas o procedimento é o mesmo, ou bastante parecido em outros sistemas operacionais suportados pelo TestDisk.
Primeiro, efetue o Download e descompacte o TestDisk, então inicie o TestDisk pelo comando TestDisk.exe no CMD do Windows.
OBS.: Caso esteja usando Windows Vista, crie um .bat para inicializar o TestDisk e inicie-o como Administrador, caso contrário ele será incapaz de detectar seus discos.
1 - Primeiro aparecerá uma tela perguntando se você quer criar logs e suas respectivas opções, escolha a que melhor lhe agradar e prossiga;
2 - Selecione o disco onde está a partição a ser recuperada;
3 - Selecione o tipo de partição, no caso de Windows, Linux em PC, escolha Intel/PC Partition;
4 - Ele irá mostrar uma lista de possíveis partições e talvez mostre sua partição corrompida. Caso não mostre nenhuma partição a recuperar, selecione Quick Search.
5 - Após o procedimento Quick Search, ele irá lhe apresentar as partições possívelmente corrompidas destacadas em verde. Selecione a partição que quer recuperar então tecle "P" para listar seus arquivos, caso seja realmente a partição, volte a tela de listagem e selecione "A" para que o programa possa adicioná-la novamente a lista de partições válidas.
6 - Seja feliz com sua partição e respectivos arquivos recuperados ;-).
Caso não encontre a tão procurada partição, tente o método Deep Search, que é bem mais demorado. Este programa é bem eficiente, me salvou anos de trabalhos perdidos.
O TestDisk também permite outras formas de recuperação de dados, em outros tipos de mídia, você pode verificar isso em seu Wiki.

09:58

Ramon Gadelha
,
0 Comments
Hellow.
Estou a bastante tempo sem postar, devido a falta de tempo.
Mas creio que agora encontrei algum tempo pra postar e voltarei com novos artigos quentinhos.

20:37

Ramon Gadelha
,
15 Comments
Ontem (30/01) eu estava num dilêma: tenho um grande formulário que é gerado dinamicamente, como vou capturá-lo?
Em formulários fixos, a coisa é fácil porque é só especificar em uma variável o nome do campo, por exemplo:
$campo = $_POST['campo'];
Mas, quando a coisa é gerada dinamicamente, os nomes também são gerados dinamicamente, então como capturá-los?
Eis que pedindo a ajuda do pessoal do grupo PHPFORTALEZA, consegui a solução.
Duas pessoas me responderam com duas dicas diferentes que simplesmente: CASARAM com o que eu precisava, então bastou unir o jôio, com o trigo.
Primeira dica:
Se seu formulário for gerado dinâmicamente, crie os nomes dos campos em forma de arrays, exemplo:
<input type="textfield" name="campo[nome]">
<input type="textfield" name="campo[idade]">
Agora crie o arquivo que para onde o seu formulário será submetido:
$dados = $_POST['campo']; // captura todos os campos em um array
Pronto, você já tem todos os dados em apenas um array, quer testar?
echo $dados['nome'];
echo $dados['idade'];
Ou que tal fazer um foreach e ler todos os valores de todos os campos de uma vez?
$keys = array_keys($dados); // retorna as chaves do array $dados no array $keys
foreach($keys as $k) {
echo $dados[$k];
}
Como se pode ver, de uma maneira simples, você resolve um "problemão". Muito obrigado a aos membros do PHPFORTALEZA.

10:12

Ramon Gadelha
,
0 Comments
Começaram a aparecer as primeiras telas (é o que se pensa ser) da nova versão do sistema operacional das janelinhas (legal o trocadilho).
Aparentemente o sistema ainda está em sua versão Alpha, a data de lançamento ainda não é prevista, embora alguns pensem que o mesmo será lançado já no ano que vem (duvido muito).
Tela "about".Abaixo segue um vídeo que mostra alguns recursos novos como o redimensionamento dos campos 'endereço' e de busca do Windows Explorer e uma opção de "fixar" ítens no Menu Iniciar.
No mais, é esperar para ver e crer, mas não sou tão "otimista" quanto muitos que esperam o Windows 7 para o ano que vem.
Fonte:
Info Online

17:52

Ramon Gadelha
,
0 Comments
É isso mesmo Photoshopeiros, agora vocês que não largavam o Windows por conta do Photoshop, não terão mais desculpas, segundo o que informa no site do Wine, o mesmo agora suporta o Photoshop CS/CS2. Eu ainda não testei, mas já tenho relatos de sucesso na tentativa de rodar o Photoshop CS/CS2 com esta nova versão do Wine.
Pra quem não sabe, o Wine é uma camada de abstração, que suporta aplicações Windows em outras plataformas. Simplificando: Você é usuário de Linux, ou qualquer um dos Sistemas Operacionais suportados pelo Wine, mas que usar uma aplicação do Windows, então o Wine roda a aplicação sem emular nem virtualizar.
Fonte: Winehq

17:55

Ramon Gadelha
,
1 Comment

Muito se fala que o mundo UNIX é complicado. E é, para os usuários acostumados ao "conforto" do Windows.
Mas mesmo no "complicado" mundo dos UNICES, existem suas facilidades que meio que contrastam com a realidade da estrutura do sistema e do nível de entendimento que você deve ter sobre o mesmo. No mundo Linux, temos o apt-get (Debian-like), yum (Red-Hat-like), YaST (SuSE), installpkg (Slackware, ok, não é tão fácil assim), entre outros.
No FreeBSD - um sistema conhecido pelo seu alto desempenho, segurança, estabilidade e também por sua "complexidade" - temos o chamado Ports Collection, ou simplesmente, Ports.
Se você já se familiarizou com alguns gerenciadores de pacotes do Linux (eu amo o apt-get), irá "pegar a manha" no FreeBSD também. Os chamados "Ports" do FreeBSD, estão localizados no diretório "/usr/ports".
Se você digitar um "ls" irá ver que os mesmos estão separados por categoria, é muita coisa, MUITA mesmo que ficaria um pouco complicado olhar de uma em uma até achar o que você quer; para isso digite: make search key="palavra-chave".
Opa, make?!
Sim.
Alguém teve a idéia brilhante de criar uma estrutura de pacotes baseada em Makefiles, ah, e diferente de apt-get, yum, etc.. os pacotes que são baixados, são código-fonte e não em formato binário. Mas não se assuste, o Ports irá resolver todas as dependências e irá compilar tudo direitinho pra você.
Na prática:
Vamos utilizar o Ports na prática, para instalar a versão corrente do GNOME, que atualmente é a 2.20 (data em que este artigo foi escrito).
Primeiro, vamos ir para a pasta /usr/ports:
#cd /usr/ports
Já que existe a categoria 'x11', pressupomos que o GNOME esteja lá:
#cd x11/gnome2
Se algo der errado, digite:
#pkg_add -r gnome2
E vá tomar um chá, conversar com os amigos, namorar, etc.. porque isso demora pacas (pelomenos no caso do gnome).
Se a mudança de diretório para 'x11/gnome2' ocorreu sem problemas, vamos iniciar:
#make && make install
Deverá aparecer uma caixa de diálogo com algumas opções de compilação, etc. Escolha as que mais lhe agradam e de "OK". (Obs.: quantos mais ítens "extras" forem escolhidos, obviamente que a copilação irá durar mais).
E agora: vai demorar... hehe!
Recomendo que você tenha uma boa conexão banda-larga e um bom computador, pois além de baixar todo o GNOME e suas dependências em código fonte, terá de compilar um a um. Mas não se assuste, o Ports fará isso tudo automaticamente pra você.
Desvantagens: Demora muito tempo e corre risco de algo dar errado.
Vantagens: Você personaliza a seu gosto, otimiza para seu processador e conseqüentemente os programas compilados terão maior performace.

11:06

Ramon Gadelha
,
0 Comments
Não só no Windows, mas também no Mac OS X.
Agora o mito ou lenda faz-se real, o KDE4 já é multi-plataforma.
Cuidado aventureiros de plantão, o sistema está bastante instável e nem tudo ainda está totalmente portado.
Configurar no Mac: http://techbase.kde.org/index.php?title=Projects/KDE_on_Mac_OS_X#Download%20Torrent%20Files
Configurar no Windows: http://techbase.kde.org/Projects/KDE_on_Windows/Installation
Mais informações em: http://arstechnica.com/news.ars/post/20080123-kde-goes-cross-platform-with-windows-mac-os-x-support.html

10:46

Ramon Gadelha
,
1 Comment
Senhoras e senhores, o Counter-Strike está proibido no Brasil. Mas a questão aqui, não é se está proibido ou não, é se a proibição está ajudando nossa sociedade.
Não jogo Counter-Strike (CS para os mais íntimos), mas não concordo com a sua proibição. Os motivos que nosso juís alega, é nobre, que o jogo é violento e reproduz cenas de violência nas favelas brasileiras. OK.
Primeiro de tudo, esse mapa, não é desenvolvido pela empresa que é a detentora dos direitos do CS, mas foi produzido por brasileiros, então teria que proibir o mapa e não o jogo em questão.
Agora vamos a alguns tópicos:
- Quais os benefícios da proibição deste jogo? NENHUM.
- A proibição está beneficiando a educação de nossos jovens/adolescentes? NÃO.
- A proibição irá diminuir a violência no Brasil? NÃO.
Acho que os senhores juíses, antes de sentar a bunda na sua poltrona feita de penas de ganço e danar-se a escrever asneiras, deveria ver o que acontece no nosso país e escrever algo que realmente tenha valia e seja útil.
- Por que não proíbem a exibição de senas de sexo nas novelas da Globo?
- Por que não proíbem a exibição de filmes violentos?
- Por que não proíbem a proibição de asneiras como o BBB? (Não resisti).
Se formos analizar, o Brasil é um dos países que tem mais leis no mundo, leis muito bonitas - no papel.
Quais atitudes fariam o nosso país melhor?
- Diminuir imposto pra pobre e aumentar pros ricos;
- Reforma agrária justa;
- Distribuição de renda;
- Diminuição geral dos impostos, que são os sanguessugas de nossa sociedade;
- Melhorar o ensino público;
- Melhorar a segurança (que está ligada a qualidade de eduação);
- Aprender a fazer coisas que funcionem ao invés de baixar liminares apenas para aparecer.
É isso.

10:16

Ramon Gadelha
,
0 Comments
Para os intusiastas e aventureiros de plantão, segue o link: http://lwn.net/Articles/266318/,
é interessante embora eu não queira me aventurar nisso, boa sorte para quem for, mas pelo amor de deus, não faça algo igual a o LinuxFx.