Arquivo de 22/05/2011

OpenLdap no Debian Squeeze:

# aptitude install libldap-2.4-2 slapd ldap-utils

Vamos gerar a senha de admin:

# slappasswd
{SSHA}Kw4HqksjDnbutR6Re1+8HdSvhdPMnYFo

Anote a senha para inserir na diretiva roopw que estará no arquivo /etc/ldap/slapd.conf

Monte o arquivo slapd.conf conforme abaixo:

# vim /etc/ldap/slapd.conf

include      /etc/ldap/schema/core.schema
include      /etc/ldap/schema/cosine.schema
include      /etc/ldap/schema/nis.schema
include      /etc/ldap/schema/inetorgperson.schemaallow      bind_v2
pidfile      /var/run/slapd/slapd.pid
argsfile   /var/run/slapd/slapd.args
loglevel   none
modulepath   /usr/lib/ldap
moduleload   back_bdb

sizelimit 500
tool-threads 1

backend      bdb
database   bdb

suffix      ”dc=leonardoamorim,dc=com,dc=br”
rootdn      ”cn=admin,dc=leonardoamorim,dc=com,dc=br”
rootpw       {SSHA}Kw4HqksjDnbutR6Re1+8HdSvhdPMnYFo

directory   “/var/lib/ldap”
dbconfig set_cachesize 0 2097152 0
dbconfig set_lk_max_objects 1500
dbconfig set_lk_max_locks 1500
dbconfig set_lk_max_lockers 1500

index      objectClass eq
lastmod      on
checkpoint   512 30

access   to   attrs=userPassword,shadowLastChange
by dn=”cn=admin,dc=leonardoamorim,dc=com,dc=br” write
by anonymous auth
by self write
by * none

access to dn.base=”" by * read

access to *
by dn=”cn=admin,dc=leonardoamorim,dc=com,dc=br” write
by * read

Salve o arquivo.

Gerando a estrutura para levantar o servidor OpenLDAP:

# /etc/init.d/slapd stop
# cd /etc/ldap
# cp -r slapd.d slapd.d.backup
# rm -r slapd.d
# mkdir slapd.d
# slaptest -f slapd.conf -F slapd.d
# chown -R openldap:openldap slapd.d
# /etc/init.d/slapd start

Como usar a ferramenta migrationtools:

# aptitude install migrationtools
# vim /usr/share/migrationtools/migrate_common.ph

Procure as seguintes diretivas e as deixe exatamente assim:

$DEFAULT_MAIL_DOMAIN = “leonardoamorim.com.br”;
$DEFAULT_BASE = “dc=leonardoamorim,dc=com,dc=br”;

Salve o arquivo.

# cd /usr/share/migrationtools/
# ./migrate_passwd.pl /etc/passwd /etc/ldap/users.ldif
# ./migrate_group.pl /etc/group /etc/ldap/groups.ldif
# ./migrate_base.pl > /etc/ldap/base.ldif

O seu arquivo base.ldif deve estar assim:

dn: dc=leonardoamorim,dc=com,dc=br
dc: leonardoamorim
objectClass: top
objectClass: domaindn: ou=Hosts,dc=leonardoamorim,dc=com,dc=br
ou: Hosts
objectClass: top
objectClass: organizationalUnit

dn: ou=Rpc,dc=leonardoamorim,dc=com,dc=br
ou: Rpc
objectClass: top
objectClass: organizationalUnit

dn: ou=Services,dc=leonardoamorim,dc=com,dc=br
ou: Services
objectClass: top
objectClass: organizationalUnit

dn: nisMapName=netgroup.byuser,dc=leonardoamorim,dc=com,dc=br
nismapname: netgroup.byuser
objectClass: top
objectClass: nisMap

dn: ou=Mounts,dc=leonardoamorim,dc=com,dc=br
ou: Mounts
objectClass: top
objectClass: organizationalUnit

dn: ou=Networks,dc=leonardoamorim,dc=com,dc=br
ou: Networks
objectClass: top
objectClass: organizationalUnit

dn: ou=People,dc=leonardoamorim,dc=com,dc=br
ou: People
objectClass: top
objectClass: organizationalUnit

dn: ou=Group,dc=leonardoamorim,dc=com,dc=br
ou: Group
objectClass: top
objectClass: organizationalUnit

dn: ou=Netgroup,dc=leonardoamorim,dc=com,dc=br
ou: Netgroup
objectClass: top
objectClass: organizationalUnit

dn: ou=Protocols,dc=leonardoamorim,dc=com,dc=br
ou: Protocols
objectClass: top
objectClass: organizationalUnit

dn: ou=Aliases,dc=leonardoamorim,dc=com,dc=br
ou: Aliases
objectClass: top
objectClass: organizationalUnit

dn: nisMapName=netgroup.byhost,dc=leonardoamorim,dc=com,dc=br
nismapname: netgroup.byhost
objectClass: top
objectClass: nisMap

Inserindo o conteúdo dos ldifs na base de dados OpenLDAP:

# ldapadd -x -D cn=admin,dc=leonardoamorim,dc=com,dc=br -f /etc/ldap/base.ldif -W
# ldapadd -x -D cn=admin,dc=leonardoamorim,dc=com,dc=br -f /etc/ldap/groups.ldif -W
# ldapadd -x -D cn=admin,dc=leonardoamorim,dc=com,dc=br -f /etc/ldap/users.ldif -W
# ldapsearch -x -b dc=leonardoamorim,dc=com,dc=br uidNumber=1000

dn: uid=leo,ou=People,dc=leonardoamorim,dc=com,dc=br
uid: leo
cn: Leonardo Afonso Amorim
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 1000
gidNumber: 1000
homeDirectory: /home/leo
gecos: Leonardo Afonso Amorim,,,

Como modificar dados através do comando ldapmodify:

# vim /root/loginShell.ldif

dn: uid=leo,ou=People,dc=leonardoamorim,dc=com,dc=br
changetype: modify
replace: loginShell
loginShell: /bin/false

Salve o arquivo.

# ldapmodify -x -D cn=admin,dc=leonardoamorim,dc=com,dc=br -f /root/loginShell.ldif -W

modifying entry “uid=leo,ou=People,dc=leonardoamorim,dc=com,dc=br”

# ldapsearch -x -b dc=leonardoamorim,dc=com,dc=br uidNumber=1000

dn: uid=leo,ou=People,dc=leonardoamorim,dc=com,dc=br
uid: leo
cn: Leonardo Afonso Amorim
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
shadowMax: 99999
shadowWarning: 7
uidNumber: 1000
gidNumber: 1000
homeDirectory: /home/leo
gecos: Leonardo Afonso Amorim,,,
loginShell: /bin/false

Volte ao normal:

# vim /root/loginShell.ldif

dn: uid=leo,ou=People,dc=leonardoamorim,dc=com,dc=br
changetype: modify
replace: loginShell
loginShell: /bin/bash

# ldapmodify -x -D cn=admin,dc=leonardoamorim,dc=com,dc=br -f /root/loginShell.ldif -W

modifying entry “uid=leo,ou=People,dc=leonardoamorim,dc=com,dc=br”

Backup e restore no OpenLDAP:

# slapcat
# slapcat -l /root/backup.ldif
# cp /root/backup.ldif /root/backup.ldif.copia
# ldapdelete -x -D cn=admin,dc=leonardoamorim,dc=com,dc=br -W dc=leonardoamorim,dc=com,dc=br

Por: Leonardo Afonso Amorim


Estava aqui com um problema: os meus arquivos ficam em uma partição diferente do meu sistema, quando quero ouvir música preciso que esta partição esteja montada antes de abrir o Amarok senão ele pode dar pau na biblioteca e eu vou ter que escaneá-la toda de novo.

Quebrando cabeça aqui criei um Shell Script pra me ajudar nisso:

Primeiro fui no menu e troquei o comando de execução do Amarok para “sh /home/samuel/.amarok.sh”, depois criei o arquivo .amarok.sh na minha home com o seguinte conteúdo:

#!/bin/bash
if grep -qs ‘/dev/sda1′ /proc/mounts; then
amarok %U
else
zenity –question –ok-label “OK” –cancel-label “Cancelar” –text “Monte o volume \”Novo volume\”!”
if [ $? -eq 0 ]; then
./.amarok.sh
exit
elif [ $? -eq 1 ]; then
exit
fi
fi

Desta forma quando clico no ícone do Amarok no menu ele chama o script que checa se a partição “\dev\sda1″ esta montada, se não estiver exibe uma caixa com a mensagem: “Monte o volume Novo volume!” se eu clicar em OK sem montar a caixa com a mensagem volta, se eu clicar em Cancelar cancelo tudo e se eu montar a partição e clicar em OK abre o Amarok.

Se a partição já estiver montada o Amarok abre direto.

Espero que possa ajudar alguém com algum problema semelhante!

Sinta-se livre para modificar o código.

Publicado por Jorge Eustaquio

Fonte: viva o linux

Bom, galera, segue a dica de como consegui bloquear estes dois serviços do Google na rede.

Apesar de tentar usar as regras no Squid, o problema eram as portas e vários IPs diferentes que o Gtalk fica tentando usar, então pelo IPtables resolvi deste jeito.

Como os hosts que precisam ser liberados para o Gtalk exemplo: ” PC da Diretoria” recebem IPs via DHCP com controle de MAC, criei uma lista para liberar junto com um script em shell que ao informar o MAC do host ele já cria esta linha no arquivo principal mudando apenas o MAC.

Exemplo:

#*******************Lista liberados*****************************
iptables -A FORWARD -m mac –mac-source mac-do-PC-diretoria -d chatenable.mail.google.com -p tcp –dport 443 -j ACCEPT
iptables -A FORWARD -m mac –mac-source mac-do-PC-diretoria -d talk.l.google.com -p tcp –dport 5222 -j ACCEPT#************* Bloqueio Gtalk *****************************
iptables -A FORWARD -d talk.l.google.com -p tcp –dport 443 -j DROP
iptables -A FORWARD -d chatenabled.mail.google.com -p tcp –dport 443 -j DROP
iptables -A FORWARD -d talk.google.com -p tcp –dport 443 -j DROP
iptables -A FORWARD -d talkx.l.google.com -p tcp –dport 443 -j DROP

iptables -A FORWARD -d talk.l.google.com -p tcp –dport 5222 -j DROP
iptables -A FORWARD -d chatenabled.mail.google.com -p tcp –dport 5222 -j DROP
iptables -A FORWARD -d talk.google.com -p tcp –dport 5222 -j DROP
iptables -A FORWARD -d talkx.l.google.com -p tcp –dport 5222 -j DROP

#************************************************************

Criticas construtivas e sugestões serão bem vindas.

Publicado por Geovani Pires

Fonte: viva o linux

Saudações à todos,

Resolvi contribuir com essa dica após ter pesquisado aqui no VOL e encontrado pessoas com o mesmo problema e sem resposta. Fiz o procedimento que aqui descrevo apenas no Debian Squeeze, mas acredito que o mesmo possa ser feito em demais distribuições.

Entendendo o contexto:

Tenho 3 “placas” de som – sim eu gosto de música, mas isso não vem ao caso :) Pois bem, são 3 “placas” uma Audgy 2 off board, uma Intel HD onboard e uma saída HDMI na minha placa de vídeo.

Para evitar problemas, desabilitei na BIOS a Intel. Estava feliz da vida até que resolvi instalar os drivers da Placa de vídeo, uma Radeon 4670HD e claro que, assim como o pão cai sempre com a manteiga para baixo, meu querido Debian achou de bom grado adotar o HDMI como saída de áudio padrão. Pensei: “Simples, basta ‘dizer’ aos aplicativos que utilizo que quero que o som saia pela Audgy e não pela saída HDMI”. Resolvido?

Nem tudo. Qualquer audio que venha do browser (youtube etc) envia o áudio para a saída padrão e eu, em meu curto conhecimento não sei “dizer” para o browser que não quero a saída padrão. Sem mais remédio a solução é tornar padrão a placa que eu quero e que utilizo, diga-se de passagem.

Sem mais delongas, afinal isso é uma dica e não um artigo, vamos à solução:

Resolvendo o problema.

Primeiro é necessário identificar qual módulo (driver) está sendo utilizado por qual placa. Consegui identificá-los com o comando:

$ cat /proc/asound/devices

Esse comando retornou uma lista onde:

0:(nome do driver) da HDMI
1:(nome do driver) da Audgy2

Obs.: Também é possível identificar esses drivers de outra maneira, mas não irei me ater a isso.

Pois bem, o que fazer para “inverter” a situação?

Segundo passo: Utilize seu editor preferido e edite o arquivo “/etc/modprobe.d/alsa-base.conf”, no meu caso utilizei o Vim.

# vim /etc/modprobe.d/alsa-base.conf

No final do arquivo você encontrará a seguinte linha:

#Keep snd-pcsp from beeing loaded as first soundcard

Abaixo dessa linha adicione o seguinte:

options (nome-do-driver) index=-2

No meu caso ficou:

#Keep snd-pcsp from beeing loaded as first soundcard
options snd-intel-hd index=-2

Salve a alteração e reinicie o alsa. Se ainda assim a placa padrão não for a desejada, tente reiniciar o sistema.

Se ainda assim não resolver, faça um post que tento ajudar.

Espero ter ajudado. Abraço à todos.

Publicado por Wanderley de Souza

Fonte: viva o linux