sexta-feira, 18 de dezembro de 2009

Problemas com libstdc++6 no Google Earth Linux

Simples vá até a pasta de instalação do Google Earth

no meu caso:
#cd /opt/google-earth
# rm -f libstdc++.so.6
# rm -f libgcc_s.so.1

$googleearth

Boa navegação.

terça-feira, 3 de novembro de 2009

Criando USB Bootável para instação de Windows Server 2008

Que Alá me perdoe,mas foi necessário:


Para instalação do Windows 2008 em Servidor HP sem "cdrom"; para minha salvação vi a dica em um site da net.
Segue a dica:

C:\> diskpart

DISKPART> list disk

Select the USB device from the list and substitute the disk number below
when necessary

DISKPART> select disk 1
DISKPART> clean
DISKPART> create partition primary
DISKPART> select partition 1
DISKPART> active
DISKPART> format fs=fat32
DISKPART> assign
DISKPART> exit

xcopy X:\*.* /s/e/f Y:\

where X:\ is your mounted image or physical DVD and Y:\ is your USB
device

Feito isso rode o comando abaixo:
D:\boot> bootsect.exe /nt60 Y:
Boa instalação do Windows Server 2008.

OBSERVAÇÔES:

- Se a versão do 2008 for 64 bits use um Vista 64 ou 2008 64 para gerar o USB 64 de instalação.

Retirado e traduzido livremente de:
http://bramp.net/blog/create-bootable-windows-server-2008-usb-stick

segunda-feira, 19 de outubro de 2009

Instalando bind9 em Solaris Zones

Muito se fala da segurança com bind, concordo que o nosso querido DNS é um assíduo frequentador das SA (Security Adversories), já instalei bind direto no Linux o que não é recomendado (dizem que em chroot é o correto para Linux); Já instalei em BSD Jail; Já instalei em VirtualBox em cima de BSD e finalmente a maneira mais simples!

Em cima de Zones, a maneira mais fácil de se Enjaular um processo.

Lembro que este tutorial requer o mínimo conhecimento em DNS

Mão na massa

Crie a Zone:
http://joaocep.blogspot.com/2009/06/criando-uma-interface-virtual-com.html

após logar em sua zone com: #zlogin -C zonedns1

#pkg refresh --full

instale um editor decente:

#pkg install SUNWgnu-nano

em seguida instale o bind

#pkg install SUNWbind

feito isso configure seu bind conforme o arquivo /etc/named.conf

um excelente tutorial é esse:
http://www.rnp.br/newsgen/0105/bind9.html

Lembrando que o Bind é o padrão de DNS Unix e é mantido pelo ISC - Internet Systems Consortium, as configurações "salvo" detalhes são igual para qualquer versão de Unix.

Bibliografia:
http://www.rnp.br/newsgen/0105/bind9.html
http://www.isc.org/products/BIND/

segunda-feira, 21 de setembro de 2009

ZFS snapshot e Virtualbox

ZFS e Virtualbox, ao meu ver formam a melhor combinação para virtualizar máquinas Windows.

Muito se fala no VMWare e suas homologações, Velocidade, etc. Mas a praticidade do Vbox unido ao sistema ZFS (nada impede de usar VMWare e ZFS no Linux) é extremamente útil.

Supondo que você tenha uma máquina virtual criada.

ex: exemplo.vdi

Crie o sistema de arquivos:
$zfs create rpool/export/home/VMS/exemplo

Copie a VDI para a pasta:
$cp ~/exemplo.vdi rpool/export/home/VMS/exemplo

Altere a ID de sua VDI:
$VBoxManage internalcommands setvdiuuid exemplo.vdi

Crie sua VDI, coloque como disco existente - configure a seu gosto... e teste.

Rotina de Backup:

#zfs snapshot rpool/export/home/VMS/exemplo@backup

Rotina de Restore:

#zfs rollback rpool/export/home/VMS/exemplo@backup

onde @backup é o nome da cópia de segurança.

Simples assim.

Na verdade, o "zfs snapshot" faz a tarefa do comando "VBoxManage snapshot" que tratava a imagem como arquivo, a vantagem do snapshot do ZFS é tratar o arquivo no Sistema de Arquivos -- Muito mais ágil.

Fica a dica.

sexta-feira, 31 de julho de 2009

Instalando Samba 3 no Opensolaris

Bom, resolvi escrever sobre o Samba 3, necessitava copiar alguns Warez para um Colega e não achei uma referência em pt_BR, então resolvi escrever essa dica para o pessoal.

Instalando:

# pkg install SUNWsmbs SUNWsmba

# svccfg import /var/svc/manifest/network/samba.xml

# cp /etc/sfw/smb.conf-example /etc/sfw/smb.conf

# svcadm enable samba
# svcadm enable swat
# svcadm enable wins

Configurando o seu samba usando swat

http://IP-DO-SERVIDOR:901

ou editando o smb.conf

# nano /etc/fsw/smb.conf

Para reinciar o serviço:

# svcadm refresh samba

OBS: os [homes] funcionam, se não usares ACL, o PDC funciona tranquilamente adicionando os "valid users", "force modes" e etc...

DICA: Há muitas diferenças na configuração do smb.conf do Opensolaris como suporte a ACL, Espero blogar em breve sobre isso samba + PDC + ACL.

um abraço.

referências:
http://baitisj.blogspot.com/2008/07/quick-notes-on-enabling-samba-in.html
http://wikis.sun.com/display/OpenSolarisInfo200906/How+to+Set+Up+Samba+in+the+OpenSolaris+2009.06+Release

quarta-feira, 29 de julho de 2009

Opensolaris - Desabilitando nwam e usando IP estático

A necessidade de desabilitar o gerenciamento de rede - nwam ou NetWork Auto-Magic ( http://opensolaris.org/os/project/nwam/ ) surgiu quando criei zones usando vnic ( http://joaocep.blogspot.com/2009/06/criando-uma-interface-virtual-com.html )

Um problema frequente quando usamos vnic e nwam é quando após o reboot perdemos a configuração das vnic.

Exemplo do problema:
# dladm show-vnic
# dladm create-vnic -l rtls0 squid0
dladm: vnic creation over rtls0 failed: object already exists
# dladm show-vnic squid0
dladm: failed to show vnic 'squid0': object not found
# dladm delete-vnic squid0
# dladm create-vnic -l rtls0 squid0

Note que acima, há a necessidade de excluir a vnic para que a zone possa subir novamente:

#zoneadm -z squid boot


Solucionando o problema:

Desabilitando o nwam:
#svcadm disable svc:/network/physical:nwam

Habilitando modo manual:
#svcadm enable svc:/network/physical:default

Configurando o modo manual

Usando Gnome, vá em:
System->Administration->Network

Configure sua interface e reinicie o serviço:

# svcadm restart milestone/network

feito isso , basta dar um reboot e suas vnics estarão presentes.

# dladm show-vnic
LINK OVER SPEED MACADDRESS MACADDRTYPE VID
www0 rtls0 100 2:8:20:e4:8:b9 random 0
squid0 rtls0 100 2:8:20:e1:c9:92 random 0

um abraço.

referências:

http://blogs.sun.com/natarajan/entry/setting_up_static_ip_and
http://forums.opensolaris.com/message.jspa?messageID=979
http://mail.opensolaris.org/pipermail/crossbow-discuss/2006-December/000330.html
http://opensolaris.org/jive/thread.jspa?messageID=387744

terça-feira, 28 de julho de 2009

Proxy Transparente usando Opensolaris

Aproveitando a dica anterior de configuração de squid em zone ( http://joaocep.blogspot.com/2009/07/configurando-squid-em-uma-zone.html ), que tal colocar essa zone como gateway de proxy transparente?
É comum em redes usar o mascaramento NAT, e para elevar o nível de segurança vamos colocá-lo dentro de uma zone.

O Opensolaris utiliza o ipfilter (ipf) como firewall, ferramenta "parecida" com o Packet Filter (pf) dos *BSD. há algumas semelhanças e diversas features devido ao framework de serviços svc do Solaris.

O que é necessário:

Opensolaris 2009.06

Se o pacote ipfilter não estiver instalado:
# svcs -xv ipfilter
svcs: Pattern 'ipfilter' doesn't match any instances

Instale-o:
# pkg install SUNWipf

Verifique o serviço:
# svcs -xv ipfilter
svc:/network/ipfilter:default (IP Filter)
State: disabled since Tue Jul 28 15:00:28 2009
Reason: Disabled by an administrator.
See: http://sun.com/msg/SMF-8000-05
See: man -M /usr/share/man -s 5 ipfilter
Impact: This service is not running.

Habilitando o ipfilter como serviço
# svcadm enable svc:/network/ipfilter

Habilitando o repasse em pacotes
# svcadm enable ipv4-forwarding


Regra de firewall:

crie um arquivo /etc/ipf/ipnat.conf

# rdr squid0 0.0.0.0/0 port 80 -> 127.0.0.1 port 3128

Habilite o nat
# ipnat -Cf /etc/ipf/ipnat.conf

Verificando se as regras estão ok.

# ipnat -l
List of active MAP/Redirect filters:
rdr squid0 0.0.0.0/0 port 80 -> 127.0.0.1 port 3128 tcp

List of active sessions:
RDR 127.0.0.1 3128 <- -> 189.73.192.209 80 [192.168.10.135 1321]
RDR 127.0.0.1 3128 <- -> 74.125.113.102 80 [192.168.10.135 1319]

Veririfique os logs do squid
# tail -f /var/log/squid/access.log
1248816780.483 232 192.168.10.135 TCP_MISS/200 1248 GET http://bn.uol.com.br/js.ng/site=uolbr&chan=homeuol&subchan=capa&affiliate=uolbrhomeuol&size=slot&page=2&conntype=1&expble=0&reso=800x600&tile=240914129032793? - DIRECT/200.221.6.19 application/x-javascript

Beleza, seu proxy já está habilitado em modo transparente


Bibliografia:

http://blogs.sun.com/tonyn/entry/firewall_configuration_in_opensolaris_2009
http://sigtar.com/2009/04/22/opensolaris-configuring-squid-as-transparent-proxy/

Vim colorido no Opensolaris

Apenas para deixar colorido o nosso amado editor de texto (em modo texto) vim que é usado por padrão.

Dica:
cp /usr/share/vim/vim72/vimrc_example.vim ~/.vimrc

Referência:
http://www.linuxguy.in/vimrc-on-opensolaris/

segunda-feira, 27 de julho de 2009

Instalando squid em uma zone Opensolaris

bueno, Resolvi escrever isso pois não achei documentação em pt_BR, apesar de ser uma tarefa simples, é um grande atrativo saber que coisas simples também funcionam em Opensolaris.

Crie a vnic:
#dladm create-vnic -l rtls0 squid0

Crie a Zone:
#zonecfg -z zonesquid
zonesquid: No such zone configuredUse 'create' to begin configuring a new zone.
zonecfg:zonesquid> create
zonecfg:zonesquid> set zonepath=/export/home/zonesquid
zonecfg:zonesquid> set ip-type=exclusive
zonecfg:zonesquid> set autoboot=true
zonecfg:zonesquid> add net
zonecfg:zonesquid:net> set physical=squid0
zonecfg:zonesquid:net> end
zonecfg:zonezonesquid> commit
zonecfg:zonesquid> exit

Instale a zone:
#zoneadm -z zonesquid install

Inicializiando e acessando a Zone:
#zoneadm -z zonesquid boot
#zlogin -C zonesquid

Configure a zone a seu gosto.

Acerto o seu DNS:
#cd /etc/
#vim resolv.conf
nameserver IP-DNS
#cp nsswitch.conf nsswitch.conf.old
#cp nsswitch.dns nsswitch.conf

#ping www.terra.com.br
www.terra.com.br is alive (por favor, nunca bloqueiem o ICMP)

Agora sim, DNS OK.

#pkg refresh --full
#pkg install SUNWsquid
#pkg install SUNWwget

Configure o /etc/squid/squid.conf a seu modo.

algumas dicas de alterações de quem vem do Debian:

- O usuário padrão do arquivo é webservd e não proxy ou squid.
- O diretório de cache é o /var/squid/cache e não /var/spool/squid
- Eu criei na mão o /var/log/squid com permissões para o user squid do grupo squid.


um abraço.

segunda-feira, 20 de julho de 2009

Zimbra - removendo TLS para funcionamento do Outlook Express 6.X

Problemão que achei no forum Zimbra, meus Microsoft Outlook Express não autenticavam de jeito nenhum usando TLS (maldito W2K Professional). Migrar uma rede enorme? -- Impossivel, devo fazer isso gradualmente e a Atualização do Zimbra era urgente.

1 - Veririfique se o TLS está subindo:

$zmprov gs `zmhostname` | grep zimbraReverseProxyPop3StartTlsMode
zimbraReverseProxyPop3StartTlsMode: only

Removendo a autenticação TLS -- para o Outlook Express:
zmprov ms `zmhostname` zimbraReverseProxyPop3StartTlsMode off
zmprov ms `zmhostname` zimbraReverseProxyImapStartTlsMode off

use "on" se necessário.

OBS: Mozilla Thunderbird aceita TLS tranquilamente, caso você possua as licenças de Microsoft Outlook, ele também suporta.

Boa sorte.

sexta-feira, 17 de julho de 2009

Zimbra - Solucionando Problema de senha ao inicializar imapproxy.

Solução do problema que encontrei ao fazer uma migração de Zimbra:

Problema:

Pedido de senha ao inicializar imapproxy.

$ zmcontrol start
Host server.purebrand.com
Starting ldap...Done.
Starting logger...Done.
Starting mailbox...Done.
Starting imapproxy...Password:

Solução:

Adicione as duas linhas ao final do arquivo /etc/sudoers

%zimbra ALL=NOPASSWD:/opt/zimbra/nginx/sbin/nginx
%zimbra ALL=NOPASSWD:/opt/zimbra/perdition/sbin/perdition

--
Boa sorte.

quarta-feira, 15 de julho de 2009

Instalando Openoffice.org via pkgadd

Necessitei baixar o Openoffice,e o link do IPS estava "meio" lento. então resolvi baixar o pacote direto para Solaris x86.

http://download.openoffice.org/other.html

$gunzip OOo_3.1.0_Solarisx86_install_pt.tar.gz
$tar -xvf OOo_3.1.0_Solarisx86_install_pt.tar
$cd OOO310_m11_native_packed-3_pt.9399

$pfexec pkgadd -d packages/

Basta seguir as instruções e dar os 'y' necessários.

abraço.

terça-feira, 14 de julho de 2009

Adicionando entrada Texto no grub Opensolaris

O grub no Opensolaris fica na pasta /rpool/boot/grub (Dependo do seu pool padrão).

Neste caso eu adicionei uma entrada em modo texto no boot:

splashimage /boot/grub/splash.xpm.gz
background 215ECA
timeout 30
default 0
#---------- ADDED BY BOOTADM - DO NOT EDIT ----------
title OpenSolaris 2009.06
findroot (pool_rpool,1,a)
bootfs rpool/ROOT/opensolaris
splashimage /boot/solaris.xpm
foreground d25f00
background 115d93
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS,console=graphics
module$ /platform/i86pc/$ISADIR/boot_archive
#---------------------END BOOTADM--------------------
#---------- ENTRANDA EM MODO TXT ----------
title OpenSolaris text mode 2009.06
findroot (pool_rpool,1,a)
bootfs rpool/ROOT/opensolaris
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS -s
module$ /platform/i86pc/$ISADIR/boot_archive
#---------------------END TXT--------------------

title Windows
rootnoverify (hd0,0)
chainloader +1

Feito isso, reboot.

sexta-feira, 26 de junho de 2009

Criando uma Zone usando uma interface virtual com dladm

Resolvi escrever rapidamente sobre essa interessante ferramenta do Opensolaris seguindo uma dica do Tirthankar para usar o novo Opensolaris.
De posse do installcd fiz a instalação em uma nova máquina (meu quarto filho).

Criei uma zone.

A partir disso passaremos a usar o dladm

supondo que sua placa seja uma rtls0:

#dladm create-vnic -l rtls0 vnic0

dentro da zone altere as linhas:

#zonecfg -z SUAZONE
>set ip-type=exclusive
>add net
>set physical=vnic0
>end
>commit
>exit

feito isso (ou crie já com essas alterações)

#zoneadm -z SUAZONE halt

vi hostname.vnic1

#cd /CAMINHODAZONE/root/etc/
#vi hostname.vnic0

altere para

SUAZONE-SEUIP

altere também o IP no arquivo:

#vi /CAMINHODAZONE/root/etc/inet/hosts

feito, basta subir a zone

#zoneadm -z SUAZONE boot

Um pouco da história, eu possuo uma máquina virtual com vários gateways (ela faz o serviço de roteamento) sóq ue dentro da Zone não há como fazer isso sem usar o Crossbow -- snv_106 ou superior.

Então este Indiano gente boa passou a dica, fui atrás e repasso agora.

A vantagem de usar a interface virtual é que pode-se criar rotas nela, sem que afetem as rotas da máquina hospedeira. Sei, o Vbox faz isso também mas "pesaria" muito.

fica a dica.

referência:
http://docs.sun.com/app/docs/doc/819-6990/gicom?a=view

quinta-feira, 25 de junho de 2009

Dica rápida - backup incremental com tar

Ok, OK.. usa ZFS falarão meus amigos, mas essa me salvou e eu estou utilizando o blog para consultas rápidas.

usando o tar.

Criando o Backup:
#tar --create --file=$ARQUIVO --listed-incremental=/var/log/Backup.snar $DIRETORIOS


Restore de Backup:
#tar --extract --listed-incremental=/var/log/Backup.snar --file $ARQUIVO

Agora vai da sua imaginação sftp ,ftp, rsync, tape, cpio disquete.

terça-feira, 2 de junho de 2009

Zfs no Debian Lenny

Resolvi escrever um breve tutorial sobre esse excelente sistema de arquivos e o motivo não poderia ser outro - hardware! meu notebook é um Compaq c730br e essa "joinha" não rola com wi-fi e som decente no Opensolaris 2009.06 e enquanto isso resta eu usar no PC de casa e em servidores da empresa. vamos ao que interessa: lembrando que uso um Debian 5.0 --

joaocep@0-raiser:~# uname -a Linux 0-raiser 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 GNU/Linux


#apt-get install scons fuse-utils libfuse-dev libfuse2 build-essentials

#wget http://download2.berlios.de/zfs-fuse/zfs-fuse-0.4.0_beta1.tar.bz2

#tar -jxvf zfs-fuse-0.4.0_beta1.tar.bz2

#cd zfs-fuse-0.4.0_beta1/src

#mv zfs-fuse/cmd_listener.c zfs-fuse/cmd_listener.c.orig

#sed 's/fuse\/fuse.h/linux\/fuse.h/' <> zfs-fuse/cmd_listener.c

#scons

#scons install install_dir=/usr/local/sbin

#export PATH=$PATH:/usr/local/sbin

#modprobe fuse

#echo "none /sys/fs/fuse/connections fusectl none 0 0" >>/etc/fstab

#mount -a -t fusectl

#zfs-fuse &

#fdisk -l /dev/sda -- seu device
Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x8f8001b1

Device Boot Start End Blocks Id System
/dev/sda1 1 5099 40957686 7 HPFS/NTFS
/dev/sda2 5100 8807 29784510 83 Linux
/dev/sda3 8924 14593 45544275 a5 FreeBSD
/dev/sda4 8808 8923 931770 82 Linux swap / Solaris

Partition table entries are not in disk order

Até aí tudo perfeito... mas eu possuia um pool zfs do FreeBSD e ele não deixou eu importar.
#zpool import JOAOCEP /dev/sda3

necessitei sacrificá-lo:
#zpool destroy JOAOCEP /dev/sda3

e criar um novo:
#zpool create JOAOCEP /dev/sda3
# zfs list
NAME USED AVAIL REFER MOUNTPOINT
JOAOCEP 87K 42,6G 25,5K /JOAOCEP

adicione as chamadas de modulo e inicialização no /etc/init.d/rc.local ou seja lá Deus onde quiser.

###
modprobe fuse
zfs-fuse&
###

Feito, basta começar os seus testes, no meu caso eu uso um sistema ZFS como documents do meu ~/ para que não ocorram problemas entre versões do meu homedir.

fazer backup com snapshot/rollback é um doce.


Referências:
http://drwetter.org/blog/zfs_under_linux.en.html
http://docs.sun.com/app/docs/doc/820-0447/gaypm?l=es&a=view

quinta-feira, 21 de maio de 2009

Instalando ntfs-3g no Opensolaris

Vi necessidade de fazer uma livre interpretação de tudo que achei na web de uma maneira mais simples para instalação.

Usando o repo-dev vamos as necessidades:

baixar o pacote SUNWonbld de:
http://dlc.sun.com/osol/on/downloads/current/SUNWonbld.i386.tar.bz2

descompactar e instalar
$bunzip2 SUNWonbld.i386.tar.bz2
$tar -xvf SUNWonbld.i386.tar
$pfexec pkgadd -d onbld/

$pfexec pkg install SUNWgnome-common-devel

baixe o ntfs-3g do site:
http://www.sunfreepacks.com/pkgpool/ASntfs-3g-1.5012.tar.gz

Descompacte e instale:
$gunzip ASntfs-3g-1.5012.tar.gz
$tar -xvf ASntfs-3g-1.5012.tar
$cd ASntfs-3g-1.5012
$pfexec pkgadd -d SUNWfusefs.pkg
$pfexec pkgadd -d SUNWlibfuse.pkg
$pfexec pkgadd -d ASntfs-3g-1.5012.pkg

Confira o seu device na saida do comando "format"
$format
Searching for disks...done


AVAILABLE DISK SELECTIONS:
0. c7d0
/pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0
Specify disk (enter its number): ^C

O disco especificado é o c7d0 que fica em /dev/dsk/c7d0

$pfxec ntfs-3g /dev/dsk/c7d0p1 /mnt
$cd /mnt

confira seus arquivos Windows.

abraço.

Gcc-dev no Opensolaris 2009.06 "Genunix"

Fui instalar o ntfs-3g e houve a necessidade do pacote gcc e não entendi por que não existe o pacote no repo oficial então teremos que usar o repo-dev.

$pfexec pkg set-authority -O http://pkg.opensolaris.org/dev opensolarisdev
$pfexec pkg refresh --full

$pfexec pkg install gcc-dev

feita a instalação , confira:

$gcc -v
Reading specs from /usr/sfw/lib/gcc/i386-pc-solaris2.11/3.4.3/specs
Configured with: /builds2/sfwnv-gate/usr/src/cmd/gcc/gcc-3.4.3/configure --prefix=/usr/sfw --with-as=/usr/sfw/bin/gas --with-gnu-as --with-ld=/usr/ccs/bin/ld --without-gnu-ld --enable-languages=c,c++,f77,objc --enable-shared
Thread model: posix
gcc version 3.4.3 (csl-sol210-3_4-20050802)


um abraço

segunda-feira, 16 de março de 2009

Recuperando base Ldap do Zimbra

Após um pequeno crash de energia elétrica no servidor de E-Mails perdi a base ldap e ficou aparecendo a seguinte mensagem:

$ zmcontrol start
Host mail.exemplo.com.br
Starting ldap...Done.
FAILED
Failed to start slapd. Attempting debug start to determine error.
bdb(): PANIC: fatal region error detected; run recovery
bdb_db_close: txn_checkpoint failed: Invalid argument (22)
backend_startup_one: bi_db_open failed! (-30978)
bdb_db_close: alock_close failed

Recuperando a Base ldap:

acesse a base

$zmcontrol stop
$tar -cjvpf openldap-data-BACKUP.tar.bz2 /opt/zimbra/openldap-data/
$cd /opt/zimbra/openldap-data/
$/opt/zimbra/sleepycat/bin/db_recover

$cd /opt/zimbra/openldap-data/openldap-data/
$/opt/zimbra/sleepycat/bin/db_recover

$zmcontrol start

* A princípio tudo ficará ok com esses passos.

Caso o mta apresente algum problema, vá até a pasta
/opt/zimbra/postfix/spool e verifique se as permissões estão corretas (seus devidos donos "chown"):

$ ls -la
total 492
drwxr-xr-x 16 root root 4096 Jul 19 2008 .
drwxr-xr-x 7 root root 4096 Jul 19 2008 ..
drwx------ 2 postfix root 180224 Mar 16 17:07 active
drwx------ 2 postfix root 4096 Mar 16 17:06 bounce
drwx------ 2 postfix root 4096 Dec 2 2007 corrupt
drwx------ 18 postfix root 4096 Jul 19 2008 defer
drwx------ 18 postfix root 4096 Jul 19 2008 deferred
drwx------ 2 postfix root 4096 Dec 2 2007 flush
drwx------ 2 postfix root 4096 Dec 2 2007 hold
drwx------ 2 postfix root 90112 Mar 16 17:07 incoming
drwx-wx--- 2 postfix postdrop 167936 Jan 8 14:49 maildrop
drwxr-xr-x 2 root root 4096 Jan 27 08:50 pid
drwx------ 2 postfix root 4096 Mar 15 22:32 private
drwx--x--- 2 postfix postdrop 4096 Mar 15 22:32 public
drwx------ 2 postfix root 4096 Dec 2 2007 saved
drwx------ 2 postfix root 4096 Mar 16 16:16 trace

feito isso:
$zmcontrol restart

um abraço.

quinta-feira, 5 de março de 2009

Aumentando a Memória Java do Openfire no Opensolaris.

Com o crescimento dos usuários e a necessidade de gerar logs fui obrigado a correr atras de documentação para Opensolaris, como não achei, fiz uma mesclagem de chutômetro com parâmetros do FreeBSD e funcionou, no meu caso dentro de uma Zone:

Sun Microsystems Inc. SunOS 5.11 snv_101b November 2008
root@zoneopenfire:~# cd /opt/openfire/bin/
root@zoneopenfire:/opt/openfire/bin#
root@zoneopenfire:/opt/openfire/bin# vim openfire.sh

Adicione entre as "aspas" a quantidade de memória Java com o parâmetro "-Xmx256m" onde 256MB poderão ser alterados a quantidade de memória desejada ou disponível.

OPENFIRE_OPTS="${OPENFIRE_OPTS} -DopenfireHome=${OPENFIRE_HOME} -Xmx256m"

Feito isso, reinicie o Openfire

root@zoneopenfire:/opt/openfire/bin#sh openfire.sh &

Confira no Painel de Controle do Openfire:
Ambiente Versão e Fabricante da JVM: 1.6.0_12 Sun Microsystems Inc. -- Java HotSpot(TM) Server VM Servidor de Aplicação: jetty-6.1.x Host Name: zoneopenfire SO / Hardware: SunOS / x86 Idioma / Fuso Horário: pt_BR / Brasilia Time (-3 GMT) Memória do Java
65.50 MB of 253.19 MB (25.9%) used


um abraço...

quarta-feira, 4 de março de 2009

Criando uma lx-Zone Debian - Opensolaris 2008.11

Resolvi escrever a criação de uma lx-Zone Debian, por não achar uma documentação em português sobre o assunto. Sou usuário Debian em desktop e sinto falta de algumas aplicações Linux no ambiente Opensolaris.

Vamos ao que interessa...


Criando uma zone:

zonecfg -z zonedebian
zoneopenfire: No such zone configuredUse 'create' to begin configuring a new zone.
zonecfg:zonedebian> create -t SUNWlx
zonecfg:zonedebian> set zonepath=/export/home/zonedebian
zonecfg:zonedebian> set autoboot=true
zonecfg:zonedebian> add net
zonecfg:zonedebian:net> set address=10.1.1.9/24
zonecfg:zonedebian:net> set physical=rge0
zonecfg:zonedebian:net> set defrouter=10.1.1.254
zonecfg:zonedebian:net> end
zonecfg:zonezonedebian> commit
zonecfg:zonedebian> exit

Feito isso vamos ao debootstrap em um debian (no caso qualquer máquina já existente):

#apt-get update && apt-get install debootstrap -y

#mkdir /tmp/zonedebian
#debootstrap --arch i386 etch /tmp/zonedebian http://mirrors.acm.jhu.edu/debian/

O que essa joinha faz??? ele baixa a imagem inicial de um Debian.

#cd /tmp/zonedebian
#tar -cvpf lx-brandz-etch-root.tar.gz .

Copie a sua zone usando scp.

Instalando a lx-zone:


baixe o arquivo BASE de:
http://trisk.acm.jhu.edu/lx-brandz-base-20080413.tar

Há a necessidade de usar um arquivo Base com pastas "RPM" ex: /etc/sysconfig

#zoneadm -z lunix install -d /tmp/lx-brandz-base-20080413.tar
agora use sua imagem do debootstrap ou baixe uma de:
http://trisk.acm.jhu.edu/lx-brandz-etch-root.tar.gz

#cd /export/home/zonedebian/root
#tar -xvf /export/home/joaocep/lx-brandz-etch-root.tar.gz .
#perl -pi -e "s,tty1,console,; s,^([23456]),#\1," etc/inittab

O primeiro BOOT

#zoneadmin -z zonedebian boot
#zlogin -C debian

Se tudo der certo como no caso abaixo:

root@opensolaris1:~# zlogin -C debian
[Connected to zone 'debian' console]
.
ln: creating symbolic link `/dev/MAKEDEV' to `/sbin/MAKEDEV': Function not implemented
Not starting internet superserver: no services enabled.
Starting periodic command scheduler: crond.

Debian GNU/Linux 4.0 exia console

exia login: root
Linux exia 2.4.21 BrandZ fake linux i686

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
exia:~#


Configure naturalmente...
Um abraço:

OBS: eu preferi usar um debootstrap do meu notebook


Com base em:
http://trisk.acm.jhu.edu/etch-zone.html

Script para rodar Vbox OnBoot - Opensolaris

Houve a necessidade de subir máquinas onboot, garimpei em fóruns e fiz algumas alterações:

crie um arquivo em /etc/init.d/startVM

#!/bin/sh

LD_LIBRARY_PATH=/opt/VirtualBox:/opt/VirtualBox/qtgcc/lib:/lib:/opt/sfw/lib
LD_NODIRECT=1
PATH=$PATH:/opt/VirtualBox
export LD_LIBRARY_PATH LD_NODIRECT PATH

for VM in `VBoxManage list vms | grep "^Name:" | cut -f2 -d":" | tr -d ' '` ; do

#VBoxManage startvm XPteste -type vrdp >/tmp/XPteste.log 2>&1 (/opt/VirtualBox/VBoxHeadless --startvm $VM) &
#/opt/VirtualBox/VBoxManage startvm FreeBSD -type vrdp &

done

testar se for o caso

#VBoxSDL -vm "FreeBSD"

tudo ok, adicione a entrada

#cd /etc/rc3.d
#chmod +x startVM
#ln -s ../init.d/startVM S99startVM

um abraço.

VPN utilizando VIVO-3g em Clientes Debian + VTun

A um bom tempo havia a necessidade de acesso em um local de estrutura deficiente, operadoras não passavam "cabos" e ninguém operava nada com qualidade, até que insisti muito com meu chefe e ele aceitou o desafio de colocar uma vpn usando vtun em cima de um sinal VIVO-3g.

- Debian 5.0 (basic install) como Cliente
IP - 192.168.1.1

- FreeBSD 6.4 como Servidor Matriz
IP - 192.168.0.1

Adicionar apenas o source:
deb http://http.us.debian.org/debian stable main contrib

Em servidores debian:
#apt-get update && apt-get install openssh-server vtun vim squid -y

Em FreeBSD (minha Opção como servidor em um Link de verdade)
cd /usr/ports/net/vtun && make install clean

SERVIDOR

Adicione no final do arquivo /etc/rc.conf a entrada:

vtund_enable="YES"

Editando o vtund.conf no servidor

#####vtund.conf
# vtund.conf - servidor

options {
port 5000;
ifconfig /sbin/ifconfig;
route /sbin/route;
}

default {
type tun;
proto tcp;
compress lzo:9; #
encrypt yes; #por sua conta e risco :D
keepalive yes;
stat no;
speed 0;
multi killold;
}
joaocep {
passwd ;
up {
# configura interface ponto-a-ponto
ifconfig "%% 192.168.0.1 192.168.1.1 mtu 1450 netmask 255.255.0.0";
# adiciona rota para a rede da filial
route "add -net 192.168.1.0 192.168.1.1 255.255.255.0";
};
# se houver desconexao derruba rota e a interface tunX
down {
ifconfig "%% delete down";
route "delete 192.168.1.0";
};
}

#####EOF


CLIENTE

#####vtund.conf
#/etc/vtund.conf
riodejaneiro {
passwd ;
proto tcp;
compress yes;
type tun;
up {
ifconfig "%% 192.168.1.1 pointopoint 192.168.0.1 netmask 255.255.255.0";
route "add -net 192.168.0.0/24 gw 192.168.0.1";
};
down {
ifconfig "%% down";
route "del -net 192.168.0.0/24 gw 192.168.0.1";
};
}

####EOF

A vez do VIVO:

Configurado o vtun, passaremos a conexão com Vivo-3G.

No arquivo /etc/wvdial.com

####wvdial.com
[Dialer 3g]
Modem = /dev/ttyUSB0
Baud = 921600
DialCommand = ATDT
Check Def Route = on
FlowControl = Hardware(CRTSCTS)
Username = vivo
Password = vivo
Phone = *99#
Stupid mode = 1
Auto Reconnect = on
Auto DNS = on
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2
Init3 = AT+CGDCONT=1,"IP","zap.vivo.com.br"
ISDN = 0
Modem Type = Analog Modem
####EOF

adicione no final do arquivo /etc/ppp/options as 4 linhas abaixo:

####options
asyncmap 0xa0000
mru 1500
refuse-chap
ipcp-max-failure 30
####EOF

Feito isso teste se seu Vivo está OK.

#wvdial 3g

Com o vivo em perfeito funcionamento, vamos a conexão com a Matriz:

#vtund joaocep [IP-REAL-DA-MATRIZ]
*Sim, há a necessidade de um IP Válido! ou seu DNS (no-ip, cjb ou seja lá a gambiarra que você use)

Teste com um ping para o servidor Matriz

#ping 192.168.0.1


Se aceitou, trafegue pela sua rede - Belezura Meio caminho andado.

Basta acertar os Roteamentos se for o caso, isso não é necessário se for para uma única rede.

No servidor FreeBSD (adicione ao /etc/rc.local) :
#route add -net 192.168.1.0/24 192.168.1.1

No Cliente Linux
Adicione apenas as entradas no rc.local ou bootmisc.sh
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter

Até ai, não há muito mistério...

Fazendo o VIVO subir no Boot

Crie um arquivo /etc/init.d/discador.sh

####matriz
#!/bin/bash
wvdial 3g &
####EOF

Crie outro arquivo /etc/init.d/vtun (remova o anterior se for o caso)

####vtun
sleep 30
vtund joaocep
[IP-REAL-DA-MATRIZ]
####EOF

OK, é uma Gambi! mas funciona, o sleep 30 faz o tempo da discagem para a Vivo e sem isso o vtund não conseguiria acessar o destino, pois daria uma bela mensagem de timeout no seu syslog.

Agora facilitando tudo no seu Cliente:

#cd /etc/rc2.d
#ln -s ../init.d/discador.sh S98discador
#ln -s ../init.d/vtun S99vtun

Teste com o reboot

um abraço.

Isso era para ser extremamente casual, mas o serviço é relativamente barato e dá para Rotear umas 12 máquinas em cima de um Vivo-3g, há inconvenientes certos com essa Gambiarra que eu não sugiro... mas quebra-se o maior galho para uma contingência.

Referência:
http://www.vivaolinux.com.br/artigo/Como-configurar-um-tunel-com-Vtun/?pagina=1


segunda-feira, 16 de fevereiro de 2009

Redirecionando portas do Openfire no FreeBSD.

Com a criação de uma Zone Openfire dentro de uma DMZ, fez-se necessário o redirecionamento de portas para acessar externamente este servidor por parte dos Clientes Externos a rede.

Supondo que há um PF (Packet Filter) configurado.

#########pf.conf######
ext_if=[DEVICE]
openfire=[IP-INTERNO-DO-SERVIDOR]

rdr on $ext_if proto { tcp udp } from any to any port 5222 -> $openfire port 5222
rdr on $ext_if proto { tcp udp } from any to any port 5223 -> $openfire port 5223
rdr on $ext_if proto { tcp udp } from any to any port 9090 -> $openfire port 9090
rdr on $ext_if proto { tcp udp } from any to any port 9091 -> $openfire port 9091

######################

Feito isso, teste.

Clonando uma VDI - VirtualBox.

Essa dica server para qualquer S.O (incluindo Windows).

Com sua VDI parada faça sua cópia:
#cp [VDI].vdi [NOVA-VDI].vdi
#VBoxManage internalcommands setvdiuuid [NOVA-VDI].vdi

Feito isso Adicione a sua nova VDI no Gerenciador de discos virtuais do VirtualBox.

Crie sua Máquina Virtual.

Caso sua VDI original possua um Snapshot, será necessário usar outro comando para clonagem:

#VBoxManage clonevdi [VDI].vdi [NOVA-VDI].vdi
*este processo demora um pouco mais.


Migrando uma VMDK Vmware para uma VDI Virtualbox:
#VBoxManage internalcommands converthd -srcformat VMDK -dstformat VDI [MACHINE].vmdk [MACHINE].vdi

O Virtualbox a partir da versão 2.10 abre Máquinas VMDK nativamente, mas eu acho mais produtivo usar as suas próprias VDI's.

Clonando uma Zone - Opensolaris

Achei extremamente útil escrever sobre isso.

Primeiramente pare sua zone:

#zoneadm -z [ZONE] halt

Exporte as configurações da zone para um arquivo
#zonecfg -z [ZONE] export -f /export/home/zones/Zone-Default

Altere as configurações para sua nova zone, alterando "IP e zonepath" e em seguida use este arquivo para configurar sua Nova Zone.

#zonecfg -z [NOVA-ZONE] -f /export/home/zones/Zone-Default

Clone a sua Zone:
#zoneadm -z
[NOVA-ZONE] clone [ZONE]

Liste suas zones para saber se está tudo ok:
#zoneadm list -iv

Em seguida configure sua nova zone:
#zoneadm -z
[NOVA-ZONE] boot

Feito isso, sua zone estar
á pronta.

Dica: Ao configurar sua zone procure rolar sua tela para não selecionar as opções de cima. (em timezone por exemplo).

domingo, 15 de fevereiro de 2009

Integrando Zimbra, Openfire em uma Zone 2008.11

Introdução

Faz algum tempo que recomendo o uso do Zimbra como Servidor de mails, e houve a necessidade da criação de um gateway para MSN. (todo mundo tem um cliente que usa o MSN Messenger)

A vantagem de integração da base LDAP do Zimbra é simples, e a criação de usuários e senhas fica centralizada na boa interface do Zimbra.

Este tutorial é simples e supondo que você já tenha um zimbra Configurado.

Há vários links de criação de zone, ela poderia ficar dentro de um novo pool zfs mas para que não enfrentar problemas a maneira mais simples é colocá-la em uma pool existente "/export/home/"

Criando uma zone:

zonecfg -z zoneopenfire
zoneopenfire: No such zone configuredUse 'create' to begin configuring a new zone.
zonecfg:zoneopenfire> create
zonecfg:zoneopenfire> set zonepath=/export/home/zoneopenfire
zonecfg:zoneopenfire> set autoboot=true
zonecfg:zoneopenfire> add net
zonecfg:zoneopenfire:net> set address=10.1.1.10/24
zonecfg:zoneopenfire:net> set physical=rge0
zonecfg:zoneopenfire:net> set defrouter=10.1.1.254
zonecfg:zoneopenfire:net> end
zonecfg:zoneopenfire> commit
zonecfg:zoneopenfire> exit
# zoneadm -z zoneopenfire install
# zoneadm -z zoneopenfire boot
-- Configure sua nova instalação.
# zlogin -C zoneopenfire
Escolha a opção [console] e entre com a senha do root.

Dica: Dentro de uma zone nova, adicione seu usuário para não usar o root.

Para ganhar tempo, baixe a versão Solaris do Openfire usando o link abaixo:
http://www.igniterealtime.org/downloads/download-landing.jsp?file=openfire/JSopenfire-3.6.3-ALL.pkg.gz

Antes instale o java na zone conforme o link (sem necessidade de usar o firefox):
http://br.opensolaris.org/BR-Newbies/install-JAVA/;jsessionid=7388BD55E8D749363F787DB4A851A4A7

uma "Gambi":
#cd /usr/sbin
#ln -s /opt/java/bin/java
Instalando o Openfire

Instale o pkgadd
#pkg install SUNWpkgcmds

#gunzip JSopenfire-3.6.3-ALL.pkg.gz
#mv JSopenfire-3.6.3-ALL.pkg /opt
#cd /opt
#pkgadd -d JSopenfire-3.6.3-ALL.pkg
#cd /opt/openfire/bin/
#sh openfire.sh

Para incializar adicione a entrada no final do arquivo /etc/rc3
sh /opt/openfire/bin/openfire.sh

Feito isso acesse seu servidor no browser
http;//10.1.1.10:9090

Configure o Openfire usando o PDF deste Blog:
http://anakinpendragon.wordpress.com/2008/02/05/zimbra-openfire-pgina/instalando-e-integrando-zimbra-openfire-pgina/

Aproveite o mesmo PDF para acertar as configurações dos Clientes e se for o caso do Zimbra. Já que não há uma instalação Nativa para Opensolaris.

Mas por que usar Opensolaris e não o Linux para essa tarefa?
Estabilidade, Performance (já que o java é nativo), zfs como opção de backup da zone.

Referências:
http://mundoopensource.blogspot.com/
http://br.opensolaris.org
http://anakinpendragon.wordpress.com/2008/02/05/zimbra-openfire-pgina/instalando-e-integrando-zimbra-openfire-pgina/

mp3 no Opensolaris

Uma contribuição de um fórum sobre Gstreamer

http://forums.opensolaris.com/thread.jspa?threadID=707&tstart=-1

Para adicionar o novo IPS:

#pkg set-authority -O http://ips.homeunix.com:10000 homeunix
#pkg refresh –full
#pkg install MBLgst-plugin-mp3 MBLgst-plugin-dvd MBLgst-plugin-ffmpeg

e finalmente, bom mp3 no seu Opensolaris

OBS: Há alguns avisos no fórum para possiveis problemas, comigo não ocorreu nenhum.
Agradecimentos a mblakeman, dono do IPS.

Repositórios IPS - OpenSolaris

Eu uso como repo:
pkg set-authority -O http://blastwave.network.com:10000/ Blastwave
pkg set-authority -O http://pkg.sunfreeware.com:9000/ Companion

Sendo o pkg.opensolaris o padrão.

Configuração manual de placa de rede no OpenSolaris

Para configurar manualmente sua placa de rede no Opensolaris, primeiro descubra o modelo de sua placa de rede e a Interface que ela se encontra.

Achei bem “tosco” achar o device correto, no meu caso haviam muitos tutoriais para realtek, mas vá que seu driver seja outro:

#prtconf -v >> rede.txt

procure no seu editor a Entrada “Ethernet”

procure a entrada abaixo:
dev_link=/dev/rtls0

pronto, sua antederá por rtls0.

Configurando:
#ifconfig rtls0 plumb
#ifconfig rtls0 up
#ifconfig rtls0 10.1.1.22 netmask 255.0.0.0
#route add default 10.1.1.1

Pode-se fazer scprit shell também.

Gerando arquivos *.conf menores

Essa dica é útil!
Sempre que você instala um novo servidor, os arquivos default vem sempre lotados de comentários, limpe os comentários e trabalhe com arquivos menores.

egrep -v “^#|^$” squid.conf > squid.conf.new

confira seu arquivo *.new e troque pelo .conf.

fazer backup é bom.

CACIC - Tutorial de Instalação do Módulo Gerente em Servidor FreeBSD

Resolvi escrever sobre o Cacic em um servidor FreeBSD devido o uso de device Vlan, que é uma necessidade em redes e sua maior estabilidade em relação a pacotes, segurança e otimizações.

Por: João Luis Mancy dos Santos
Tutorial no Link abaixo, ficou tão bom lá, que não vou me dar o trabalho de mover para cá.

CACIC - Tutorial de Instalação do Módulo Gerente em Servidor FreeBSD

Recuperando bootloader com Kurumin

Um dos meus primeiros artigos, farei algumas correções inclusive:

http://br-linux.org/tutoriais/001686.html

___

Se você deu um “cfdisk /mbr” sem querer no MSDOS, e não possui um disco de boot da sua distribuição, este tutorial vai lhe ajudar usando o Kurumin/qualquer LiveCD como ferramenta.

Recuperando o BootLoader com Kurumin

Por: João Luis Mancy dos Santos joaocep at yahoo.com.br
Muitas vezes perdemos o acesso a uma partição raiz por erro de um software ou humano. Supondo que realizamos um famoso “c:\fdisk /mbr” através do MSDOS ou MS-Windows em nosso HD, ou a reinstalação do seu Windows XP/Vista e Assim, se não possuimos o disquete de boot com grub ou pendrive de nossa distribuição estamos perdidos.

Mas com o Kurumin tudo ficou mais facil e prático. Para quem usa o Gentoo o princípio é o mesmo:
1 - Inicie com o CD do Kurumin (boot através de CDROM)
2 - Acesse o Console com CTRL + ALT + F1
3 - Descubra qual a partição que está montada a raiz de seu sistema linux, para que não ocorra nenhum problema e os famosos “kernel panic” de problemas com o arquivo /etc/fstab (Necessariamente a mesma ex: Se era hda2, procure manter a raiz na mesma partição, e o HD como Primary Master também).

# cfdisk /dev/hdX onde X é seu HD (a, b, c…) descubra a partição linux raiz e saia sem alterar nada.

(se for HD SATA /dev/sdXX)

DICA: O Kurumin cria automaticamente as partições em diretórios dentro do /mnt , sendo assim, você deverá apenas montá-los

# mount /mnt/hdXX onde XX é sua partição raiz ” / “

(se for HD SATA /dev/sdXX)

Descobrindo qual é a sua partição raiz, vamos para o próximo passo.
4 - Passando seus devices e processos para seu antigo linux.

# mount -o bind /proc /mnt/hdXX/proc

# mount -o bind /dev /mnt/hdXX/dev
5 - Assumindo o nosso falecido linux finalmente:

# chroot /mnt/hdXX /bin/bash
Pronto, agora so tocar ficha. No caso do Bootloader basta editar o arquivo /etc/lilo.conf e digitar:

# lilo

(no caso do grub é mais simples - #grub-install /dev/hdX)

Caso ele não esteja no PATH basta adicionar o PATH:

# export PATH=$PATH:/sbin - ou qualquer outro diretório que contenha
arquivos ou scripts.
Nesta dica falo somente sobre lilo, mas também dá para recuperar arquivos ou mesmo um Kernel. Basta usar seus conhecimento. Aqui eu usei o Kurumim, mas use a distro de sua preferência, agora tem até Mandrake e Slack.

Boa sorte.

#echo “Hello! World!!” >> /dev/null

Fugi do wordpress.com

--

Como primeiro post, devo apenas avisar que postarei uma coletânea com todos os tutoriais e dicas que escrevi desde os tempos de Rau-Tu da Unicamp até os mais recentes.

Escrever dicas/tutorias ajuda em muito no aprendizado, pois você massifica o que foi escrito e ao mesmo tempo ajuda alguém a resolver algum problema, mas com o passar dos anos e a quantidade de novas Distribuições surgindo, senti que não era mais necessário ficar criando dicas de como se fazer, pois praticamente tudo era “autoconf”.

Acreito eu que estava errado. Publicar artigos e prazeiroso e sempre haverá alguém que estará grato em ler algo que ajude.

espero que gostem.