Skip to content


Txt2tags atualizado!

É com grande prazer que anuncio a atualização do txt2tags no Debian!

Para quem ainda não conhece, o txt2tags é um gerador de documentos criado pelo mestre verde (o Aurélio Jargas, não o yoda) , capaz de a partir de um documento com um conjunto simples de marcações, converter para formatos que variam de manpage a pagemaker e latex.

txt2tags

Após um longo período de espera, criação de pacote não-oficial, pedido de adoção, sumiço do mantenedor oficial, eis que a solução surgiu.

O Debian Developer responsável pelo pacote deu o ar da sua graça e entrou em contato com algumas pessoas que haviam se mostrado interessados em ajudar. Após alguns emails trocados, decidimos que o melhor seria manter o pacote colaborativamente, sob o “guarda-chuva” do Time de aplicativos Python.

E com a mudança, os primeiros resultados. Corrigimos 5 bugs, fizemos o update para a versão mais recente,  e estamos trabalhando para fechar os bugs existentes. :)

A versão 2.5 já está disponível para o sid/instable, e nos próximos dias deve ser movida para o squezee/testing.

Faça um teste online e  e descubra a solução para os seus problemas, sem ter que pagar dízimo nem comprar produtos tabajara!

Posted in Aplicativos, Debian.

Tagged with , .


Dividir para conquistar

Como já escrevi no meu blog geral, decidi separar a parte técnica da não técnica. Nasceu assim este blog: techbits.

Se você se interessa pela parte de tutoriais, software livre, segurança, este é o lugar.

Durante o fim de semana devo terminar o ajuste dos artigos, dar um trato no visual, instalar plugins.

Mas já tenho alguns artigos no forno, para fazer a inauguração oficial. :)

Salud!

Posted in Varios.


Demorou mas saiu: Prefeitura de Fortaleza libera o PDTI em Software Livre para download

Um ano após o do lançamento do Plano Diretor de Tecnologia da Informação em Software Livre da prefeitura de Fortaleza, como foi noticiado aqui anteriormente,  o documento foi publicado na internet.

Disponibilizado sobre uma licença Creative Commons, o material pode ser baixado do site da comunidade 4CMBr, dentro do portal do Software Público Brasileiro, através deste link direto.

Ainda não tive tempo de analisá-lo, então meus comentários ficam para depois. :)

Posted in Varios.

Tagged with .


Squeeze: o nome da próxima versão do Debian

Acabei de publicar no site da Debian-BR-CE a notícia sobre o nome da próxima versão do Debian.

Conforme divulgado pelo RM Luk Claes na lista debian-devel-announce, continuando a tradição de nomes de personagens do filme Toy Story, desta vez foi escolhido “squeeze”, o nome do alien de três olhos do desenho.

A equipe de lançamento está confiante de que o Lenny será lançado ainda esse mês.

E se você quer ajudar a tornar isso possível, durante os dias 5 e 6 de setembro ocorrerá uma Bug squash party no canal #debian-bug, em irc.debian.org. :)

Posted in Debian.

Tagged with .


Atualização das funcoeszz

O Aurélio liberou uma nova versão das funcoeszz. Esse “scriptzinho” contém um conjunto de 69 mini-aplicativos que tornam a vida bem mais fácil.

Quer saber a cotação do dolar? digite zzdolar!

Resultado da mega sena? zzloteria!

funcoesZZ

Atualmente as funções ZZ já estão nos repositórios oficiais. Com o freeze do Lenny, não sei se teremos a versão mais nova  das ZZ quando ele for lançado, mas como o pacote só tem o lynx como dependência, é perfeitamente possível baixar o pacote do sid e instalá-lo no etch, por exemplo.

De qualquer forma, em breve irei criar o meu repositório pessoal de onde será possível instalar via apt[itude].

Enquanto isso você pode baixar o .deb aqui, e instalá-lo com dpkg -i funcoeszz_8.7-1_all.deb

Posted in Debian, Software Livre.

Tagged with , , .


Integrando OpenLDAP, Subversion, Webdav e Apache2

Essa semana recebi a missão de configurar um novo repositório subversion, então aproveitei para dessa vez utilizar o apache2 com webdav, autenticando via OpenLDAP.

Visita ao site do apache, leitura de documentação, busca no google…

“Ok, já posso por a mão na massa.”

Ledo engano. O apache2 não autenticava o usuário nem a pau. O log do openldap mostava a consulta sendo feita, o repositório estava com as permissões corretas para www-data.

“Tá bom, vou ler a documentação novamente.”

Após algumas horas de pesquisas na internet, consegui fazer a integração. Vejamos todos os passos.

Ambiente

  • Servidor Subversion e apache2;
  • Servidor OpenLDAP;
  • Svn com vários repositórios, permissões de arquivos via OpenLDAP;
  • Controle via grupos.

Configuração do repositório

O usuário www-data precisa ter acesso aos arquivos do repositório. Então supondo que sua base seja /var/svn/repo01, precisamos garantir as permissões com o comando:

cd /var/snv/repo01
chown -R www-data:grupo1
find repo01/ -type f -print -exec chmod 660 {} \;
find repo01/ -type d -print -exec chmod 2770 {} \;

Assim, apenas o www-data e os usuários do grupo terão acesso aos arquivos. Além disso, estamos setando o bit SGID nos diretórios, para que os arquivos criados também sejam do grupo.

Configuração do apache2

No apache 2.2.x, o módulo utilizado para autenticação via ldap é o mod_authnz_ldap. Iremos precisar do módulo dav_svn (pacote libapache2-svn). Habilite-os com o a2enmod.

Crie o arquivo do site em /var/apache2/sites-available/repo01. O conteúdo deve ser mais ou menos assim:

<VirtualHost *:80>
ServerAdmin administrador@seudominio.com.br
ServerName svn.seudominio.com.br
DocumentRoot /var/www/
ErrorLog /var/log/apache2/repo01/error.log
LogLevel notice
CustomLog /var/log/apache2/repo01/access.log combined
<Location /svn/repo01>
#habilita o repositorio
DAV svn
# caminho para o repositorio
SVNPath /var/svn/repo01
# tipo de autenticacao
AuthType Basic
# identificação do repositorio
AuthName "Repositorio SVN"
# provedor de autenticacao
AuthBasicProvider ldap
# Está on porque se a autenticação via ldap falhar, não deve pesquisar outras bases
AuthzLDAPAuthoritative on
# URL da base LDAP. O ?uid especifica atributo pesquisar (uid)
AuthLDAPURL "ldap://ldap.seudominio.com.br/ou=Usuarios,dc=seudominio,dc=com,dc=br?uid"
# Informa que atributo usar para verificar se o usuario faz parte do grupo ou não
AuthLDAPGroupAttribute memberUid
# especifica que a busca deve ser feita por usuario, e nao pelo DN
AuthLDAPGroupAttributeIsDN off
#usuario que irá fazer a consulta no ldap
AuthLDAPBindDN "cn=subversion,dc=seudominio,dc=com,dc=br"
#senha do usuario acima
AuthLDAPBindPassword "senha"
# grupos que terão acesso ao repositorio
Require ldap-group cn=repo01,ou=Grupos,dc=seudominio,dc=com,dc=br
</Location>
</VirtualHost>

Habilite o site com o a2ensite, recarregue o apache2 e pronto, seu apache2 está acessando o repositório svn e autenticando via openldap. :D

Agradecimentos ao faw, que me ajudou a debugar o problema e a encontrar a solução.

Posted in Admin. de Sistemas, Aplicativos, Comunidade, Software Livre.

Tagged with , , , .


Ajude a sustentar a Wikipédia e outros projetos, sem colocar a mão no bolso, e concorra a um Eee PC!

…e também a pen drives, card drives, camisetas geeks, livros e mais! O BR-Linux e o Efetividade lançaram uma campanha para ajudar a Wikimedia Foundation e outros mantenedores de projetos que usamos no dia-a-dia on-line. Se você puder doar diretamente, ou contribuir de outra forma, são sempre melhores opções. Mas se não puder, veja as regras da promoção e participe – quanto mais divulgação, maior será a doação do BR-Linux e do Efetividade, e você ainda concorre a diversos brindes!

Posted in Comunidade.

Tagged with .


Meu primeiro pacote Debian oficial: funcoeszz via aptitude

Além do trabalho com o time de segurança do Debian Lenny e com o time de i18n do Brasil, resolvi colaborar ainda mais com o Debian, desta vez no campo do empacotamento.

Coincidência ou não, acabei descobrindo que algo que eu uso razoavelmente quase todos os dias ainda não estava disponível nos repositórios oficiais do Debian. Eis a chance!

O aplicativo em questão é um conjunto de aplicativos em shell script chamado Funções ZZ.

Composta por 66 funções bem bacanas (zzdolar, zzinclude, zzconverte, zzdata, zzloteria, e uma série de outras), as funções ZZ foram criadas pelo Aurélio Jargas, contando com a colaboração de várias pessoas nesses 8 anos de estrada.

Para quem usa sid, basta um aptitude install funcoezz. Se tudo correr bem, o pacote estará disponível na próxima release estável. :)

O pacote também pode ser baixado e instalado no etch sem problema, assim como no Ubuntu.

Gostaria de agradecer ao Eriberto, que me deu uma força revisando o pacote e com seu TOC por linhas em branco e comentários :D, ao Aurélio pela solicitude em resolver alguns problemas, e ao Daniel que gentilmente foi meu sponsor.

Esses dias faremos o upload da versão 8.6, que saiu quentinha do forno com algumas correções e uma nova função.

Posted in Debian.


Evitando spoofing de remetente no postfix

Um recurso existente no postfix e que poucas pessoas usam é a validação do campo MAIL FROM para usuários do domínio, suportada nativamente.

Um exemplo seria alguém enviar um email interno (após ter se autenticado corretamente), se passando pelo chefe (crianças, não tentem fazer isso em casa sem a supervisão de um adulto).

vejamos:


235 2.0.0 Authentication successful
mail from:<chefe@seudominio.com>
250 2.1.0 Ok
rcpt to:<vitima@seudominio.com>
data
Assunto: vc foi promovido
A partir do mês que vem você receberá o dobro do salário! Parabéns!
.
250 2.0.0 Ok: queued as 2C702C192C8
quit

E então o servidor aceitou a mensagem, e seu amigo ficou feliz por alguns minutos, antes de ser avisado que era uma brincadeira.

postfix

Corrigindo o relay

Essa dica se destina a quem usa uma solução de correio com postfix, sasl, mysql, etc. Vou assumir que você já tem a solução instalada e que entende os conceitos que irei utilizar. Caso você não esteja familiarizado, um tutorial legal de como instalar e integrar a solução pode ser lido no vivaolinux.

Primeiramente devemos fechar o relay interno. Apenas usuários autenticados e o próprio servidor de correio devem enviar emails.

Para isso, no arquivo main.cf, acrescente a seguinte linha:
mynetworks_style = host

Assegure-se de que a variável mynetworks não exista, ou então esteja comentada.

Como você é uma pessoa cuidadosa e está utilizando autenticação via SASL (você está né?), o seu campo smtpd_recipient_restrictions deve ser parecido com:
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination, etc

Verificando o campo MAIL FROM

Esse foi o que deu mais trabalho. Caso um remetente do seu domínio seja fornecido – quer exista ou não – por padrão o postfix tenta enviar a mensagem para o destinatário. A partir do postfix 2.1, existe o controle reject_sender_login_mismatch, que irá fazer a verificação do usuário autenticado via SASL, e ver se o mesmo bate com os autorizados para ele.

A autorização é feita via tabelas, utilizando o controle smtpd_sender_login_maps, que no meu caso utiliza o mysql, mas vc pode usar hash, ldap, etc.

Seria algo parecido com:

smtpd_sender_login_maps = mysql:/etc/postfix/access.cf

E então no campo smtpd_sender_restrictions, vc acrescenta a verificação:
smtpd_sender_restrictions = reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_unauthenticated_sender_login_mismatch,
reject_sender_login_mismatch

o arquivo access.cf:

user=postfix-user
password=senha
dbname=postfix
table=mailbox
select_field=username
where_field=username
hosts=localhost

Voilá! Agora o usuário só envia email se estiver autenticado,
e somente se o MAIL FROM corresponder com o usuário logado! :)

Posted in Admin. de Sistemas, Debian.

Tagged with , .


apt-get install wife

blog.edermarques.net: apt-get wife

Após um semestre turbulento que começou em Outubro (isso, Outubro!), estou de férias!

E nada como um pouco de humor para relaxar depois de duas semanas de verdadeiro terror. :)

Posted in Debian, Varios.

Tagged with .