slack zine 12

Upload: deposito-da-fe-da-igreja-catolica-apostolica-romana

Post on 08-Apr-2018

254 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 Slack Zine 12

    1/12

    slackwarezineSlackware is a registered trademarkof Slackware Linux, Inc.

    O slackware a distribuio linuxmais antiga ainda em atividade.Tendo sido criada por Patrick

    Volkerding em 1993, a partir da SLS.

    Em todos esses anos, a distroconquistou ardorosos utilizadores,principalmente graas sua filosofiade simplicidade e estabilidade.

    Um produto de extrema qualidadepara usurios com esta mesmacaracterstica. E este zine deslacker para slacker.

    Reproduo do material contido nesta revista permitida desde quese incluam os crditos aos autores e a frase:

    Reproduzida da Slackware Zine #11.5 www.slackwarezine.com.br

    com fonte igual ou maior do corpo do texto e em local visvel

    slack

    users

    ndice

    Automatizando a Construo de PacotesHerbert Faleiros

    2

    Brincando com BitsNycholas Oliveira e Oliveira

    6

    Instalando a D-Link DSB C110Yukatan Kenjiro Costa

    8

    Instalando e Usando o rdesktopClayton Eduardo dos Santos

    9

    Autenticando o Slackware SEM PAM emuma base LDAPFlvio do Carmo Jnior

    10

    Instalando o PostFixFabiano Silva de Carvalho

    12

    Editorial

    ltima edio do ano! E, at agora,o nosso recorde de atraso, selevarmos em considerao que essa a edio de Novembro -;)

    Para a virada do ano montamos umzime com artigos bem interessantes.Um sobre como tornar o processo decriao de pacotes mais automticoutilizando scripts, agora noexistem desculpas para no fazerseus prprios pacotes.

    Na rea de hardware, um pequenotutorial de como instalar e utilizarno amsn uma webcam da D-Link.

    Para os administradores, a

    instalao do rdesktop (para darmanuteno em mquinas Windows), umpasso-a-passo simples e rpido dainstalao do PostFix usando pacotesj existentes e uma bom artigo sobrecomo configurar uma mquina rodandoslackware como cliente de uma redecom autenticao LDAP.

    Para os iniciantes, um artigo decomo calcular os nmeros depermisso. Particularmente, achomuito mais fcil aprender a contarat sete em binrio do que fazer ascontas do artigo -;), mas, cada umtem a sua maneira de fazer ascoisas, e essa uma das vantagensdo Software Livre, justamente aLiberdade!

    Boa Leitura e Feliz 2006!

    Piter PUNK

    31 de Dezembro de 2005 Edio #12

    slackware to the real nerds

  • 8/6/2019 Slack Zine 12

    2/12

    Arquivos SlackBuild so shell scriptscuja finalidade a automatizao de todoprocesso de compilao de pacotes para oslackware.

    Estes scripts tambm podem ser utilizadospara otimizao, recompilao ou

    personalizao de pacotes oficiais, ou aindaquando quisermos seguir os padres doSlackware na construo de pacotes no-oficiais, bastando para isto editarmos poucosparmetros e deix-los (os SlackBuild's)responsveis por todo o trabalho pesado(configurar, compilar, personalizar, etc).

    Este artigo pressupe que o leitor estejafamiliarizado com todo o processo deconstruo de pacotes para o slackware.

    Como exemplo descreverei o script queutilizo para construir o pacote do amaroK (umudio player para o KDE).

    Estes arquivos seguem regras bem simples epossuem padres (alguns no oficiais) aserem seguidos, os principais deles so:

    1. Nomenclatura do arquivo .SlackBuild

    Basta seguirmos o padro"nome_do_programa.SlackBuild " (ex.amarok.SlackBuild)

    2. Arquivo de descrio do pacote (slack-desc)

    Devemos incluir tambm um arquivo(necessrio construo do pacote) paradescrevermos o que estamos empacotando,so os arquivos slack-desc.

    3. Arquivo de configurao (.options)

    Podemos adicionar (opcionalmente) outroarquivo contendo as configuraes utilizadasdurante a construo do pacote, neleincluiremos informaes diversas comoverso, reviso, flags de compilao,arquitetura do processador...

    interessante seguirmos este "padro" paraevitarmos editar o SlackBuild toda vez quequisermos mudar apenas uma varivel, porexemplo, quando alterarmos a arquitetura doprocessador ou a verso/reviso do pacote.

    Este arquivo deve seguir o padro"nome_do_programa.options " (ex.amarok.options).

    Um exemplo deste tipo de arquivo (seguindoos padres do slackware) seria:

    # Verso/nome do programa.NAME=amarokVERSION=1.3.6

    # Reviso do pacote.BUILD=1

    # Arquitetura do processador.ARCH=i486

    # target arch, i486 para# qualquer x86 de 32 bits.TARGET=i486

    # flags utilizadas pelo compilador.CPUOPT="-O2 -march=$ARCH -mcpu=i686"

    # Nmero de tarefas "paralelas".NUMJOBS=-j4

    # Arquivos temporrios.TMP=/tmp

    # Cdigo fonte.SRC=$NAME-$VERSION.tar.bz2

    # Pr-instalao do programa.PKG=$TMP/package-$NAME

    # Arquivo j empacotado.TGZ=$NAME-$VERSION-$ARCH-$BUILD.tgz

    # Documentao.DOCS=$PKG/usr/doc/$NAME-$VERSION

    # Onde o programa ser instalado.PREFIX=/opt/kde

    Automatizando a

    Construo de Pacotes

  • 8/6/2019 Slack Zine 12

    3/12

    4. Script (arquivo) .SlackBuild

    Inicialmente adicionamos informaes sobre oque o script faz (e informaes que forempertinentes, como licena, autor, etc).

    #!/bin/sh## amarok.SlackBuild# (amaroK - Slackware build script)# author: Herbert Alexander Faleiros#

    Feito isto armazenamos o diretrio corrente eem seguida carregamos o nosso arquivo deconfiguraes:

    CWD=`pwd`. $CWD/amarok.options

    O prximo passo efetuarmos uma "limpeza"pr-construo (e criarmos alguns dosdiretrios que sero utilizados mais adiante):

    rm -rf $PKG $NAME-$VERSIONmkdir -p $PKG $DOCS $INSTALL

    O procedimento acima certifica-se de que nocontaminaremos o pacote comverses/revises antigas.

    Se quisermos (opcionalmente) efetuar odonwload do cdigo-fonte (automatizao do

    arquivo de opes j citado):test -f $SRC || wget $HOST/$SRC

    Neste caso necessrio sobreescrever avarivel HOST no arquivo de opes (faa istono final do arquivo):

    HOST=http://ufpr.dl.sourceforge.net/\sourceforge/$NAME

    No exemplo acima efetuaremos o downloadde um dos mirrors do sf.net. Em seguida

    extramos/acessamos o cdigo-fonte:

    tar -xjvf $SRCcd $NAME-$VERSION

    Depois configuramos e compilamos oprograma:

    CFLAGS=$CPUOPT CXXFLAGS=$CFLAGS./configure $CONFIGUREmake $NUMJOBS || exit 1

    Terminado o processo de compilao de todos

    os arquivos necessrios ao funcionamento doprograma instalamos o mesmo em um localtemporrio, isto necessrio para quepossamos manipular os arquivos antes deinstal-los definitivamente:

    # Configuraes utilizadas.CONFIGURE="--prefix=$PREFIX \

    --build=$TARGET-slackware-linux"

    # doinst.sh e slack-desc.INSTALL=$PKG/install

    Quando no quisermos utilizar este tipo dearquivo (.options), as variveis devero serinstanciadas no prprio SlackBuild.

    Em scripts mais elaborados podemosadicionar rotinas que detectamautomaticamente a reviso do pacote, altima verso estvel, efetuam o download docdigo-fonte ou permitem o acesso ao cdigoatual (no-estvel) de desenvolvimento (viaCVS).

    Para a verso, poderamos fazer o seguinte(opcionalmente implementando o que foidescrito acima):

    # Onde o projeto est hospedado# (lista os cdigos fonte).HOST="http://\

    prdownloads.sourceforge.net/\$NAME/?sort_by=date&sort=desc"

    # Tenta detectar a ltima verso# estvel do programa.VERSION=`lynx -dump -source "$HOST" |\

    grep $NAME- | \

    head -1 | \sed -r 's/(.+'$NAME'-)\(.+)(\.tar.+)/\2/'`

    Este algoritmo funciona bem (sem alteraes)para a maioria dos projetos hospedados nosf.net.

    E para atualizar automaticamente a revisodo pacote:

    # ltima reviso (caso exista).test -f $NAME.build || \

    echo 0 > $NAME.build

    # Incrementa a reviso.BUILD=`echo "$(cat $NAME.build) + 1"|\

    bc`

    # Armazena a atual.echo $BUILD > $NAME.build

    Com isto, na prxima reviso/verso dopacote no ser mais necessrio editarmosnem mesmo o arquivo de opes. Poderiamosat mesmo adicionar um script destes (comdeteco automtica) ao cron e mantermos oprograma sempre atualizado sem mesmoficarmos sabendo.

  • 8/6/2019 Slack Zine 12

    4/12

    Por segurana verificamos/(re)setamos aspermisses/donos dos arquivos:

    chown 0.0 . -R

    # Consertamos o que eventualmente o# chown acima estragou.for i in /bin /sbin /usr/bin \

    /usr/sbin; dochown 0.bin $i -R

    done# Teste de sanidade.for i in a-st go-w; do

    chmod $i . -Rdone

    Em seguida "estripamos" os ELFs (binrios ebibliotecas executveis):

    find . | xargs file | grep ELF | \cut -d: -f1 | \

    xargs strip strip-unneeded \2>/dev/null

    Renomearmos todos os arquivos deconfigurao existentes seguindo o padro"nome_do_arquivo.new", por exemplo:

    mv $PKG/etc/wgetrc $PKG/etc/wgetrc.new

    Isso garante que, durante um upgradepkg,tais arquivos (j existentes e/oupersonalizados) no sejam sobrescritos, casocontrrio teramos de reconfigurar novamente

    todo o programa.

    Outro padro a seguirmos compactarmos osmanuais (no caso do KDE os manuais soarmazenados em $PKG$PREFIX/man/man?/* ):

    if [ -d $PKG/usr/man ]; thengzip -9 $PKG/usr/man/man?/*

    fi

    Finalmente criamos o pacote:

    makepkg -l y -c n $TGZ

    Os parmetros instruem o makepkg a removertodos os links simblicos (e adiciona-los ao$INSTALL/doinst.sh) e a no alterarnenhuma permisso/dono no pacote a sercriado.

    Opcionalmente podemos gerar os hashes dopacote (til para verificaes de integridade):

    for HASH in md5 sha1; do${HASH}sum $TGZ > $TGZ.$HASH

    done

    Ou ainda assinarmos o mesmo (no muitovivel/seguro num SlackBuild):

    make install DESTDIR=$PKG

    Alguns programas no implementam oDESTDIR nos Makefile's, nestes casosdevemos editar manualmente o arquivo comas configuraes para que os mesmos sejaminstalados corretamente no diretriotemporrio $PKG, como exemplo descrevo oque costumo fazer com o Makefile dosdrivers do MPlayer (Matrox/Radeon):

    cat Makefile | \sed -r 's/^(MDIR.+ )\(\/lib.+)/\1$(DESTDIR)\2/' > \Makefile.tmp

    mv Makefile makefile.oldmv Makefile.tmp Makefile

    Isto corrige a ausncia do DESTDIR, mas cadaprograma deve ser analisado individualmente.

    Para quem tem menos pacincia (ou no queranalisar os Makefile's) uma opo seriautilizar algo como o checkinstall (eu achoum pecado construir pacotes com este tipo deprograma, mas enfim...).

    Outro padro a ser seguido adicionarmos adocumentao do programa, licenas,autores, ao $PKG/usr/doc/$NAME-$VERSION:

    cp [A-Z]* $DOCScd $DOCSrm -f Makefile*

    Devido padronizao no processo dedocumentao da maioria dos programas asinstrues genricas acima funcionam nagrande maioria dos pacotes, pois arquivoscomo AUTHORS, COPYING, LICENSE, TODO,INSTALL, ChangeLog, enquadram-se bem aopadro que passamos ao cp.

    Um efeito colateral a cpia de arquivoscomo Makefile's, portanto a instruo finalremove os mesmos.

    Outro procedimento til no caso do amaroKseria criar um link simblico para adocumentao em HTML:

    ln -sf $PKG$PREFIX/share/doc/HTML

    Feito isto acessamos o diretrio onde pr-instalamos o programa e efetuamos as tarefasps-compilao ainda pendentes:

    cd $PKG

    Copiamos o arquivo de descrio (slack-desc) para seu local final:

    cp $CWD/slack-desc $INSTALL

  • 8/6/2019 Slack Zine 12

    5/12

    gpg -sda $TGZ

    Para quem quiser instalar/atualizar peloprprio SlackBuild, basta adicionar:

    upgradepkg $TGZ || installpkg $TGZ

    5. Arquivo doinst.sh

    Neste arquivo o makepkg armazena asinstrues para que sejam recriados os linkssimblicos removidos, usado tambm paratarefas ps-instalao.

    Caso haja algum arquivo renomeado para aextenso .new necessrio adicionarmosinstrues para que os mesmos retornem aoseu estado inicial caso no seja necessriomanter arquivos pr-existentes (geralmente oprograma est sendo instalado pela primeira

    vez), no caso citado anteriormente (wget)seria algo como:

    if ! [ -e /etc/wgetrc ]; thenmv /etc/wgetrc.new /etc/wgetrc

    fi

    Antes de executar o SlackBuild necessrioativar seu bit de execuo do mesmo e quetodos os arquivos necessrios construo dopacote encontrem-se disponveis:

    $ chmod +x amarok.SlackBuild

    $ ls -l-rw-r--r-- 1 herbert users 8649808 \

    2005-11-08 03:40 \amarok-1.3.6.tar.bz2

    -rwxr--r-- 1 herbert users 944 \2005-09-13 02:44 \amarok.SlackBuild

    -rw-r--r-- 1 herbert users 642 \2005-09-13 02:40 \amarok.options

    -rw-r--r-- 1 herbert users 250 \2005-09-13 02:46 \

    slack-desc

    Agora s executar (como root) oSlackBuild em questo:

    # ./amarok.SlackBuild

    O bsico isso, quem estiver interessado emmaiores detalhes (ou scripts maiscomplexos/elaborados) poder consultar ossources da prpria distro ou os SlackBuild'sque se encontram no endereohttp://www.faleiros.eti.br/SlackBuild .

    Herbert Faleiros

    Autores

    Clayton Eduardo dos Santos, Trabalhacom Linux desde 2003 e com Slackwaredesde 2004. matemtico, mestre emEngenharia Eltrica pela USP de So Carlose atualmente desenvolve seu projeto depesquisa de Doutorado no Departamento de

    Engenharia Eltrica na USP de So Carlos ,utilizando ferramentas 100% baseadas emsoftware livre.

    Fabiano Silva de Carvalho Analista deSistemas pela Universidade Salgado deOliveira (2000) e mestrado em EngenhariaEltrica e de Computao pela UFG (2003).

    Atualmente Professor Assistente daUniversidade Salgado de Oliveira, Analistade Sistemas da Companhia Energtica deGois e Professor Universitrio da Faculdadede Tecnologia Senai de DesenvolvimentoGerencial. Tem experincia na rea de

    Cincia da Computao, atuandoprincipalmente nos seguintes temas:Sistemas Multiagentes, Aprendizado porReforo, Data Warehouse, Implementao eIntegrao. Publicou 3 trabalhos em anais deeventos.Trabalha com Linux desde 1996.

    Flavio do Carmo Junior a.k.a. drkn, 22anos, cursando Sistemas de Informaes.Teve seu primeiro computador, um 386, aos10 anos que o satisfez ate enjoar de "Princeof Persia" depois de uns 2 anos, voltou amexer em computadores em 95 quandoganhou um Celeron 400Mhz, quakemaniaco

    de carteirinha se viu em desvantagemquando surgiu o ADSL e ento iniciou-se nomundo Linux em 99 pulando por vriasdistribuies at conhecer o slackware.(ponto-final :)

    Herbert Alexander Faleiros (akaratmannn), programador, graduando emFsica pela UFSCar. Seu primeiro contatocom o Slackware ocorreu em 2000.

    Atualmente trabalha desenvolvendo soluesem Java para servidores de aplicaes, nashoras vagas escreve artigos sobrecriptografia e build scripts para o Slackware.

    Nycholas de Oliveira e Oliveira, 20 anos,se interessou por linux em 2003 maisprofissionalmente em 2004 felizmentetrabalhando com slackware logo de cara :D.Trabalha como administrador de sistemas eredes, programador em uma fundao deuma universidade pblica e luta pesadotodos os dias para passar no vestibular.

    Yucatan "Kenjiro" Costa, Bacharel emCincia da Computao e Ps-Graduado(Especialista) em Programao Avanada eRedes. Trabalha como Administrador de

    Redes da Escola Tcnica Alto Jacu. rduodefensor do Slackware Linux, botou as mosem um computador pela primeira vez em1985 (um CP-500), mas s teve contato comLinux em 1997 (Slackware Linux 3.0).

  • 8/6/2019 Slack Zine 12

    6/12

    Todo mundo sabe que permisses de arquivose diretrios e importante, principalmente paragarantir a segurana do sistema contrapessoas no autorizadas e/ou maliciosas. Esabemos tambm como atribuir/retirarpermisses de um arquivo ou diretrio. Paraquem ainda no sabe disso vai alguns linkslogo abaixo sobre o assunto:

    http://focalinux.cipsga.org.br/guia/iniciante/ch-bas.htm#s-basico-arquivohttp://focalinux.cipsga.org.br/guia/intermediario/ch-disc.htm#s-disc-sistarqhttp://focalinux.cipsga.org.br/guia/intermediario/ch-perm.htm

    Por outro lado poucas pessoas sabem comocontar os bits de permisso dearquivos/diretrios.

    Por exemplo quando se faz o comando:

    slack@zine:~$ chmod 0754 fileslack@zine:~$ ls -l file-rwxr-xr-- 1 slack zine file

    Que seria a mesma coisa que:

    slack@zine:~$ chmod u=rwx,g=rw,o=r \file

    slack@zine:~$ ls -l file-rwxrw-r-- 1 slack zine file

    Agora voc sabe como transformar as

    permisses do tipo caractere (-rwxrw-r--)para numeral (0754)? (No :P) isso que vouapresentar agora em um artigo simples edireto. Vamos ao que interessa.

    Temos nove variveis de permisso:-rwxrwxrwx. S que vamos trabalhar de trsem trs (rwx).

    Vamos ao um exemplo de permisso, r-x.Pegamos quais bits queremos ativar ecolocamos baixo deles os nmeros nessa

    ordem, 210 e logo abaixo coloca-se osnmeros, 222:

    r - x2 1 02 2 2

    A multiplicamos o primeiro nmero pelosegundo. Mais s vamos multiplicar osnmeros de esto abaixo dos bits que vamosativar:

    r - x2 1 02 2 2-----4 - 1

    Agora os matemticos de planto vo mecrucificar vivo! 0*2=1 ?!? Isso mesmo quandofor multiplicao por 0 atribui-se 1 aoresultado e no 0. Agora tudo explicadoningum vai mais me destroar :D.

    Depois disso tudo s somar o resultado dasmultiplicaes:

    4 + 1 = 5

    chmod u=rx e a mesma coisa que chmod0500:

    slack@zine:~$ chmod u=rx fileslack@zine:~$ ls -l file-r-x------ 1 slack zine file

    slack@zine:~$ chmod 0500 fileslack@zine:~$ ls -l file-r-x------ 1 slack zine file

    Faa alguns teste e divirta-se :)).slack@zine:~$ chmod u=rwx,g=rw,o=r \

    fileslack@zine:~$ ls -l file-rwxrw-r-- 1 slack zine file

    r w x - r w - - r - -2 1 0 - 2 1 0 - 2 1 02 2 2 - 2 2 2 - 2 2 2----- - ----- - -----4 2 1 - 4 2 - - 4 - -+++++ - +++++ - +++++

    7 - 6 - 4slack@zine:~$ chmod 0764 fileslack@zine:~$ ls -l file-rwxrw-r-- 1 slack zine file

    Brincando com Bits

  • 8/6/2019 Slack Zine 12

    7/12

    E para os bits especiais? Para os bitsespeciais e o mesmo processo, s que em vezde separar de trs em trs os caracteres depermisso vamos fazer o somatrio com todoseles:

    slack@zine:~$ chmod u=rx,g=wxs,o=rwxt\

    fileslack@zine:~$ ls -l file-r-x-wsrwt 1 slack zine file

    r - x - - w s - r w t2 1 02 2 2

    +++++ - +++++ - +++++- - 2 - 1 => 2 + 1 = 3

    r - x - - w s - r w t2 1 0 - 2 1 0 - 2 1 02 2 2 - 2 2 2 - 2 2 2

    ----- - ----- - -----4 - 1 - - 2 1 - 4 2 1+++++ - +++++ - +++++

    5 - 3 - 7

    slack@zine:~$ chmod 3537 fileslack@zine:~$ ls -l file-r-x-wsrwt 1 slack zine file

    Quando algum bit especial aparecer em caixa-alta (maisculo) significa que o bit normal nofoi setado:

    slack@zine:~$ chmod u=rs,g=rxs,o=rt \fileslack@zine:~$ ls -l file-r-Sr-sr-T 1 slack zine file

    Nesse caso quando voc for fazer os clculosdos bits normais eles vo ser ignorados ondeum bit especial estiver de caixa-alta, porexemplo:

    r - S - r - s - r - T2 1 02 2 2

    +++++ - +++++ - +++++4 - 2 - 1 => 4 + 2 + 1 = 7

    r - - - r - x - r - -2 1 0 - 2 1 0 - 2 1 02 2 2 - 2 2 2 - 2 2 2----- - ----- - -----4 - - - 4 - 1 - 4 - -+++++ - +++++ - +++++

    4 - 5 - 4

    slack@zine:~$ chmod 7454 fileslack@zine:~$ ls -l file

    -r-Sr-sr-T 1 slack zine file

    At a prxima :P.

    Nycholas de Oliveira e Oliveira

    E um feliz 2006 paratodos os nossos leitores.

    Keep slacking!

    Slackwarezine team

    Patrick,all of the Brazilian

    Slack users congratulateyou on the arrival of Briah,

    and wish you a

    Happy New Year!

  • 8/6/2019 Slack Zine 12

    8/12

    S.O. e softwares utilizados

    Kernel linux 2.6.14amsn 0.95b (que s se acha via CVS):

    http://amsn.sourceforge.net/spca50xx:

    http://sourceforge.net/\projects/spca50x/

    videodev:mdulo que j deve estar presente

    aps a instalao/compilao do seukernel.

    Mos obra

    Pelo que pude ver o kernel do Linux no temsuporte nativo a esta minha webcam. Ento ojeito foi pesquisar na Internet por algumaalternativa. Falando com um aqui, outro ali,ouvi falar do tal spca50xx. Mesmo que suawebcam no seja igual minha, d uma olhadano site desse driver. L tem uma lista bemgrande de webcams suportadas por esse

    driver.

    Bom, na verdade a verso do spca50xx queeu peguei (spca5xx-20051001) no compilacom o kernel 2.6.14. Ento eu fiz umapequena gambiarra. Na hora da compilaodo driver dever surgir mensagens de errocomo abaixo:

    spca5xx-20051001/drivers/usb/\spca5xx.h:23:40 : missing \binary operator before token "("

    spca5xx-20051001/drivers/usb/\spca5xx.h:44:40 : missing \binary operator before token "("

    spca5xx-20051001/drivers/usb/\spca5xx.h:54:41 : missing \binary operator before token "("

    Bom, minha gambiarra consiste em editaresse arquivo e modificar essas linhas,inseririndo aspas simples (') antes e depoisde cada constante, ficando assim,respectivamente:

    #if 'LINUX_VERSION_CODE' < \'KERNEL_VERSION(2,5,0)'

    #if 'LINUX_VERSION_CODE' > \'KERNEL_VERSION(2,5,41)'

    #if 'LINUX_VERSION_CODE' >= \'KERNEL_VERSION(2,4,20)' && \'LINUX_VERSION_CODE' < \'KERNEL_VERSION(2,5,0)'

    Pronto, agora o driver deve compilar.Ento...

    # make && make install

    Se tudo correu bem o driver j estcompilado e instalado. Carregue os mdulos

    'videodev' e 'spca5xx':

    # modprobe videodev# modprobe spca5xx

    Agora basta instalar o amsn. Baixe o arquivodo CVS deles, descompacte com 'tar -zxvf'.Entre no diretrio recm criado e execute:

    # ./configure# make

    Agora entre no diretrioutils/linux/capture (que est dentro dodiretrio criado na descompactao do amsn).Rode o script 'test.tcl' para testar suawebcam:

    # ./test.tcl

    Primeiro v em 'Choose device'. Depois em'Camera settings'. No precisa perder muitotempo fuando a. O importante que o'test.tcl' ache sua webcam e tu consigas vera imagem que a cmera captura.

    Supondo que tudo correu bem no 'test.tcl',agora s usar o amsn para transmitirimagens atravs da sua webcam.

    Mas 'pera'! Tem um segredinho faltando. Emmuitos casos ainda ficar faltando liberar nofirewall e/ou no modem ADSL as portas queo amsn utiliza para a transmisso de vdeo.Ento... basta liberar as portas 6891 e 6892(protocolo tcp) e tudo funcionarmaravilhosamente bem.

    Espero que outros no passem pelo mesmotrabalho que eu passei para descobrir que ofuro da bala eram aquelas portas ;)

    Yucatan Kenjiro Costa

    Instalando a

    D-Link DSB C110

  • 8/6/2019 Slack Zine 12

    9/12

    Bem, como vocs j devem ter percebido,costumo escrever artigos baseados emsituaes reais, e normalmente inusitadas,que surgem no meu cotidiano, maisespecificamente, em meu ambiente detrabalho.

    Como todos ns sabemos, infelizmente, praticamente impossvel trabalharmos em umambiente que roda 100% *nix. A algumassemanas atrs, tive de realizar umamanuteno remota em um mquina com"aquele" sistema operacional. Como decostume, sa em busca de alguma alternativa

    livre que pudesse ser utilizada no bom e velhoslackware e tive uma grata surpresa.

    A manuteno, obrigatoriamente, deveria serrealizada utilizando o Terminal Service doWindow$ o que num primeiro momento melevou a pensar que no teria xito em minhabusca, mas estava enganado, existe umaexcelente alternativa livre para *nix chamadardesktop.

    O rdesktop, atualmente na verso 1.4.1, umcliente grfico *nix compatvel com o

    Terminal Service. O processo de instalao trivial, primeiro faa o download usando olynx ou o wget:

    $ lynx \http://rdesktop.sourceforge.net/

    $ wget http://\optusnet.dl.sourceforge.net/\sourceforge/rdesktop/\rdesktop-1.4.1.tar.gz

    Em seguida, o procedimento de sempre:

    $ tar -xvzf rdesktop-1.4.1.tar.gz$ cd rdesktop-1.4.1$ ./configure$ make$ su# checkinstall

    Vamos a utilizao do software. Suponha quevoc tenha uma mquina Window$XP/2000/2003 com acesso remoto habilitadocujo ip 192.168.0.13. A partir de nossamquina slackware, basta digitarmos:

    $ rdesktop 192.168.0.13

    O X ir abrir uma janela j com a tela deautenticao, pedindo um usurio/senhavlidos. Funciona muito bem, no entanto,como vocs devem ter percebido a resoluo de apenas 256 cores, para mudar isso, bastaacrescentar:

    $ rdesktop -a 16 192.168.0.13

    O rdesktop ser iniciado com 16 bits de cor.As opes "-a 8", "-a 15" e "-a 24" tambmso vlidas. O usurio senha tambm pode ser

    especificado via linha de comando:$ rdesktop -u usuario -p senha \

    -a 16 192.168.0.13

    Vrias outras

    -z Habilita compresso dos dadostrafegados (s funciona com 8 bits decor);

    -f Habilita modo tela cheia, para reverter,basta pressionar as teclas

    Ctrl+Alt+Enter;

    -T "mensagem" : Muda o ttulo da janela dasesso;

    -k nome_do_mapa : Habilita mapa deteclado especfico para a sesso iniciada.

    Existem ainda opes mais especficas, comoredirecionamento de perifricos e diretrioslocais/remotos, ativao/desativao dos sonsemitidos na sesso remota ou direcionamentopara a mquina local, cache das imagenstransferidas, entre outros recursos. Nada queum "man rdesktop" no resolva... :)

    Vale lembrar que o rdesktop pode serutilizado em conjunto com o LTSP, cujainstalao passo a passo foi publicada em umadas ltimas edies do slackwarezine. Dessemodo, possvel se utilizar estaesdiskless para acesso remoto a ambientesWindows a partir de estaes rodando Linux.

    Bem pessoal, o propsito desse artigo

    fornecer uma "dica" de aplicao que podefacilitar a vida de um administrador em umasituao que exija a operao de umservidor/estao com outro S.O..

    Clayton Eduado dos Santos

    Instalando e

    Usando ordesktop

  • 8/6/2019 Slack Zine 12

    10/12

    Introduo

    E um procedimento realmente simples, masque as vezes nos assusta pelo fato doslackware ser diferente da maioria dasdistribuies por no adotar o PAM, masveremos que isso no problema algum.

    De qualquer forma, se lermos um pouco sobrePAM e LDAP veremos que o LDAP nao fazrequisicao nenhuma ao PAM e que ele naointerfere em nada. Pois e, e eu que coloquei oPAM no slackware pra isso, porm no foiinvlido - eu gosto do PAM.

    No vou comentar o funcionamento do PAM eLDAP aqui, pois no esse o escopo do texto.Considero que voc j conhece o LDAP etenha o mnimo de informaes sobre aestrutura (rvore) dele na sua rede.

    1. Pacotes necessrios

    - OpenLDAP:http://www.openldap.org

    - nss_ldap:

    http://www.padl.com/\OSS/nss_ldap.html

    Acesse os sites acima e baixe os softwares nasverses atualizadas. Eu estou utilizando oOpenLDAP 2.3.11 e nss_ldap 2.44 nesteartigo. Para complementar esse artigo,consulte a edio #2 do slackwarezine, quetambm trata de LDAP sem PAM, mas abordatambm a criao do servidor.

    2. Descompactando, configurando,compilando e instalando os pacotes

    2.1. OpenLDAP

    Lembre que um prompt comeando por $ =procedimento possivel como usurio e # =procedimento necessariamente como root

    Vamos at o diretrio do download e seguir ospassos:

    $ tar -zxvf openldap-VERSAO.tgz$ cd openldap-VERSAO/$ ./configure --enable-slapd=no \

    --enable-backends=no \--enable-slurpd=no$ make depend$ make# make install

    Perceba que na linha ./configure estamosdesabilitando qualquer trabalho do LDAPcomo SERVER, visto que a inteno do artigo um client.

    2.2. nss_ldap

    Da mesma forma, vamos at o diretrio dodownload e seguir os passos:

    $ tar -zxvf nss_ldap*.tgz$ cd nss_ldap-VERSAO/$ ./configure$ make# make install

    Feito, bem simples.

    Autenticando o Slackware

    ***SEM PAM***em uma base LDAP

    Sua empresa usaslackware?

  • 8/6/2019 Slack Zine 12

    11/12

    3. Adaptando as configuraes para nossoambiente

    3.1. Editando o arquivo/usr/local/etc/openldap/ldap.conf

    # /usr/local/etc/openldap/ldap.conf #

    BASE dc=example,dc=comHOST 192.168.0.3

    rootbinddn cn=Manager,dc=example,\dc=com

    nss_base_passwd ou=Users,ou=People,\dc=example,dc=com?sub

    nss_base_shadow ou=Users,ou=People,\dc=example,dc=com?sub

    nss_base_group ou=Groups,dc=example,\dc=com?one

    # /usr/local/etc/openldap/ldap.conf #

    Claro, substitua "dc=example,dc=com" para oseu suffix e "cn=Manager", "ou=Users","ou=Groups" para o sua estruturacorrespondente, e HOST pelo IP do servidorLDAP.

    Ateno nas linhas nss_*, verifique e, senecessrio, adapte para o seu modelo de basedo LDAP. O contedo ?sub ou ?one define aforma de busca que sera feita a partir daqueleponto afim de localizar o objeto.

    Depois de tudo acertado nesse arquivo, parachecar se voce ja consegue uma identificaona base LDAP, execute o comando:

    # ldapsearch -x

    Ele deve retornar a estrutura da sua base comum final parecido com o abaixo, se houveralgum erro verifique todos os passos e rode ocomando novamente.

    # search resultsearch: 2

    result: 0 Success

    O status "0 Success" significa tudo OK.

    Porm, a gente so fez uma conexao a baseLDAP do servidor pelo nosso LDAP local,agora vamos colocar o slackware paratrabalhar com o LDAP. Primeiro, faamos elereconhecer o LDAP local.

    Copie o arquivo/usr/local/etc/openldap/ldap.conf parao diretrio /etc e outra vez como/etc/nss_ldap.conf

    # cp /usr/local/etc/\openldap/ldap.conf \/etc/ldap.conf

    # cp /usr/local/etc/\openldap/ldap.conf \/etc/nss_ldap.conf

    3.2. Editando o arquivo:/etc/nsswitch.conf

    ##### /etc/nsswitch.conf #####passwd: ldap compatshadow: ldap compatgroup: ldap compat##### /etc/nsswitch.conf #####

    V at o arquivo /etc/nsswitch.conf edeixe-o dessa forma. Provavelmente a linha"shadow:" no deve existir, adicione-a ou noconseguir logar-se no sistema. Se no lugarde "compat" estiver "files" ento deixe "ldapfiles" mesmo, o compat um conjunto dearquivos que incluem o files e mais alguns,utilizado pelo slackware.

    Salve as alteraes, feche o arquivo e vamostestar com o comando:

    # id usuario_da_base_ldap

    eu fiz:

    # id testeuid=1005(teste) gid=513(Domain Users)groups=513(Domain Users),1001(slackwarezine)

    O usuario "teste" no existe no sistema atual,mesmo assim ele pde ser identificado nabase LDAP e consultado.

    4. Concluso

    Esse artigo descreve um procedimento muitosimples, porem quando fui colocar meuslackware para autenticar na base LDAP tivemuitas dvidas e muito pouco material foiencontrado sobre slackware se autenticandoem base LDAP remota.

    Flvio do Carmo Jr

    Ento mostre a sua cara:www.slackwarezine.com.br/empresas.php

  • 8/6/2019 Slack Zine 12

    12/12