You are on page 1of 182

1 - Instalando o CentOS 5

1.1 - Iniciando o processo de instalao do CentOS 5 Faa o download do DVD ou 5 cds no site: www.centos.org. 1. A primeira tela mostra as opes de instalao ( graphical, te t mode, rescue mode, etc !. "o nosso e emplo iremos utili#ar o modo padro gr$%ico, tecle Enter.

&. "a pr' ima tela ( poss)*el %a#er um teste das m)dias. +ste teste ( demorado. ,aso no -ueira reali#ar o teste, tecle Tab para selecionar o .oto Skip e tecle Enter.

/ . 0elecione o idioma 1ortugu2s e cli-ue em 1r' imo

3. Agora, selecione o 4a5out do teclado Portugus 1r' imo.

rasileiro !" #T$% e cli-ue em

Aguarde um pouco. 0er$ e i.ida a tela onde ser$ necess$rio criar as parties. +ste processo pode ser todo autom$tico ou manual. A-ui, *amos optar pelo manual.

5. 6ar-ue a opo &e'er e (odi)icar o la*out do particiona(ento.

6. ,li-ue no .oto Pr+,i(o. 0er$ e i.ido um alerta in%ormando -ue os dados sero perdidos. ,li-ue no .oto Si(.

7. 8remos criar / parties: 1artio swap com & 1artio : com &; <.. =. Agora ( poss)*el con%igurar o gerenciador de iniciali#ao do 4inu . 1or padro, ( usado o <ru.. >am.(m ( poss)*el con%igurar uma senha para -ue no possam ser passados par?metros ao <ru. na iniciali#ao do 4inu . Al(m de opes A*anadas. Ve@a na pr' ima tela: o tamanho da 9A6 1artio :home com 1; <.

,li-ue no .oto Pr+,i(o. A. "esta tela estaremos tra.alhando com as con%iguraes >,1:81. B poss)*el con%igurar *ia DC,1 -ue ( o padro ou manualmente. ,aso opte pela con%igurao manual, ser$ necess$rio conhecimento so.re as con%iguraes >,1:81 da sua rede. Ve@a:

Ao clicar no .oto +ditar:

Ve@a um e emplo de con%igurao:

1; . Agora selecione o %uso hor$rio de acordo com a sua regio. Ve@a:

,li-ue no .oto Pr+,i(o. 11D 8n%orme a senha do root. E root ( o administrador com maiores pri*il(gios em um sistema 4inu :Fni . Ve@a a ilustrao:

1& D Agora ( o momento de in%ormar -uais programas (pacotes! sero instalados. >odos estes pacotes podem ser adicionados posteriormente.

,li-ue no .oto Pr+,i(o.

11. A pr' ima tela in%orma -ue ser$ iniciado o processo de instalao. +sta agora ser$ a parte mais demorada.

1&. Ap's o .oot ainda so necess$rias algumas con%iguraes:

,li-ue no .oto "'anar. "esta pr' ima tela, estaremos reali#ando a con%igurao do Firewall e 0+4inu . B poss)*el li.erar alguns ser*ios .$sicos como o ssh, F>1, sam.a, eDmail, n%s3. "o nosso caso estaremos desa.ilitando estes ser*ios.

,li-ue no .oto "'anar.

Ao %inal ser$ e i.ida a tela de concluso. ,li-ue no .oto Ter(inar.

Acesse o sistema digitando seu login e senha.

$. Siste(a de "r-ui'os no .inu,


Fm sistema de ar-ui*o ( o m(todo e a estrutura de dados -ue um sistema operacional utili#a para administrar ar-ui*os em um disco r)gido ou partio, ou se@a a %orma pela -ual os dados so organi#ados em disco. E sistema de ar-ui*o padro do 4inu ho@e ( o +G>/, muito poderoso, esse tipo de sistema de ar-ui*o ( %acilmente compat)*el com os a*anos das no*as *erses, sem a necessidade de criar no*amente os sistemas de ar-ui*os @$ e istentes. Partio E/T01 E +G>/ ( o sistema de ar-ui*os nati*o mais popular do 4inu mas nem por isso ele dei a de reconhecer *$rios outros sistemas de ar-ui*os de tantos outros sistemas operacionais dentre os -uais: mini , e t,msdos, umdos, isoAHH;, n%s, s5s*, nt%s e dentre outros mais. 8sso signi%ica -ue o 4inu pode coe istir com outros sistemas operacionais em uma Inica unidade de disco e pode *isuali#ar, editar e at( e ecutar os dados contidos dentro de uma partio -ue contenha um outro sistema operacional suportado por ele. +ste tipo de partio ( identi%icado pelo c'digo =/. Partio S2ap1 Fsado em parties .inu, S2ap para o%erecer mem'ria *irtual ao sistema. "ote -ue ( altamente recomendado o uso de uma partio 0wap no sistema (principalmente se *oc2 ti*er menos -ue 1H6J de mem'ria 9A6!. 0omente os dados na mem'ria 9A6 so processados pelo processador, por ser mais r$pida. Desta %orma -uando *oc2 est$ e ecutando um programa e a mem'ria 9A6 comea a encher, o <"F:4inu mo*e automaticamente os dados -ue no esto sendo usados para a partio 0wap e li.era a mem'ria 9A6 para a continuar carregando os dados necess$rios pelo. Kuando os dados mo*idos para a partio 0wap so solicitados, o <"F:4inu mo*e os dados da partio 0wap para a 6em'ria. 1or este moti*o a partio 0wap tam.(m ( chamada de >roca ou mem'ria *irtual. +ste tipo de partio ( identi%icado pelo c'digo =&. $.1 3 4ontando siste(as de ar-ui'os - Ponto de (ontage( 1onto de $r*ore de diret'rios, onde o sistema de ar-ui*os ( LmontadoM - 4ontando1 mount NsistOar-ui*P Ndispositi*oP NptoOmontagemP + emplo: mount Qt isoAHH; :de*:cdrom :mnt:cdrom - 5es(ontando1 umount Rdispositi*o S ptoOmontagemT + emplo: umount :de*:cdrom $.$ 3 "r-ui'o 6etc6)stab ,ont(m os sistemas de ar-ui*os -ue so montados em tempo de iniciali#ao do

sistema, ser*e tam.(m para %acilitar a montagem de sistemas de ar-ui*os com o sistema @$ em uso, pois permite -ue se indi-ue apenas a partio ou o ponto de montagem ,ada linha deste ar-ui*o cont(m a partio -ue dese@amos montar, o ponto de montagem, o sistema de ar-ui*os usado pela partio e outras opes

$.0 3 Criao e (anuteno de parti7es .inu, Durante muito tempo o sistema de ar-ui*os mais utili#ado no <"F:4inu %oi o e t& (second e tended!. "o entanto, ho@e muito se usa sistemas de ar-ui*os @ournalling, como o e t/ e o 9eiserF0. A di%erena para um sistema de ar-ui*os @ournalling ( -ue um sistema com essa capacidade registra de antemo todas alteraes -ue ir$ reali#ar no disco. Dessa %orma, erros de gra*ao (normalmente ocasionados por -ueda de energia ou desligamento incorreto! podem ser mais %acilmente diagnosticados e sanados. EJ0: +m discos 8D+ podeDse ter at( 3 parties %)sicas, das -uais uma pode ser estendida. A partio estendida pode ser di*idida em parties l'gicas. 1ode ha*er um m$ imo de 3H parties num disco 8D+ e 1H num disco 0,08. $.0.13 )disk E %disU ( o programa padro para manipular parties no <"F:4inu . ,om a opo Dl lista os dispositi*os e as parties e istentes:
# fdisk -l Disk /dev/hda: 10.0 GB, 10005037568 bytes 255 heads, 63 se t!"s/t"a k, 1216 $#its % yli#de"s

ili#d"!s !f 16065 & 512 % 8225280 bytes (ta"t 1 1517783 153 173 782 1216 )#d Bl! ks 1228,-1 160650 *d (yste+ b .,5 /0132 82 2i#34 s5a'

Dis'!sitiv! B!!t /dev/hda1 /dev/hda2 /dev/hda3 /dev/hda&

-8,17,26 83 2i#34 3-86105 83 2i#34

Disk /dev/hdb: 2111 7B, 211186-832 bytes 6- heads, 63 se t!"s/t"a k, 1023 $#its % yli#de"s

ili#d"!s !f -032 & 512 % 206-38- bytes (ta"t 1 1023 )#d Bl! ks 20623366 *d (yste+ .,5

Dis'!sitiv! B!!t /dev/hdb1 /0132 82B09

1ara manipular parties, o %disU de*e ser iniciado tendo como argumento o dispositi*o em -uesto:
# fdisk /dev/hda

Fma *e# dentro do %disU, certas letras correspondero a comandos. Alguns comandos .astante utili#ados: p V 4ista as parties n V ,ria uma no*a partio interati*amente t V 6uda a identi%icao da partio d V Apaga uma partio - V 0ai do %disU sem gra*ar as alteraes w V 0ai do %disU e gra*a as alteraes m V 6ostra a a@uda de comandos 1or padro, o %disU cria no*as parties identi%icadas como parties nati*as de <"F:4inu , cu@o c'digo he adecimal ( =/ (; =/!. E c'digo de identi%icao de parties do tipo swap ( =& (; =&!. $.0.$ 3 (k)s E comando mU%s cria sistemas de ar-ui*os em parties. A opo Dt indica o tipo do sistema de ar-ui*os: + : ,riar uma partio e t& na partio :de*:hda/:
# +kfs -t e4t2 /dev/hda3

$.0.03 (ks2ap1 Formata como swap a partio :de*:hda&:


# +ks5a' /dev/hda2

Ap's criada e %ormatada, uma partio swap precisa ser ati*ada para ser usada como mem'ria swap. E comando swapon Da ati*a todas parties swap -ue constarem em :etc:%sta.. As entradas re%erentes W parties swap em :etc:%sta. no t2m ponto de montagem. 1ara ati*ar ou desati*ar essa partio manual manualmente, usaDse respecti*amente:
swapon /dev/hda2 swapoff /dev/hda2

8n%ormaes so.re parties swap ati*as so arma#enadas em :proc:swaps.


/ile#a+e /dev/hda2 1y'e 'a"titi!# (i:e 1606-0 $sed 32632 ;"i!"ity

$.0.83 )sck E comando %scU de*e ser e ecutado em parties -ue apresentarem erros ou em dispositi*os -ue %oram desligados incorretamente. A partio de*er$ estar desmontada ou montada como somenteDleitura (ro! para a *eri%icao. ,omo o comando mU%s, o %scU possui a opo Dt para especi%icar o tipo do sistema de ar-ui*os e um comando espec)%ico para cada partio: %scU.e t& ou e&%scU, %scU.e t/, %scU. %s, reiser%scU e dos%scU.

$.8 3 &"I5 9A8D ( acrXnimo para Redundant Array of Inexpensive Disks. +ste arran@o ( usado como um meio para criar um su.sistema de unidade de disco, r$pido e con%i$*el, atra*(s de discos indi*iduais. Apesar do 9A8D ter sido %eito para melhorar a con%ia.ilidade no sistema, atra*(s da adio de redund?ncia, pode tam.(m le*ar a uma %alsa sensao de segurana e con%iana -uando usado incorretamente. +sta %alsa con%iana pode acarretar em grandes desastres. 1articularmente, o 9A8D ( %eito para proteger %alhas no disco, no para proteger %alhas de energia ou erros do operador. Falhas de energia, bugs no desen*ol*imento do Uernel ou erros de administradores e de operadores podem dani%icar os dados de uma %orma irrecuper$*el. RAID no um substituto apropriado para executar um backup do seu sistema. 0ai.a o -ue *oc2 est$ %a#endo, %aa testes, se@a conhecedor e ciente de todos os detalhes -ue en*ol*em a implementao de 9A8D. 9A8D permite -ue o computador ganhe desempenho nas operaes de acesso a disco, e da mesma %orma, r$pida recuperao em caso de perda de algum disco. E tipo mais comum de arran@o de unidades ( um sistema ou uma controladora -ue possi.ilita o uso de mIltiplas unidades de disco r)gido, con%iguradas para -ue o sistema operacional se comporte como se e istisse apenas um disco instalado no computador. $.8.1 -#9'eis de &"I5

As di%erentes maneiras de com.inar os discos em um s', chamados de nveis de RAID, podem %ornecer tanto grande e%ici2ncia de arma#enamento como simples espelhamento, ou podem alterar o desempenho de lat2ncia (tempo de acesso!. 1odem tam.(m %ornecer desempenho da ta a de trans%er2ncia de dados para leitura e para escrita, en-uanto continuam mantendo a redund?ncia. "o*amente, isto ( ideal para pre*enir %alhas. Es di%erentes n)*eis de 9A8D apresentam di%erentes desempenho, redund?ncia, capacidade de arma#enamento, con%ia.ilidade e caracter)sticas de custo. A maioria, mas nem todos os n)*eis de 9A8D, o%erece redund?ncia W %alha de disco. Dos -ue o%erecem redund?ncia, 9A8DD1 e 9A8DD5 so os mais populares. 9A8DD1 o%erece melhor desempenho, en-uanto -ue 9A8DD5 %ornece um uso mais e%iciente do espao dispon)*el para o arma#enamento dos dados. De -ual-uer modo, o a@uste de desempenho ( um assunto totalmente di%erente. +le depende de uma grande *ariedade de %atores, como o tipo da aplicao, os tamanhos dos discos, .locos e ar-ui*os. + iste uma *ariedade de tipos di%erentes e implementaes de 9A8D, cada uma com suas *antagens e des*antagens. 1or e emplo, para colocarmos uma c'pia dos mesmos dados em dois discos (operao chamada de espelhamento de disco ou 9A8D n)*el 1!, podemos acrescentar desempenho de leitura, lendo alternadamente cada disco do espelho. +m m(dia, cada disco ( menos usado, por estar sendo usado em apenas metade da leitura (para dois discos!, ou um tero (para / discos!, etc. Al(m disso, um espelho pode melhorar a con%ia.ilidade: se um disco %alhar, o(s! outro(s! disco(s! t2m uma c'pia dos dados. A seguir descre*eremos os di%erentes n)*eis de 9A8D, no conte to de implementao de 9A8D por so%tware no 4inu . $.8.$ &"I5-linear B uma simples concatenao de parties para criar uma grande partio *irtual. 8sto ( poss)*el se *oc2 tem *$rias unidades pe-uenas, e -uer criar uma Inica e grande partio. +sta concatenao no o%erece redund?ncia, e de %ato diminui a con%ia.ilidade total: se -ual-uer um dos discos %alhar, a partio com.inada ir$ %alhar. $.8.0. &"I5-: A grande maioria dos n)*eis de 9A8D en*ol*e uma t(cnica de arma#enamento chamada de segmentao de dados (data stripping!. A implementao mais .$sica dessa t(cnica ( conhecida como 9A8DD; e ( suportada por muitos %a.ricantes. ,ontudo, pelo %ato de este n)*el de arran@o no ser tolerante a %alhas, 9A8DD; no ( *erdadeiramente 9A8D, ao menos -ue se@a usado em con@uno com outros n)*eis de 9A8D.

0egmentao (stripping! ( um m(todo de mapeamento de dados so.re o meio %)sico de um arran@o, -ue ser*e para criar um grande dispositi*o de arma#enamento. Es dados so su.di*ididos em segmentos consecuti*os ou stripes -ue so escritos se-Yencialmente atra*(s de cada um dos discos de um arran@o. ,ada segmento tem um tamanho de%inido em .locos. 1or e emplo, sa.endo -ue o tamanho de cada segmento est$ de%inido em H3 U.5tes, e o arran@o de discos cont(m & discos, -uando um ar-ui*o de 1&= U.5tes %or gra*ado, os primeiros H3 U.5tes sero gra*ados no primeiro disco, sendo -ue os Iltimos H3 U.5tes iro para o segundo disco, e normalmente isso ( %eito em paralelo, aumentando considera*elmente o desempenho. Fm arran@o desse tipo pode o%erecer um melhor desempenho, -uando comparada a um disco indi*idual, se o tamanho de cada segmento %or a@ustado de acordo com a aplicao -ue utili#ar$ o arran@o:

+m um am.iente com uso intensi*o de +:0 ou em um am.iente de .anco de dados onde mIltiplas re-uisies concorrentes so %eitas para pe-uenos registros de dados, um segmento de tamanho grande ( pre%erencial. 0e o tamanho de segmento para um disco ( grande o su%iciente para conter um registro inteiro, os discos do arran@o podem responder independentemente para as re-uisies simult?neas de dados. +m um am.iente onde grandes registros de dados so arma#enados, segmentos de pe-ueno tamanho so mais apropriados. 0e um determinado registro de dados estendeDse atra*(s de *$rios discos do arran@o, o conteIdo do registro pode ser lido em paralelo, aumentando o desempenho total do sistema.

Arran@os 9A8DD; podem o%erecer alto desempenho de escrita, se comparados a *erdadeiros n)*eis de 9A8D, por no apresentarem so.recargaN/P associada com c$lculos de paridade ou com t(cnicas de recuperao de dados. +sta mesma %alta de pre*iso para reconstruo de dados perdidos indica -ue esse tipo de arran@o de*e ser restrito ao arma#enamento de dados no cr)ticos e com.inado com e%icientes programas de .acUup. $.8.8. &"I5-1 A %orma mais simples de arran@o tolerante a %alhas ( o 9A8DD1. Jaseado no conceito de espelhamento (mirroring!, este arran@o consiste de *$rios grupos de dados arma#enados em dois ou mais dispositi*os. Apesar de muitas implementaes de 9A8DD1 en*ol*erem dois grupos de dados (da) o termo espelho ou mirror!, tr2s ou mais grupos podem ser criados se a alta con%ia.ilidade %or dese@ada. 0e ocorre uma %alha em um disco de um arran@o 9A8DD1, leituras e gra*aes su.se-Yentes so direcionadas para o(s! disco(s! ainda em operao. Es dados ento so reconstru)dos em um disco de reposio (spare disk! usando dados do(s! disco(s! so.re*i*entes. E processo de reconstruo do espelho tem algum impacto so.re o desempenho de +:0 do arran@o, pois todos os dados tero de ser lidos e copiados do(s! disco(s! intacto(s! para o disco de reposio.

9A8DD1 o%erece alta disponi.ilidade de dados, por-ue no m)nimo dois grupos completos so arma#enados. ,onectando os discos prim$rios e os discos espelhados em controladoras separadas, podeDse aumentar a toler?ncia a %alhas pela eliminao da controladora como ponto Inico de %alha. +ntre os no h).ridos, este n)*el tem o maior custo de arma#enamento por re-uerer capacidade su%iciente para arma#enar no m)nimo dois grupos de dados. +ste n)*el ( melhor adaptado para ser*ir pe-uenas .ase de dados ou sistemas de pe-uena escala -ue necessitem con%ia.ilidade. $.8.5. &"I5-$ e &"I5-0 9aramente so usados, e em algum momento %icaram o.soletos pelas no*as tecnologias de disco. 9A8DD& ( similar ao 9A8DD3, mas arma#ena in%ormao +,, (error correcting code!, -ue ( a in%ormao de controle de erros, no lugar da paridade. +ste %ato possi.ilitou uma pe-uena proteo adicional, *isto -ue todas as unidades de disco mais no*as incorporaram +,, internamente.

9A8DD& pode o%erecer maior consist2ncia dos dados se hou*er -ueda de energia durante a escrita. Jaterias de segurana e um desligamento correto, por(m, podem o%erecer os mesmos .ene%)cios. 9A8DD/ ( similar ao 9A8DD3, e ceto pelo %ato de -ue ele usa o menor tamanho poss)*el para a stripe. ,omo resultado, -ual-uer pedido de leitura in*ocar$ todos os discos, tornando as re-uisies de so.reposio de 8:; di%)ceis ou imposs)*eis. A %im de e*itar o atraso em ra#o da lat2ncia rotacional, o 9A8DD/ e ige -ue todos os ei os das unidades de disco este@am sincroni#ados. A maioria das unidades de disco mais recentes no possuem a ha.ilidade de sincroni#ao do ei o, ou se so capa#es disto, %altam os conectores necess$rios, ca.os e documentao do %a.ricante. "em 9A8DD& e nem 9A8DD/ so suportados pelos dri*ers de 9A8D por so%tware no 4inu .

$.8.; &"I5-8 +ste ( um tipo de arran@o segmentado, mas incorpora um m(todo de proteo de dados mais pr$tico. +le usa in%ormaes so.re paridade para a recuperao de dados e as arma#ena em disco dedicado. Es discos restantes, usados para dados, so con%igurados para usarem grandes (tamanho medido em .locos! segmentos de dados, su%icientemente grandes para acomodar um registro inteiro. 8sto permite leituras independentes da in%ormao arma#enada, %a#endo de 9A8DD3 um arran@o per%eitamente a@ustado para am.ientes transacionais -ue re-uerem muitas leituras pe-uenas e simult?neas. Arran@os 9A8DD3 e outros arran@os -ue utili#am paridade %a#em uso de um processo de recuperao de dados mais en*ol*ente -ue arran@os espelhados, como 9A8DD1. A %uno ou exclusivo (GE9! dos dados e in%ormaes so.re paridade dos discos restantes ( computada para reconstruir os dados do disco -ue %alhou. 1elo %ato de -ue todos os dados so.re paridade so escritos em um Inico disco, esse disco %unciona como um gargalo durante as operaes de escrita, redu#indo o desempenho durante estas operaes write bottleneck.

0empre -ue os dados so escritos no arran@o, in%ormaes so.re paridade normalmente so lidas do disco de paridade e uma no*a in%ormao so.re paridade de*e sempre ser escrita para o disco de paridade antes da pr' ima re-uisio de escrita ser reali#ada. 1or causa dessas duas operaes de +:0, o disco de paridade ( o %ator limitante do desempenho total do arran@o. 1elo %ato do disco de paridade re-uerer somente um disco adicional para proteo de dados, arran@os 9A8DD3 so mais .aratos -ue arran@os 9A8DD1. $.8.< &"I5-5 +ste tipo de 9A8D largamente usado %unciona similarmente ao 9A8D 3, mas supera alguns dos pro.lemas mais comuns so%ridos por esse tipo. As in%ormaes so.re paridade para os dados do arran@o so distri.u)das ao longo de todos os discos do arran@o, em *e# de serem arma#enadas em um disco dedicado. +ssa id(ia de paridade distri.u)da redu# o gargalo de escrita (write bottleneck!, -ue era o Inico disco de um 9A8DD3, por-ue agora as escritas concorrentes nem sempre re-uerem acesso Ws in%ormaes so.re paridade em um disco dedicado. ,ontudo, o desempenho de escrita geral ainda so%re por causa do processamento adicional causado pela leitura, reDc$lculo e atuali#ao da in%ormao so.re paridade.

1ara aumentar o desempenho de leitura de um arran@o 9A8DD5, o tamanho de cada segmento em -ue os dados so di*ididos pode ser otimi#ado para a aplicao -ue esti*er usando o arran@o. E desempenho geral de um arran@o 9A8DD5 ( e-ui*alente ao de um 9A8DD3, e ceto no caso de leituras se-Yenciais, -ue redu#em a e%ici2ncia dos algoritmos de leitura por causa da distri.uio das in%ormaes so.re paridade. ,omo em outros arran@os .aseados em paridade, a recuperao de dados em um arran@o 9A8DD5 ( %eita calculando a %uno GE9 das in%ormaes dos discos restantes do arran@o. 1elo %ato de a in%ormao so.re paridade ser distri.u)da ao longo de todos os discos, a perda de -ual-uer disco redu# a disponi.ilidade de am.os os dados e da in%ormao so.re paridade, at( a recuperao do disco -ue %alhou. 8sto pode causar degradao do desempenho de leitura e de escrita. $.8.= - Co(parao dos #9'eis de &"I5 1odemos %a#er uma comparao entre os *$rios n)*eis de 9A8D, de acordo com desempenho (leitura, gra*ao e reconstruo!, disponi.ilidade de dados e o nImero m)nimo de unidades re-ueridas. E.ser*e na ta.ela a descrio destes atri.utos para comparao dos n)*eis de 9A8D. 0eguindo as re%er2ncias: AZ Disponilidade dos Dados BZ Desempenho de 4eitura Z Desempenho de <ra*ao DZ Desempenho de 9econstruo

!Z "Imero 6)nimo de Fnidades 9e-ueridas

#9'el de " &"I5 9A8D ; "enhum 6uito .om a 9A8D 1 + celent 6uito .om e 9A8D 3 Joa

6uito .om

"o dispon)*el Jom

"

Jom

&"

+:0 se-Yencial: Joa +:0 se-Yencial: 6uito +:0 transacional: .oa +:0 transacional: Joa 9uim

0atis%at'ria " [ 1 (" pelo menos &! " [ 1 (" pelo menos &! &"

9A8D 5 Joa

+:0 se-Yencial: Joa 0atis%at'ria (a menos 9uim +:0 transacional: -ue o cache write"back 6uito .oa se@a usado! 0atis%at'ria Joa

9A8D 1; + celent 6uito .oa e 9A8D 5; + celent 6uito .oa e

0atis%at'ria

0atis%at'ria "[&

#ota1 E nImero # ( o re-uerimento de espao para arma#enamento de dados do n)*el de 9A8D. + emplo: se o re-uisito m)nimo ( ter H<J de espao para um arran@o 9A8DD5, ento de*eDse ter ao menos & discos de /<J cada e mais um disco de /<J, sendo H<J (dois discos! [ /<J (1 disco!.

$.8.> - Con)igurao $.8.>.1 3 &"I5 1 1ara criar uma unidade 9A8D 1 precisaremos de duas parties de tamanho igual. 1ara isso utili#e o %disU para criar as duas parties. # fdisk /dev/hda ,om as duas parties criadas ( + : had5 e hadH ! precisaremos criar a unidade 9A8D ( :de*:md; ! com o comando:

mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/hda{5,6} Ende: DDle*el 8n%orma -ual o tipo de 9A8D utili#ados DDraidDde*ices +speci%ica -uantos parties sero utili#adas. Voc2 pode acompanhar o processo de criao da unidade 9A8D atra*(s do ar-ui*o :proc:mdstats. 1ara isso utili#e o comando: # cat /proc/mdstat Apos criado a unidade 9A8D ( necess$rio %ormatar a partio com o sistema de ar-ui*os dese@ado, no nosso caso e t/, e depois montar a unidade 9A8D para sua utili#ao. # mkfs.ext3 /dev/md0

# mkdir /mnt/raid1 # mount /dev/md0 /mnt/raid1 # df -h Voc2 pode ter mais in%ormaes so.re a unidade 9A8D com o comando mdadm --detail /dev/md0 $.8.>.$ 3 &"I5 5 1ara criar uma unidade 9A8D5 precisaremos criar no minimo / parties para cada unidade 9A8D. E processo e .em parecido com o utili#ado para criar a unidade 9A8D1. # fdisk /dev/hda ,om as tr(s parties criadas ( + : had7 e had=, hdaA ! precisaremos criar a unidade 9A8D ( :de*:md1 ! com o comando:
mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/hda{6,7,8}

Ap's criado a unidade 9A8D ( necess$rio %ormatar a partio com o sistema de ar-ui*os dese@ado, no nosso caso e t/, e depois montar a unidade 9A8D para sua utili#ao.

mkfs.ext3

/dev/md1

# mkdir /mnt/raid5 # mount /dev/md0 /mnt/raid5 # df -h $.8.>.0 3 Si(ulando )al?a 1odemos simular a %alha de um disco com o comando: # mdadm /dev/md0 -f /dev/hda5 Analisando a unidade 9A8D com o comando mdadm Qdetail :de*:md; *eri%icamos -ue a unidade 9A8D possui um disco com pro.lemas porem a unidade continua %uncionando. Number 0 1 Major 0 3 Minor 0 6 RaidDevice State 0 1 removed active sync /dev/hda6

faulty spare

/dev/hda5

1ara adicionar outro disco ou partio utili#e o comando a.ai o e *isuali#e a copia das in%ormaes no :proc:mdstats. # mdadm /dev/md0 -a /dev/hda7 $.5 3 .@4 E 4V6 *em com *$rios @arges -ue precisam ser entendidos para no ha*er pro.lemas com os sistemas de ar-ui*os. "esta seo *eremos estes terminologia utili#ada pelo 4V6. Voc2 de*e usar a pala*ra fsica com um pouco de cuidado\ de -ual-uer %orma n's iremos entender inicialmente como sendo um simples disco r)gido, ou uma partio. 1or e emplo, :de*:hda, :de*:hda&, :de*:sda. "'s podemos trans%ormar -ual-uer nImero consecuti*o de .locos de um dispositi*o de .locos em um Volume F)sico. Fm 1V no ( nada mais -ue um meio %)sico com alguns dados administrati*os adicionados a ele D uma *e# -ue tenhamos adicionado estes dados o 4V6 ir$ reconhec2D los como propriet$rios das + tenses F)sicas. + tenses F)sicas so como .locos de um sistema de ar-ui*os (regies cont)nuas do disco! realmente grandes, muitas *e#es com um tamanho na casa dos mega.5tes. 1+s podem ser atri.u)das a um <rupo de Volumes.

Fm V< ( composto por um determinado nImero de + tenses F)sicas. Deste <rupo de *olumes, 1+s podem ser atri.u)das a um Volume 4'gico. Fm Volume 4'gico ( o resultado %inal do nosso tra.alho, e ( a-ui -ue as in%ormaes so arma#enadas. +le ( um dispositi*o de .loco %uncionalmente e-ui*alente a uma partio. B so.re o Volume 4'gico -ue ser$ criado um sistema de ar-ui*os. E sistema de ar-ui*os pode ser o -ue dese@armos: o e t& padro, 9eiserF0, etc. 1ara o usu$rio no h$ di%erena entre uma partio regular e um Volume 4'gico. $.5.1 - Con)igurao 1ara criar unidades 4V6 precisamos reali#ar os seguintes passos: 1 Q ,riar o *olume %)sico: # pvcreate /dev/hda11 & Q Apontar o nome do grupo de *olume ao seu respecti*o *olume %)sico. # vgcreate vg0 /dev/hda11 /D ,riar a unidade 4V6 # lvcreate -L 256M -n unidade1 vg0 3 Q Formatar a unidade 4V6 # mkfs.ext3 /dev/vg0/unidade1 5 Q 6ontar a unidade 4V6 # mkdir /mnt/lvm # mount /dev/vg0/unidade1 /mnt/lvm #df -h

/dev/mapper/vg0-unidade1 248M 11M 226M 5% /mnt/lvm

$.5.$ 3 4odi)icando o ta(an?o da unidade .@4 1odemos aumentar ou diminuir o tamanho da unidade 4V6. 1ara reali#ar estas tare%as podemos seguir as instrues a.ai o: ,riar uma no*a unidade 4V6 # pvcreate /dev/hda13

Adicionar a no*a unidade no *olume # vgextend vg0 /dev/hda13 8n%ormar -uanto iremos aumentar a unidade # lvextend -L +900M /dev/vg0/unidade1 Atuali#ar o tamanho da unidade 4V6 # resize2fs /dev/vg0/unidade1 0e -uisermos diminuir a unidade podemos utili#ar o seguinte comando. # lvreduce -L -500M /dev/vg0/unidade1 E,erc9cio1 1D ,rie H parties de 1<. cada uma e %ormate todas com o sistema de ar-ui*os e t/ & Q ,on%igure o 4inu :opt:dados para -ue ele monte sua primeira partio criada no diret'rio

/ Q ,rie uma unidade 9A8D1 com duas parties. 3D ,rie dentro da unidade 9A8D montada tr2s ar-ui*os e simule a %alha de um dispositi*o. Es ar-ui*os continuam dispon)*eis para utili#ao ] 5 Q ,rie uma unidade l'gica 4V6 com 51&6. e depois adicione mais 1.5 <.

3 - BOOT DO SISTEMA
E processo de iniciali#ao de um sistema operacional ( composto por *$rias etapas, a primeira delas ( o carregamento das in%ormaes do primeiro setor do disco r)gido (cilindro ;,ca.ea ;, setor 1!. "a 6J9 e istira um programa -ue se encarregar$ de iniciar a carga do sistema operacional. "esta apostila estaremos aprendendo so.re o lilo, programa residente na 6J9 respons$*el pela iniciali#ao do 4inu e demais parties. 0.1 3 Criando o ar-ui'o de con)igurao Es dados para a criao do no*o setor de .oot -ue arma#enar$ o gerenciador de partida so lidos do ar-ui*o :etc:lilo.con% +ste ar-ui*o pode ser criado em -ual-uer editor de te tos (como o ae ou *i!. "ormalmente ele ( criado durante a instalao de sua distri.uio <"F:4inu mas por algum moti*o pode ser preciso modi%icaDlo ou personali#$Dlo (para incluir no*os sistemas operacionais, mensagens, alterar o tempo de espera para a partida autom$tica, etc!. E ar-ui*o :etc:lilo.con% ( di*idido em duas sees: Aeral e I(agens. A seo Aeral *em no inicio do ar-ui*o e cont(m opes -ue sero usadas na iniciali#ao do 4ilo e par?metros -ue sero passados ao Uernel. A seo I(agens cont(m opes especi%icas identi%icando -ual a partio -ue cont(m o sistema operacional, como ser$ montado inicialmente o sistema de ar-ui*os, ta.ela de partio, o ar-ui*o -ue ser$ carregado na mem'ria para iniciali#ar o sistema, etc. A.ai o um modelo do ar-ui*o :etc:lilo.con% para sistemas -ue s' possuem o <"F:4inu instalado:
boot=/dev/hda1 compact install=/boot/boot.b map=/boot/map vga=normal delay=20 lba32 image=/vmlinuz root=/dev/hda1 label=Linux read-only

1ara criar um no*o gerenciador de partida atra*(s do ar-ui*o :etc:lilo.con% , e ecute o comando lilo. "o e emplo acima, o gerenciador de partida ser$ instalado em :de*:hda1, utili#ar$ um setor de .oot compacto (compact!, modo de *ideo V<A normal (=; &5!, esperar$ & segundos antes de processar automaticamente a primeira seo imageZ e carregar$ o Uernel :*mlinu de :de*:hda1. 1ara mostrar o a*iso de .oot:, *oc2 de*er$ ligar as teclas ,aps 4ocU ou 0crool locU na partida ou pressionar a tecla 0hi%t durante os dois segundos de pausa. Eutro m(todo ( incluir a opo prompt na seo global para -ue o a*iso de .oot: se@a mostrado automaticamente ap's carregar o 4ilo. A.ai o uma con%igurao para computadores com mais de um sistema operacional (Fsando <"F:4inu e ^indows!:
boot=/dev/hda1 compact

lba32 install=/boot/boot.b map=/boot/map vga=normal delay=20 prompt image=/vmlinuz root=/dev/hda1 label=linux read-only other=/dev/hda2 label=windows

E.ser*aes: ,aso o gerenciador de partida se@a instalado no 6J9 do disco r)gido (.ootZ:de*:hda!, o setor de .oot do antigo sistema operacional ser$ su.stitu)do, retire uma c'pia do setor de .oot para um dis-uete usando o comando dd i%Z:de*:hda o%Z:%lopp5:m.r .sZ51& countZ1 no <"F:4inu paa sal*ar o setor de .oot em um dis-uete e dd i%Z:%lopp5:m.r o%Z:de*:hda .sZ33H countZ1 para restauraDlo. "o DE0 *oc2 pode usar o comando %disU :m.r para criar um no*o 6aster Joot 9ecord. Ap's -ual-uer modi%icao no ar-ui*o :etc:lilo.con% , o comando lilo de*er$ ser no*amente e ecutado para atuali#ar o setor de partida do disco r)gido. 8sto tam.(m ( *$lido caso o Uernel se@a atuali#ado ou a partio -ue cont(m a imagem do Uernel des%ragmentada. A limitao de 1;&3 cilindros do 4ilo no e iste mais a partir da *erso &1.3./ (recomendada, por conter muitas correes! e superiores. A reinstalao, %ormatao de sistemas DE0 e ^indows pode su.stituir o setor de partida do CD e assim o gerenciador de partida, tornando imposs)*el a iniciali#ao do <"F:4inu . Antes de reinstalar o DE0 ou ^indows, *eri%i-ue se possui um dis-uete de partida do <"F:4inu . 1ara gerar um no*o .oot loader, colo-ue o dis-uete na unidade e ap's o a*iso .oot: ser mostrado, digite linu rootZ:de*:hda1 (no lugar de :de*:hda1 *oc2 coloca a partio rai# do <"F:4inu !, o sistema iniciar$. Dentro do <"F:4inu , digite o comando lilo para gerar um no*o setor de partida. 0.$ 3Op7es usadas no lilo +sta seo tra# opes Iteis usadas no ar-ui*o lilo.con% com e plicaes so.re o -ue cada uma %a#. As opes esto di*ididas em duas partes: As usadas na seo Alobal e as da seo I(agens do ar-ui*o lilo.con%. <lo.al .acUupZNar-ui*o:dispositi*oP D ,opia o setor de partida original para o ar-ui*o ou dispositi*o especi%icado. .ootZdispositi*o D De%ine o nome do dispositi*o onde ser$ gra*ado o setor de partida do 484E (normalmente ( usada a partio ati*a ou o 6aster Joot 9ecord D 6J9!. ,aso no se@a especi%icado, o dispositi*o montado como a partio rai# ser$ usado. compact D >enta agrupar re-uisies de leitura para setores seguintes ao sendo lido. 8sto redu# o tempo de iniciali#ao e dei a o mapa menor. B normalmente

recomendado em dis-uetes. de%aultZimagem D Fsa a imagem especi%icada como padro ao in*(s da primeira encontrada no ar-ui*o lilo.con%. dela5ZNnumP D 1ermite a@ustar o nImero de segundos (em d(cimos de segundos! -ue o gerenciador de partida de*e aguardar para carregar a primeira imagem de disco (ou a especi%icada por de%aultZ!. +sta pausa lhe permite selecionar -ue sistema operacional ser$ carregado. installZsetorD.oot D 8nstala o ar-ui*o setorD.oot como no*o setor de .oot do disco. 0e install %or omitido, :.oot:.oot.. ( usado por padro. l.a/& D 1ermite -ue o 484E -ue.re o limite de 1;&3 cilindros do disco r)gido, iniciali#ando o <"F:4inu em um cilindro acima deste atra*(s do acesso . "ote -ue isto re-uer compati.ilidade com o J8E0, mais especi%icamente -ue tenha suporte a chamadas int ; 1/ e ACZ; 3&. B recomendado o seu uso. mapZar-ui*oDmapa D +speci%ica a locali#ao do ar-ui*o de mapa (.map!. 0e no %or especi%icado, :.oot:map ( usado. messageZar-ui*o D +speci%ica um ar-ui*o -ue cont(m uma mensagem -ue ser$ mostrada antes do a*iso de .oot:. "enhuma mensagem ( mostrada at( -ue se@a pressionada a tecla 0hi%t ap's mostrar a pala*ra 484E. E tamanho da mensagem de*e ser no m$ imo H55/5 .5tes. E ar-ui*o de mapa de*e ser no*amente criado caso a mensagem se@a retirada ou modi%icada. . nowarn D "o mostra mensagens de alerta. passwordZsenha D 1ermite proteger todas as imagens de disco com uma Inica senha. ,aso a senha este@a incorreta, o 484E ( no*amente carregado. prompt D 6ostra imediatamente o a*iso de .oot: ao in*(s de mostrar somente -uando a tecla 0hi%t ( pressionada. timeoutZNnumP D A@usta o tempo m$ imo de espera (em d(cimos de segundos! de digitao no teclado. 0e nenhuma tecla ( pressionada no tempo especi%icado, a primeira imagem ( autom$ticamente carregada. 8gualmente a digitao de senha ( interrompida se o usu$rio esti*er inati*o por este per)odo.

Adicionalmente as opes de imagem do Uernel append, ramdisU, readDonl5, readDwrite, root e *ga podem ser especi%icadas na seo global. unsa%e D "o acessa o setor de .oot no momento da criao do mapa. 8sto desati*a algumas checagens, como a checagem da ta.ela de partio. unsa%e e ta.leZ so incompat)*eis. la.elZNnomeP D 1ermite especi%icar um nome para a imagem. +ste nome ser$ usado na linha .oot: para iniciali#ar o sistema. aliasZNnomeP D Apelido para a imagem de disco. B como um segundo la.el. optional D 8gnora a imagem caso no esti*er dispon)*el no momento da criao do mapa. B Itil para especi%icar Uernels -ue no esto sempre presentes no sistema. passwordZsenha D 1rotege a imagem atual com a senha. ,aso a senha este@a incorreta, o setor de partida do 4ilo ( no*amente carregado. restricted D A senha somente ( pedida para iniciar a imagem se o sistema %or iniciado no modo single.

A.ai o as opes usadas para passagem de par?metros ao Uernel. +stas opes podem ser usadas na seo glo.al (*alero para todas as imagens! ou em cada imagem (*alero somente para a-uela imagem!.

appendZstring D 1assa os par?metros especi%icados ao Uernel. B e tremamente Itil para passar par?metros de hardwares -ue podem ter pro.lemas na hora da deteco ou para par?metros -ue precisam ser passados constantemente ao Uernel atra*(s do a*iso .oot:. + emplo: appendZ_memZ/&m_ ramdisUZtamanho D +speci%ica o tamanho do disco 9A6 -ue ser$ criado. ,aso %or igual a #ero, nenhum disco 9A6 ser$ criado. 0e no %or especi%icado, o tamanho do disco 9A6 usado na imagem de iniciali#ao do Uernel ser$ usada. readDonl5 D +speci%ica -ue o sistema de ar-ui*os rai# de*er$ ser montado como somente leitura. "ormalmente o sistema de iniciali#ao remonta o sistema de ar-ui*os como leitura:gra*ao. readDwrite D +speci%ica -ue o sistema de ar-ui*os rai# de*er$ ser montado como leitura e gra*ao. rootZdispositi*o D +speci%ica o dispositi*o -ue ser$ montado como rai#. 0e a pala*ra current ( usada, o dispositi*o atual ser$ montado como rai#. *gaZmodo D +speci%ica o mode de *ideo te to -ue ser$ usado durante a iniciali#ao. normal D Fsa o modo =; &5 (=; colunas por &5 linhas! e tended (ou e t! D Fsa o modo de te to =; 5; asU D 1ergunta -ue modo de *ideo usar na iniciali#ao. Es modos de *)deo podem ser o.tidos pressionandoDse enter -uando o sistema perguntar o modo de *)deo.

0.0 3 Arub E gru. (<rand Fni%ied Jootloader! ( uma alternati*a ao lilo. >am.(m ( instalado na 6J9\ pelo comando :s.in:gru. ou pelo :s.in:gru.Dinstall, -ue o.t(m as instrues de :etc:gru.:gru..con%. 1rincipais sees de :.oot:gru.:gru..con%:

glo.al de%ault Q imagem de .oot padro (comea por ;! timeout Q tempo de espera para iniciar o .oot, em segundos imagem title Q nome para a imagem root Q locali#ao do carregador de segundo est$gio e do Uernel (hd;,; Z :de*:hda!

Uernel Q caminho para o Uernel W partir de root ro Q readDonl5 initrd Q caminho para a imagem initrd Di%erente do lilo, o comando gru.Dinstall no precisa ser e ecutado toda *e# -ue %orem

%eitas alteraes ao ar-ui*o :.oot:grup:gru..con%. Fma *e# instalado, o carregador de .oot do gru. l2 o ar-ui*o :.oot:gru.:gru..con% diretamente. 0.8 3 Inittab E init ( o primeiro programa a ser carregado pelo 4inu nele se descre*e -uais processos so e ecutados durante a iniciali#ao e durante a operao normal do sistema. E init distingue, ento, os multiplos n)*eis de e ecuo cada um dos -uais com o seu pr'prio con@unto de processos a serem iniciados. As opes do :etc:initta. para modi%icar o n)*el de e ecuo do sistema so as seguintes: ; Q desliga o sistema 1 Q modo monousu$rio & Q modo multiusu$rio sem utili#ao de "F0\ / Q modo multiusu$rio 3 Q multiusu$rio ("o usado! 5 Q multiusu$rio em am.iente gr$%ico H Q reiniciali#ao A con%igurao do initta. ( %eita atra*(# do ar-ui*o :etc:initta., -ue tem *$rias linhas -uen descre*em -uais processos de*em ser iniciados. ,ada linha destas tem o seguinte %ormato: Identi)icao1n9'eis de e,ecuo1ao1processo Tabela 0.1 Ca(pos de u(a lin?a do inittab Ca(po 5escrio 8denti%icao B uma se-uencia Inica de 1 a 3 caracteres, os -uais identi%icam uma entrada no initta. ")*eis de e ecuo 4ista os n)*eis de e ecuo nos -uais a ao especi%icada de*er$ ser ati*ada. Ao Descre*e a ao -ue ser$ e ecutada. 1rocesso +speci%ica o processo a ser e ecutado Tabela 0.$ Op7es do ca(po ao Opo 5escrio respawn E processo ser$ reiniciado sempre -ue %or iniciado. wait E processo ser$ iniciado assim -ue o sistema entrar no n)*el de e #ecuo in%ormado, e o init ir$ esperar por sua %inali#ao once E processo ser$ e ecutado uma Inica *e#. .oot E processo ser$ e ecutado durante a iniciali#ao do sistema. E campo n)*el de e ecuo ( ignorado .ootwait E processo ser$ e ecutado durante a iniciali#ao do sistema, e o init esperar$ por sua concluso. E campo n)*el de e ecuo ser$ ignorado. powerwait E processo ser$ e ecutado -uando o init rece.er um sinal 08<1^9, indicando -ue h$ algo errado com a energia el(trica power%ail Assim como o powerwait, e eto -ue o init no aguarda

poweroUwait

ctrlaltdel s5sinit

a %inali#ao do processo E processo ser$ e ecutado -uando o init rece.er um sinal 08<1^9, alertando -ue h$ um ar-ui*o chamado :etc:powerstatus contendo a pala*ra E`. 8sto signi%ica -ue a eneergia el(trica retornou. 8sto signi%ica -ue alguem no console presionou a com.inao de teclas ,trl[Alt[Del. E processo ser$ e ecutado durante a iniciali#ao do sistema. 0er$ e ecutado antes das entradas .oot e .ootwait. E campo n)*eis de e ecuo ser$ ignorado.

0.5 3 5iret+rio 6etc6rc.d6 Ap's a e ecuo do init o 4inu ir$ iniciar todos os ser*ios -ue esti*erem no diret'rio :etc:rc.d:rc .d ( onde o representa o runle*el padro !. "este diret'rio podem residir ar-ui*os e ecut$*eis ou linUs para os mesmos. E ultimo ar-ui*o a ser e ecutado na iniciali#ao ( o ar-ui*o rc.local 0.; 3 "r-ui'o 6etc6pro)ile +ste ar-ui*o cont(m comandos -ue so e ecutados para todos os usu$rios do sistema no momento do login. 0omente o usu$rio root pode ter permisso para modi%icar este ar-ui*o. +ste ar-ui*o ( lido antes do ar-ui*o de con%igurao pessoal de cada usu$rio (.pro%ile(root! e ..ashOpro%ile!. Kuando ( carregado atra*(s de um shell -ue re-uer login (nome e senha!, o .ash procura estes ar-ui*os em se-uencia e e ecuta os comandos contidos, caso e istam:
:etc:pro%ile a:..ashOpro%ile a:..ashOrc :etc:.ashrc

,aso o .ash se@a carregado atra*(s de um shell -ue no re-uer login (um terminal no G, por e emplo!, o seguinte ar-ui*o ( e ecutado: a:..ashrc. E.ser*ao: "os sistemas De.ian, o pro%ile do usu$rio root est$ con%igurado no ar-ui*o :root:.pro%ile. A ra#o disto ( por-ue se o .ash %or carregado atra*(s do comando sh, ele %ar$ a iniciali#ao cl$ssica deste shell lendo primeiro o ar-ui*o :etc:pro%ile e ap's o a:.pro%ile e ignorando o ..ashOpro%ile e ..ashrc -ue so ar-ui*os de con%igurao usados somente pelo Jash. + emplo, inserindo a linha mesg 5 no ar-ui*o :etc:pro%ile permite -ue todos os usu$rios do sistema rece.am pedidos de talU de outros usu$rios. ,aso um usu$rio no -uiser rece.er pedidos de talU, .asta somente adicionar a linha _mesg 5_ no ar-ui*o pessoal ..ashOpro%ile. 0.< 3 "r-ui'o B6.bas?Cpro)ile

+ste ar-ui*o reside no diret'rio pessoal de cada usu$rio. B e ecutado por shells -ue usam autenticao (nome e senha!. ..ashOpro%ile cont(m comandos -ue so e ecutados para o usu$rio no momento do login no sistema ap's o :etc:pro%ile. "ote -ue este ( um ar-ui*o oculto pois tem um _._ no inicio do nome. 1or e emplo colocando a linha: alias lsZbls DDcolorsZautob no ..ashOpro%ile, cria um apelido para o comando ls DDcolorsZauto usando ls, assim toda *e# -ue *oc2 digitar ls ser$ mostrada a listagem colorida.

0.= 3 "r-ui'o B6.bas?rc 1ossui as mesmas caracter)sticas do ..ashOpro%ile mas ( e ecutado por shells -ue no re-uerem autenticao (como uma seo de terminal no G!. Es comandos deste ar-ui*o so e ecutados no momento -ue o usu$rio inicia um shell com as caracter)sticas acima. "ote -ue este ( um ar-ui*o oculto pois tem um _._ no inicio do nome.

E,erc9cio1 1 Q Kual o primeiro processo a ser iniciado no 4inu ] & Q 9etire da iniciali#ao o sendmail. / Q 0e *oc2 precisar de%inir uma *ari$*el de am.iente para ser utili#ada por todos os usu$rios em -ual ar-ui*o *oc2 ira arma#enar a *ari$*el ] + se %osse uma *ari$*el dispon)*el apenas para seu usu$rio ]

8 - Dernel
E `ernel ( o nIcleo do sistema, respons$*el pela comunicao entre os programas e as instrues de .ai o n)*el (.asicamente hardware! do sistema. E comando uname ( utili#ado para retornar in%ormaes a respeito do Uernel do sistema. Kuando usado apenas com a opo Da retorna todas as in%ormaes so.re o Uernel, na seguinte ordem: 1. "E6+DDED`+9"+4 &. "ED+"A6+ (nome do host! /. 9+4+A0+DDED`+9"+4 3. V+90cEDDED`+9"+4 5. 6dKF8"A H. 19E,+00ADE9 7. 14A>AFE96ADD+DCA9D^A9+ =. 080>+6ADE1+9A,8E"A4 Demais opes do uname: Di V 1lata%orma de Cardware Dm V Cardware da m$-uina Dn V "ome do Cost (nodename! Dp V 1rocessador Do V 0istema Eperacional Dr V 9elease do `ernel Ds V "ome do `ernel D* V Verso do `ernel + emplo de sa)da do comando uname Da:
$ uname -a Linux slack102 2.6.13 #1 SMP Thu Mar 23 01:57:38 BRT 2006 i686 unknown unknown GNU/Linux

8.1 - 4+dulos do Dernel Funes especiali#adas do Uernel podem e istir na %orma de m'dulos e ternos. 6'dulos so arma#enados em :li.:modules: . . :(onde . . ( o release do Uernel do sistema! e so carregados e descarregados dinamicamente atra*(s dos comandos modpro.e ou insmod. A di%erena entre os dois comandos ( -ue modpro.e carrega o m'dulo especi%icado e os m'dulos dos -uais depende, con%orme listados no ar-ui*o :li.:modules: . . :modules.dep, e insmod carrega o m'dulo sem *eri%icar as depend2ncias. E ar-ui*o modules.dep arma#ena as depend2ncias de cada m'dulo e ( gerado ou atuali#ado pelo comando depmod Da. +ssa tare%a pode ser reali#ada manualmente, mas se %orem detectados no*os m'dulos durante o carregamento do sistema, depmod Da ser$ e ecutado automaticamente. E comando lsmod lista os m'dulos carregados. 6'dulos marcados com (autoclean! podem ser descarregados com o comando modpro.e Dra ou rmmod Da. 6'dulos marcados com (unused! podero ser remo*idos se seus respecti*os nomes %orem %ornecidos como argumento para modpro.e Dr ou rmmod. Es demais m'dulos esto em uso e no ( recomendado seu descarregamento. + emplo de lista de m'dulos carregados:
# lsmod Module snd_pcm_oss snd_mixer_oss ehci_hcd sis900 ohci_hcd snd_cmipci gameport snd_pcm snd_page_alloc snd_opl3_lib snd_timer snd_hwdep Size Used by 49696 0 18560 2 snd_pcm_oss 30472 0 20352 0 20356 0 32800 1 13448 1 snd_cmipci 84100 2 snd_pcm_oss,snd_cmipci 9608 1 snd_pcm 10240 1 snd_cmipci 22788 2 snd_pcm,snd_opl3_lib 8480 1 snd_opl3_lib

E comando modin%o retorna a descrio, autor, licena e par?metros para o m'dulo solicitado.

>endo como argumento apenas o nome do m'dulo, retorna todas as in%ormaes dispon)*eis: 8n%ormaes do m'dulo gameport
# modinfo gameport filename: /lib/modules/2.6.13/kernel/drivers/input/gameport/gameport.ko author: description: license: vermagic: depends: Vojtech Pavlik <vojtech@ucw.cz> Generic gameport layer GPL 2.6.13 SMP preempt PENTIUMIII gcc-3.3

E mais comum ( -ue os m'dulos se@am carregados automaticamente pelo sistema. 1or isso, os par?metros podem ser arma#enados no ar-ui*o :etc:modules.con%. E mesmo par?metro do e emplo poderia estar em :etc:modpro.e.con% na %orma:
options sis900 multicast_filter_limit=valor

>am.(m atra*(s do ar-ui*o :etc:modpro.e.con% ( poss)*el criar aliases para m'dulos, de %orma -ue possam ser in*ocados usando um nome con*encional. + :
alias eth0 sis900 alias sound-slot-0 snd_cmipci

8.$ 3 Co(pilar Dernel E local padro de arma#enamento do c'digo %onte do Uernel ( :usr:src:linu , -ue ( um linU sim.'lico para :usr:src:linu D . . : (onde . . ( o release do Uernel!. + iste mais de uma inter%ace para con%igurar o Uernel, e todas elas desempenham a mesma %uno. As inter%aces de con%igurao so in*ocadas atra*(s do comando maUe: D maUe con%ig 8nter%ace em linha de comando. B %eita uma se-u2ncia de perguntas (.astante e tensa! so.re cada aspecto da con%igurao. D maUe menucon%ig 8nter%ace de menus ncurses. D maUe con%ig 8nter%ace gr$%ica G, utili#ando a .i.lioteca K>.

D maUe gcon%ig 8nter%ace gr$%ica G, utili#ando a .i.lioteca <tU. D maUe oldcon%ig Fsa as con%igurao anteriores como ponto de partida para uma no*a con%igurao. +n-uanto -ue alguns recursos precisam ser compilados como est$ticos (em.utidos no Uernel!, a maioria pode ser compilada como din?mico (m'dulo!. E item marcado com asterisco (e! ser$ compilado como est$tico e o item marcado com a letra L6M ser$ compilado como m'dulo. 8tens dei ados em .ranco no sero compilados. +spaos de escolha LN PM indicam -ue o item s' poder$ ser compilado como est$tico e espaos de escolha LR TM indicam -ue o item poder$ ser compilado tanto como est$tico -uanto m'dulo. Op7es de (+dulos do Dernel D ,ode maturit5 le*el options 6ostrar ou no recursos considerados inst$*eis D <eneral setup ,aracter)sticas gerais do Uernel. B poss)*el incluir um termo de *erso para o Uernel personali#ado D 4oada.le module support 0uporte ao sistema de m'dulos e de%ine algumas caracter)sticas. D 1rocessor t5pe and %eatures 8ndica o tipo de processador -ue o Uernel utili#ar$ e recursos como multiprocessamento. D 1ower management options (A,18, A16! Epes relati*as ao controle de energia. 8ndicado especialmente para laptops Jus options (1,8, 1,6,8A, +80A, 6,A, 80A!. 0uporte para os di%erentes tipos de .arramentos D + ecuta.le %ile %ormats >ipos de ar-ui*os -ue o sistema ser$ capa# de e ecutar D "etworUing 0uporte e con%igurao dos di%erentes tipos de plata%ormas de rede D De*ice Dri*ers +scolha e con%igurao dos dispositi*os de hardware, integrados e peri%(ricos.

D `ernel hacUing Epes de depurao do Uernel +ssas so as principais categorias de con%igurao, e podem di%erenciar de uma *erso do Uernel para outra. As con%iguraes so sal*as no ar-ui*o :usr:src:linu :.con%ig. Co(pilao e Instalao 1ara assegurarDse de -ue todo Uernel e m'dulos se@am compilados com a no*a con%igurao e no reapro*eitem o.@etos pr(Dcompilados, ( usado o comando: f maUe clean Agora @$ podem ser compilados Uernel e m'dulos: maUe .#8mage ou maUe #8mage ,ompila o no*o Uernel maUe modules ,ompila os no*os m'dulos maUe all ,ompila o no*o Uernel e os no*os m'dulos maUe modulesOinstall 8nstala os no*os m'dules em :li.:modules: . . : ( . . ( a *erso do no*o Uernel!. E comando depmod Da ser$ automaticamente e ecutado para criar o ar-ui*o modules.dep de depend2ncias dos m'dulos. "um computador padro i/=H (o mais comum!, o no*o Uernel estar$ em :usr:src:linu :arch:i/=H:.oot:.#8mage. +ste ar-ui*o de*e ser copiado (ou %eito um um linU! para :.oot, e o ar-ui*o de con%igurao do carregador de .oot (:etc:lilo.con% ou :etc:gru.:gru..con%! de*e ser atuali#ado para apontar para o no*o Uernel. "o caso do lilo, ( importante reinstal$Dlo com o comando lilo. "o*as %uncionalidades podem e igir con%iguraes suplementares, como passar no*as opes para m'dulos. 1ara %unes compiladas estaticamente, opes podem ser passadas pela instruo append, no ar-ui*o :etc:lilo.con%. ,om o no*o Uernel instalado, .asta reiniciar o sistema para passar a utili#$Dlo.

E,erc9cio1 1 Q ,ompile a no*a *erso do Uernel dispon)*el no site www.Uernel.org & Q ,on%igure o <9FJ para ter as opes do antigo e no*o Uernel

5 - In)or(a7es do Eard2are
E hardware .$sico do sistema ( con%igurado atra*(s do utilit$rio de con%igurao de J8E0, -ue pode ser acessado no in)cio do .oot da m$-uina. Atra*(s deste utilit$rio, ( poss)*el li.erar e .lo-uear peri%(ricos integrados, ati*ar proteo .$sica contra erros (proteo .$sica contra *)rus e 0.6.A.9.>.! e con%igurar endereos 8:E, 89K e D6A. E Uernel do 4inu arma#ena in%ormaes so.re recursos de dispositi*os no diret'rio :proc, nos ar-ui*os: :proc:dma :proc:interrupts :proc:ioports :proc:pci + emplo de :proc:ioports:
0000-001f 0020-0021 0040-0043 0050-0053 0060-006f 0070-0077 0080-008f 00a0-00a1 00c0-00df 00f0-00ff 0170-0177 01f0-01f7 : : : : : : : : : : : : dma1 pic1 timer0 timer1 keyboard rtc dma page reg pic2 dma2 fpu ide1 ide0

5.1 - Co(andos para inspecionar dispositi'os D lspci 4ista in%ormaes de chipset dos componentes 1,8. ,om a opo D* lista 8:E e 89K dos dispositi*os. + emplo de lspci:
# lspci -v

00:0f.1 Communication controller: C-Media Electronics Inc CM8738 (rev 10) Subsystem: C-Media Electronics Inc CM8738 Flags: medium devsel, IRQ 9 I/O ports at dc80 [size=64] Capabilities: [40] Power Management version 2 01:00.0 VGA compatible controller: Silicon Integrated Systems [SiS] 630/730 PCI/AGP VGA Display Adapter (rev 20) (prog-if 00 [VGA]) Display Subsystem: Silicon Integrated Systems [SiS] 630/730 PCI/AGP VGA Adapter Flags: 66Mhz, medium devsel BIST result: 00 Memory at e0000000 (32-bit, prefetchable) [size=128M] Memory at efee0000 (32-bit, non-prefetchable) [size=128K] I/O ports at cc80 [size=128] Expansion ROM at <unassigned> [disabled] Capabilities: [40] Power Management version 1 Capabilities: [50] AGP version 2.0

Ddmesg 6ostra as mensagens do Uernel, da identi%icao do hardware em diante. +ssa in%ormao est$ dispon)*el em :*ar:log:dmesg e :*ar:log:messages. + emplo de dmesg:
# dmesg ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A parport0: PC-style at 0x378 (0x778) [PCSPP(,...)] parport0: irq 7 detected lp0: using parport0 (polling). io scheduler noop registered io scheduler anticipatory registered io scheduler deadline registered io scheduler cfq registered Floppy drive(s): fd0 is 1.44M

5.0 -Con)igurao de 5ispositi'os FS Dispositi*os para inter%ace F0J (Fni*ersal 0erial Jus! so di*ididos em classes: Displa5 De*ices ,ommunication De*ices Audio De*ices 6ass 0torage De*ices Cuman 8nter%ace De*ices (C8D! A porta F0J ( operada por um controlador (Cost ,ontroller!: EC,8 (compa-! FC,8 (intel! +C,8 (F0J *&.;! Fma *e# conectados, os dispositi*os F0J podem ser inspecionados com o comando lsus..
# lsusb Bus 002 WebCam Bus 002 Bus 002 Bus 001 Device Device Device Device 003: 002: 001: 001: ID ID ID ID 05a9:a511 OmniVision Technologies, Inc. OV511+ 0f2d:9308 ViPower, Inc. 0000:0000 0000:0000

As in%ormaes detalhadas so.re os dispositi*os F0J conectadas so arma#enadas no ar-ui*o :proc:.us:us.:de*ices. E controle dos dispositi*os F0J ( %eito pelo hotplug. +tapas e ecutadas -uando uma c?mera F0J ( conectada ao computador: 1. Es m'dulos F0J do Uernel identi%icam o e*ento F0J e a 8D *endor:product &. +sses dados so passados para :s.in:hotplug (ou outro, se o indicado em :proc:s5s:Uernel:hotplug no %or o padro! /. E agente F0J respecti*o (:etc:hotplug:us..agent! associa o dispositi*o ao produto correspondente. A relao entre dispositi*o e m'dulo consta no ar-ui*o :etc:hotplug:us..distmap.

E primeiro est$gio en*ol*e procedimentos do Uernel, en-uanto o segundo e terceiro est$gio en*ol*em o mecanismo do hotplug.

;3 "d(inistrao de Processos
Fm programa pode ser e ecutado de duas %ormas: 1rimeiro 1lano D >am.(m chamado de )oreground. Kuando *oc2 de*e esperar o t(rmino da e ecuo de um programa para e ecutar um no*o comando. 0omente ( mostrado o a*iso de comando ap's o t(rmino de e ecuo do comando:programa. 0egundo 1lano D >am.(m chamado de background. Kuando *oc2 no precisa esperar o t(rmino da e ecuo de um programa para e ecutar um no*o comando. Ap's iniciar um programa em background, ( mostrado um nImero 18D (identi%icao do 1rocesso! e o a*iso de comando ( no*amente mostrado, permitindo o uso normal do sistema.

E programa e ecutado em .acUground continua sendo e ecutado internamente. Ap's ser conclu)do, o sistema retorna uma mensagem de pronto acompanhado do nImero 18D do processo -ue terminou. 1ara iniciar um programa em primeiro plano, .asta digitar seu nome normalmente.1ara iniciar um programa em segundo plano, acrescente o caractere _g_ ap's o %inal do comando. EJ0: 6esmo -ue um usu$rio e ecute um programa em segundo plano e saia do sistema, o programa continuar$ sendo e ecutado at( -ue se@a conclu)do ou %inali#ado pelo usu$rio -ue iniciou a e ecuo (ou pelo usu$rio root!. + emplo: find / -name boot.b & E comando ser$ e ecutado em segundo plano e dei ar$ o sistema li*re para outras tare%as. Ap's o comando %ind terminar, ser$ mostrada uma mensagem. ;.$ 3 E,ecutando Progra(as e( se-Gncia Es programas podem ser e ecutados e se-u2ncia (um ap's o t(rmino do outro! se os separarmos com \. 1or e emplo: echo primeiro\echo segundo\echo terceiro ;.0 3 Co(ando ps Algumas *e#es ( Itil *er -uais processos esto sendo e ecutados no computador. E comando ps %a# isto, e tam.(m nos mostra -ual usu$rio e ecutou o programa, hora -ue o processo %oi iniciado, etc. ps Nop7esP Ende: op7es a 6ostra os processos criados por *oc2 e de outros usu$rios do sistema.

6ostra processos -ue no so controlados pelo terminal. u 6ostra o nome de usu$rio -ue iniciou o processo e hora em -ue o processo %oi iniciaD do. m 6ostra a mem'ria ocupada por cada processo em e ecuo. % 6ostra a $r*ore de e ecuo de comandos (comandos -ue so chamados por outros comandos!. e 6ostra *ari$*eis de am.iente no momento da iniciali#ao do processo. w 6ostra a continuao da linha atual na pr' ima linha ao in*(s de cortar o restante -ue no cou.er na tela. As opes acima podem ser com.inadas para resultar em uma listagem mais completa. Voc2 tam.(m pode usar pipes _S_ para %iltrar a sa)da do comando ps. Ao contr$rio de outros comandos, o comando ps no precisa do hi%en _D_ para especi%icar os comandos. 8sto por-ue ele no utili#a opes longas e no usa par?metros. + emplos: ps, ps a Sgrep inetd, ps au %, ps au w. ;.8 3 Co(ando top 6ostra os programas em e ecuo ati*os, parados, tempo usado na ,1F, detalhes so.re o uso da mem'ria 9A6, 0wap, disponi.ilidade para e ecuo de programas no sistema, etc. top ( um programa -ue continua em e ecuo mostrando continuamente os processos -ue esto rodando em seu computador e os recursos utili#ados por eles. 1ara sair do top, pressione a tecla -. top Nop7esP Ende: Dd NtempoP Atuali#a a tela ap's o NtempoP (em segundos!. Ds Di# ao top para ser e ecutado em modo seguro. Di

8nicia o top ignorando o tempo de processos #um.is. Dc 6ostra a linha de comando ao in*(s do nome do programa. A a@uda so.re o top pode ser o.tida dentro do programa pressionando a tecla h ou pela p$gina de manual (man top!. A.ai o algumas teclas Iteis:

espao D Atuali#a imediatamente a tela. ,>94[4 D Apaga e atuali#a a tela. h D 6ostra a tela de a@uda do programa. B mostrado todas as teclas -ue podem ser usadas com o top. i D 8gnora o tempo ocioso de processos #um.is. - D 0ai do programa. U D Finali#a um processo D semelhante ao comando Uill. Voc2 ser$ perguntado pelo nImero de identi%icao do processo (18D!. +ste comando no estar$ dispon)*el caso este@a usando o top com a opo Ds. n D 6uda o nImero de linhas mostradas na tela. 0e ; %or especi%icado, ser$ usada toda a tela para listagem de processos.

;.5 3 Co(ando kill 1ermite en*iar um sinal a um comando:programa. ,aso se@a usado sem par?metros, o Uill en*iar$ um sinal de t(rmino ao processo sendo e ecutado. Uill Nop7esP NsinalP NnH(eroP Ende: nH(ero B o nImero de identi%icao do processo o.tido com o comando ps sinal 0inal -ue ser$ en*iado ao processo. 0e omitido usa D15 como padro. op7es DA +n*ia um sinal de destruio ao processo ou programa. +le ( terminado imediatamenD te sem chances de sal*ar os dados ou apagar os ar-ui*os tempor$rios criados por ele. Voc2 precisa ser o dono do processo ou o usu$rio root para termin$Dlo ou destru)Dlo. Voc2 pode *eri%icar se o processo %oi %inali#ado atra*(s do comando ps. + emplo: Uill 5;;, Uill DA 5;;. ;.; 3 Co(ando killall

1ermite %inali#ar processos atra*(s do nome. Uillall Nop7esP NsinalP NprocessoP Ende: processo "ome do processo -ue dese@a %inali#ar sinal 0inal -ue ser$ en*iado ao processo (pode ser o.tido usando a opo Di. op7es Di 1ede con%irmao so.re a %inali#ao do processo. Dl 4ista o nome de todos os sinais conhecidos. D8gnora a e ist2ncia do processo. D* 9etorna se o sinal %oi en*iado com sucesso ao processo. Dw Finali#a a e ecuo do Uillall somente ap's %inali#ar todos os processos. + emplo: Uillall DCF1 inetd ;.< 3 Sinais do siste(a 9etirado da p$gina de manual signal. E <"F:4inu suporta os sinais listados a.ai o. Alguns nImeros de sinais so dependentes de ar-uitetura. 1rimeiro, os sinais descritos no POSI/ 1: 0inal Valor Aco ,oment$rio DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD CF1 1 >ra*amento detectado no terminal de controle 8"> & 8nterrupo atra*(s do teclado KF8> / 0air atra*(s do teclado 844 3 8nstruo 8legal AJ9> H 0inal de a.ortar en*iado pela %uno a.ort F1+ = + ceo de ponto Flutuante `844 A 0inal de destruio do processo 0+<V 11 9e%er2ncia 8n*$lida de mem'ria

181+ 1/ 1ipe Kue.rado: A496 13 0inal do >empori#ador da chamada do sistema alarm >+96 15 0inal de >(rmino F091 /;,1;,1H 0inal de%inido pelo usu$rio 1 F09& /1,1&,17 0inal de%inido pelo usu$rio & ,C4D &;,17,1= 1rocesso %ilho parado ou terminado ,E"> 1A,1=,&5 ,ontinuar a e ecuo, se interrompido 0>E1 17,1A,&/ 8nterromper processo >0>1 1=,&;,&3 8nterromper digitao no terminal >>8" &1,&1,&H +ntrada do terminal para o processo em segundo plano >>EF &&,&&,&7 0aida do terminal para o processo em segundo plano

E,erc9cio1 1 Q + ecute o comando cat & Q Finali#e o processo com o comando Uill / Q Kual o processo -ue est$ consumindo maior -uantidade de mem'ria da ma-uina ] 3 Q Kuanto da ,1F de sua ma-uina esta dispon)*el ]

< - SEE..
0hell, ou interpretador de comandos, ( o programa disparado logo ap's o login respons$*el por _pegar_ os comandos do usu$rio, interpret$Dlos e e ecutar uma determinada ao. 1or e emplo, -uando *oc2 escre*e no console _ls_ e pressiona RenterT, o shell l2 essa string e *eri%ica se e iste algum comando interno (em.utido no pr'prio shell! com esse nome. 0e hou*er, ele e ecuta esse comando interno. ,aso contr$rio, ele *ai procurar no 1A>C por algum programa -ue tenha esse nome. 0e encontrar, ele e ecuta esse programa, caso contr$rio, ele retorna uma mensagem de erro. 1ara cada terminal ou console a.erto, e iste um shell sendo e ecutado. Kuando *oc2 entra no seu 4inu , ele apresenta o login, para digitar o usu$rio e a senha. Ao digitar um par usu$rio:senha correto, o 4inu a.re automaticamente um shell, -ue *ai %icar esperando seus comandos. + istem di*ersos tipos de shell: .ash, csh, Ush, ash, etc. E mais utili#ado atualmente ( o .ash (<"F JourneDAgain 0Cell!. 1or isso, tomaremos ele como re%er2ncia. 9esumindo essa seo, ( importante sa.er -ue para cada terminal ou console a.erto, temDse um shell rodando. Ao e ecutar o shell script, o shell atual (no -ual *oc2 deu o comando! a.re um no*o shell para e ecutar o script. Assim, os scripts so e ecutados em um shell pr'prio (a menos -ue se especi%i-ue, ao chamar o script, para e ecut$Dlo no shell atual!. 8sso ser$ importante -uando %ormos tratar de *ari$*eis de am.iente. <.1 3 @ariI'eis de "(biente Fma *ari$*el ( onde o shell arma#ena determinados *alores para utili#ao posterior. >oda *ari$*el possui um nome e um *alor associado a ela, podendo ser este Iltimo *a#io. 1ara listar as *ari$*eis atualmente de%inidas no shell digite o comando set . 1ara se de%inir uma *ari$*el, .asta utili#ar a s)nta e: no(eCdaC'ariI'elJ'alor . 1or e emplo, -ueremos de%inir uma *ari$*el chamada _cor_ com o *alor de _a#ul_:
usuario@servidor$ cor=azul

1ara utili#ar o *alor de uma *ari$*el, ( s' colocar um sinal de _h_ seguido do nome da *ari$*el D o shell automaticamente su.stitui pelo *alor da *ari$*el:
usuario@servidor$ echo cor cor usuario@servidor$ echo $cor azul

1ara permitir -ue esta *ari$*el se@a utili#ada em outras sesses ( necess$rio utili#ar o comando e port. + : export cor

Algumas *ari$*eis @$ so prede%inidas no shell, como o 1A>C, -ue, como %oi dito antes, arma#ena o caminho dos programas. 1or e emplo, a minha *ari$*el 1A>C cont(m:
usuario@servidor$ echo $PATH /usr/local/bin:/usr/bin: /bin: /usr/X11R6/bin: /usr/openwin/bin: /usr/games: /opt/kde/bin: /usr/share/texmf/bin: /etc/script

Eu se@a, -uando digito um comando, como _ls_, o shell *ai comear a procur$Dlo em :usr:local:.in, se no encontr$Dlo, *ai procurar em :usr:.in e assim por diante. 9epare -ue os diret'rios so separados por um sinal de dois pontos (:!. B importante destacar -ue o shell possui *$rias *ari$*eis pr(Dde%inidas, ou se@a, -ue possuem um signi%icado especial para ele, entre elas: 1A>C, 1^D, 101, 10&, F0+9 e F8D. Assim, -uando iniciamos um no*o shell (ao e ecutar o nosso script!, essas *ari$*eis especiais so _herdadas_ do shell pai (o -ue e ecutou o shell %ilho!. Eutras *ari$*eis de%inidas pelo usu$rio, como a *ari$*el _cor_ no so passadas do shell pai para o %ilho. Kuando o script terminar, o seu shell (shell %ilho! simplesmente desaparece e com ele tam.(m as suas *ari$*eis, li.erando o espao ocupado na mem'ria. <.$ 3 E,ecuo e( Koreground e ackground Kuando e ecutamos um programa, o shell %ica esperando o mesmo terminar para depois nos de*ol*er a linha de comando. 1or e emplo, -uando e ecutamos o comando cp ar-ui*o1 ar-ui*o&,o shell e ecuta esse comando, %ica esperando ele terminar, para depois nos retornar a linha de comando. 8sso chamaDse e ecuo em primeiro plano, ou %oreground, em ingl2s.Agora digamos -ue o ar-ui*o a ser copiado se@a muito grande, digamos, 5;6.. +n-uanto o comando cp ( e ecutado, *amos %icar com o shell preso a ele todo esse tempo, ou se@a, cerca de 1 ou & minutos. 0omente ap's isso *amos ter a linha de comando de *olta para podermos continuar tra.alhando. + se pud(ssemos di#er ao shell para e ecutar um programa e nos retornar a linha de comando sem %icar esperando o tal programa terminar] 0eria muito melhor, no] +m alguns casos seria. + podemos %a#er isso. Fma maneira %$cil ( colocar o sinal de L depois de um comando. "o e emplo acima %icaria:
usuario@servidor$ cp arquivo1 arquivo2 & [1] 206 usuario@servidor$

1ronto, assim -ue teclarmos NenterP, teremos a nossa linha de comando de *olta e mais duas in%ormaes: _N1P &;H_. A primeira in%ormao (N1P! chamaDse @o.. +la identi%ica os programas -ue esto sendo e ecutados em .g (.acUground!. 1or e emplo, se e ecutarmos mais um programa em .g en-uanto este _cp_ est$ sendo e ecutado, o no*o programa rece.e o @o. de nImero & (N&P! e assim por diante. A segunda in%ormao (&;H! ( o pid do programa, ou se@a, o nImero de processo -ue o Uernel d$ a esse programa. 6as a) temos um pe-ueno pro.lema. Digamos -ue *oc2 -ueira tra#er o programa para %g, por e emplo, se o programa e ecutado em .g %or um tocador de mp/ e *oc2 -uiser mudar a mIsica. ,omo %a#emos] Fsamos o comando %g N@o.P (intuiti*o, no ]! do .ash. "o e emplo acima, digamos -ue eu e ecute o _cp_ em .g, mas depois -ueira tra#2Dlo para %g para cancel$Dlo. 0eria simples:

usuario@servidor$ cp arquivo1 arquivo2 & [1] 206 usuario@servidor$ fg 1 cp arquivo1 arquivo2

Assim tra#emos o _cp_ para primeiro plano e a linha de comando s' retorna -uando ele terminar. <.0 3 Entrada e Sa9da Padro 6uitos programas -ue e ecutamos geram sa)das no console, ou se@am, emitem mensagens para os usu$rios. 1or e emplo, -ueremos achar -uantos ar-ui*os no nosso sistema tem _netscape_ no nome:
usuario@servidor$ find / -name netscape /usr/lib/netscape /usr/lib/netscape/netscape /usr/lib/netscape/nethelp/netscape /usr/local/bin/netscape

Agora se -uisermos procurar -uantos ar-ui*os compactados com o g#ip (e tenso .g#! tem no nosso sistema para depois analis$Dlos e possi*elmente apagar os repetidos ou inIteis, teremos uma lista muito grande. A-ui no meu sistema deu mais de 1;;; ar-ui*os. +nto, seria Itil podermos en*iar as mensagens -ue *o para o console, para um ar-ui*o. Assim, poder)amos analis$Dlo depois de e ecutar o comando. 8sso ( e tremamente Itil ao tra.alharmos com shell script D en*iar as sa)das dos comandos para ar-ui*os para depois analis$Dlas. + empli%icando:
usuario@servidor$ find / -name "*.gz" > lista.txt find: /home/vera: Permisso negada find: /home/pri: Permisso negada find: /root: Permisso negada usuario@servidor$

"otamos -ue nem tudo %oi para o ar-ui*o lista.t t. As mensagens de erro %oram para o console. 8sso por-ue e istem dois tipos de sa)da: a sa)da padro e a sa)da de erro.A sa)da padro ( a sa)da normal dos programas, -ue no caso acima, seria os ar-ui*os encontrados. + a sa)da de erro, como o pr'prio nome di#, so os erro encontrados pelo programa durante sua e ecuo, -ue de*em ser in%ormados ao usu$rio, como os erros de _permisso negada_. + a), como selecionar uma ou outra] B simples, apenas de*emos indicar o _%ile descriptor_ (%d! delas. "o *amos entrar em detalhes so.re o -ue ( _descritor de ar-ui*os_ por %ugir do nosso escopo e ser um pouco complicado, apenas temos -ue sa.er -ue o %d 1 corresponde a sa)da padro e o %d & a sa)da de erro. Assim, no e emplo acima, para en*iar os erro para o ar-ui*o erros.t t e a sa)da padro para o ar-ui*o lista.t t, usar)amos:
usuario@servidor$ find / -name "*.gz" 1> lista.txt 2> erros.txt

Eu se@a, ( s' por o nImero da sa)da dese@ada antes do sinal de _T_. Agora digamos -ue -ueremos *er o conteIdo do ar-ui*o lista.t t. 1odemos a.r)Dlo com um editor de te tos ou usar o _cat_. Eptando pela Iltima opo:
usuario@servidor$ cat lista.txt /home/neo/gkrellm-0.10.5.tar.gz /home/neo/linuxcall-interface-beta.tar.gz

... <<< mais de 1000 linhas

>emos um pro.lema. E ar-ui*o tem mais de 1;;; linhas e no conseguimos *2Dlo inteiro. 1odemos redirecionar a sa)da do comando _cat_ para o comando _more_, -ue d$ pausa entre as telas:
usuario@servidor$ cat lista.txt | more

......... Ve@a -ue utili#amos o caractere _S_, chamado _pipe_. "o poder)amos ter utili#ado o sinal de _T_] "o, o sinal de _T_ ( somente para en*iar a sa)da para um A9KF8VE. 1ara en*iar a sa)da de um comando para a entrada de outro, usamos o pipe. As *e#es -ueremos -ue al(m da sa)da ir para um ar-ui*o, ela tam.(m *$ para a tela. >emos um programinha -ue %a# isso. +le chamaDse _tee_. Ve@a o e emplo a seguir:
usuario@servidor$ find / -name "*.gz" 2> erros.txt | tee lista.txt

E -ue %i#emos] 1rimeiro pegamos a sa)da de erro e en*iamos para o ar-ui*o erros.t t. E restante, ou se@a, a sa)da padro, estamos en*iando para a entrada do comando tee (usando o pipe!. E tee simplesmente pega o -ue ele rece.e (atra*(s do pipe! e @oga no ar-ui*o lista.t t e na tela. Assim, al(m de gra*armos a sa)da num ar-ui*o, podemos mostrar ao usu$rio o -ue est$ acontecendo. 8sso ( muito Itil -uando escre*emos alguns scripts. <.8 3 E,press7es regulares Es caracteres so literais, ou se@a, as letras (aD#, ADi! e nImeros (;DA!, al(m de alguns s)m.olos e acentos. + os metacaracteres so caracteres -ue t2m um signi%icado especial, como o LjM, -ue indica co(eo de lin?a, e o LhM, -ue representa )inal de lin?a. 0e *oc2 -uer -ue um s)m.olo se@a tratado literalmente, isto (, sem -ue se@a tratado como um metacaracter, *oc2 precisa escap$Dlo, colocando uma .arra in*ertida ( k ! antes do dito cu@o. Fm e emplo de uso disto ( para o ponto ( . !, -ue ( um metacaracter -ue representa -ual-uer caracter, e *oc2 pode -uerer trat$Dlo como sendo apenas um ponto mesmo. 6etacaracteres mais usados: M : comea com N : t(rmino de linha . : -ual-uer caracter O P : relao de *alores poss)*eis para um caracter. Voc2 pode especi%icar uma lista ( Na.cdeP !, uma %ai a ( N;DAP !, ou *$rias %ai as ( NaD#ADi;DAP !. QRQS : especi%ica -uantas *e#es o caracter pode se repetir. 1or e emplo: Ll&mM (duas *e#es!, Ll&,5mM (duas a cinco *e#es!, Ll&,mM (duas ou mais *e#es!. T : operador l'gico ou .U : operador l'gico e

<.5 3 S?ell script

<.5.13 i) E .ash nos o%erece, entre outros, o comando 8F (ele ( um comando em.utido no .ash e no um programa como o _ls_, o _cp_ etc.!. A %orma mais simples de representar uma condicional utili#ando o 8F, ( da seguinte %orma .$sica:
if [condio]; then comandos1; else comandos2; fi;

0e NcondioP %or *erdadeira, os comandos1 so e ecutados. 0e %or %alsa, os comandos& so e ecutados


if ls /boot; then echo "O diretrio existe."; else echo "Diretrio invlido."; fi;

<.5.$ 3 test E test pode apenas comparar strings, ou se@a, *eri%icar se uma ( igual a outra, e *eri%icar se uma string ( *a#ia ou no. Vamos aos e emplos para %acilitar o entendimento:
test "a" = "a" echo $? 0 test "a" = "b" echo $? 1

<.5.0 - 2?ile +ste ( pro*a*elmente o comando de lao mais utili#ado em programao. 0eu entendimento ( simples. +le testa uma condio (como %a# o 8F! e e ecuta um con@unto de comandos se esta condio %or *erdadeira. Ap's a e ecuo desses comandos, ele torna a testar a condio e se esta %or *erdadeira, ele ree ecuta os comandos e assim por diante. 0ua sinta e ( a seguinte:
while [ condio ]; do comando 1; comando 2; ... done;

E par?metro N condio P %unciona e atamente igual ao do 8F. "o *oltarei a a.ortar os par?metros condicionais pois eles @$ %oram e plicados na aula /. +m caso de dI*ida so.re isso, uma r$pida re*iso na aula / ( su%iciente.

Jom, *amos ao e emplo mais simples do ^hile: um contador.


x = 0 while [ "$x" -le 10 ]; do echo "Execuo nmero: x = $((x+1)); done;

$x"?;

>.0.$ - )or E %or ( semelhante ao while usado como um contador. B necess$rio %ornecer uma lista de nomes e ele e ecuta os comandos para cada nome na lista. 1arece meio con%uso, mas ( simples. Ve@a a sinta e:
for <var> in <lista>; do comandos done;

E For associa o primeiro item da lista de nomes W *ari$*el R*arT e e ecuta os comandos. +m seguida, associa no*amente o segundo item da lista W R*arT e e ecuta no*amente os comandos... e assim por diante, at( aca.ar a lista. Ve@a o e emplo:
for x in Compra Venda Aluguel; do echo $x; done; Compra Venda Aluguel

E,erc9cio1 1 Q Kual a *antagem de se colocar um processo em .acUground ] & Q ,omo podemos %iltrar todas ocorr2ncias com a pala*ra error da sa)da do comando dmesg ] 1odemos arma#enas estas in%ormaes em um ar-ui*o ] / Q ,rie um programa para criar um ar-ui*o com todos os endereos ips da rede 1A&.1H=.;.;:&55.&55.&55.; 3 Q ,rie um programa *eri%icar a e ist2ncia de ar-ui*os no diret'rio :.acUup. 0e e istir algum ar-ui*o o programa de*e renomear o ar-ui*o para a e tenso .old.

= - P"COTES #O .I#F/
"este cap)tulo sero mostrados meios de atuali#ar o sistema, instalar no*os pacotes e gerenciar os pacotes -ue @$ esto instalados no sistema.

=.1 - Co(pilando a partir do c+digo )onte1 E primeiro passo para instalar um programa em c'digo %onte distri.u)do no %ormato tar ( e tra)Dlo:
$ tar xjvf sylpheed-2.0.4.tar.bz2

+ste comando criar$ o diret'rio .:s5lpheedD&.;.3:, contendo o c'digo %onte do programa e as %erramentas de con%igurao. A con%igurao pr(Dcompilao ( %eita dentro desse diret'rio, por um script chamado con%igure. +ste script coleta in%ormaes so.re a ar-uitetura do sistema, caminhos de comandos, .i.liotecas compartilhadas, caracter)sticas de %uncionamento do programa, etc. +m geral, o con%igure pode ser in*ocado sem argumentos na %orma:
$ ./configure

As in%ormaes coletadas pelo script con%igure so arma#enadas em um ar-ui*o no mesmo diret'rio chamado maUe%ile. +ste ar-ui*o pode ser editado para alterar as opes de instalao, como a *ari$*el pre%i , -ue desempenha a mesma %uno do argumento DDpre%i do script con%igure, e outras *ari$*eis -ue indicam a locali#ao de .i.liotecas, comandos, caracter)sticas do programa, etc. >erminada a con%igurao, o programa pode ser compilado atra*(s do comando maUe. maUe criar$ as .i.liotecas e ar-ui*os e ecut$*eis con%orme as opes e istentes no maUe%ile. Ap's o t(rmino da compilao, -ue pode le*ar algum tempo dependendo do tamanho e tipo do programa, o programa est$ pronto para ser instalado com o comando maUe install . 0e o diret'rio .ase de instalao no esti*er no diret'rio pessoal do usu$rio, esse comando de*er$ ser e ecutado com permisses de super usu$rio (root!. 6esmo estando o diret'rio .ase de instalao %ora do diret'rio pessoal do usu$rio, ( recomendado e ecutar .:con%igure e maUe como usu$rio comum. =.$ - Aerenciador de pacotes &P4 +sta seo a.orda o 916, -ue ( um poderoso gerenciador de pacotes. Ap's sua concluso, o aluno estar$ apto a instalar, consultar, *eri%icar, atuali#ar e desinstalar pacotes de so%tware. ,onceitos .$sicos E 916 disponi.ili#a uma s(rie de implementaes -ue %acilitam a mani%estao do sistema. A instalao, desinstalao e atuali#ao de um programa -ue este@a no %ormato de um pacote 916 podem ser %eitas atra*(s de um Inico comando sendo -ue o gerenciador cuidar$ de todos os detalhes necess$rios ao processo.

1ara desen*ol*edores, o 916 permite manter %ontes e .in$rios e suas atuali#aes separadamente, empacotandoDos de %orma con%igur$*el para os usu$rios. E gerenciador mant(m uma .ase de dados com os pacotes instalados e seus ar-ui*os, o -ue permite e ecutar pes-uisas comple as e *eri%icaes de maneira $gil e segura. Durante atuali#aes de programas, ele administra, por e emplo, ar-ui*os de con%igurao, mantendo as con%iguraes @$ reali#adas no sistema. +le possui cinco modos .$sicos de operao, e cluindoDse o modo de con%eco de pacotes: instalao, desinstalao, atuali#ao pes-uisa e *eri%icao. =.$.1 3 @antagens da utiliVao do &P4 Atuali$a%o de &oftwares

,om o gerenciador de pacotes ( poss)*el atuali#ar componentes indi*iduais do sistema, sem a necessidade de reinstalao total. Ao se ter uma no*a *erso de um disseminado pacote .aseado em 916, a atuali#ao se d$ de maneira r$pida, inteligente e totalmente automati#ada. Es ar-ui*os de con%igurao so mantidos durante o processo, no se perdendo assim uma personali#ao @$ e%etuada. 'es(uisas

E 916 %a# pes-uisas so.re os pacotes @$ instalados e seus ar-ui*os. B poss)*el @$ pes-uisar a -ue pacote pertence determinado ar-ui*o e -ual a sua origem. Es ar-ui*os 916 esto em %ormato compactado e com um ca.ealho padro contendo in%ormaes Iteis so.re os pacotes. )erifica%o do &istema

,aso algum ar-ui*o importante de algum pacote tenha sido remo*ido, podeDse inicialmente *eri%icar se o pacote apresenta alguma anormalidade. ,aso se@a detectada alguma, ser$ poss)*el reinstalar o pacote, preser*andoDse as con%iguraes e personali#aes e istentes.

*digo fonte

E 916 possi.ilita a distri.uio dos ar-ui*os %onte, id2nticos aos ditri.u)dos pelos autores dos programas e as alteraes separadamente. B poss)*el ter os ar-ui*os %onte e as atuali#aes -ue %oram aplicadas, podendoDse comparar as alteraoes e%etuadas nos programas a cada no*a *erso -ue se@a disponi.ili#ada. =.$.$ 3 Instalando e "tualiVando Es pacotes 916 t2m nomes de ar-ui*os com o seguinte %ormato: %ooD1.;D1.i/=H.rpm Ende: foo: nome do ar-ui*o +,-: *erso

+: release i./0: plata%orma A instalao ( %eita atra*(s de uma Inica linha de comando, como por e emplo: 1rootncallisto 2root34 rpm "iv5 %ooD1.oD1.i/=H.rpm 'reparing,,, 444444444444444444444444444441+--63 +7foo 444444444444444444444444444441+--63 ,omo se pode o.ser*ar, o 916 apresenta o nome do pacote (o -ual no tem necessariamente o mesmo nome do programa! e apresenta uma sucesso de caracteres f atuando como uma .arra de status no processo de instalao. E processo de instalao %oi desen*ol*ido para ser o mais simples poss)*el, por(m e*entualmente alguns erros podem ocorrer, dentre eles: 1acotes @$ instalados: se o pacote @$ ti*er sido instalado anteriormente, ser$ apresentada a seguinte mensagem: 'reparing,,, 444444444444444444444444444441+--63 package %ooD1.;D1.i/=H.rpm 89 est9 instalado

,aso se dese@e ignorar o erro, podeDse usar o par?metro " "force na linha de comando, %a#endo com -ue o 916 ignore o erro. Ar-ui*os com con%litos: se o ar-ui*o cont(m um ar-ui*o @$ instalado por outro pacote, ser$ apresentada a seguinte mensagem: foo 2usr2bin2foo conflicts wit5 file from bar"+,-"+ error7 %ooD1.;D1.i/=H.rpm no pode ser instalado ,aso se dese@eignorar este erro, podeDse usar o par?metro " "replacefiles na linha de comando.

Depend2ncias no resol*idas: os pacotes 916 podem depender da instalao pr(*ia de outros pacotes, o -ue signi%ica -ue eles necessitam da-ueles para poderem ser e ecutados ade-uadamente. ,aso se dese@e instalar um pacote -ue dependa de outro no locali#ado, ser$ apresentada a seguinte mensagem: fal5a nas depend:ncias7 foo necess9rio para bar"+,-"+

1ara corrigir este erro ser$ necess$rio instalar o pacote solicitado. ,aso se dese@e -ue a instalao ocorra de -ual-uer %orma, podeDse utili#ar o par?metro " "nodeps na linha de comando. +ntretanto, pro*a*elmente o pacote no %uncionar$ ou o %ar$ de %orma incorreta. 1ara atuali#ar um pacote utili#e o comando: 1rootncallisto 2root34 rpm ";v5 %ooD&.;D1.i/=H.rpm 'repering,,, 444444444444444444444444444441+--63 +7foo 444444444444444444444444444441+--63 Kual-uer *erso anterior do pacote ser$ desinstalada e ser$ %eita uma no*a instalao guardando as con%iguraes anteriores do programa para um poss)*el uso caso o %ormato dos ar-ui*os de con%igurao no tenha sido alterado.

Fma *e# -ue o 916 e ecuta um processo de atuali#ao inteligente, ( apresentada uma mensagem do tipo: saving2etc2foo,conf as etc2foo,conf,rpmsave, o -ue signi%ica -ue os ar-ui*os de con%igurao e istente esto sal*os, p'rem mudanas no programa podem tornar esse ar-ui*o da con%igurao no mais compat)*el com o pacote (o -ue ( comum!. "este caso as ade-uaes necess$rias de*em ser %eitas pelo usu$rio. ,omo o processo de atuali#ao ( uma com.inao de processos de desinstalao, algumas mensagens de erro podem surgir, como por e emplo, ao se tentar atuali#ar um pacote com uma *erso anterior W *erso corrente, ser$ apresentada a seguinte mensagem: 1rootncallisto 2root34 rpm ";v5 %ooD1.oD1.i/=H.rpm 'reparing,,, 444444444444444444444444444441+--63 o pacote foo"<,o"+ =o (ual mais novo (ue foo"+,o"+> 89 est9 instalado 1ara %orar a atuali#ao, de*eDse usar o par?metro " "oldpackage na linha de comando. =.$.0 3 5esinstalando 1ara desinstalar um pacote utili#e o comando: 1rootncallisto 2root34 rpm "e foo Ende foo ( o nome do pacote e no do ar-ui*o utili#ado na instalao (por e emplo %ooD 1.;D1.i/=H.rpm!. 1ode ser encontrado um erro de depend2ncia durante o processo de desinstalao de um pacote (outro pacote necessita da sua e ist2ncia para poder %uncionar corretamente!. "este caso ser$ apresentada a seguinte mensagem: erro7 a remo%o destes pacotes (uebraria depend:ncias7 foo necess9rio para bar"+,-"+ 1ara ignorar a mensagem de erro e desinstalar o pacote, de*e ser utili#ado o par?metro " "nodeps na linha de comando. =.$.8 3 Consultando e @eri)icando 1ara consultar a .ase de dados de pacotes instalados utili#e o comando: 1rootncallisto 2root34 rpm "( nome?do?pacote ,om a sua utili#ao so apresentados o nome do pacote, *erso e release. +m *e# de especi%icar o nome do pacote, podeDse utili#ar as seguintes opes ap's o par?metro (: a: consulta todos os pacotes instalados. ) ar(uivo: cosulta o pacote do -ual o ar(uivo %a# parte. p ar(uivo?pacote: consulta um ar-ui*o de pacote (no instalado! de nome ar(uivo?pacote.

C$ di*ersas %ormas de especi%icar -uais in%ormaes de*er ser apresentadas pelas consultas. Algumas opes de seleo:

i: apresenta as in%ormaes do pacote, tais como nome, descrio, release, tamanho, data de criao, data de instalao e outras. i: apresenta a lista de ar-ui*os pertencentes ao pacote. s: apresenta o status dos ar-ui*os do pacote. C$ dois status poss)*eis: normal ou missing (no encontrado!. d: apresenta uma lista dos ar-ui*os de documentao (p$ginas de manual, p$gina in%o, 9+AD6+, etc.!. c: apresenta uma lista dos ar-ui*os de con%igurao. +stes ar-ui*os podem ser alterados ap's a instalao para a personali#ao. + emplos: sendmail,cf@inittab@ etc. A *eri%icao de um pacote pro*oca a comparao dos ar-ui*os instalados de um pacote com as in%ormaes locali#adas nas .ases de dados 916. +ntre outras coisas a *eri%icao compara o tamanho, 6D5 sum, permisses, tipo, dono e grupo de cada ar-ui*o. 1ara *eri%icar um pacote utili#e o comando: 1rootncallisto 2root34 rpm ") nome?do?pacote 1odeDse usar as mesmas opes dispon)*eis no processo de pes-uisas. 1or e emplo, para *eri%icar um pacote -ue tenha um ar-ui*o em especial: 1rootncallisto 2root34 rpm ")f 2bin2vi 1ara *eri%icar todos os pacotes instalados: 1rootncallisto 2root34 rpm ")a 1ara *eri%icar um pacote instalado e o ar-ui*o de pacote 916: 1rootncallisto 2root34 rpm ")p %ooD1.;D1.i/=H.rpm A opo de *eri%icao pode ser Itil caso ha@a alguma suspeita de -ue a .ase de dados 916 este@a corrompida. 0e no hou*er nenhuma discrep?ncia no ha*er$ resposta no sistema, caso contr$rio ser$ apresentada na %orma de uma string com = caracteres, com um c signi%icando ar-ui*o de con%igurao e ap's o nome do ar-ui*o. ,ada um dos = caracteres signi%ica um dos atri.utos do ar-ui*o, comparado com a-ueles de%inidos no pacote 916, onde um ponto signi%ica -ue o atri.uto est$ ok, E atri.uto so mostrados na ta.ela. Tabela 1:-1. C+digos de @eri)icao de "r-ui'os C+digo 5 0 4 > Signi)icado 6D5 checUsum >amanho do ar-ui*o 4inU sim.'lico 6odi%icao do ar-ui*o

C+digo D F <

Signi)icado De*ice Fsu$rio <rupo

=.0 3

ibliotecas co(partil?adas

Funes comuns e compartilhadas por di%erentes programas so arma#enadas em .i.liotecas. Durante a compilao de um programa, essas .i.liotecas espec)%icas so ligadas ao programa -ue as usar$. A ligao pode ser est$tica ou din?mica, ou se@a, as %unes da .i.lioteca podero estar em.utidas no programa compilado ou apenas mapeadas para a .i.lioteca e terna. 1rogramas est$ticos no dependem de ar-ui*os e ternos e programas din?micos so menores e poupam recursos da m$-uina. E programa encarregado de carregar a .i.lioteca e ligar ao programa -ue dela depende ( o ld.so. 1ara -ue o ld.so possa locali#ar a .i.lioteca da -ual um programa depende, esta de*er$ estar mapeada em :etc:ld.so.cache. As localidades comuns de .i.liotecas de sistema so :li. e :usr:li.. 1ara acrescentar um diret'rio ao ld.so.cache, o ar-ui*o :etc:ld.so.con% ( usado: + emplo de :etc:ld.so.con%
/usr/local/lib /usr/X11R6/lib /usr/i486-slackware-linux/lib /usr/lib/qt/lib

1ara atuali#ar o :etc:ld.so.cache ap's as alteraes em :etc:ld.so.con%, ( utili#ado o comando ldcon%ig. A e ecuo do ldcon%ig ( %undamental para -ue as alteraes em :etc:ld.so.con% repercutam no %uncionamento do ld.so. Eutra maneira de dei ar uma localidade de .i.lioteca ao alcance do ld.so ( adicionar seu o respecti*o caminho W *ari$*el de am.iente 4DO48J9A9oO1A>C
# export LD_LIBRARY_PATH=/usr/local/lib

+sse m(todo, por(m, garante apenas o acesso tempor$rio do ld.so ao diret'rio em -uesto. "o %uncionar$ %ora do escopo da *ari$*el de am.iente e -uando a *ari$*el dei ar de e istir, mas ( um m(todo Itil para usu$rios sem permisso para atuali#ar o :etc:ld.so.cache ou para e ecuo pontual de programas. E,erc9cio1

1D instale um programa a partir do c'digo %onte. &D ,omo *eri%icar se o pacote sendmail esta instalado ] / Q Veri%i-ue -uais ar-ui*os sero instalados no pacote amandaD&.5.;p&D3.i/=H.rpm 3 Q 8nstale os pacotes : amandaD&.5.;p&D3.i/=H.rpm amandaDclientD&.5.;p&D3.i/=H.rpm amandaDser*erD&.5.;p&D3.i/=H.rpm

> - "AE#5"& T"&EK"S


E cron ( um daemon -ue permite o agendamento da e ecuo de um comando:programa

para um determinado dia:mes:ano:hora. B muito usado em tare%as de ar-ui*amento de logs, checagem da integridade do sistema e e ecuo de programas:comandos em hor$rios determinados. As tare%as so de%inidas no ar-ui*o :etc:cronta. e por ar-ui*os indi*iduais de usu$rios em :*ar:spool:cron:cronta.s:Nusu$rioP (criados atra*(s do programa cronta.!. Adicionalmente a distri.uio De.ian utili#a os ar-ui*os no diret'rio :etc:cron.d como uma e tenso para o :etc:cronta.. 1ara agendar uma no*a tare%a, .asta editar o ar-ui*o :etc:cronta. com -ual-uer editor de te to (como o ae e o *i! e de%inir o mes:dia:hora -ue a tare%a ser$ e ecutada. "o ( necess$rio reiniciar o daemon do cron por-ue ele *eri%ica seus ar-ui*os a cada minuto E ar-ui*o crontab encontraDse no diret'rio :etc. +ste ar-ui*o ( o ar-ui*o de con%igurao do ,ron, -ue ( um daemon (programa especial! -ue e ecuta tare%as na data e hora indicadas pelo :etc:cronta.. Ve@a um e emplo:
$ cat /etc/crontab SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin #m h dom mon dow user command 0 0 25 12 * root /home/asouza/natal 0 0,6,12,18 * * * root /etc/cron.daily/atualiza_usuarios 25 6 * * * root run-parts --report /etc/cron.daily 47 6 * * 7 root run-parts --report /etc/cron.weekly 52 6 1 * * root run-parts --report /etc/cron.monthly #Removed invocation of anacron, as this is now handled by a #/etc/cron.d file

1eguemos por e emplo a linha:


0 0 25 12 * root /home/aldeman/nscontrol

E primeiro nImero (;! indica o (inuto da hora a ser e ecutada a tare%a. E segundo nImero (;! indica a ?ora a ser e ecutada a tare%a. E terceiro nImero (&5! indica o dia do (s a ser e ecutada a tare%a. E -uarto nImero (1&! indica o (s a ser e ecutada a tare%a. A -uinta opo (e! indica o dia da se(ana a ser e ecutada a tare%a (e signi%ica -ual-uer!. A se ta opo (root! indica o usuIrio -ue ir$ e ecutar a tare%a. 1or %im, a s(tima opo (:home:aldeman:nscontrol! ( a tare)a (programa ou script! a ser e ecutada. "este e emplo, esta linha e ecutar$ o ar-ui*o 6?o(e6alde(an6nscontrol como root no dia $5 de de#em.ro ( 1$ ! do ano corrente (natal!, e atamente W (eia-noite . 0e o.ser*armos a linha:
; ;,H,1&,1= e e e root :etc:cron.dail5:atuali#aOusuarios

Veremos -ue temos 3 nImeros separados por *)rgulas na segunda opo. 8sto -uer di#er

-ue esta linha est$ programada para e ecutar a tare%a Ws ;, H, 1& e 1= horas. A data est$ toda com e, o -ue -uer di#er -ue a tare%a ser$ e ecutada todos os dias no hor$rio de%inido. 1odemos colocar mais de uma opo (separadas por *)rgula! em -ual-uer ponto em -ue aparecem nImeros. Atra*(s dos ar-ui*os cron.allo2 e cron.den5, o administrador de sistemas pode determinar -uais usu$rios podem ou no usar os ser*ios do ,ron. E usu$rios -ue esti*erem inclu)dos no ar-ui*o cron.allo2 tero permisso para usar o ,ron, en-uanto -ue os usu$rios com o nome em cron.den5 no tero acesso ao ,ron. 0e o ar-ui*o cron.allo2 no e istir, todos os usu$rios tero permisso de usar o ,ron, e ceto os -ue esti*erem listados em cron.den5. 0e nenhum dos dois e istir, todos os usu$rios podero usar o ,ron. A locali#ao desses dois ar-ui*os pode *ariar em %uno de cada distri.uio, mas geralmente %icam em :etc:cron.d. As tare%as agendadas pelos usu$rios so con%iguradas em ar-ui*os cronta. -ue %icam locali#ados em :*ar:spool:cron:. ,ada usu$rio ter$ um ar-ui*o indi*idual com o seu pr'prio nome. Assim, o usu$rio %ulano ter$ o ar-ui*o :*ar:spool:cron:%ulano com as suas con%iguraes.

E,erc9cios
1. Kual o comando utili#ado para agendar uma tare%a periodicamente] a! at .! cron c! cronta. De d! cornta. &. Agende a e ecuo do comando update.d para todo dia as ;&:;;

1: - "CDFP

O -ue W ackup1 JacUup ( um termo ingl2s usado para c'pia de segurana. >odo sistema, en*ol*endo dados ou no, -ue no pode parar por muito ou nenhum tempo necessita de algum tipo de .acUup. 0e@a .aseado em hardware ou so%tware, se hou*er algum pro.lema o sistema de*e *oltar a %uncionar sem maiores perdas e para isso ( necess$rio -ue ha@a pelo menos um .acUup deste sistema. + emplo: Fm gerador de energia el(trica mo*ido a com.ust)*el %'ssil ( um .acUup, nos casos onde h$ %alta de energia e o mesmo entra em ao rapidamente. "ote -ue a -ueda de energia acontece, e por alguns segundos podemos %icar presos no ele*ador, mas o .acUup no nos dei a na mo por muito tempo. + iste um tipo de .acUup mais e%iciente -ue no entraremos em detalhes, mas -ue de*e ser citado: redund?ncia. "esse caso h$ um sistema tra.alhando paralelamente de %orma -ue ao ha*er %alha em um sistema o outro continuar$ %uncionando normalmente e assumir$ o controle da situo sem paradas, claro -ue para o sistema continuar %uncionando corretamente ( necess$rio um .om plane@amento para -ue no ha@a so.recarga. "o nosso caso, .acUup nada mais ( do -ue uma c'pia de dados eletrXnicos com o o.@eti*o de recuper$Dlos no caso de perda, corrupo ou -ual-uer outro tipo de comprometimento. EstratWgias de ackup1

Antes de comear a %a#er o .acUup dos dados ( necess$rio de%inir os dados -ue de*ero ser L.acUupeadosM, sua import?ncia, tipo de .acUup, periodicidade, m)dia a ser gra*ada, etc. >udo isso %a# parte da ela.orao de uma .oa estrat(gia de .acUup, -ue iremos elucidar. I(portXncia6prioridade dos dados Dentro dos sistemas en*ol*idos sempre ha*ero dados -ue so importantes e dados -ue no necessitam de c'pias de segurana. 0endo assim de*emos primeiro determinar -uais dados de*ero ser copiados o.edecendo uma lista de prioridades %eita com .astante cuidado. Ar-ui*os de programas -ue podem ser instalados:copiados %acilmente de outras m)dias podem no ser incluidos. 9esumidamente de*emos %a#er .acUup dos ar-ui*os manipul$*eis:alter$*eis por usu$rios ou sistemas e -ue no podemos correr risco de perda. Ar-ui*os de con%igurao do sistema operacional so ar-ui*os -ue precisam ser incluidos na lista de ar-ui*os a serem copiados, pois, caso ha@a algum tipo de pro.lema com um determinado ser*io ou ser*idor, o ser*io ou ser*idor pode ser reinstalado e recon%igurado com relati*a %acilidade. Tipos de ackup

FalaDse muito em .acUups incrementais e di%erenciais (e outros como L%iles5stem snapshotM!, mas antes de entendermos as di%erenas destes entendamos primeiro um tipo .$sico -ue ( o .acUup completo. B muito importante -ue entendamos .em as .ases do .acUup para -ue as outras alternati*as se@am tam.(m de %$cil %i ao.

Co(pleto !Kull% Fm .acUup completo sal*ar$ todos os diret'rios e ar-ui*os considerados pertinentes. 8sso soa .em aos ou*idos, pois assim podemos guardar todos os nossos dados e no precisamos %icar nos preocupando com detalhes. 6as nossos pro.lemas comeam a aparecer -uando o *olume de dados comea a aumentar signi%icati*amente, e cada *e# -ue se inicia o .acUup podemos iniciar outras ati*idades como ler uma de#ena de re*istas e tomar muitas )caras de ca%( en-uanto %icamos alertas para a trocas de m)dia de gra*ao. 9esumindo... um .acUup completo s' ( indicado para .acUups semanais e mensais, pois no toma nosso tempo nem o tempo, muitas *e#es, precioso de processamento da m$-uina. Incre(ental +sse tipo le*a em considerao as mudanas -ue hou*eram nos ar-ui*os ap's o Iltimo .acUup completo. ,om isso o tempo de gra*ao se redu# a uma %rao do tempo gasto no .acUup completo. Alguns sistemas de ar-ui*os possuem meios de indicar se um ar-ui*o %oi modi%icado, acessado, mo*ido, copiado, etc. ,om .ase nesse tipo de in%ormao ( poss)*el %a#er um .acUup apenas dos ar-ui*os modi%icados num determinado pra#o (+ . pltimas &3 hs!. 0endo assim podemos %a#er um .acUup semanal e a cada dia um .acUup dos ar-ui*os -ue %oram modi%icados nas Iltimas &3hs, por e emplo. "o caso de .acUups incrementais apenas os ar-ui*os alterados no Iltimo per)odo sero copiados, economi#aDse tempo e m)dia nessa estrat(gia, mas a restaurao se torna mais complicada pois para se restaurar os dados caso ha@a necessidade ser$ necess$rio recuperar o Iltimo .acUup completo e todos os incrementais at( o dia:momento do pro.lema. 5i)erencial + iste muita con%uso em relao W .acUups incrementais e di%erenciais. A grande di%erena ( -ue o .acUup di%erencial sempre copiar$ todos os ar-ui*o -ue %oram alterados desde o Iltimo .acUup completo. B claro -ue ao se apro imar do pr' imo .acUup completo o tempo para este tipo de .acUup ser$ incrementado, mas a restaurao se torna muito mais simples pois para a restaurao .astar$ ter em mos duas m)dias: a Iltima completa e a Iltima di%erencial. Ap's o dimensionamento e implantao de um sistema in%ormati#ado, se %a# necess$ria a criao de um procedimento de .acUup e restaurao de in%ormaes geradas em caso de cat$stro%es. +ste procedimento de*er$ ser claro, determinando respons$*eis e de*er$ ser seguido a risca. + istem *$rios programas -ue o sistema operacional %ornece para o .acUup dos dados. E programa usado com mais %re-Y2ncia para esta %inalidade ( o programa tar. E programa tar pode e%etuar c'pias de sistemas de ar-ui*os, ar-ui*os indi*iduais e diret'rios. 1:.1 3 gVip B praticamente o compactador padro do <"F:4inu , possui uma 'tima ta a de compactao e *elocidade. A e tenso dos ar-ui*os compactados pelo g#ip ( a .g#, na

*erso para DE0, ^indows "> ( usada a e tenso .#. g#ip Nop7esP Nar-ui'osP Dd, Descompacta um ar-ui*o. D% Fora a compactao, compactando at( mesmo linUs. Dl 4ista o conteIdo de um ar-ui*o compactado pelo g#ip. Dr ,ompacta diret'rios e su.Ddiret'rios. 1:.$ 3 Vip Ftilit$rio de compactao compat)*el com pU#ip (do DE0! e tra.alha com ar-ui*os de e tenso .#ip. 1ossui uma 'tima ta a de compactao e *elocidade no processamento dos ar-ui*os compactados (comparandoDse ao g#ip!. #ip Nop7esP Nar-ui'o-destinoP Nar-ui'os-orige(P Dr ,ompacta ar-ui*os e su.Ddiret'rios. Du Atuali#a:adiciona ar-ui*os ao ar-ui*o .#ip 1:.0 3 unVip Descompacta ar-ui*os .#ip criados com o programa #ip. +ste programa tam.(m ( compat)*el com ar-ui*os compactados pelo pU#ip do DE0. un#ip Nop7esP Nar-ui'o.VipP Nar-ui'os-e,trairP N-d diret+rioP 1:.8 3 bVip$ B um no*o compactador -ue *em sendo cada *e# mais usado por-ue consegue atingir a melhor compactao em ar-ui*os te to se comparado aos @$ e istentes (em conse-Y2ncia sua *elocidade de compactao tam.(m ( menor\ -uase duas *e#es mais lento -ue o g#ip!. 0uas opes so praticamente as mesmas usadas no g#ip e *oc2 tam.(m pode usaDlo da mesma %orma. A e tenso dos ar-ui*os compactados pelo .#ip& ( a ..#& .#ip& NopesP Nar-ui*osP Dd, Descompacta um ar-ui*o. D% Fora a compactao, compactando at( mesmo linUs. Dl 4ista o conteIdo de um ar-ui*o compactado pelo g#ip.

Dr ,ompacta diret'rios e su.Ddiret'rios.

1:.5 3 du(p E comando dump ( utili#ado para reali#ar .acUup em sistemas de ar-ui*os e t& ou e t/ dump NopesP Ndispositi*oP Nar-ui*osP + : dump D;u D% :de*:st; :home 1:.; 3 restore E comando restore ( utili#ado para e trair dados de .acUup reali#ados com o dump. dump NopesP Ndispositi*oP Nar-ui*osP + : restore Dr% :de*:st; 1:.< 3 dd E comando dd ( utili#ado para criar c'pias analisando .it a .it os par?metros apontados. "a teoria ele %unciona igual o _cp_, ou se@a, *oc2 aponta uma entrada e uma sa)da, por(m no comando dd *oc2 estar$ indicando um %lu o de entrada e um %lu o de sa)da para ser %eita a c'pia .it a .it do -ue se %oi especi%icado. + : dd i%Zte to1.t t o%Zte to&.t t 1:.= 3 tar tar NDc%prtu* P NdispositivoP Nar(uivo ,,,P 1ar?metros: ar(uivo: um ou mais ar-ui*os a agrupar. Kuando tar esti*er sendo utili#ado para desagrupar ar-ui*os, este par?metro ( opcional\ dispositivo: especi%ica onde ser$ arma#enado o con@unto de ar-ui*os agrupados. +m geral, dispositivo ( um dispositi*o de %ita magn(tica, mas podem agrupar os ar-ui*os em um Inico ar-ui*o especi%icandoDo em dispositivo, e utili#ando a opo D%\ Dc: cria um no*o ar-ui*o ,tar e adiciona a ele os ar-ui*os especi%icados\ D%: indica -ue o destino ( um ar-ui*o em disco, e no uma unidade de %ita magn(tica\ Dp: preser*a permisses originais dos ar-ui*os durante o desagrupamento\ Dr: adiciona os ar-ui*os especi%icados no %inal do ar-ui*o ,tar, sem criar um no*o\ Dt: lista o conteIdo do ar-ui*o ,tar\ Du: adiciona os ar-ui*os especi%icados ao ar-ui*o ,tar, somente se estes ainda no e istirem no ar-ui*o ,tar, ou se ti*eram sido modi%icados desde -uando %oram agrupados por um comando tar\

D*: mostra o nome de cada ar-ui*o processado\ D : retira os ar-ui*os agrupados no ar-ui*o ,tar. D#: ,ompacta ou Descompacta + 1: mostra o conteIdo contido na %ita de .acUup tar "tvf 2dev2sd- , f .acUup do diretorio :home tar "cvf 2dev2st- 25ome Assim como o .acUup, a restaurao dos ar-ui*os ( reali#ado com o comando >A9. Es e emplos a.ai o mostram algumas %ormas de restaurao + : 9estaura o .acUup .acUup1.tar cd 2tmp tar Axvf 2mnt2cdrom2backup,tar 1:.> 3 So)t2are "(anda Amanda al(m de um nome dado normalmente a pessoas do se o %eminino (, tam.(m, uma a.re*iao para LAd*anced 6ar5land Automatic "etworU DisU Archi*erM. Amanda ( um sistema de .acUup de dom)nio pI.lico desen*ol*ido na Fni*ersidade de 6ar5land, -ue possi.ilita ao administrador de uma rede con%igurar um ser*idor de .acUups -ue rece.er$ dados de *$rias m$-uinas (hosts! podendo arma#en$Dlas um uma Inica unidade de arma#enamento de grande capacidade. Amanda %oi desen*ol*ido com o aparecimento de unidades de gra*ao em %itas de alta capacidade como DA> 3mm e + a J5te =mm. ,om isso no %aria nenhum sentido criar .acUups indi*iduali#ados por estao de tra.alho. Amanda tem como .ase o suporte a unidades de gra*ao em %itas, mas isso no -uer di#er -ue no se possa %a#er os .acUups usando discos r)gidos (atra*(s de plugins do pr'prio Amanda! ou uma unidade 'tica como ,D9^ ou mesmo DVDD9^ (+ istem opes como a ,D9^Dtaper -ue possi.ilitam essa otimi#ao!. 1ara possi.ilitar o .acUup de multiplas estaes e ser*idores o Amanda se utili#a de um recurso chamado LColding DisUM, -ue nada mais ( -ue uma $rea tempor$ria em disco r)gido para a.sor*er os dados das estaes e em seguida passaDlos para a m)dia de gra*ao.

1:.>.1 Con)igurao Antes de partir para a con%igurao do so%tware *oc2 de*er$ decidir -ual m$-uina ser$ o ser*idor Amanda. 1ara tomar essa deciso *oc2 de*e le*ar em conta -ue o Amanda pode consumir .astante processamento, especialmente se ele %or con%igurado para comprimir dados. Al(m disso, o Amanda consumir$ .astante recursos de rede e +:0 de disco. E Amanda no utili#a uma grande -uantidade de mem'ria 9A6, mas necessita acesso direD to a uma unidade de %ita (ou outra m)dia e-ui*alente! com espao su%iciente para o bac" kup.

D+scolha um nome -ue represente essa con%igurao. Fsaremos LmasterM para o nosso. D,rie um diret'rio para essa con%igurao: :etc:amanda:master D,opie o ar-ui*o DA.ra o ar-ui*o :etc:amanda:master:amanda.con%. Voc2 perce.er$ -ue e istem muitas opes, mas para iniciarmos poucas realmente e igiro mudana. ParX(etro org mailto dumpuser dumpc5cle runsperc5cl e tapec5cle runtapes 5escrio o *alor desta opo ser$ o assunto dos eDmails a e*iados pelo Amanda. usu$rio a rece.er as mensagens (4ogs! com relat'rios mesmo usu$rio usado em DDwithDuser nImero de dias entre os .acUups completos. (se ; ser$ %ull todo dia! e ecues em cada ciclo. numero de %itas em cada ciclo. numero de %ita por e ecuo. Dispositi*o de %ita no re.o.in$*el a ser usado. "a realidade o -ue se de%ine a-ui ( o Dri*er de sa)da a ser utili#ado pelo Amanda. +m >estes podemos utili#ar por e emplo o dri*er de saida L%ileM de %orma a simular o uso de unidades de %ita em Disco 9)gido. Fsaremos esse dri*er em nosso estudo. 0inta e: tapede* Ldri*er::de*:dispositi*oM tipo da m)dia o ar-ui*o tra# alguns tipos, mas a criao de no*os tipos ( per%eitamente poss)*el dentro do pr'prio ar-ui*o. 4argura de .anda a ser usada nos .acUups + presso regular -ue de%ine os r'tulos das %itas, por e emplo LjJacUupDiarioN;DAPN;D;PehM

tapede*

tapet5pe netusage la.elstr

1:.>.$ 3 a(nda.con)
!"< =siste+a= # >!+e ?3e a'a"e e #! s3b@e t ?3a#d! +a#da ! e+ail # de "es3+! das !'e"aABes 8"e'!"t9 +ailt! =3s3C"i!= # ;a"a ?3e+ i"C ! e+ail de De'!"t d3+'3se" ="!!t= d3+' y le # E 3s3C"i! ?3e '!de 3tili:a" ! siste+a # # # # # # # # # # # # Fi l!s !+'let!s d! a+a#da, "e<"a: 0 % /3ll ba k3' 5 % i# "e+e#tal d!s a"?3iv! alte"ad!s #! Glti+! dia E val!" E se+'"e fa"C ! ba k3' !+'let!, s3bi#d! esse val!", ! a+a#da fa"C '"i+ei"! 3+ ba k3' f3ll, de'!is i# "e+e#tais, #! e4e+'l!, se"H! 1 f3ll e t"Is i# "e+e#tais d!s Glti+!s a"?3iv!s alte"ad!s #!s '"J4i+!s dias. 0'Js a te" ei"a i# "e+e#tal, ! '"J4i+! se"C f3ll #!va+e#te, <e"a#d! i l!s. >G+e"! de ta'es '!" i l! 3tili:ad!, #! ba k3' i l! de a+d3+'

ta'e y le 1 ta'es "3#ta'es 1

# #G+e"! de fitas 3sad!s de#t"! de 3+

ta'edev =/dev/st0=

# Devi e da /ita

ha#<e"file =/et /a+a#da/lista/ ha#<e"= labelst" =2020K0-,LK0-,L= # # # # # # # label ?3e se"C 3sad! #a fita

0 !'AH! M!ldi#< disk, N 3sada 'a"a 3+a J'ia te+'!"C"ia d! ba k3' a#te de se" 'assad! 'a"a a fita, 3sa+!s '"i# i'al+e#te ?3a#d! a J'ia N de+!"ada #a fita, e #H! fi a+!s 3sa#d! ba#da. B!+ 3tili:a", '!is ?3al?3e" e""! #a fita, fi a"C 3+ ba k3' #! dis !, ?3e '!de"C se" 'assad! '!ste"i!"+e#te 'a"a a fita. fita !+ ! 3s! d! a+fl3sh.

h!ldi#<disk hd1 O !++e#t =7e3 hl!d disk= di"e t!"y =/d3+'s/a+a#da= # P3al di"etJ"i! i"C fi a" 3se 2,0 7b # 1a+a#h! e+ 7B/GB Q l!<di" =/va"/l!</a+a#da/= ta'elist =/et /a+a#da/lista= # Di"etJ"i! de l!<s d! a+a#da # 2ista d!s ta'es 3sad!s

# ta'ety'es # Defi#e ! ti'! d! ta'e ?3e se"C 3sad!, se3 ta+a#h! e vel! idade. ta'ety'e P*F-60 # F!#fi<3"aABes da $#idade de fita

defi#e ta'ety'e P*F-60 O !++e#t =0" hive Ri'e"= le#<th 56 +bytes # # # file+a"k 100 kbytes # s'eed 366 kbytes # Q

S#i ! val!" a se" alte"ad! !""es'!#de#d! a a'a idade da da fita. val!" ideal vel! idade

# d3+'ty'es % ist! N 3sad! 'a"a defi#iABes de '"i!"idades, # ti'! de !+'a taAH!, ?3e se"C 3sad! #! a"?3iv! disklist # # # !++e#t - F!+e#tC"i! # !+'"ess - Defi#e ! ti'! de !+'"essH! 8 !+'a taAH!9 3sada : # =#!#e= - #e#h3+a !+'"essH! # = lie#t best= - (e"C feita a !+'"essH! #a +C?3i#a lie#te, # 3sa#d! 3+ al<!"Tti+! de alta !+'"essH!, '!"N+ # de+!"ad!. # = lie#t fast= - 3sa#d! 3+a !+'"essH! +e#!" - +ais "C'id! # =se"ve" best= - $sa#d! !+'"essH! #! se"vid!", #a h!"a de # 'assa" 'a"a a fita. # =se"ve" fast= - $sa#d! !+'"essH! +e#!" # De !+e#dad!: K !+'"ess lie#t fastL # e4 l3de - es'e ifi a !s di"etJ"i!s ?3e se"H! e4 l3Td!s #a h!"a d! # ba k3'. # Es val!"es sH!: # list =file#a+e= - a"?3iv! !+ a lista d!s di"etJ"i!s e4 l3Td!s # se#d! 3+ '!" li#ha. # h!ldi#<disk - Defe"e-se se este d3+'tye 3tilii:a"C h!ldi#<disk # !'AH! N h!ldi#<disk yes # '"i!"ity - '"i!"idade de e4e 3AH!, !s 'a"U+et"!s sH! =l!5=, =+edi3+= # !3 =hi<h=. 7as ist! sJ N "eal+e#te 3sad! ?3a#d! ! a+a#da # e# !#t"a '"!ble+as !+ ! ta'e 8fita9 # '"!<"a+ - es'e ifi a ?3al '"!<"a+a de ba k3' se"C 3sad!: E( val!"es # sH!=D$7;= e =G>$10D=. Defa3lt: K'"!<"a+ =D$7;=L.

# # # # # #

st"ate<y - seta a est"atN<ia de ba k3'. =sta#da"d= =#!f3ll= - se+'"e se"C level 1 d3+'s eve"y ti+e. 'a"a siste+a de a"?3iv!s 'e?3e#!s. Defa3lt: Kst"ate<y sta#da"dL

*st! N b!+

defi#e d3+'ty'e <l!bal O !++e#t =Gl!bal defi#iti!#s= # F"ia-se a defi#i C! <l!bal, ?3e '!de+ se" 3sadas 'a"a i+'le+e#ta" # !3t"as est"atN<ias de ba k3'. Q # a se<3i", sH! vC"i!s ti'!s de defi#iABes de d3+'ty'e defi#e d3+'ty'e "!!t-ta" O <l!bal - 3sa" as !#fi<3"aABes de #!+e <l!bal '"!<"a+ =G>$10D= !++e#t =ba k3' 3sa#d! ta"= !+'"ess #!#e i#de4 e4 l3de list =et /a+a#da/Vdi"W !#fX/e4 l3de.<ta"= '"i!"ity l!5 Q defi#e d3+'ty'e !+'-"!!t O <l!bal !++e#t =ba k3' !+ !+'a taAH! d3+' = !+'"ess lie#t fast '"i!"ity l!5 Q # # # # # *#te"fa es de "ede )stas sH! defi#iABes ?3e se"H! 3sadas 'el! a"?3iv! disklist, e ! '"i# i'al N a defi#iAH! da ba#da de t"a#s+issH! d!s dad!s.

defi#e i#te"fa e l! al O !++e#t =a l! al disk= 3se 1000 kb's Q defi#e i#te"fa e le0 O !++e#t =10 7b's ethe"#et= 3se -00 kb's Q

1:.>.0 3 "r-ui'o disklist


# E f!"+at! d! a"?3iv! N: # # #!+eWdaW+C?3i#a 'a"tiAH! # #! a"?3iv! a+a#da. !#f # Ba k3' 7C?3i#a lala lala hdb5 !+'-"!!t # )4e+'l! de ba k3' de 3+a +C?3i#a ?3e te#ha 3+ siste+a +s-d!s

d3+'ty'e #!+e defi#id! #! d3+'tye

# +!#tad! e+ /+sd!s # @!es' /+sd!s "!!t-ta"

1:.>.8 3 Con)igurando cliente "(anda D Ca.ilite o ser*io amanda no inetd D ,rie o usu$rio amanda e crie o ar-ui*o .amandahosts no home dele:
K"!!tYl! alh!stL# + edit .a+a#dah!sts +a?3i#a.d!+i#i! 3s3a"i! ZWWWWWWWWWWWWWW/ZWWWWWWW/ [ [ [ [-------X [ [ [--------------------X

>!+e d! 3s3C"i! a+a#da d! se"vid!", !#de estC a fita #!+e d! se"vid!" a+a#da !#de estC a fita

1:.>.5 3 Testando os ser'ios >este sua con%igurao com o comando a(c?eck, no ser*idor onde est$ a %ita:
# a+ hek V#!+eWd!Wdi"etJ"i!WdeW !#fi<3"aAH!X

Aps a execuo de backups o amanda envia um mail confirmando e relatando o backup. Aps isto crie as fitas com o comando:
a+label V#!+eWdaWfitaX

"o es-uea -ue o nome tem -ue corresponder com o especi%icado no ar-ui*o amanda.D con% na opo la.elstr 0empre -ue hou*er algum erro de e ecuo do a(du(p, ( necess$rio rodar o ar-ui*o amclean, caso contr$rio o amdump no ser$ e ecutado no*amente 1:.>.; 3 &estaurando o backup
a+"est!"e Vdis'!sitiv!WdeWfitaX V#!+eWd!Wdi"etJ"i!WdeW !#fi<3"aAH!X

1:.>.< 3 "gendando no crontab Para agendar o amanda, colo ue o uma lin!a no crontab do servidor de backup: Por exemplo, para fa"er um backup di#rio as $%:&& !s, e ' recomend#vel rodar um amc!eck antes, para garantir ue est# tudo bem, por isso seu ar uivo crontab deve ser algo parecido:
0 20 & & & a+a#da a+ he k V#!+eWdaW !#fi<3"aAH!X

0 23 & & & a+a#da a+d3+' V#!+eWdaW !#fi<3"aAH!X

E,erc9cios
1. Kual o comando -ue permite empacotar *$rios ar-ui*os em um Inico ar-ui*o] a! tar .! g#ip c! .#ip& d! compress e! n.d.a. &. Kual o %ormato .$sico do comando tar para lista r o conteIdo de um ar-ui*o _.tar_] a! h tar % ar-.tar .! h tar t% ar-.tar c! h tar c% ar-.tar d! h tar l% ar-.tar e! n.d.a /. "o seu diret'rio home, crie um diret'rio chamado temp e copie todos os ar-ui*os do diret'rio : etc para dentro dele. V$ at( este diret'rio e crie um ar-ui*o _.tar_ com todo o seu conteIdo. 3. 4iste o conteIdo do ar-ui*o _.tar_ criado no e erc)cio . 5. Fse o #ip para compactar e empacotar todo o conteIdo do diret'rio criado no e erc)cio 3. Veri%i-ue o ar-ui*o criado.

11 - "54I#ST&"C"O 5E CO#T"S 5E FSF"&IOS


E 4inu ( um sistema operacional multiusu$rio, portanto ( necess$rio -ue todos os usu$rios se@am cadastrados e tenham permisses de acesso di%erenciadas. B poss)*el

tam.(m cadastr$Dlos em grupos para %acilitar o gerenciamento. "este cap)tulo sero a.ordados @ustamente estes aspectos do 4inu e os comandos necess$rios para administrao do sistema. 11.1 3 adduser Adiciona um usu$rio ou grupo no sistema. 1or padro, -uando um no*o usu$rio ( adicionado, ( criado um grupo com o mesmo nome do usu$rio. 0er$ criado um diret'rio home com o nome do usu$rio (a no ser -ue o no*o usu$rio criado se@a um usu$rio do sistema! e este rece.er$ uma identi%icao. A identi%icao do usu$rio (F8D! escolhida ser$ a primeira dispon)*el no sistema especi%icada de acordo com a %ai a de F8D0 de usu$rios permitidas no ar-ui*o de con%igurao :etc:adduser.con%. +ste ( o ar-ui*o -ue cont(m os padres para a criao de no*os usu$rios no sistema. adduser Nop7esP NusuIrio6grupoP Ende: usuIrio6grupo "ome do no*o usu$rio -ue ser$ adicionado ao sistema. op7es Dg <rupo a -ual o usu$rio ira participar. Duid NnumP ,ria um no*o usu$rio com a identi%icao NnumP ao in*(s de procurar o pr' imo F8D dispon)*el. Dgid NnumP Fa# com -ue o usu$rio se@a parte do grupo NgidP ao in*(s de pertencer a um no*o gruD po -ue ser$ criado com seu nome. 8sto ( Itil caso dese@e permitir -ue grupos de usu$D rios possam ter acesso a ar-ui*os comuns. ,aso esti*er criando um no*o grupo com adduser, a identi%icao do no*o grupo ser$ NnumP. Dd NdirP Fsa o diret'rio NdirP para a criao do diret'rio home do usu$rio ao in*(s de usar o esD peci%icado no ar-ui*o de con%igurao :etc:adduser.con%. Es dados do usu$rio so colocados no ar-ui*o :etc:passwd ap's sua criao e os dados do grupo so colocados no ar-ui*o :etc:group. 11.$ 3 addgroup Adiciona um no*o grupo de usu$rios no sistema. As opes usadas so as mesmas do adduser. addgroup Ousu$rio:grupoP OopesP

11.0 3 pass2d 6uda a senha do usu$rio ou grupo. Fm usu$rio somente pode alterar a senha de sua conta, mas o superusu$rio (root! pode alterar a senha de -ual-uer conta de usu$rio, inclusi*e a data de *alidade da conta, etc. Es donos de grupos tam.(m podem alterar a senha do grupo com este comando. Es dados da conta do usu$rio como nome, endereo, tele%one, tam.(m podem ser alterados com este comando. passwd NusuIrio6grupoP Nop7esP Ende: usuIrio "ome do usu$rio:grupo -ue ter$ sua senha alterada. op7es Dg 0e especi%icada, a senha do grupo ser$ alterada. 0omente o root ou o administrador do grupo pode alterar sua senha. A opo Dr pode ser usada com esta para remo*er a senha do grupo. A opo D9 pode ser usada para restringir o acesso do grupo para ouD tros usu$rios. D NdiasP +speci%ica o nImero m$ imo de dias -ue a senha poder$ ser usada. Ap's terminar o pra#o, a senha de*er$ ser modi%icada. Di Desati*a a conta caso o usu$rio no tenha alterado sua senha ap's o tempo especi%iD cado por D . Dn NdiasP +speci%ica o nImero m)nimo de dias para a senha ser alterada. E usu$rio no poder$ mudar sua senha at( -ue NdiasP se@am atingidos desde a Iltima alterao de senha. Dw NnumP "Imero de dias antecedentes -ue o usu$rio rece.er$ o alerta para mudar sua senha. E alerta ocorre NnumP dias antes do limite da opo D , a*isando ao usu$rios -uantos dias restam para a troca de sua senha. Dl NnomeP Jlo-ueia a conta do usu$rio NnomeP. De*e ser usada pelo root. E .lo-ueio da conta ( %eito acrescentando um caracter a senha para -ue no con%ira com a senha original. Du NnomeP Des.lo-ueia a conta de um usu$rio .lo-ueada com a opo Dl. D0 NnomeP

6ostra o status da conta do usu$rio NnomeP. A primeira parte ( o nome do usu$rio seD guido de 4(conta .lo-ueada!, "1(sem senha!, ou 1 (com senha!, a terceira parte ( a data da Iltima modi%icao da senha, a -uarte parte ( a per)odo m)nimo, m$ imo, alerD ta e o per)odo de inati*idade para a senha. 1rocure sempre com.inar letras maiIsculas, minIsicas, e nImeros ao escolher suas senhas. "o ( recomendado escolher pala*ras normais como sua senha pois podem ser *ulner$*eis a ata-ues de dicion$rios cracUer. 11.8 3 userdel Apaga um usu$rio do sistema. Kuando ( usado, este comando apaga todos os dados da conta especi%icado dos ar-ui*os de contas do sistema. userdel N-rP NusuIrioP Ende: Dr Apaga tam.(m o diret'rio CE6+ do usu$rio. 11.5 3 user(od +dita os atri.utos da conta incluindo algumas %unes relacionadas e pirao da senha. 1ara os a@ustes %inos, use o comando passwd. E usermod tam.em usado para especi%icar os mem.ros principais e secund$rios do grupo. usermod Nop7esP NusuIrio6grupoP 11.; 3 groupadd Adiciona grupos, mas no atri.ui usu$rios para estes grupos. Es programas useradd e usermod de*em ento ser usados para atri.uir usu$rios a um determinado grupo. groupadd NgrupoP

11.< 3 groupdel Apaga grupos. groupadd NgrupoP

11.= 3 group(od 6odi%ica os nomes ou <8Ds do grupo, mas no altera os mem.ros do grupo. Es programas useradd e usermod de*em ser usados para atri.uir usu$rios a um determinado grupo.

groupmod Nop7esP NgrupoP

Dg Valor num(rico do id do grupo

11.> 3 gpass2d Altera os mem.ros do grupo e determina senhas para permitir -ue usu$rios no mem.ros do grupo, -ue conheam o grupo, a @untemDse a ele. >am.(m usado para especi%icar os administradores do grupo. gpasswd Nop7esP NgrupoP DA De%ine o administrador do grupo Da Adiciona um usu$rio no grupo Dd remo*e um usu$rio do grupo. 11.1: 3 "r-ui'o 6etc6pass2d q o ar-ui*o no 4inu onde so arma#enadas as in%ormaes so.re as contas de usu$rios criadas no sistema, como diret'rio home, interpretador de comandos.
root:x:0:0::/root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: adm:x:3:4:adm:/var/log: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/: news:x:9:13:news:/usr/lib/news: uucp:x:10:14:uucp:/var/spool/uucppublic: operator:x:11:0:operator:/root:/bin/bash games:x:12:100:games:/usr/games: ftp:x:14:50::/home/ftp: smmsp:x:25:25:smmsp:/var/spool/clientmqueue: mysql:x:27:27:MySQL:/var/lib/mysql:/bin/bash rpc:x:32:32:RPC portmap user:/:/bin/false sshd:x:33:33:sshd:/: gdm:x:42:42:GDM:/var/state/gdm:/bin/bash pop:x:90:90:POP:/: nobody:x:99:99:nobody:/: guest:x:1000:100::/home/guest:/bin/bash postfix:x:1001:100:,,,:/home/postfix:/bin/bash

11.11 3 "r-ui'o 6etc6s?ado2 B onde se locali#a as senhas codi%icadas de cada usu$rios do sistema 4inu
root:$1$SKv/7xGk$k3pPBmVFrAsm1RsxthwIQ0:13350:0::::: bin:*:9797:0::::: daemon:*:9797:0::::: adm:*:9797:0::::: lp:*:9797:0::::: sync:*:9797:0::::: shutdown:*:9797:0::::: halt:*:9797:0::::: mail:*:9797:0::::: news:*:9797:0::::: uucp:*:9797:0::::: operator:*:9797:0::::: games:*:9797:0::::: ftp:*:9797:0::::: smmsp:*:9797:0::::: mysql:*:9797:0::::: rpc:*:9797:0::::: sshd:*:9797:0::::: gdm:*:9797:0::::: pop:*:9797:0::::: nobody:*:9797:0::::: guest:$1$8b2/O5Ha$t5fTM8xk/sGMSbVL.hNKM.:13320:0:99999:7::: postfix:$1$yRT185Ha$KuSIqB6rXUSkD5VhM8KYs/:13320:0:99999:7:::

#ome de usu9rio (username! r E nome -ue o usu$rio digita ao se autenticar no sistema. &en5a criptografada r A senha de 1/ a &3 caracteres. Data da ultima altera%o da sen5a r E nImero de dias desde 1o. de saneiro de 1A7; (tam.(m chamado de perodo! em -ue a senha %oi alterada pela Iltima *e#. #umero de dias antes (ue a sen5a possa ser alterada r E numero m)nimo de dias antes -ue a senha possa ser alterada. #umero de dias antes (ue uma altera%o de sen5a se8a solicitada r E numero de dias antes da senha ser alterada. #umero de dias do aviso antes da altera%o da sen5a r E numero de dias antes da e pirao da senha durante os -uais o usu$rio ( a*isado da e pirao iminente. #umero de dias antes da desabilita%o da conta r E nImero de dias ap's a senha e pirar antes da conta ser desa.ilitada. Data desde a desabilita%o da conta r A data (arma#enada como o nImero de dias desde o per)odo! desde -ue a conta do usu$rio %oi desa.ilitada.

+ emplo do :etc:shadow:
aldeman:$1$.QKDPc5E$SWlkjRWexrXYgc98F.:12825:0:90:5:30:13096:

+sta linha e i.e as seguintes in%ormaes do usu$rio aldeman:


A senha %oi alterada pela ultima *e# no dia 11 de Fe*ereiro de &;;5 "o ha tempo m)nimo de%inido antes -ue a senha possa ser alterada

A senha de*e ser alterada a cada A; dias E usu$rio rece.er um a*iso cinco dias antes de -ue a senha de*e ser alterada A conta ser$ desa.ilitada /; dias ap's a senha e pirar, se no hou*er tentati*as de autenticao A conta e pirara no dia ;A de "o*em.ro de &;;5

11.1$ 3 "r-ui'o 6etc6group E ar-ui*o :etc:group contem uma lista de grupos, cada um numa linha separada. ,ada linha tem -uatro campos separados por dois pontos, incluindo as seguintes in%ormaes:

#ome do grupo r E nome do grupo. Fsado por *$rios utilit$rios como um identi%icador do grupo leg)*el por humanos. &en5a do grupo r 0e determinada, esta permite aos usu$rios -ue no %a#em parte do grupo @untarDse a ele . ID do grupo (BID! r E e-ui*alente num(rico do nome do grupo. Cista de membros r Fma lista de usu$rios pertencentes ao grupo, separados por *)rgulas.

A-ui est$ um e emplo do :etc:group:


suporte:x:502:aldeman,adilson,maira,assis

11.10 3 "r-ui'o 6etc6gs?ado2 E ar-ui*o 6etc6gs?ado2 contem uma senha criptogra%ada para cada grupo, assim como in%ormaes so.re os mem.ros e administrador. ,omo no ar-ui*o 6etc6group, as in%ormaes de cada grupo esto numa linha separada. s:

#ome do grupo r E nome do grupo. &en5a criptografada r A senha criptogra%ada do grupo. Administradores do grupo r Es mem.ros do grupo a-ui listados (numa lista delimitada por *)rgulas! podem adicionar ou remo*er mem.ros do grupo usando o comando gpasswd. Dembros do grupo r Es mem.ros do grupo (numa lista separada por *irgulas!

+ emplo do :etc:gshadow: suporte:!!:aldeman:adilson,maira,assis

11.18 3 Yuota de disco E ar-ui*o :etc:%sta. controla a montagem de sistemas de ar-ui*o. ,omo as -uotas de disco so implementadas por sistema de ar-ui*o, ha duas opes r usr-uota e grp-uota r -ue de*em ser adicionadas a este ar-ui*o para ati*ar as -uotas de disco.

A opo usr-uota ati*a as -uotas de disco do usuario, en-uanto a opo grp-uota ati*a as -uotas de disco do grupo. Fma ou am.as opes podem ser ati*adas ao inseridas no campo de opes para o sistema de ar-ui*o dese@ado. E(s! sistema(s! de ar-ui*o a%etado(s! de*e(m! ento ser desmontado(s! e remontado(s! para -ue as opes relati*as as -uotas de disco tenham e%eito. +m seguida, o comando -uotachecU ( usado para criar a -uota de disco e para coletar as in%ormaes de uso corrente de ar-ui*os @a e istentes. Es ar-ui*os de -uota de disco (nomeados a-uota.user e a-uota.group, para -uotas de usu$rio e de grupo! contem as in%ormaes necess$rias relati*as as -uotas e residem no diret'rio root do sistema de ar-ui*o. 1ara %inali#ar precisamos ati*ar a -uota na partio com o comando -uotaon :home E comando ed-uota ( usado para atri.uir -uotas de disco. +ste utilit$rio usa um editor de te to para e i.ir as in%ormaes de -uota para usu$rio ou grupo, especi%icadas como parte do comando ed-uota. A-ui est um e emplo:
Disk quotas for user aldeman (uid 500): Filesystem blocks soft /dev/md3 6618000 0

hard 0

inodes 17397

soft 0

hard 0

8sso nos mostra -ue o usu$rio aldeman est$ usando mais -ue H<J de espao em disco e mais -ue 17.;;; inodes. "enhuma -uota (sua*e ou r)gida! %oi determinada para .locos ou inodes do disco, o -ue signi%ica -ue no h$ limite para o espao ou inodes em disco -ue este usu$rio pode utili#ar no momento. Fsando o editor de te to -ue apresenta as in%ormaes de -uota de disco, o administrador de sistemas pode ento modi%icar os limites sua*es e r)gidos con%orme dese@ar:
Disk quotas for user aldeman (uid 500): Filesystem blocks soft hard /dev/md3 6618000 6900000 7000000 inodes 17397 soft 0 hard 0

"este e emplo, o usu$rio aldeman rece.eu um limite sua*e de H.A<J e um limite r)gido de 7<J. "o %oram determinados limites sua*e ou r)gido nos inodes para este usu$rio. 0empre -ue um sistema de ar-ui*o no ( desmontado de maneira limpa (de*ido uma -ueda do sistema, por e emplo!, ( necess$rio rodar o -uotachecU. "o entanto, muitos administradores de sistemas recomendam rodar o -uotachecU regularmente, mesmo -ue o sistema no tenha so%rido uma -ueda. E processo ( similar ao uso inicial do -uotachecU ao ati*ar as -uotas de disco. + emplo do comando -uotachecU:
quotacheck -avug

E,erc9cios
1. +m relao ao gerenciamento de grupos e usu$rios no 4inu , a sentena incorreta (:

a! E ar-ui*o :etc:passwd cont(m in%ormaes so.re as contas dos usu$rios do sistema\ .! E ar-ui*o :etc: shadow e i.e in%ormaes so.re as senhas criptogra%adas, entre outras in%ormaes\ c! E ar-ui*o :etc:de%ault:useradd cont(m in%ormaes so.re os usu$rios -ue so criados na iniciali#ao do sistema\ d! E diret'rio :etc:sUel cont(m os modelos de ar-ui*os e con%iguraes para no*os usu$rios do sistema. &. E comando: Nrootncallisto :rootPf useradd Dd :home:teste aluno possui E seguinte signi%icado: a! ,ria o usu$rio teste sendo o seu diret'rio de tra.alho :home:teste e o seu grupo teste, .! ,ria o usu$rio aluno sendo o seu diret'rio de tra.alho teste e o seu grupo aluno, c! ,ria o usu$rio teste sendo o seu diret'rio de tra.alho :home : teste e o seu grupo aluno, d( ,ria o usu$rio aluno com o diret'rio de tra.alho :home:teste e o seu grupo aluno, / Q ,rie dois grupos chamados suporte e diretoria. Adicione os aluno1,aluno&,aluno/ no grupo suporte e os usu$rios diretor1, diretor&, diretor/ usu$rios

3 Q ,on%igure o 4inu para ati*ar -uota na partio :home e con%igure a -uota do usu$rio aluno1 para ter um limite so%t de 51& 6 e hard de 1;&3. 5D ,om o usu$rio aluno1 logado crie *$rios ar-ui*os at( rece.er o a*iso do limite de -uota.

1$ - P"4
1A6 ( a parte principal da autenticao em um sistema 4inu . 1A6 signi%ica 'luggable Aut5entication Dodules, ou D*dulos de Autentica%o 'lug9veis2Dodulares. Eriginalmente a autenticao no 4inu era apenas *ia senhas criptogra%adas arma#enadas em um ar-ui*o local chamado :etc:passwd. Fm programa como o login

pedia o nome do usu$rio e a senha, criptogra%a*a a senha e compara*a o resultado com o arma#enado na-uele ar-ui*o. 0e %ossem iguais, garantia o acesso W m$-uina. ,aso contr$rio, retorna*a erro de autenticao. 8sto at( %unciona muito .em para o programa login, mas, digamos -ue agora eu -ueira usar isso tam.(m para autenticao remota. Eu se@a, a .ase de usu$rios no est$ mais na mesma m$-uina, mas sim em alguma outra m$-uina da rede, o chamado ser*idor de autenticao. >eremos -ue mudar o programa login para -ue ele tam.(m suporte esse tipo de autenticao remota. 0urgiu um no*o algoritmo de criptogra%ia, muito mais a*anado, mais r$pido, criptogra%a melhor, etc. Kueremos usar esse no*o algoritmo. ,laro -ue teremos -ue mudar no*amente o programa login para -ue ele suporte este no*o algoritmo tam.(m. "o 4inu , muitos programas utili#am algum tipo de autenticao de usu$rios. 8magine se todos eles ti*essem -ue ser reescritos cada *e# -ue se mudasse algum dos crit(rios de autenticao. 1ara resol*er este tipo de pro.lema, a 0unt criou o 1A6 h$ alguns anos e li.erou as especi%icaes em %orma de 9F,. E 4inu deri*ou sua implementao do 1A6 a partir deste documento. ,om 1A6, o aplicati*o login deste e emplo teria -ue ser reescrito apenas uma *e#, @ustamente para suportar 1A6. A partir de ento, o aplicati*o delega a responsa.ilidade da autenticao para o 1A6 e no se en*ol*e mais com isso. Voltando ao e emplo anterior, no caso de se -uerer utili#ar um outro algoritmo de criptogra%ia para as senhas, .asta -ue o m'dulo 1A6 se@a modi%icado para -ue todos os aplicati*os automaticamente e de %orma transparente passem a usu%ruir desta no*a %orma de autenticao. 1A6 possui uma outra *antagem: ( poss)*el con%igurar a autenticao de %orma indi*idual para cada aplicati*o. ,om isto ( poss)*el %a#er com -ue, por e emplo, um usu$rio comum possa usar os dispositi*os de $udio do computador desde -ue tenha se logado na m$-uina atra*(s do console. 0e o login no ti*er sido %eito no console (por e emplo, ( um login remoto *ia ssh!, este tipo de acesso ao hardware ser$ negado. 0er$ -ue os programas login ou ssh sa.em alguma coisa so.re o dispositi*o de $udio da m$-uina] B claro -ue no. +les no precisam. Es m'dulos 1A6 se encarregam disso. "a *erdade, 1A6 *ai um pouco al(m da autenticao. Es m'dulos podem ser di*ididos em -uatro tipos: aut5: B a parte -ue *eri%ica -ue o usu$rio ( realmente -uem ele di# -ue (. 1ode ser .em simples, pedindo apenas por um nome e uma senha, ou utili#ando autenticao .iom(trica, por e emplo (como uma impresso de *o#, uma imagem da retina ou impresso digital!. account: +sta parte *eri%ica se o usu$rio em -uesto est$ autori#ado a utili#ar este ser*io ao -ual ele est$ se autenticando. Es m'dulos a-ui podem checar por hor$rio, dia da semana, origem do login, login simult?neo, etc. passwd: +ste ser*io ( usado -uando se dese@a mudar a senha. 1or e emplo, a-ui podem ser colocados m'dulos -ue *eri%icam se a senha ( %orte ou %raca. session:

1or %im, a parte session %ica encarregada de %a#er o -ue %or necess$rio para criar o am.iente do usu$rio. 1or e emplo, %ornecer o acesso a alguns dispositi*os locais como o de $udio ou cdrom, montar sistemas de ar-ui*os ou simplesmente %a#er o registro do e*ento nos ar-ui*os de log do sistema. A .i.lioteca 1A6 *ai procurar o ar-ui*o de con%igurao da aplicao login. +ste ar-ui*o ( :etc:pam.d:login e *ai di#er -uais m'dulos de*em ser usados e com -ue par?metros. +ste ar-ui*o est$ reprodu#ido a seguir:
#\;07-1.0 a3th a3th a3th a !3#t 'ass5!"d 'ass5!"d 3seWa3tht!k sessi!# sessi!#

"e?3i"ed /lib/se 3"ity/'a+Wse 3"etty.s! "e?3i"ed /lib/se 3"ity/'a+W'5db.s! shad!5 #3ll!k "e?3i"ed /lib/se 3"ity/'a+W#!l!<i#.s! "e?3i"ed /lib/se 3"ity/'a+W'5db.s! "e?3i"ed /lib/se 3"ity/'a+W "a klib.s! "e?3i"ed /lib/se 3"ity/'a+W'5db.s! shad!5 +d5 #3ll!k Z "e?3i"ed !'ti!#al /lib/se 3"ity/'a+W'5db.s! /lib/se 3"ity/'a+W !#s!le.s!

+ste ar-ui*o de con%igurao lista os m'dulos 1A6 -ue este programa (login! de*e usar, e eles esto representados na %igura atra*(s de letras. +stes m'dulos sero carregados e e ecutados na ordem em -ue esti*erem no ar-ui*o de con%igurao. "ote -ue um m'dulo pode apro*eitar uma in%ormao de um m'dulo anterior, como normalmente ( %eito para username:senha. 8sso ( usado para no pedir a mesma in%ormao no*amente para o usu$rio. A primeira coluna em um ar-ui*o de con%igurao 1A6 representa o tipo de m'dulo: auth, account, password ou session. "este e emplo, todos esto presentes, mas isto no ( o.rigat'rio. 0e um programa no ti*er suporte W troca de senha, o tipo _password_ no ( usado. A segunda coluna de%ine a %lag de controle para o seu respecti*o m'dulo. E resultado de cada m'dulo pode in%luenciar de di*ersas %ormas o resultado do processo de autenticao geral. C$ algumas categorias: re(uired: E resultado deste m'dulo in%luencia diretamente o resultado %inal. Fma %alha em um m'dulo deste tipo s' aparecer$ para o usu$rio ap's todos os outros m'dulos desta classe serem e ecutados. re(uisite: 0emelhante a re-uired, mas os outros m'dulos no so e ecutados e o controle *olta imediatamente para o aplicati*o em caso de %alha. sufficient: A %alha deste m'dulo no implica em %alha da autenticao como um todo. 0e o m'dulo %alhar, o pr' imo da classe ( e ecutado. 0e no hou*er pr' imo, ento a classe retorna com sucesso. 0e, por outro lado, o m'dulo terminar com sucesso,

ento os m'dulos seguintes dessa classe no sero e ecutados. optional: Es m'dulos marcados como optional praticamente no in%luenciam o resultado da autenticao como um todo. +les apenas tero alguma in%lu2ncia caso os m'dulos anteriores da mesma classe no apresentem um resultado de%initi*o. 1or %im, a terceira coluna de%ine o nome do m'dulo -ue ser$ usado e seus par?metros. >odos os m'dulos esto documentados em :usr:doc:pamD*erso.

10- CFPS
A impresso em Fni :4inu no so%re grandes trans%ormaes a muito tempo. 1odemos encontrar ainda em uso o lpd (line printer daemon!, soluo com inImeras limitaes e no compat)*el com o 811 (8nternet 1rinting 1rotocol!, -ue ( a .ase de gerenciamento de @o.s (ser*ios! e %ilas de impresso, %icando limitado a uma certa -uantidade de impressoras.

,om o ,ommon Fni 1rinting 05stem (,F10! podemos introdu#ir uma soluo de impresso uni*ersal para a rede. E ,F10 ( um gerenciador de impresso -ue pode ser utili#ado *ia we. (C>>1!, atra*(s do -ual podemos adicionar, e cluir, alterar e con%igurar impressoras, .em como administrar @o.s de impresso de uma ou de todas as impressoras compartilhadas na rede. 1roporciona, ainda, aos usu$rios de Fni :4inu uma impresso e%iciente e con%i$*el, por ser compat)*el com o 811 em modo nati*o e por possuir inter%ace para 41D, 06J (0er*er 6essage JlocU! e setDirect. E ,F10 o%erece na*egao pelas impressoras da rede e usa ar-ui*os 1ost0cript 1rinter Description (11D!.

10.1 - Preparao do a(biente .inu, B importante, primeiramente, salientarmos -ue, caso este@a instalado outro gerenciador de impresso no sistema operacional (419ng ou 419!, ser$ necess$rio desinstal$Dlo por completo para proceder, a seguir, com a instalao do ,F10. + ecutaremos o seguinte comando:
[root@localhost]# rpm -e lpr printtool rhs-printfilters

+ste comando remo*er$ todos os pacotes de impresso anteriormente instalados. 8nstalaremos, agora, os seguintes pacotes (ateno: o nome do seu ar-ui*o pode ser um pouco di%erente!:
[root@localhost]# rpm -qa | grep cups - Localiza os pacotes instalados.

cups-1.x.x.yy.i386.rpm cups-libs-1.1.x-yy.i386.rpm ghostscript-5.xx-yycl.i386.rpm ghostscript-fonts-5.xx-yycl.noarch.rpm

10.$ - Con)igurando o ar-ui'o Zcupsd.con)Z 1ara -ue outras m$-uinas de sua rede possam acessar o ser*idor de impresso ,F10, ser$ necess$rio li.erar o acesso ao mesmo. 1ara isso, so necess$rias algumas alteraes no ar-ui*o :etc:cups:cupsd.con% . + istem muitas con%iguraes neste ar-ui*o, a-ui esto descritas apenas algumas delas. 1ara uma melhor otimi#ao, ( preciso uma an$lise mais detalhada das opes deste ar-ui*o. 0er*er"ame "ome da m$-uina Cost"ame4ooUups Ati*e a opo colocando E" Allow From

8n%orme o endereo da rede -ue poder$ acessar a tela de administrao do ,F10. Allow From 1A&.1H=.e 10.0. Con)igurando o CFPS pelo na'egador E ,F10 responde pela porta padro H/1. Ftili#ando -ual-uer .rowser, .asta especi%icar na .arra de endereos a seguinte locali#ao: http:::localhost:H/1 (se as con%iguraes no ar-ui*o cupsd.con% %orem e%etuadas digitando em *e# de localhost o endereo 81 do ser*idor, ter$ o mesmo e%eito, sempre seguido da porta do ,F10 D H/1!. 8sto a.rir$ uma @anela em seu na*egador, de -ual-uer ponto da rede.

E pr' imo passo ( con%igurarmos um compartilhamento de impressora em um 0er*idor de 8mpresso *ia .rowser. ,licando so.re a opo Administration (esta $rea ( restrita ao administrador, aparecer$ uma cai a de di$logo pedindo para -ue se@a in%ormado um login, -ue ser$ _root_ e sua senha!. "a @anela e istem *$rias opes de administrao. ,li-ue em Add 1rinter para acrescentar um no*o compartilhamento de impressora. +m seguida, de*er$ ser in%ormado o nome do compartilhamento ou da %ila de impresso ("ame!, a locali#ao (4ocation! e uma descrio deste compartilhamento (Description!. 0empre, ap's o t(rmino de cada operao, ( necess$rio clicar em ,ontinue +scolher um dispositi*o (De*ice! para o compartilhamento. +ste pode ser portas paralelas, seriais, %ilas de impresses remotas de outros ser*idores de impresso, impressoras compartilhadas com o 41D e e iste possi.ilidade de imprimir para ar-ui*o. Ap's a seleo do dispositi*o pelo administrador, como uma impresso remota ou ar-ui*o, o ,F10 pedir$ in%ormaes adicionais so.re este compartilhamento.

Ap's in%ormaes de %ila e dispositi*o do no*o compartilhamento, de*emos escolher a marca e o modelo da impressora compartilhada. De%inindo essas in%ormaes, a impressora compartilhada %oi adicionada com sucesso, onde o nome do compartilhamento escolhido ( um linU -ue le*a at( as in%ormaes desse compartilhamento.

>odas as operaes acima podero ser e ecutadas de -ual-uer estao de tra.alho, desde -ue esta este@a acessando *ia we. o ser*idor de impresso onde a impressora ser$ compartilhada. Automaticamente, esse compartilhamento de impressora ser$ en*iado para toda a rede, onde todos os terminais e outros ser*idores de impresso a reconhecero automaticamente, no ha*endo necessidade de %a#er con%iguraes espec)%icas. 1ara listar todas as impressoras compartilhadas, cli-ue so.re a opo 1rinters locali#ada na .arra de menu superior.

10.8 - Con)igurao de i(pressora 1odeDse alterar algumas con%iguraes da impressora, como tamanho do papel e resoluo. 1ara isso, aponte o .rowser para o endereo do 0er*idor de 8mpresso, liste as impressoras clicando em 1rinters e cli-ue so.re a opo ,on%igure 1rinter do compartilhamento dese@ado. Ao listarmos as impressoras, todas impressoras encontradas sero apresentadas, mesmo -ue pertenam a outros ser*idores. E .oto ,on%igure 1rinter tam.(m estar$ presente nessas impressoras. 1or(m, as alteraes no tero e%eito, pois o compartilhamento pertence a outro ser*idor de impresso.

10.5 - "pagar u(a i(pressora 1ara apagar uma impressora, cli-ue na opo 1rinters para listar as impressoras compartilhadas e cli-ue so.re a opo Delete 1rinter. Apenas as impressoras compartilhadas no 0er*idor de 8mpresso -ue o administrador est$ logado podem ser apagadas. 1ara as impressoras remotas, podeDse apag$Dlas, por(m no ter$ nenhum e%eito. De*eDse estar logado no ser*idor -ue elas %oram inseridas para realmente poder apag$Dlas.

18 3 Conceitos de &edes
18.1 - O -ue W u(a rede Alguns elementos so componentes .$sicos em uma rede.+les esto descritos a.ai o:

Ser'idor ,omputador -ue centrali#a algum recurso, de modo -ue outras m$-uinas possam acessar esse recurso *ia rede.Alguns e emplos so: 0er*idor de Ar-ui*os: centrali#a a arma#enagem de ar-ui*os comuns aos usu$rios\ 0er*idor de 8mpresso: possui uma impressora -ue ( utili#ada por todos (ou por alguns usu$rios selecionados!,permitindo otimi#ao no uso da impressora\ 0er*idor de .acUup: centrali#a as operaes de .acUup dos ar-ui*os comuns a todos os usu$rios\ 0er*idor de aplicaes\ centrali#a aplicaes di*ersas -ue se@am de uso comum a um grupo ou todos os usu$rios.Fm .om e emplo:anti*)rus.

eeC$ ser*idores das mais *ariadas plata%ormas, desde a plata%orma .aseada em processadores =H at( a main%rames -ue t2m seu poder de processamento medido em 6810 (6ilhes de 8nstrues por 0egundo!. Esta7es 0o as outras m$-uinas da rede, -ue acessam os recursos compartilhados no ser*idor.1ara acesso aos recursos locali#ados em ser*idores, geralmente so usados programas especiais,chamados clientes. <raas a essas aplicaes, uma estao de ar-uitetura =H pode acessar recursos de um ser*idor de maior porte,por e emplo. Cabea(ento 6eio %)sico atra*(s do -ual os dados %luem.Atualmente, o mais usado ( o par tranado, com conectores tipo 9sD35 nas e tremidades. Protocolo 1ara -ue os dados %luam de modo organi#ado e sem perdas, ( necess$rio estipular regras para a transmisso e a recepo desses dados. B nessa tare%a -ue o protocolo se encai a.<raas ao protocolo, ( poss)*el %a#er com -ue as *$rias m$-uinas, mesmo de plata%ormas di%erentes, possam se comunicar e di*idir recursos.Es mais comuns atualmente so: 81G:01G(redes "etware!,>,1:81,"etJ+F8 e 0"A(main%rames 8J67!. E protocolo ( implementado *ia so%tware, de*endo ser instalado em todas as m$-uinas participantes da rede. Enderea(ento )9sico Es endereos %)sicos so atri.u)dos aos adaptadores de rede,de modo -ue cada adaptador tenha um endereo -ue o identi%i-ue como Inico\ %oi con*encionado -ue cada %a.ricante possua um c'digo espec)%ico -ue o identi%icar$. &ede 9ede ( a cone o de duas ou mais m$-uinas com o o.@eti*o de compartilhar recursos entre uma m$-uina e outra. Es recursos podem ser: ,ompartilhamento do conteIdo de seu disco r)gido (ou parte dele! com outros usu$rios. (Es outros usu$rios podero acessar o disco como se esti*esse instalado na pr'pria

m$-uina!. >am.(m chamado de ser*idor de ar-ui*os. ,ompartilhamento de uma impressora com outros usu$rios. Es outros usu$rios podero en*iar seus tra.alhos para uma impressora da rede. >am.(m chamado de ser*idor de impresso. ,ompartilhamento de acesso a 8nternet. Eutros usu$rios podero na*egar na 8nternet, pegar seus eDmails, ler noticias, .ateDpapo no 89,, 8,K atra*(s do ser*idor de acesso 8nternet. >am.(m chamado de ser*idor 1ro 5. 0er*idor de 8nternet:8ntranet. Eutros usu$rios podero na*egar nas p$ginas 8nternet locali#adas em seu computador, pegar eDmails, usar um ser*idor de 89, para chat na rede, ser*idor de 8,K, etc ,om os )tens acima %uncionando ( poss)*el criar permisses de acesso da rede, de%inindo -uem ter$ ou no permisso para acessar cada compartilhamento ou ser*io e istente na m$-uina (www, %tp, irc, ic-, etc!, e registrando:a*isando so.re e*entuais tentati*as de *iolar a segurana do sistema, %irewalls, pontes, etc. +ntre outras ilimitadas possi.ilidades -ue dependem do conhecimento do indi*)duo no am.iente <"F:4inu , @$ -ue ele permite muita %le i.ilidade para %a#er -ual-uer coisa %uncionar em rede. A comunicao entre computadores em uma rede ( %eita atra*(s do 1rotocolo de 9ede. 18.$ - Protocolo de &ede E protocolo de rede ( a linguagem usada para a comunicao entre um computador e outro. + istem *$rios tipos de protocolos usados para a comunicao de dados, alguns so pro@etados para pe-uenas redes (como ( o caso do "etJios! outros para redes mundiais (>,1:81 -ue possui caracter)sticas de roteamento!. Dentre os protocolos, o -ue mais se destaca atualmente ( o >,1:81 de*ido ao seu pro@eto, *elocidade e capacidade de roteamento. 18.0 - O protocolo TCP E >,1 (transmission ,ontrol 1rotocol ou 1rotocolo de ,ontrole >ransmisso! o%erece comunicao entre duas ou mais m$-uinas de %orma mais con%i$*el.A cone o ( de%inida apenas com um par de socUets. As principais caracter)sticas desse protocolo so: >rans%er2ncia cont)nua de dados: o >,1 consegue transmitir uma se-Y2ncia de .5tes pela rede, sem ser necess$rio di*idir os dados em pacotes ou datagramas.

,on%ia.ilidade: o >,1 atri.ui um nImero, se-Yencial,a cada .5te transmitido, e espera uma con%irmao de rece.imento no destino. 0e,passado um determinado tempo(timeout! e essa con%irmao no chegar,os dados sero retransmitidos.

,ontrole de %lu o: a parte receptora no >,1 indica W parte transmissora o nImero de .5tes -ue ela pode rece.er ap's a Iltima se-Y2ncia de .5tes rece.ida, sem -ue ha@a estouro da capacidade de seu .u%%er. 6ultiple ao: ( poss)*el *$rios processos utili#arem os recursos de comunicao do >,1 simultaneamente.8sso ( gerenciando atra*(s do uso de portas.

,one es l'gicas: o >cp mant(m in%ormaes para as se-Y2ncias de .5tes transmitidas.A com.inao dessas in%ormaes com os socUets, nImeros se-Yenciais e portas ( chamada de cone o l'gica.

Full Duple : a transmisso e recepo de dados podem ser %eitas simultaneamente.

18.8 - O Protocolo IP E 81 (8nternet 1rotocol! ( um n)*el -ue esconde a comple idade da estrutura real do con@unto de redes interligadas, dando a iluso de -ue todo esse con@unto ( uma Inica rede *irtual. E 81 no possui controle de *eri%icao e correo de erros, nem controles -ue garantam a con%ia.ilidade de um dado rece.ido. Es pacotes en*iados *ia 81 podem se perder, corromper, ou mesmo se duplicar\ esse protocolo no tem como lidar com essas situaes.>ais procedimentos de*em ser reali#ados por outros n)*eis. Es endereos 81 especi%icam os hosts da rede dos dados transmitidos.Desse modo,cada host ou dispositi*o (impressora,roteador,etc.! tem seu pr'prio endereo 81, -ue os identi%icam como Inicos na rede. E pacote 81 possui um ca.ealho, contendo in%ormaes para o protocolo em si, e outros dados, -ue s' possuem rele*?ncia para protocolos de n)*el mais alto. "o n)*el 81 h$ um aspecto muito importante: o roteamento 81. "esse roteamento, s' ( le*ado em considerao a parte do endereo de rede do n' de destino.,om essa in%ormao, %ica poss)*el determinar com %acilidade o caminho, ou rota,-ue de*e ser percorrida.,ada host mant(m uma ta.ela de roteamento 81, como au ilio na determinao das rotas mais ade-uadas. 18.5 - O enderea(ento IP E endereo 81 so nImeros -ue identi%icam seu computador em uma rede. 8nicialmente *oc2 pode imaginar o 81 como um nImero de tele%one. E 81 ( compostos por -uatro .5tes e a con*eno de escrita dos nImeros ( chamada de _notao decimal pontuada_. 1or con*eno, cada inter%ace (placa usada p: rede! do computador ou roteador tem um endereo 81. >am.(m ( permitido -ue o mesmo endereo 81 se@a usado em mais de uma inter%ace de uma mesma m$-uina, mas normalmente cada inter%ace tem seu pr'prio endereo 81. +m uma rede, o endereo de um dispositi*o ( uma %orma de identi%icar esse dispositi*o como sendo Inico. "ormalmente, endereos de rede possuem um %ormato padroni#ado e .em de%inido. +m redes roteadas, o endereo ( composto de pelo menos dois nImeros: o da rede e o do n'. 0e dois dispositi*os possu)rem endereos -ue tenham o mesmo nImero de rede, ento eles esto locali#ados na mesma rede.Do contr$rio, esto em redes distintas,mas unidas atra*(s, por e emplo, de um roteador. E nImero -ue ir$ di%erenci$Dlos dentro desta rede ( o nImero do n'. Assim, cada dispositi*o pode ser re%erenciado atra*(s de seu endereo na rede. E endereamento 81 ( o padro utili#ado para atri.uir endereos de hosts e outros dispositi*os na 8nternet,ou em redes locais. Atualmente os endereos so sempre de /& .its(81*3!,e compostos de duas partes:

e endereo de rede\ e endereo de host. E endereo da rede indica em -ue su.Drede o host est$ ligado. 1ara -ue isso %uncione, naturalmente cada su.Drede de*e ter seu pr'prio endereo de rede, de modo a identi%ic$D la como Inica. E endereo de host identi%ica cada m$-uina, dentro de uma determinada su.Drede,como sendo Inica. Vale ressaltar -ue,se um mesmo host possuir mais de um adaptador de rede, cada um deles de*er$ ter seu pr'prio endereo 81. + emplo: DDDDDDDDDDDDDDDDD DDDDDDDDDDDDDDD +ndereo do Cost 1A&.1H=.11;.&/ 6$scara da 9ede &55.&55.&55.; 1oro da 9ede 1A&.1H=.11;. 1oro do Cost .&/ DDDDDDDDDDDDDDDDD DDDDDDDDDDDDDDD +ndereo da 9ede 1A&.1H=.11;.; +ndereo Jroadcast 1A&.1H=.11;.&55 DDDDDDDDDDDDDDDDD DDDDDDDDDDDDDDD E endereo de .roadcast ( um endereo especial -ue cada computador em uma rede _escuta_ em adio a seu pr'prio endereo. +ste ( um endereo onde os datagramas en*iados so rece.idos por todos os computadores da rede. ,ertos tipos de dados como in%ormaes de roteamento e mensagens de alerta so transmitidos para o endereo .roadcast, assim todo computador na rede pode rece.eDlas simultaneamente. 18.; - O enderea(ento e( Internet Es endereos 81 para uso em internets (inclusi*e na internet! indenti%icam cada host ligado a elas como Inico."o caso da 8nternet, so %ornecidos por uma organi#ao chamada de 8nter"8,. "o Jrasil,-uem pro*2 os endereos pI.licos para a 8nternet ( a FA1+01 (http:::www.%apesp..r!. Atra*(s do site (http:::registro..r! ( poss)*el e%etuar o registro, manuteno e a pu.licao de dom)nios na 8nternet so. o dom)nio ..r por parte de empresas, instituies e pessoas legalmente esta.elecidas no Jrasil. A estrutura desse endereamento segue o padro 81, ou se@a, di*idido em endereo de rede e endereo de host. Es primeiros .its do endereo 81 so utili#ados para especi%icar de -ue %orma os endereos de rede e de host sero separados, apro*eitandoDse os .its restantes. C$ -uatro classes de endereo 81: ,lasse A : 0o alocados 7 .its para o endereo de rede e &3 .its para o endereo de host. Assim, podem ha*er 1&= endereos de rede, e cada um pode ter mais de 1H.777.&1H endereos de host associados.

,lasse J: 0o alocados 13 .its para o endereo de rede, e 1H .its para o endereo de host.Assim, podem ha*er 1H./=3 endereos de rede, e cada um pode ter mais de

H5.5/H endereos de host associados. ,lasse ,: 0o alocados &1 .its para o endereo de rede, e = .its para o endereo de host.Assim podem ha*er &.;A7.15& endereos de rede, e cada um pode ter mais de &53 endereos de host associados.

,lasse D: 9eser*ados para multicasting. "esse caso, o endereo ( apenas um nImero inteiro, %ornecido pelo 8nter"8,,-ue identi%ica um grupo de m$-uinas.

"otaDse, ento, -ue um endereo ,lasse A s' ser$ atri.u)do a redes com um nImero muito grande de hosts, e um ,lasse , a redes -ue tenham um nImero redu#ido de hosts. Es endereos 81 na notao (dotted decimal! possuem -uatro nImeros, separados por pontos. E primeiro nImero indica a -ue classe o endereo pertence.Desta %orma, os endereos so separados assim: ,lasse A : de 1 a1&7\ ,lasse J : de 1&= a 1A1\ ,lasse , : de 1A& a &&/\ ,lasse D : de &&3 a &/A.

18.< - Classes de enderea(ento IP +ndereos especiais Fm endereo especial ( o 1&7.;.;.1, e ( considerado o endereo local de loop.acU. Es hosts usam esse recurso para -ue possam en*iar mensagens a si mesmos. +sse endereo ( atri.u)do durante o processo de iniciali#ao da m$-uina. 1ara utili#ao de endereos em m$-uinas -ue no de*ero ter acesso $ internet,de*emos designar endereos pri*ados para elas.+stes endereos o.edecem os seguintes inter*alos nas classes especi%icadas:

,lasse A: de 1;.;.;.; a 1;.&55.&55.&55\ ,lasse J: de 17&.1H.;.; a 17&./1.&55.&55\ ,lasse ,: de 1A&.1H=.;.; a 1A&.1H=.&55.&55.

18.= - O Protocolo TCP6IP >,1:81 signi%ica >ransmission ,ontrol 1rotocol:internet 1rotocol, ou, tradu#indo, 1rotocolo de ,ontrole de >ransmisso:1rotocolo de 8nternet. B o protocolo nati*o utili#ado pelos *$rios F"8G dispon)*eis no mercado,e por isso ( um dos mais di%undidos. Apesar de ser chamado de protocolo, na *erdade o >,1:81 ( um con@unto de protocolos. Es dois protocolos principais so: o >,1, -ue tra.alha no n)*el de transporte, e o 81, -ue tra.alha no n)*el de rede. C$ *$rios outros protocolos -ue tam.(m %a#em parte do con@unto >,1:81. +les sero *istos no decorrer do curso. 81 ( considerado um protocolo rote$*el, ou se@a, dois pontos na rede podem se comunicar

sem precisar estar ligados em um mesmo meio %)sico(mesmo ca.o,por e emplo!. 18.> - O protocolo F5P E FD1 (Fser Datagram 1rotocol! ( um protocolo de transporte, e, .asicamente uma inter%ace de aplicao para o 81.>am.(m no acrescenta %unes de deteco e correo de erros e controle de %lu o de in%ormaes. E FD1 %unciona apenas como um Lmultiple ador:demultiple adorM para o en*io e rece.imento de datagramas 81, utili#ando portas para direcionar esses datagramas. "o FD1, o usu$rio especi%ica a porta de origem e a porta de destino, e ( e%etuado um checUsum, di%erentemente do >,1, para assegurar a con%ia.ilidade dos endereos. B .om ressaltar -ue isso apenas procura e*itar pro.lemas, no podendo corrigiDlos. A aplicao ( -ue de*er$ se encarregar disso. Algumas aplicaes -ue utili#am FD1 so:

>F>1: >ri*ial File >rans%er 1rotocol\ D"0: Domain "ame 05stem\ 91,: 9emote 1rocedure ,allDutili#ado pelo "F0("etworU File 05stem!\ ",0: "etworU ,omputing 05stem\ ( uma implementao, pouco atualmente,-ue conecta sistemas heterog2neos\ 0"61: 0imple "etworU 6anagement 1rotocol.

usada

A maioria das aplicaes FD1 roda em redes locais com n)*eis de per%ormance e con%ia.ilidade e celentes. +ntretanto, se essas aplicaes %orem utili#adas em redes de longa dist?ncia, a per%ormance cai, @$ -ue no h$, em FD1, mecanismos para deteco e correo de erros, de*endo isso ser tratado pelo aplicati*o. 18.1: - &e)erncia de (Iscara de redes A ta.ela a.ai o %a# re%er2ncia as m$scaras de rede mais comuns e a -uantidade de m$-uinas m$ imas -ue ela atinge. "ote -ue a especi%icao da m$scara tem in%lu2ncia direta na classe de rede usada: 4Iscara := :&55.;.;.; :1H :&55.&55.;.; :17 :&55.&55.1&=.; :1= :&55.&55.1A&.; :1A :&55.&55.&&3.; :&; :&55.&55.&3;.; :&1 :&55.&55.&3=.; :&& :&55.&55.&5&.; :&/ :&55.&55.&53.; :&3 :&55.&55.&55.; :&5 :&55.&55.&55.1&= :&H :&55.&55.&55.1A& :&7 :&55.&55.&55.&&3 :&= :&55.&55.&55.&3; #u(ero (I,i(o de (I-uinas 1H,777,&15 H5,5/5 /&,7H7 1H,/=/ =,1A1 3,;A5 &,;37 1,;&/ 511 &55 1&7 H/ /1 15

:&A :/; :/&

:&55.&55.&55.&3= :&55.&55.&55.&5& :&55.&55.&55.&55

7 / 1

E,erc9cios 1 1.De%ina protocolo com suas pala*ras. &.Kual endereo de rede no ( pu.licado na 8nternet] a.1;.;.;.;\ ..15.;.;.;\ c.1A;.133.;.;\ d.&;;.&31.111.;\ e.1&=.A.;.;. /.0o m$scaras padro de redes,respecti*amente de classe A,classe J,classe ,: a.&55.&55.&55.;,&55.&55.;.;,&55.;.;.;\ ..&55.&55.;.;,&55.;.;.;,&55.&55.&55.;\ c.;.;.;.;,&55.;.;.;,&55.&55.;.;\ d.;.;.;.;,&55.&55.;.;,&55.&55.&55.;\ e.&55.;.;.;\&55.&55.;.;,&55.&55.&55.; 18.11 - Para instalar u(a (I-uina usando o .inu, e( u(a rede e,istente 0e *oc2 -uiser instalar uma m$-uina <"F:4inu em uma rede >,1:81 e istente ento *oc2 de*e contactar -ual-uer um dos administradores da sua rede e perguntar o seguinte: +ndereo 81 de sua m$-uina +ndereo 81 da rede +ndereo 81 de .roadcast 6$scara da 9ede 81 +ndereo do 9oteador +ndereo do 0er*idor de "omes (D"0! Voc2 de*e ento con%igurar seu dispositi*o de rede <"F:4inu com estes detalhes. Voc2 no pode simplesmente escolheDlos e esperar -ue sua con%igurao %uncione. 18.1$ - Inter)ace de rede As inter%aces de rede no <"F:4inu esto locali#adas no diret'rio :de* e a maioria ( criada dinamicamente pelos so%twares -uando so re-uisitadas. +ste ( o caso das inter%aces ppp e plip -ue so criadas dinamicamente pelos so%twares. A.ai o a identi%icao de algumas inter%aces de rede no 4inu (a ] signi%ica um nImero -ue identi%ica as inter%aces se-Yencialmente, iniciando em ;!: eth] D 1laca de rede +thernet e ^a*e4an. ppp] D 8nter%ace de rede 111 (protocolo ponto a ponto!.

18.10 - " inter)ace loopback A inter%ace loop.acU ( um tipo especial de inter%ace -ue permite %a#er cone es com *oc2 mesmo. >odos os computadores -ue usam o protocolo >,1:81 utili#am esta inter%ace e e istem *$rias ra#es por-ue precisa %a#er isto, por e emplo, *oc2 pode testar *$rios programas de rede sem inter%erir com ningu(m em sua rede. 1or con*eno, o endereo 81 1&7.;.;.1 %oi escolhido especi%icamente para a loop.acU, assim se a.rir uma cone o telnet para 1&7.;.;.1, a.rir$ uma cone o para o pr'prio computador local. A con%igurao da inter%ace loop.acU ( simples e *oc2 de*e ter certe#a -ue %e# isto (mas note -ue esta tare%a ( normalmente %eita pelos scripts padres de iniciali#ao e istentes em sua distri.uio!. i%con%ig lo 1&7.;.;.1 ,aso a inter%ace loop.acU no este@a con%igurada, *oc2 poder$ ter pro.lemas -uando tentar -ual-uer tipo de cone o com as inter%aces locais, tendo pro.lemas at( mesmo com o comando ping. 18.18 - "tribuindo u( endereo de rede a u(a inter)ace !i)con)ig% Ap's con%igurada %isicamente, a inter%ace precisa rece.er um endereo 81 para ser identi%icada na rede e se comunicar com outros computadores, al(m de outros par?metros como o endereo de .roadcast e a m$scara de rede. E comando usado para %a#er isso ( o i%con%ig (inter%ace con%igure!. 1ara con%igurar a inter%ace de rede +thernet (eth;! com o endereo 1A&.1H=.1.1, m$scara de rede &55.&55.&55.;, podemos usar o comando: i%con%ig eth; 1A&.1H=.1.1 netmasU &55.&55.&55.; up E comando acima ati*a a inter%ace de rede. A pala*ra up pode ser omitida, pois a ati*ao da inter%ace de rede ( o padro. 1ara desati*ar a mesma inter%ace de rede, .asta usar usar o comando: i%con%ig eth; down Digitando i%con%ig so mostradas todas as inter%aces ati*as no momento, pacotes en*iados, rece.idos e colises de datagramas. 1ara mostrar a con%igurao somente da inter%ace eth;, use o comando: i%con%ig eth; +m sistemas De.ian, o ar-ui*o correto para especi%icar os dados das inter%aces ( o :etc:networU:inter%aces . 18.15 - &otea(ento 9oteamento ( -uando uma m$-uina com mIltiplas cone es de rede decide onde entregar os pacotes 81 -ue rece.eu, para -ue cheguem ao seu destino. 1ode ser Itil ilustrar isto com um e emplo. 8magine um simples roteador de escrit'rio, ele pode ter um linU intermitente com a 8nternet, um nImero de segmentos ethernet alimentando as estaes de tra.alho e outro linU 111 intermitente %ora de outro escrit'rio.

Kuando o roteador rece.e um datagrama de -ual-uer de suas cone es de rede, o mecanismo -ue usa determina -ual a pr' ima inter%ace de*e en*iar o datagrama. ,omputadores simples tam.(m precisam rotear, todos os computadores na 8nternet tem dois dispositi*os de rede, um ( a inter%ace loop.acU (e plicada acima! o outro ( um usado para %alar com o resto da rede, tal*e# uma ethernet, tal*e# uma inter%ace serial 111 ou 0481. +sta ta.ela cont(m colunas -ue tipicamente cont(m no m)nimo tr2s campos, o primeiro ( o endereo de destino, o segundo ( o nome da inter%ace -ue o datagrama de*e ser roteado e o terceiro ( opcionalmente o endereo 81 da outra m$-uina -ue le*ar$ o datagrama em seu pr' imo passo atra*(s da rede. "o <"F:4inu *oc2 pode *er a ta.ela de roteamento usando um dos seguintes comandos:
cat /proc/net/route route -n netstat -r

E processo de roteamento ( muito simples: um datagrama (pacote 81! ( rece.ido, o endereo de destino (para -uem ele (! ( e aminado e comparado com cada item da ta.ela de roteamento. E item -ue mais corresponder com o endereo ( selecionado e o datagrama ( direcionado a inter%ace especi%icada. 0e o campo gatewa5 esti*er preenchido, ento o datagrama ( direcionado para a-uele computador pela inter%ace especi%icada, caso contr$rio o endereo de destino ( assumido sendo uma rede suportada pela inter%ace. 18.1; - Con)igurando u(a rota no .inu, A con%igurao da rota ( %eita atra*(s da %erramenta route. 1ara adicionar uma rota para a rede 1A&.1H=.1.; acess)*el atra*(s da inter%ace eth; .asta digitar o comando: route add Dnet 1A&.1H=.1.; eth; 1ara apagar a rota acima da ta.ela de roteamento, .asta su.stituir a pala*ra add por del. A pala*ra net -uer di#er -ue 1A&.1H=.1.; ( um endereo de rede (lem.raDse das e plicaes em +ndereo 81, 0eo 3./]!! para especi%icar uma m$-uina de destino, .asta usar a pala*ra Dhost. +ndereos de m$-uina de destino so muito usadas em cone es de rede apenas entre dois pontos (como ppp, plip, slip!. 1or padro, a inter%ace ( especi%icada como Iltimo argumento. ,aso a inter%ace precise especi%icaDla em outro lugar, ela de*er$ ser precedida da opo Dde*. E gatewa5 padro pode ser *isuali#ado atra*(s do comando route Dn e *eri%icando o campo gatewa5. A opo gw acima, especi%ica -ue o pr' imo argumento ( um endereo 81 (de uma rede @$ acess)*el atra*(s das ta.elas de roteamento!. E computador gatewa5 est$ conectado a duas ou mais redes ao mesmo tempo. Kuando seus dados precisam ser en*iados para computadores %ora da rede, eles so en*iados atra*(s do computador gatewa5 e o gatewa5 os encaminham ao endereo de destino. Desta %orma, a resposta do ser*idor tam.(m ( en*iada atra*(s do gatewa5 para seu

computador (( o caso de uma t)pica cone o com a 8nternet!. 18.1< - &esol'edor de no(es !5#S! D"0 signi%ica Domain "ame 05stem (sistema de nomes de dom)nio!. E D"0 con*erte os nomes de m$-uinas para endereos 81s -ue todas as m$-uinas da 8nternet possuem. +le %a# o mapeamento do nome para o endereo e do endereo para o nome e algumas outras coisas. Fm mapeamento ( simplesmente uma associao entre duas coisas, neste caso um nome de computador, como www.linu .org, e o endereo 81 desta m$-uina (ou endereos! como &;;.&35.157.A. E D"0 %oi criado com o o.@eti*o de tornar as coisas mais %$ceis para o usu$rio, permitindo assim, a identi%icao de computadores na 8nternet ou redes locais atra*(s de nomes (( como se ti*(ssemos apenas -ue decorar o nome da pessoa ao in*(s de um nImero de tele%one!. A parte respons$*el por tradu#ir os nomes como www.nome.com..r em um endereo 81 ( chamada de resol*edor de nomes. E resol*edor de nomes pode ser um .anco de dados local (controlador por um ar-ui*o ou programa! -ue con*erte automaticamente os nomes em endereos 81 ou atra*(s de ser*idores D"0 -ue %a#em a .usca em um .anco de dados na 8nternet e retornam o endereo 81 do computador dese@ado. Fm ser*idor D"0 mais di%undido na 8nternet ( o .ind. Atra*(s do D"0 ( necess$rio apenas decorar o endereo sem precisar se preocupar com o endereo 81 (alguns usu$rios simplesmente no sa.em -ue isto e iste...!. 0e dese@ar mais detalhes so.re D"0, *e@a o documento D"0DCE^>E. 18.1= - "r-ui'os de con)igurao usados na resoluo de no(es A.ai o a descrio dos ar-ui*os usados no processo de resol*er um nome no sistema <"F:4inu . 18.1> - 6etc6resol'.con) E :etc:resol*.con% ( o ar-ui*o de con%igurao principal do c'digo do resol*edor de nomes. 0eu %ormato ( um ar-ui*o te to simples com um par?metro por linha e o endereo de ser*idores D"0 e ternos so especi%icados nele. + istem tr2s pala*ras cha*es normalmente usadas -ue so: domain +speci%ica o nome do dom)nio local. search +speci%ica uma lista de nomes de dom)nio alternati*os ao procurar por um computador, separados por espaos. A linha search pode conter no m$ imo H dom)nios ou &5H caracteres. nameser*er +speci%ica o endereo 81 de um ser*idor de nomes de dom)nio para resoluo de nomes. 1ode ser usado *$rias *e#es.

,omo e emplo, o :etc:resol*.con% se parece com isto:


domain maths.wu.edu.au search maths.wu.edu.au wu.edu.au nameserver 192.168.10.1 nameserver 192.168.12.1

+ste e emplo especi%ica -ue o nome de dom)nio a adicionar ao nome no -uali%icado (i.e. hostnames sem o dom)nio! ( maths.wu.edu.au e -ue se o computador no %or encontrado na-uele dom)nio ento a procura segue para o dom)nio wu.edu.au diretamente. Duas linhas de nomes de ser*idores %oram especi%icadas, cada uma pode ser chamada pelo c'digo resol*edor de nomes para resol*er o nome. 18.$: - 6etc6?osts E ar-ui*o :etc:hosts %a# o relacionamento entre um nome de computador e endereo 81 local. 9ecomendado para 81s constantemente acessados e para colocao de endereos de *irtual hosts (-uando dese@a re%erir pelo nome ao in*(s de 81!. A incluso de um computador neste ar-ui*o dispenda a consulta de um ser*idor de nomes para o.ter um endereo 81, sendo muito Itil para m$-uinas -ue so acessadas %re-uentemente. A des*antagem de %a#er isto ( -ue *oc2 mesmo precisar$ manter este ar-ui*o atuali#ado e se o endereo 81 de algum computador %or modi%icado, esta alterao de*er$ ser %eita em cada um dos ar-ui*os hosts das m$-uinas da rede. +m um sistema .em gerenciado, os Inicos endereos de computadores -ue aparecero neste ar-ui*o sero da inter%ace loop.acU e os nomes de computadores.
# /etc/hosts 127.0.0.1 192.168.0.1 localhost loopback this.host.name

Voc2 pode especi%icar mais -ue um nome de computador por linha como demonstrada pela primeira linha, a -ue identi%ica a inter%ace loop.acU. EJ0: ,aso encontre pro.lemas de lentido para resol*er nomes e at( para e ecutar os aplicati*os (como o mc, etc!, *eri%i-ue se e istem erros neste ar-ui*o de con%igurao. +stes sintomas se con%undem com erros de mem'ria ou outro erro -ual-uer de con%igurao de hardware, e somem -uando a inter%ace de rede ( desati*ada (a com o 81 no loop.acU!. 8sto ( causados somente pela m$ con%igurao do ar-ui*o :etc:hosts. E .om %uncionamento do Fni depende da .oa ateno do administrador de sistemas para con%igurar os detalhes de seu ser*idor. 18.$1 - Ser'ios de &ede 0er*ios de rede ( o -ue est$ dispon)*el para ser acessado pelo usu$rio. "o >,1:81, cada ser*io ( associado a um nImero chamado porta -ue ( onde o ser*idor espera pelas cone es dos computadores clientes. Fma porta de rede pode se re%erenciada tanto pelo nImero como pelo nome do ser*io. A.ai o, alguns e emplos de portas padres usadas em ser*ios >,1:81:

&1 D F>1 (trans%er2ncia de ar-ui*os! &/ D >elnet (terminal *irtual remoto! &5 D 0mtp (en*io de eDmails! 5/ D D"0 (resol*edor de nomes! 7A D Finger (detalhes so.re usu$rios do sistema! =; D http (protocolo www D trans%er2ncia de p$ginas 8nternet! 11; D 1opD/ (rece.imento de mensagens! 11A D "">1 (usado por programas de noticias! E ar-ui*o padro respons$*el pelo mapeamento do nome dos ser*ios e das portas mais utili#adas ( o :etc:ser*ices (para detalhes so.re o seu %ormato, *e@a a :etc:ser*ices, 0eo 3.A.1!. 18.$$ 3 Co(andos Hteis dhclient Q ,liente do protocolo dhcp. + : dhclient traceroute Q 6ostra o caminho at( o host destino. + : traceroute &;;.&5/.H7.= tcpdump Q ,aptura pacotes -ue passam pela placa de rede selecionada. + : tcpdump Di eth; netstat Q 6ostra as cone es da sua ma-uina com outras ma-uinas. + : netstat Dan host Q 6ostra o endereo ip da ma-uina pes-uisada. + : host www.nscontrol.com..r E,ercicio1 1 Q ,on%igure o 4inu para ter a seguinte con%iguro na placa de rede: ip : 1A&.1H=.;. mascara: &55.&55.&55.; gatewa5 : 1A&.1H=.;.1; dns: 1A&.1H=.;.1 & Q ,adastre todas as ma-uinas do la.oratorio no ar-ui*o hosts.

15 3 Ser'idor #KS

E "F0 %oi desen*ol*ido para permitir o compartilhamento de diret'rios em rede. Es ser*ios de "F0 so implementados ou diretamente no Uernel ou como m'dulos. +ntretanto, ( recomend$*el instalar o pacote n%sDutils, -ue %ornece uma s(rie de %erramentas e tras para o "F0, aumentando a per%ormance do ser*idor "F0 de 4inu tradicional. Al(m disso, possui o aplicati*o showmount, -ue consulta o daemon de uma m$-uina remota por in%ormao acerca do ser*idor "F0 ("etworU File 05stem! dessa m$-uina. E processo de uso de "F0 ( relati*amente simples, sendo necess$rio e%etuar con%iguraes na m$-uina ser*idora para compartilhar os diret'rios. "a m$-uina cliente, o processo ( de montagem de parties, com o uso do mount e edio do :etc:%sta.. 15.1 - Con)igurando o Ser'idor #KS +m geral, a Inica con%igurao a ser %eita para compartilhar um diret'rio ( a edio de uma linha no ar-ui*o :etc:e ports. Fma entrada nesse ar-ui*o possui a seguinte sinta e:
arquivos maq1(op11,op12) .... maqn(op1,op2)

"esse caso, ar-ui*os ( o diret'rio a ser compartilhado, ma-1 e ma-n so as m$-uinas para as -uais o diret'rio est$ sendo e portado e op 5 ( opo de compartilhamento. As opes de compartilhamento mais importantes so listadas na ta.ela a.ai o.

ro r)

E diretorio e compartilhado apenas leitura E diretorio e compartilhado para leitura e escrita ,aso o usuario root da ma-uina cliente de*a ter acesso irrestrito ao diretorio compartilhado, entao de*eDse utili#ar a opo.

noOrootOs-uash

Fm e emplo de con%igurao do ar-ui*o :etc:e ports pode ser a.ai o. "essa e emplo, podemos perce.er -ue ( poss)*el e portar um diret'rio para uma rede ou para uma m$-uina. Al(m disso, tam.(m ( poss)*el utili#ar m$scaras de rede, .em como os caracteres coringas uev (para representar um con@unto de caracteres! e u]v (para representar um Inico caracter!.
/home/aldeman 192.168.0.2(rw) /publico 192.168.0.0/255.255.255.0(ro)

Fma o.ser*ao importante a ser %eita so.re e portao de diret'rios ( -ue o "F0 no e porta su.diret'rios -ue este@am em outras parties. Assim, por e emplo, se :usr e :usr:local esti*erem em parties distintas, eles necessitam ser e portados independentemente.

,on%igurado o ar-ui*o :etc:e ports, o pr' imo passo ( carregar o ser*idor "F0. A .em da *erdade, o "F0 en*ol*e tr2s ser*idores: o rpc.n%sd, o rpc.mountd e o e port%s. ,omo o "F0 usa 91, (9emote 1rocedure ,alls Q chamadas de procedimentos remotos!, ele tam.(m precisa do portmap. "a maioria das distri.uies, o processo de iniciali#ao pode ser %eito com a chamada ou e ecutandoDse o comando.
service nfs start

,aso o ar-ui*o :etc:e ports se@a alterado durante a e ecuo do ser*idor, o processo de sincroni#ao do no*o ar-ui*o pode ser %eito com o comando:
exportfs -r

15.$ - Con)igurao do Cliente #KS 0upondoDse -ue uma estao cliente possua os de*idos pri*il(gios, ela utili#ar uma partio :usr:local no ser*idor (1A&.1H=.;.1!, montando essa partio em um diret'rio local (por e emplo, :usr:m5ser*!
mount -t nfs 192.168.0.1:/usr/local /usr/myserv

+m *$rias *erses recentes do comando mount, o uso da opo Dt n%s ( desnecess$ria. ,aso o uso desse ponto de montagem se@a %re-Yente, .asta adicionar uma linha no :etc:%sta., utili#andoDse o n%s para o tipo de partio:
192.168.0.1:/usr/local /usr/myserv nfs defaults 0 0

E,erc9cio1 1. +sta.elea uma m$-uina para ser ser*idor. "o diret'rio :home desta m$-uina crie alguns ar-ui*os e diret'rios com a %inalidade de e portaDlo para a rede. "a m$-uina cliente monte esta partio em :mnt num diret'rio chamado homeOmicro . &. ,ompartilhe o ,D9E6 da m$-uina ser*idora com a m$-uina cliente.

1; 3 Ser'idor 5#S

1;.1 - Introduo1
E ser*io de D"0 ( respons$*el pela administrao do dom)nio da empresa. Apesar de possuir a caracter)stica de resoluo de nomes em endereos ip a principal %uno do ser*idor de D"0 ( de in%ormar onde %ica os ser*idores do dom)nio, podendo assim ser o respons$*el pelo per%eito %uncionamento dos demais sistemas da empresa na internet. +m poucas pala*ras sem ser*idor de D"0 no podemos ter um dom)nio na internet. E Jind ( um dos ser*idores de D"0 mais utili#ados na 8nternet cerca de =;w dos ser*idores utili#am este produto. Eutro recurso do D"0 ( -ue ele torna as in%ormaes do host acess)*eis em toda a 8nterD net. 6anter in%ormaes so.re hosts em um ar-ui*o %ormatado em um Inico computador s' a@uda os usu$rios na-uele computador. E D"0 o%erece um meio de recuperar in%ormaD es remotamente de -ual-uer lugar da rede. Al(m disso, o D"0 permite -ue *oc2 distriD .ua o gerenciamento de in%ormaes de hosts entre muitos sites e organi#aes. Voc2 no precisa en*iar seus dados a um site central ou recuperar periodicamente c'pias do .anco de dados LmasterM. Voc2 de*e simplesmente certi%icarDse de -ue sua seo, chaD mada de #ona, este@a atuali#ada em seus 0+9V8DE9+0 D+ "E6+0. 0eus ser*idores de nomes tornam seus dados de #onas dispon)*eis para todos os outros ser*idores de noD mes.,omo o .anco de dados ( distri.u)do, o sistema tam.(m precisa ser capa# de localiD #ar os dados -ue *oc2 procura .uscando um nImero de poss)*eis locali#aes. E D"0 %ornece intelig2ncia aos ser*idores de nomes para -ue eles possam na*egar pelo .anco de dados e achar os dados em -ual-uer #ona. Kuando %alamos so.re D"0, iremos no concentrar e clusi*amente no J8"D (JerUele5 8nternet "ame Domain!, -ue ( a implemenD tao das especi%icaes do D"0. 1;.$ " Eist+ria do 5o(ain #a(e Ser'er Durante a d(cada de 1A7;, a A91Anet era uma comunidade amig$*el, pe-uena, de alguD mas centenas de hosts. Fm Inico ar-ui*o, CE0>0.>G>, continha todas as in%ormaes necess$rias so.re esses hosts, mapeamento de nome a endereo para cada host conecD tado W A91Anet. A conhecida ta.ela de host do Fni , L:etc:hostsM, %oi deri*ada do CE0>0.>G> ( .asicamente eliminando campos -ue o Fni no usa*a!. E CE0>0.>G> era atuali#ado pelo "etworU 8n%ormation ,enter do 098("8,! e distri.u)do a partir de um Inico host, 098D"8,. Es administradores da A91Anet geralmente en*ia*am suas mudanD

as por email para o "8,, e periodicamente, por F>1 para o 098D"8, e captura*am o atual CE0>0.>G>. 0uas mudanas eram compiladas em um no*o CE0>0.>G> um ou duas *e#es por semana. x medida -ue a A91Anet crescia, contudo, esse es-uema tornaD *aDse impratic$*el. E tamanho do CE0>0.>G> crescia em proporo do ao crescimento do nImero de hosts da A91Anet. Al(m disso, o tr$%ego gerado pelo processo de atuali#aD o aumenta*a cada *e# mais r$pido\ cada host adicionado signi%ica*a no apenas outra linha no CE0>0.>G>, mas potencialmente outra atuali#ao de host dp 098D"8,. + -uanD do a A91Anet mudou para protocolos >,1:81, a populao da rede e plodiu. Agora, haD *ia um milho de pro.lemas com o CE0>0.>G>: 1;.0 Colis7es de no(es "o podia ha*er dois hosts no CE0>0.>G> com o mesmo nome.,ontudo, en-uanto o "8, podia atri.uir endereos de uma %orma -ue garantia suas singularidades, no tinha autoridade so.re os nomes do host. "o ha*ia como impedir -ue algu(m adicionasse um host com um nome con%litante e -ue.rasse o es-uema inteiro. 0e algu(m adicionasse um host com o mesmo nome como mail principal, por e emplo, poderia romper com o ser*io de email da A91Anet. 1;.8 3 Consistncia 6anter a consist2ncia do ar-ui*o em uma rede em e pano tornouDse cada *e# mais diD %)cil. Kuando um no*o CE0>0.>G> atingia os mais distantes lugares da e pandida A91AD net, um host de rede altera*a endereos ou surgia um no*o host -ue os usu$rios -ueriam atingir. E pro.lema maior era -ue o mecanismo do CE0>0.>G> no dimensiona*a .em. 8ronicaD mente, o sucesso da A91Anet como um e perimento le*ou o CE0>0.>G> ao %racasso e W a.solesc2ncia. A direo da A91Anet contratou pes-uisadores para criar um sucessor para o CE0>0.>G>. A meta era criar um sistema -ue solucionasse os pro.lemas inerente a um sistema de ta.elas de hosts uni%icados. E no*o sistema de*eria permitir a adminisD trao local de dados, e ainda disponi.ili#ar os dados glo.almente. A descentrali#ao da administrao eliminaria o gargalo de um host Inico e li.eraria o pro.lema do tr$%ego. + o gerenciamento local reali#aria a tare%a de manter os dados atuali#ados com mais %acilidaD de. E no*o sistema de*eria usar um espao de nomes hier$r-uico para nomear hosts, gaD rantindo assim a singularidade dos nomes. 1aul 6ocUapetris, do 8nstituto de ,i2ncia da 8n%ormao da Fni*ersidade de ,olIm.ia, era o respons$*el pelo pro@eto de ar-uitetura do no*o sistema. +m 1A=3, ele li.erou as 9F,bs ==& e ==/, -ue descre*iam o Domain "ame 0er*er. +ssas 9F,bs %oram suplantadas pela 9F,bs 1;/3 e 1;/5, as especi%icaes atuais do D"0. AgoD ra as 9F,bs 1;/3 e 1;/5 %oram e pandidas por muitas outras 9F,bs, descre*endo potenD ciais pro.lemas de segurana, implementao e administrao com o D"0, e descre*enD do mecanismos para atuali#ao din?mica de ser*idores de nomes e a segurana de daD dos de #onas, e muito mais. +m poucas pala*ras o D"0 ( um .anco de dados distri.u)do. 8sso permite um controle loD cal dos segmentos do .anco de dados glo.al, em.ora os dados em cada segmento esteD @am dispon)*eis em toda a rede atra*(s de um es-uema clienteDser*idor. Desempenhos resistentes e ade-uados so ad-uiridos por meio de reproduo e cache.

1;.5 - " Eist+ria do

I#5

A primeira implementao do D"0 %oi chamada s++V+0, escrita pelo pr'prio 1aul 6ocUaD petris. A implementao seguinte %oi o J8"D, um acrXnimo de JerUele5 8nternet Domain, escrita para o sistema operacional do Fni J0D 3./ de JerUele5 por `e*in Dunlap. E J8"D ho@e ( mantido pelo 8nternet 0o%tware ,onsortium. 1;.; - "lguns conceitos1

" BI#D A Berkeley Internet #ame Domain "o Fni o ser*io de D"0 ( implementado atra*(s de um so%tware chamado LJ8"DM, conD %orme descrio acima, isso ( *$lido se esti*ermos %alando do 0o%tware resol*edor de noD mes, ou se@a -ue rodar$ no 0er*idor de "omes. E lado cliente do D"0 ( chamado de L9esol*erM. Co@e em dia @$ e istem outros ser*ios resol*edores (DsJD"0, 1D"0!, por(m o mais utili#ado ainda continua sendo o J8"D. " Eonas ou Eone E termo #ona re%ereDse sempre a in%ormaes contidas em uma .ase de dados do D"0. " Domnio 0o identi%icados atra*(s de seu nome e hierar-uia. + emplo: www.nscontrol.com..r Ende nscontrol.com..r ( considerado um dom)nio, neste caso o LwwwM pode ser a ma-uiD na ser*idor we.. " &ervidores 'rim9rios e &ecund9rios Pri(Irio ( a %onte de toda in%ormao consultada e tem total autoridade de responder por uma in%ormao a ele -uestionada desde -ue ha@a uma dom)nio nele e istente. SecundIrio D +le trans%ere in%ormaes a partir de um ser*idor prim$rio. +ssas in%ormaD es tra#idas do ser*idor prim$rio so arma#enadas no ser*idor secund$rio localmente em ar-ui*o. +ssa tare%a ( chamada de #one trans%er, ou se@a o ser*idor secund$rio manD

t(m uma c'pia do prim$rio. " Resolvedor B con%igurada atra*(s do ar-ui*o resol*.con%. +ssa con%igurao tem *antagem so.re ouD tros resol*edores pois permite especi%icar mais de um ser*idor de nomes de %orma -ue se um %alhar, ele utili#a o pr' imo nameser*er da lista. Obs: Devido a sua grande importncia, deve-se atentar para sua correta configurao e proteo. Servidores de DNS so alvos freq entes de diversos ataques.

1;.< 3 Con)igurao do Ser'idor de 5#S Es ar-ui*os de con%igurao do D"0: :etc:named.con% 1rincipal ar-ui*o de con%igurao do "A6+D

:*ar:named:dominio.#one Ar-ui*o contendo as in%ormaes so.re o dom)nio

:*ar:named:re*erso.#one 4ocali#aDse a con%igurao do ip re*erso

1asso 1: +dite o ar-ui*o :etc:named.con% com o vi e acrescente no %inal do ar-ui*o o conteIdo a.ai o.
options { }; directory "/var/named";

zone "." { type hint; file "named.ca"; }; zone "nscontrol.com.br." { type master; file "dominio.zone"; allow-transfer{ 200.255.253.241; }; }; zone "1-254.0.168.192.IN-ADDR.ARPA." { type master; file "reverso.zone"; allow-transfer{ 200.255.253.241; }; };

Aten%o7 As ultimas duas #ones so espec)%icas do seu dom)nio. A primeira $one respons$*el pelo dom)nio -ue %or de%inido, lem.reDse de -ue cada #one criada tem -ue de%inir um dom)nio. 0egunda #one respons$*el pelo 81 re*erso, ser$ criado um ar-ui*o de resoluo re*ersa de nomes.( :etc:named:re*erso.#one!.

1asso &: crie um ar-ui*o :*ar:named:dom)nio.#one( use o vi para criar este ar-ui*o!.
@ ( IN SOA maq1.nscontrol.com.br. 2007091002; 28800; 14400; 3600000; 21600; ) IN IN IN IN IN IN IN IN IN IN A A A CNAME MX NS NS A A A root.maq1.nscontrol.com.br. serial refresh retry expire default_ttl

@ @ @ @ maq1 ns.embratel.net.br ns mail www ftp

5 maq1.nscontrol.com.br. maq1.nscontrol.com.br. ns.embratel.net.br. 192.168.0.6 192.168.0.6 200.255.253.241 192.168.0.6 192.168.0.6 192.168.0.6 maq1

As linhas: [\ I# #S (a-1.nscontrol.co(.br.] de dominio

+sta linha ( respons$*el pela designao da m$-uina ser*idor ser*.dominio.com..r -ue ( indicado pela sigla "0 ( "ame 0er*er!. [\ I# 4/ 5 (a-1.nscontrol.co(.br.]

+sta linha ( respons$*el pela designao da m$-uina e dom)nio do ser*idor de eDmail, send.dom)nio.com..r -ue ( indicada pela sigla 6G (6ail + change! )tp I# C#"4E (a-1.nscontrol.co(.br.]

+stas linhas so respons$*eis pela designao de apelidos para m$-uinas respecti*as, tem como sigla respons$*el pela criao de apelido o ,"A6+ ( ,anonical "ame! %oram criados os seguintes apelidos com o ,"A6+ www.dominio.com..r e %tp.dominio.com..r [(a-1 I# " 1>$.1;=.:.;]

+sta linha ( respons$*el pela designao de cada m$-uina no ser*idor D"0( m$-uina com seu respecti*o 81! Agora crie o ar-ui*o :*ar:named:re*erso:
@ ( IN SOA maq1.nscontrol.com.br. 2007041002; 28800; 14400; 3600000; root.maq1.nscontrol.com.br. serial refresh retry expire

21600; ) @ @ @ 6 IN IN IN IN MX NS NS PTR

default_ttl

5 maq1.nscontrol.com.br. maq1.nscontrol.com.br. ns.embratel.net.br. maq1.nscontrol.com.br.

A linha: [; I# PT& (a-1.nscontrol.co(.br.]

+sta linha ( respons$*el em de%inir -ual 81 poder$ ser consultado re*ersamente para a m$-uina apache.dominio.com..r 1asso /: Agora precisaD se :etc:rc.d:init.d::
/etc/rc.d/init.d/named /etc/rc.d/init.d/named

reiniciar o ser*io named -ue se locali#a no diret'rio

stop start

FFlembre"se (ue no ar(uivo !etc!resolv.conf @ ar(uivo respons9vel em buscar o endere%o do seridor de dns tem (ue estar com a seguite sintaxe7
search domnio nameserver IP

E,erc9cio1 ,on%igure um ser*idor de D"0 para o dom)nio curso.com..r, onde os ser*idores de email, we., %tp sero a propia ma-uina D"0.

1< 3 Ser'idor ^E

Introduo1
E ser*idor we. ( um programa respons$*el por disponi.ili#ar p$ginas, %otos, ou -ual-uer outro tipo de o.@eto ao na*egador do cliente. +le tam.(m pode operar rece.endo dados do cliente, processando e en*iando o resultado para -ue o cliente possa tomar a ao dese@ada (como em aplicaes ,<8bs, .anco de dados we., preenchimento de %ormul$rios, etc!. E Apache ( o ser*idor ^e. mais usado no mundo, graas ao seu .om desempenho e con%ia.ilidade. B um ser*idor ^e. e tremamente con%igur$*el, ro.usto e de alta per%ormance desen*ol*ido por uma e-uipe de *olunt$rios (conhecida como Apache <roup! .uscando criar um ser*idor we. com muitas caracter)sticas e com c'digo %onte dispon)*el gratuitamente *ia 8nternet. 0egundo a "etcra%t (http:::www.netcra%t.com:sur*e5:!, o Apache ( mais usado -ue todos os outros ser*idores we. do mundo @untos. 1<.1 - Caracter9sticas do "pac?e A.ai o esto algumas caracter)sticas -ue %a#em esse ser*idor we. o pre%erido entre os administradores de sistemas:
* *

1ossui suporte a scripts cgi usando linguagens como 1erl, 1C1, 0hell 0cript, A01, etc. 0uporte a autori#ao de acesso podendo ser especi%icadas restries de acesso separadamente para cada endereo:ar-ui*o:diret'rio acessado no ser*idor. Autenticao re-uerendo um nome de usu$rio e senha *$lidos para acesso a alguma p$gina:su.Ddiret'rio:ar-ui*o (suportando criptogra%ia *ia ,r5pto e 6D5!. "egociao de conteIdo, permitindo a e i.io da p$gina ^e. no idioma re-uisitado pelo ,liente "a*egador. 1ersonali#ao de logs. 6ensagens de erro.

* *

0uporte a *irtual hosting (( poss)*el ser*ir & ou mais p$ginas com endereos: portas di%erentes atra*(s do mesmo processo ou usar mais de um processo para controlar mais de um endereo!. 0uporte a 81 *irtual hosting. 0uporte a name *irtual hosting. 0uporte a ser*idor 1ro 5 %tp e http, com limite de acesso, caching (todas %le i*elmente con%igur$*eis!. 0uporte a pro 5 e redirecionamentos .aseados em F94s para endereos 8nternos. 0uporte a criptogra%ia *ia 004,,erti%icados digitais 6'dulos D0E (D5namic 0hared E.@ects! permitem adicionar:remo*er %uncionalidades e recursos sem necessidade de recompilao do programa.

* * *

* * *

1<.$ - "r-ui'os de log criados pelo "pac?e E ser*idor httpd gra*a seus ar-ui*os de log geralmente em :*ar:log:apache, no ( poss)*el descre*er os ar-ui*os de logs usados por-ue tanto seus nomes como conteIdo podem ser personali#ados no ar-ui*o httpd.con%. 6esmo assim, os ar-ui*os de logs encontrados na instalao padro do Apache so os seguintes: access.log error.log 9egistra detalhes so.re o acesso as p$ginas do ser*idor httpd. 9egistra detalhes sa.er erros de acesso as p$ginas ou erros internos do ser*idor.

1<.0 - Con)igurando a porta padro do "pac?e >oda a con%igurao do Apache sera %eita no ar-ui*o :etc:httpd:con%:httpd.con%. 1ara in%ormar a porta padro -ue o Apache rece.er$ as in%ormaes use a direti*a 4isten. A direti*a 4isten tam.(m ( usada para a@ustar o endereo:portas alternati*as (usadas tam.(m em Virtual Costs!. 1<.8 "dicionando u(a pIgina no "pac?e A p$gina ra)# ( especi%icada atra*(s da direti*a Document9oot e ser$ mostrada -uando se entrar no dom)nio principal, como http:::www.nscontrol.com..r. "a con%igurao padro do Apache, Document9oot aponta para o diret'rio :*ar:www:html. +ste diret'rio ser$ assumido como ra)# caso os diret'rios no se@am iniciados por uma :: + : www.netstate.com..r:downloads D Aponta para :*ar:www:html:downloads 1<.5 - Con)igurando as inter)aces -ue o "pac?e atenderI

A direti*a JindAddress ( usada para especi%icar endereos 81 das inter%aces ou endereos FKD" -ue o Apache responder$ re-uisies. 6ais de um endereo podem ser especi%icados separados por espaos. ,aso no se@a de%inido, o Apache assumir$ o *alor _e_ (atender$ re-uisies *indas de -ual-uer inter%ace!. EJ01: D B permitido usar somente uma direti*a JindAddress. A direti*a 4isten de*er$ ser usada se dese@ar mais controle so.re as portas do ser*idor we.. EJ0&: D As inter%aces especi%icadas pela direti*a 4isten su.stituir$ as especi%icadas em JindAddress. + emplo: JindAddress 1A&.1H=.1.1 D +speci%ica -ue os usu$rios da %ai a de rede 1A&.1H=.1.e tero acesso ao ser*idor httpd. 8sto assume -ue a m$-uina possui o endereo 1A&.1H=.1.1 em sua inter%ace de rede interna. JindAddress e D Atender$ re-uisies *indas de -ual-uer inter%ace de rede. 1<.; - Especi)icando endereos6portas adicionais !a direti'a .isten% A direti*a 4isten ( usada para se ter um controle maior so.re a especi%icao de endereos:portas alternati*as -ue o ser*idor we. esperar$ por re-uisies e ternas. +sta direti*a ( muito usada na construo de Virtual Costs. +sta direti*a pode su.stituir completamente a direti*a JindAddress. 1odem ser usados o nImero da porta, ou o par endereo:porta: 4isten 1A&.1H=.1.1:=; 4isten 1A&.1H=.7.1:=1 4isten H;;;; E endereo -ue de*er$ ser usado ( o da inter%ace de rede (assim como na direti*a JindAddress!. "o e emplo acima, o ser*idor httpd esperar$ por re-uisies *indas de 1A&.1H=.1.e na porta =; e tam.(m H;;;;, e re-uisies *indas de 1A&.1H=.7.1 na porta =1 e tam.(m H;;;;. 1<.< E-4ail do ad(inistrador A direti*a 0er*erAdmin de%ine o endereo de eDmail -ue o ser*idor ir$ incluir em -ual-uer mensagem de erro -ue retornada ao cliente. 0er*erAdmin rootnlocalhost rootnlocalhost de*e colocar o eDmail do administrador e emplo: + : 0er*erAdimin administradornnetstate.com..r 1<.= - #o(e do Ser'idor A direti*a 0er*er"ame ( usada para de%inir o 5ostname do ser*idor. 8sto ( criado -uando

se dese@a criar um redirecionamento de F94 0er*er"ame ser*er.netstate.com..r 1<.> - .ocaliVao do ar-ui'o de erros de log +rror4og logs:errorOlog E ar-ui*o errorOlog na direti*a +rror4og, cont(m o registro de tudo o -ue acontece de errado en-uanto o ser*idor esti*er sendo e ecutado. +le cont(m tam.(m mensagens de diagn'sticos, como noti%icao de -uando o ser*idor %oi reiniciado ou desligado 1<.1: - 4I,i(o de clientes 6a ,lients 15; +sta direti*a mostra o nImero m$ imo de cliente ou cone es %eita ao ser*idor. 0e o nImeros de cone es %or alcanado do estipulado na direti*a, aparece uma mensagem de erro ?ttp Ser'er to us* 1<.11 - PIgina no "pac?e `eepAli*e En +sta opo se re%ere a -uando %or acessada uma p$gina no ser*idor Apache, a direti*a controla em manter ati*a a cone o dese@ada, sem a necessidade de a.ertura de no*as cone es para outras p$ginas do mesmo site. +sta opo para de %uncionar se o timeout %or e pirado ou por algum moti*o a cone o %or desati*ada. 1<.1$ - .?taccess Antes de mais nada, *oc2 precisar$ se certi%icar -ue o Apache est$ con%igurado para aceitar os ar-ui*os .htaccess como ar-ui*os especiais.
<Directory /> Options FollowSymLinks AllowOverride None </Directory> ou <Directory "/var/www/html"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory>

As *e#es precisamos restringir certos ar-ui*os e diret'rios para certos 81s. 8sso ( *$lido por e emplo, -uando *oc2 tem um pro*edor, e s' se -uer permitir acessar algumas p$ginas de administrao os 81s da 8ntranet do pro*edor. 1ara isso podeDse aplicar estas regras no .htaccess. Ve@a o e emplo a.ai o:

# Deixa a Intranet acessar Order allow,deny allow from 192.168.0. deny from all

+sse e emplo de .htaccess %ar$ com -ue o diret'rio, seus ar-ui*os e seus su.diret'rios s' podero ser acessados por -uem esti*er na %ai a de 81 de 1A&.1H=.;.1 at( 1A&.1H=.;.&53. Vamos supor agora -ue eu -ueira restringir apenas 1 81, para no acessar um certo diret'rio. E .htaccess %icaria assim:
# Deixa todo mundo acessar, menos o IP 192.168.0.25 Order deny,allow deny from 192.168.0.25 allow from all

As *e#es no temos como restringir apenas por 81s, se@a por-ue o usu$rio -ue tem -ue acessar possa estar em -ual-uer lugar, ou ter 81 din?mico, etc. 1ara resol*er esse caso, podemos utili#ar o m(todo de usu$rio e senha. Antes de mais nada *oc2 ter$ -ue ter o utilit$rio _htpasswd_, -ue ser*e para criar um ar-ui*o de senhas criptogra%adas.
$ htpasswd -c senha aldeman New password: Re-type new password: Adding password for user aldeman $ htpasswd senha aluno New password: Re-type new password: Adding password for user aluno

E resultado -ue temos ( o ar-ui*o :etc:httpd:auth:senha com o seguinte conteIdo:


aldeman:zEerw0euqYD3k aluno:85QVc5DD0rB8M

,omo pode *er, as senhas esto criptogra%adas. Agora -ue o ar-ui*o de usu$rios e senhas est$ criado, *amos criar o .htaccess -ue ir$ *eri%icar este ar-ui*o. Ve@a o e emplo do .htaccess:
AuthName "Acesso Restrito Usurios" AuthType Basic AuthUserFile /etc/httpd/conf/senha require valid-user

E,erc9cio1 1D ,on%igure o ser*idor ^e. para hospedar uma pagina teste do dominio curso.com..r

& Q 1ermita apenas -ue o usu$rio admin possa acessar este site.

1= 3 Ser'idor de E-(ail

E 0endmail ( um dos ser*idores mais utili#ados na 8nternet e tem inImeras opes de con%igurao ( capa# de suportar a maioria dos tipos de endereamento e roteamento de mensagens. E programa sendmail tem como uma de suas tare%as monitorar a rede $ espera de mensagens e en*ia mensagens para outros computadores. 6ensagens locais so en*iadas a programas locais para entrega acrescentando estas mensagens a ar-ui*os @$ e istentes ou processandoDas atra*(s de outros programas. 6ensagens podem ser en%ileiradas para entrega posterior. E sendmail possui tam.(m a %uno de aliasing na -ual um recipiente pode destinar suas mensagens a outros usu$rios ou programas. A posio do programa sendmail na hierar-uia do sistema de ar-ui*os pode ser entendida como uma $r*ore in*ertida. Kuando o programa sendmail ( e ecutado, ele l2 primeiramente o seu ar-ui*o de con%igurao (sendmail.c%!. Dentre os di*ersos itens de%inidos neste ar-ui*o encontraDse a locali#ao de todos os outros ar-ui*os e diret'rios -ue o programa sendmail necessita. 1=.1 3 Caracter9sticas D
* * *

+ntrega imediata de mensagens 6udana de endereos imediata 8nterao com D"0 atra*(s de registros 6G 6ensagens podem ser entregues a partir de outros ser*ios

E programa sendmail pode utili#ar o Domain #aming &ystem (D"0! para desco.rir o local para onde en*iar as mensagens. 9egistros do tipo 6G (6ail + changer! permitem com -ue mensagens se@am %acilmente redirecionadas de um computador para outro.

1=.$ 3 4F" , 4T"


*

6FA D 6ail Fser Agent:

6FAs so -uais-uer dos programas utili#ados para ler, responder, compor e dispor de mensagens eletrXnicas.

+ emplos: mush, pine, EutlooU + press, `mail ...


*

6>A D 6ail >ransport Agent

6>As so programas -ue se encarregam de entregar mensagens a *$rios usu$rios e redirecionar mensagens entre computadores como por e emplo o programa sendmail. 1=.0 3 4ensage( eletr_nica >odas as mensagens eletrXnicas so compostas de duas partes, o ca.ealho (Ceader! e o corpo (.od5!. E ca.ealho consiste de todas as linhas de te to a partir da primeira linha at( a primeira linha em .ranco. E corpo da mensagem so todas as linhas seguintes a primeira linha em .ranco at( o %im do ar-ui*o. + istem *$rias linhas de ca.ealho -ue podem aparecer em uma mensagem. Algumas destas linhas so opcionais e outras so mandat'rias e algumas podem tam.(m aparecer di*ersas *e#es. From queiroz@ns.unicamp.br Sab Feb 7 08:11:44 1996 Delivery-Date: Sat, 07 Feb 96 08:11:45 PST Return-Path: queiroz@ns.unicamp.br Received: from ns.unicamp.br by ns.unicamp.br (4.1/1.11) id AA04599; Sat, 7 Feb 93 08:11:44 PST Date: Sat, 7 Feb 96 08:11:43 PST From: queiroz@ns.unicamp.br Message-Id: <<9102071611.AA02124@ns.unicamp.br>> To: queiroz Esta uma mensagem de teste 1=.8 3 "liases Aliasing ( o processo de con*erter um recipiente em outro. Fm uso .astante comum ( o de se atri.uir a usu$rios gen(ricos (root, daemon, adm, .in! nomes de usu$rios reais. Fm outro uso .astante %re-uente ( o de se con*erter um nome em uma lista de muitos outros. A locali#ao do ar-ui*o de aliases ( de%inida no ar-ui*o 6etc6send(ail.c)1 O"6etc6aliases >odo ar-ui*o de aliases de*e conter um alias para a conta postmaster -ue se@a e pandido para o nome de um usu$rio real. 6ensagens so.re pro.lemas com o sistema de mail so sempre en*iadas para a conta postmaster. Kuando uma mensagem ( retornada por no ter sido poss)*el a sua entrega por alguma ra#o, ela ( sempre en*iada ao 6A84+9D DA+6E". +ste alias tam.(m ( necess$rio para e*itar -ue usu$rios respondam a mensagens -ue no se@a poss)*el entregar. >ipos 1oss)*eis: # Aliases obrigatorios postmaster: root

MAILER-DAEMON: postmaster consult: :include:/usr/sys/consult owner-consult: suporte owner-owner: suporte cursos: joao, maria, jose, antonio nobody:/dev/null aldeman: aldeman, aldeman@netstate.com.br 1=.5 3 "r-ui'o de con)igurao do send(ail 6etc6(ail6send(ail.c) 1ara con%igurarmos o sendmail para o domino curso.com..r de*emos alterar as seguintes linhas:
#Nome do servidore de e-mail Cw mail.curso.com.br #Dominio do servidor de email DM curso.com.br #Localizao do arquivo de aliases O AliasFiles=/etc/aliases #Tamanho mximo das mensagens O MaxMessageSize=1000000 #Numero mximo de destinatarios O MaxRecipientsPerMessage=10 #Diretorio de spool das mensagens O QueueDirectory=/var/spool/mqueue #Informa qual rede pode utilizar o servidor de email O DaemonPortOptions=Port=smtp,Addr=192.168.0.0, Name=MTA

1=.; 3 &estrio de acesso 1ara controlar -uais redes ou ma-uinas podem en*iar mensagens para seu dominio ou usar seu ser*idor de email para retransmitir mensagens edite o ar-ui*o :etc:mail:access e in%orme -uais ma-uinas ou redes sero .lo-ueadas ( 9+s+,> ! ou li.erada o en*io de mensagens pelo ser*idor ( 9+4Ao ! . james@dominio.com.br
200.253.23.22 RELAY REJECT

1=.< 3 Ser'idor POP0 E ser*io 1E1 ( o respons$*el em %a#er a entrega das mensagens para o 6FA. Ftili#aremos o ipop/ como ser*idor pop/. 1ara con%igur$Dlo .asta editar o ar-ui*o :etc: inetd.d:ipop/ e modi%icar a linha disa.le.
service pop3 { disable = no socket_type wait user server log_on_success log_on_failure } += HOST = stream = no = root = /usr/sbin/ipop3d += HOST DURATION

Depois .asta reiniciar o daemon inetd.


# /etc/rc.d/init.d/xinetd restart

1=.= - E(ail e 5#S E sistema de nome de dom)nios (D"0! e seu daemon tem um grande papel na entrega de email. +m orderm para entregar a mensagem do seu site para outro, o ser*idor daeD mon ir$ consultar no D"0 para determinar o host -ue ir$ rece.er o destino da mensagem. 8sso %unciona da mesma %orma -uando ( en*iado uma mensagem para *oc2. E D"0 conD t(m o .anco de dados com mapeamento de nomes para o endereo 81, e o nome do host para o ser*idor de email. E endereo 81 ( especi%icado no registro A. E registro 6G (6ail eGchanger! especi%ica o ser*idor de email -ue ir$ rece.er a mensagem para *oc2. 0e *oc2 no ti*er um registro 6G para seu hostname, sua mensagem ser$ entregue diretaD mente para seu host. E,erc9cio1 1D ,on%igure o ser*idor 0endmail para o dominio curso.com..r onde somente a rede 1;.;.;.;:&3 possa retransmitir eDmails por este ser*idor.

1> 3 Ser'idor KTP

E F>1 ( usado para transmitir ar-ui*os entre ma-uinas, e ( poss)*el usaDlo para trans%erir -ual-uer tipo de ar-ui*o, incluindo e ecut$*eis, .in$rios e imagens Assim como a 8nternet, o protocolo F>1 (File >rans%er 1rotocol! no ( algo recente. 0ua primeira *erso surgiu em 1A71 para satis%a#er a necessidade -ue o 68> (6assachusetts 8nstitute o% >echnolog5! tinha em trans%erir ar-ui*os. 6as muita coisa mudou desde sua primeira *erso at( o presente momento, %oram acrescentados recursos de manipulao de ar-ui*os, segurana e a pr'pria necessidade de interagir com outros protocolos como o >,1:81. + istem dois tipos de acessis ao F>1: autenticado e anXnimo. B necessaio ter uma conta no ser*idor para a cone o autenticada. E acesso *ia usario anXnimo ( para a-ueles usu$rios -ue no possuem conta no ser*idor. E F>1 usa duas cone es separadas: uma para transmitir comandos e resultados entre o cliente e o ser*idor, conhecida como canal de comandos, e outra para transmitir ar-ui*os e listagens de diret'rio, conhecida como canal de dados. "o lado do ser*idor e iste o canal de comandos usando a porta &1 e o canla de dados usando a porta &;\ o cliente ira usar as portas acima de 1;&/ tanto para o canla de dados como para o canal de comandos. Ao iniciar uma sesso o cliente inicialmente aloca duas portas para si acima de 1;&3. +le usar$ a primeira para a.rir um canal de comandos com o ser*idor e a seguir usar$ a primeira para a.rir um canal de comandos com o ser*idor e a seguir usar$esta porta para in%ormar ao ser*idor -ual o numero da sua segunda porta -ue ser$ usada para a transmisso de dados. . E 1ro%tpd ( conhecido por ser um ser*idor de F>1 seguro, de %$cil con%igurao (.aseada no modelo do Apache!, .om desempenho e .astante recursos. 1>.1 - "r-ui'o de 6etc6pro)tpd.con)
# ProFTPD Configuration # # Configuracao do ProFTPD #

ServerName #ServerName ServerType DefaultServer ScoreboardPath #DeferWelcome ServerAdmin SyslogFacility

"Servidor FTP" "ProFTPD - Instalao Default" inetd on /var/run on root@localhost AUTH

# Port 21 (ftp standard) is used in case of standalone more # # Utiliza-se o port 21 (padro ftp) no caso de funcionamento standalone # Port 21 # Umask 022 is a good default value to prevent new directories and # files from being writable by the group or by other users # # Umask 022 um bom padro para prevenir que novos diretios e # arquivos sejam gravveis pelo grupo ou outros usurios # Umask 022 # To prevent DoS attacks, the max number of instances is limited to 30. # If one wants to allow more then 30 simultaneous connectionva, just # increment this value. This directive only applies if running in standalone # mode # # Para previnir ataques do tipo DoS, limita-se o numero de instncias # 30. Caso se queira permitir mais de 30 conexs simultneas, simplesmente # aumenta-se este valor. Esta diretiva sse aplica ao funcionamento # standalone MaxInstances 03 MaxClientsPerHost 1 "Desculpe, voc nao pode se" # # This option, if enabled, will make the users unable to access anything # outside their home directory tree. READ THE DOCS! # # Esta opo, se habilitada, faz com que os usurios no consegam acessar nada # fora da sua arvore do diretio home. LEIA A DOCUMENTAO! # DefaultRoot ~ !root # # User and Group the server will run as # # Usurio e grupo para o servidor # User nobody Group nobody <Directory /*> AllowOverwrite no AllowChmod no </Directory> RootLogin no ServerIdent on "Servidor FTP" # Default configuration for anonymous ftp, without an incoming directory. # To activate, just uncomment it. # # Configurao bsica para ftp animo, sem diretio para recepo # de arquivos # Para ativar, descomentar. # #<Anonymous /var/ftp/default> # User ftp

# Group ftp # DirFakeUser on # DirFakeGroup on # ## ## This option will enable the ftp user without it having to have it's shell ## listed on the /etc/shells file ## ## Esta opo habilita o usurio ftp sem que mesmo precise ter sua shell listada ## no arquivo /etc/shells ## RequireValidShell off # # # ftp = anonymous # UserAlias anonymous ftp # # # max anonymous logins at one time. # # Uncomment one. # # # # nero mximo de logins animos # # Descomente um. # MaxClients 10 "Nero mximo de clientes, tente mais tarde." # MaxClients 10 "No more clients allowed at this time. Try again latter." # # # No more then 2 connections per client # # Uncomment one. # # # # No mximo duas conexs por cliente # # Descomente um. # MaxClientsPerHost 2 "Voc j est com muitas conexs simultneas." # MaxClientsPerHost 2 "Too many simultaneous connections from your host." # # # welcome.msg is showed uppong connetiona, and .message at each directory # # accessed # # # # welcome.msg mostrado na conexo e .message mostrado para cada # # diretio acessado. # # DisplayLogin /opt/welcome.msg # DisplayFirstChdir .message # AccessGrantMsg "Acesso animo aceito para %u." # AccessGrantMsg "Anonymous access granted for %u." # # # Write is denied on the anonymous chroot # # # # Limite gravao no chroot animo # # # <Limit WRITE> # DenyAll # </Limit> # #</Anonymous>

1>.$ 3 Controle de acesso do )tp E ar-ui*o )tpusers cont(m uma lista de usu$rios -ue no podem acessar o ser*idor *ia F>1. +ste ar-ui*o de*er$ conter nomes de usu$rios relacionados ao sistema e no nomes de usu$rios comuns. E %ormato do ar-ui*o ( um nome de usu$rio por linha.
root bin

boot daemon ghest nobody operator sys uucp

E ar-ui*o )tp?osts tra.alha de maneira similar ao ar-ui*o )tpusers, a di%erena reside no %ato de -ue com ele podeDse especi%icar -uais usu$rios de -uais m$-uinas t2m a permisso de acesso .lo-ueada ou permitida.
allow aldeman *.curso.com.br deny suspeito maquina.dominio.com.br

"o e emplo acima, ( permitido o acesso do usu$rio alde(an de -ual-uer m$-uina com dom)nio curso.co(.br. E acesso a partir de outras m$-uinas ( *edado. E acesso do usu$rio _suspeito_ ( negado a partir da m$-uina (a-uina.do(inio.co(.br.

E,erc9cio1 1D ,on%igure um ser*idor de F>1 e disponi.ili#e os ar-ui*os de con%iguracao do gru. para o usuario aluno1

$: 3 Ser'idor S"4 "

E 0A6JA ( um ser*idor e con@unto de %erramentas -ue permite -ue m$-uinas 4inu e ^indows se comuni-uem entre si, compartilhando ser*ios (ar-ui*os, diret'rio, impresso! atra*(s do protocolo 06J (0er*er 6essage JlocU!:,8F0 (,ommon 8nternet File 05stem!, e-ui*alentes a implementao "etJ+F8 no ^indows. E 0A6JA ( uma das solues em am.iente F"8G capa# de interligar redes heterog2nea. "a l'gica da rede ^indows o "etJ+F8 ( o protocolo e o "+>J8E0 de%ine a %orma com -ue os dados so transportados. "o ( correto di#er -ue o "etJ8E0 ( o protocolo, como muitos %a#em. ,om o 0A6JA, ( poss)*el construir dom)nios completos, %a#er controle de acesso a n)*el de usu$rio, compartilhamento, montar um ser*idor ^8"0, ser*idor de dom)nio, impresso, etc. "a maioria dos casos o controle de acesso e e i.io de diret'rios no sam.a ( mais minucioso e personali#$*el -ue no pr'prio ^indows. $:.1 - Eist+ria Andrew >ridgell D Desen*ol*eu o sam.a por-ue precisa*a montar um *olume Fni em sua m$-uina DE0. 8nicialmente ele utili#a*a o "F0, mas um aplicati*o precisa*a de suporte "etJ8E0. Andrew ento utili#ou um m(todo muito a*anado usado por administradores para detectar pro.lemas: escre*eu um sni%%er de pacotes -ue atendesse aos re-uerimentos para ter uma Inica %uno: analisar e au iliaDlo a interpretar todo o tr$%ego "etJ8E0 da rede. +le escre*eu o primeiro c'digo -ue %e# o ser*idor Fni aparecer como um ser*idor de ar-ui*os ^indows para sua m$-uina DE0 -ue %oi pu.licado mais ou menos em meados de 1AA& -uando tam.(m comeou a rece.er patches. 0atis%eito com o %uncionamento de seu tra.alho, dei ou seu tra.alho de lado por -uase & anos. Fm dia, ele resol*eu testar a m$-uina ^indows de sua esposa com sua m$-uina 4inu , e %icou mara*ilhado com o %uncionamento do programa -ue criou e *eio a desco.rir -ue o protocolo era documentado e resol*eu le*ar este tra.alho a %undo melhorando e implementando no*as %unes. E 0A6JA atualmente ( um ser*idor %undamental para a migrao de pe-uenos grupos de tra.alho W grandes dom)nios com clientes mi tos. "enhum ser*idor de rede "etJ+F8 conhecido proporciona tanta %le i.ilidade de acesso a clientes como o 0A6JA para compartilhamento de ar-ui*os:impresso em rede. As %unes de segurana -ue %oram adicionadas ao 0A6JA ho@e garantem um controle mais rigoroso -ue a pr'pria implementao usada no ^indows ">, incluindo o ser*ios de diret'rios, mapeamento

entre 8Ds de usu$rios ^indows com 4inu , 1D,, per%is m'*eis e uma coisa -ue inclusi*e apresenta pro.lemas no ^indows: compati.ilidade total entre as di%erentes implementaes de *erses do ^indows. $:.$ - Caracter9sticas 0egue a.ai o algumas %uncionalidades importantes de aplicaes do sam.a e seu con@unto de %erramentas: 1. ,ompartilhamento de ar-ui*os entre m$-uinas ^indows e 4inu ou de m$-uinas 4inu (sendo o ser*idor 0A6JA! com outro 0E -ue tenha um cliente "etJ+F8 (6acintosh, E0:&, 4an6anager, etc!. &. 6ontar um ser*idor de compartilhamento de impresso no 4inu -ue rece.er$ a impresso de outras m$-uinas ^indows da rede. /. ,ontrole de acesso aos recursos compartilhados no ser*idor atra*(s de di*ersos m(todos (compartilhamento, usu$rio, dom)nio, ser*idor!. 3. ,ontrole de acesso leitura:gra*ao por compartilhamento. 5. ,ontrole de acesso de leitura:gra*ao por usu$rio autenticado. H. 1ossi.ilidade de de%inir contas de _,on*idados_, -ue podem se conectar sem %ornecer senha. 7. 1ossi.ilidade de uso do .anco de dados de senha do sistema (:etc:passwd!, autenticao usando o ar-ui*o de dados criptogra%ados do sam.a, 4DA1, 1A6, etc. ,ontrole de cache e opes de tunning por compartilhamento. 1ermite ocultar o conteIdo de determinados diret'rios -ue no -uer -ue se@am e i.idos ao usu$rio de %orma %$cil. 1ossui con%igurao .astante %le )*el com relao ao mapeamento de nomes DE0 ZT F"8G e *ice *ersa, p$gina de c'digo, acentuao, etc. 1ermite o uso de aliases na rede para identi%icar uma m$-uina com outro nome e simular uma rede "etJ8E0 *irtual. E sam.a possi.ilita a@uste %ino nas con%iguraes de transmisso e recepo dos pacotes >,1:81, como %orma de garantir a melhor per%ormance poss)*el de acordo com suas instalaes. 1ermite o uso do gerenciador de mensagem do 4inu (4inpopup! para a troca de mensagens com estaes ^indows *ia "etJios. ,om a %le i.ilidade do sam.a ( poss)*el at( redirecionar a mensagem rece.ida *ia eDmail ou pager. 1ossui suporte completo a ser*idor ^8"0 (tam.(m chamado de "J"0 D "etJios "ame 0er*ice! de rede. A con%igurao ( .astante %$cil. Fa# auditoria tanto dos acessos a pes-uisa de nomes na rede como acesso a compartilhamentos. +ntre os detalhes sal*os esto a data de acesso, 81 de origem, etc. 0uporte completo a controlador de dom)nio ^indows (1D,!. 0uporte -uase completo a .acUup do controlador de dom)nio (JD,!. At( a *erso &.& do sam.a, o suporte a JD, ( parcial. +ste c'digo pro*a*elmente estar$ est$*el at( a *erso /.;. 1ermite montar unidades mapeadas de sistemas ^indows ou outros ser*idores 4inu como um diret'rio no 4inu . 1ermite a con%igurao de recursos simples atra*(s de programas de con%igurao gr$%icos, tanto *ia sistema, como *ia we.. 1ermite e ecutar comandos no acesso ao compartilhamento ou -uando o acesso ao compartilhamento ( %inali#ado.

* * * * *

* *

* *

* * *

,om um pouco de conhecimento e ha.ilidade de administrao de sistemas 4inu , ( poss)*el criar am.ientes de auditoria e monitorao at( monitorao de acesso a compartilhamento em tempo real.

^indo2s 5anando co( Sa(ba

9ecentemente alguns .enchmarUs (*e@a http:::us1.sam.a.org:sam.a:sam.a.html! %oram pu.licados mostrando o desempenho de m$-uinas 4inu e "> operando como ser*idoras de ar-ui*os. Fonte: G5e Best Hindows Iile &erver7 CinuxJ, 0te*en s. VaughanD"ichols g +ric ,arr, http:::www.#dnet.com:sr:stories:issue:;,35/7,&1AH1;H,;;.html, sanuar5 &5, 1AAA. $:.0 - "r-ui'os de log criados E daemon nm.d sal*a seus logs em :*ar:log:daemon.log (dependendo da direti*a de con%igurao s5slog do ar-ui*o sm..con%! e em :*ar:log:sam.a:log.nm.d. Es detalhes de acesso a compartilhamento so gra*ados no ar-ui*o :*ar:log:sam.a:log.sm.d (-ue pode ser modi%icado de acordo com a direti*a log %ile no sm..con%. $:.8 - #o(e de (I-uina !no(e #et ios% >oda a m$-uina em uma rede "etJ+F8 ( identi%icada por um nome, este nome de*e ser Inico na rede e permite -ue outras m$-uinas acessem os recursos disponi.ili#ados ou -ue se@am en*iadas mensagens para a m$-uina. +ste nome ( composto de 1H caracteres, sendo 15 -ue identi%icam a m$-uina e o Iltimo o tipo de ser*io -ue ela disponi.ili#a. E tipo de ser*io ( associado com o nome da m$-uina e registrado em ser*idores de nomes con%irme a con%igurao da m$-uina (*oc2 *er$ isto mais adiante!. E nome de m$-uina ( especi%icado nas direti*as net.ios name e net.ios aliases. $:.5 - Arupo de trabal?o E grupo de tra.alho organi#a a estrutura de m$-uinas da rede em %orma de $r*ore, %acilitando sua pes-uisa e locali#ao. >omemos como e emplo uma empresa grande

com os departamentos comunicao, redes, we., rh, as m$-uinas -ue pertencem ao grupo de redes sero agrupadas no programa de na*egao: A segurana no acesso a ar-ui*os e diret'rios na con%igurao de grupo de tra.alho ( controlada pela pr'pria m$-uina, normalmente usando segurana a n)*el de compartilhamento. +sta segurana %unciona de%inindo um usu$rio:senha para acessar cada compartilhamento -ue a m$-uina possui. E 4an 6anager, ^indows %or ^orUgroups, ^indows A5, ^indows A=, G1 Come +dition usam este n)*el de acesso por padro E %uncionamento ( semelhante ao grupo de tra.alho, com a di%erena -ue a segurana ( controlada pela m$-uina central (1D,! usando direti*as de acesso e grupos. E 1D, (1rimar5 Domain ,ontroller! de*er$ ter todas as contas de acesso -ue sero utili#adas pelo usu$rio para acessar os recursos e istentes em outras m$-uinas, script de logon -ue poder$ ser e ecutado em cada m$-uina para %a#er a@ustes, sincronismo, manuteno ou -ual-uer outra tare%a programada pelo administrador do sistema. $:.; - Co(partil?a(ento Fm compartilhamento ( um recurso da m$-uina local -ue ( disponi.ili#ado para acesso *ia rede, -ue poder$ ser mapeada por outra m$-uina. E compartilhamento pode ser um diret'rio, ar-ui*o, impressora. Al(m de permitir o acesso do usu$rio, o compartilhamento pode ser protegido por senha, e ter controle de acesso de leitura:gra*ao, monitorao de acessos, diret'rios ocultos, autenticao *ia 1D, (dom)nio! e outras %ormas para restringir e garantir segurana na disponi.ili#ao dos dados. Fm compartilhamento no 0A6JA pode ser acess)*el pu.licamente (sem senha! ou estar rigidamente protegido tendo -ue passar por di*ersas .arreiras para chegar ao seu conteIdo, como senhas, endereo de origem, inter%aces, usu$rio autori#ados, permisses de *isuali#ao, etc. $:.< - 4apea(ento 6apear signi%ica pegar um diret'rio:ar-ui*o:impressora compartilhado por alguma m$-uina da rede para ser acessada pela m$-uina local. 1ara mapear algum recurso de rede, ( necess$rio -ue ele se@a compartilhado na outra m$-uina. 1or e emplo, o diret'rio :usr compartilhado com o nome usr, pode ser mapeado por uma m$-uina ^indows como a unidade F:, ou mapeado por uma m$-uina 4inu no diret'rio :mnt:sam.a. E programa respons$*el por mapear unidades compartilhadas no 4inu ( o sm.mount e sm.client. $:.= - "r-ui'o de con)igurao do sa(ba >oda a con%igurao relacionada com nomes, grupo de tra.alho, tipo de ser*idor, log, compartilhamento de ar-ui*os e impresso do sam.a ( colocada no ar-ui*o de con%igurao :etc:sam.a:sm..con%. +ste ar-ui*o ( di*idido em sees e par?metros. Fma seo no ar-ui*o de con%igurao do sam.a (sm..con%! ( de%inido por um nome entre _N P_. As sees tem o o.@eti*o de organi#ar os par?metros pra -ue tenham e%eito

somente em algumas con%iguraes de compartilhamento do ser*idor (e ceto os da seo Nglo.alP -ue no especi%icam compartilhamentos, mas suas direti*as podem ser *$lidas para todas os compartilhamentos do ar-ui*o de con%igurao!. Alguns nomes de sees %oram reser*ados para con%iguraes espec)%icas do sam.a, eles so os seguintes: Nglo.alP De%ine con%iguraes -ue a%etam o ser*idor sam.a como um todo, %a#endo e%eito em todos os compartilhamentos e istentes na m$-uina. 1or e emplo, o grupo de tra.alho, nome do ser*idor, p$gina de c'digo, restries de acesso por nome, etc. NhomesP +speci%ica opes de acesso a diret'rios homes de usu$rios. E diret'rio home ( disponi.ili#ado somente para seu dono, ap's se autenticar no sistema. NprintersP De%ine opes gerais para controle das impressoras do sistema. +ste compartilhamento mapeia os nomes de todas as impressoras encontradas no :etc:printcap. ,on%iguraes especiais podem ser %eitas separadamente. Npro%ileP De%ine um per%il -uando o ser*idor sam.a ( usado como 1D, de dom)nio. Kual-uer outro nome de NseoP no ar-ui*o sm..con% -ue no se@am as acima, so tratadas como um compartilhamento ou impressora. Fm par?metro ( de%inido no %ormato nome Z *alor. 1ara um e emplo pr$tico, *e@a um e emplo de ar-ui*o sm..con% em + emplos de con%igurao do ser*idor 0A6JA. "a con%igurao de .ooleanos, a seguinte sinta e pode ser usada: ; ou 1 5es ou no true ou %alse Assim, as seguintes con%iguraes so e-ui*alentes master .rowse Z ; master .rowse Z no master .rowse Z %alse >odos signi%icam _"cE ser o na*egador principal de dom)nio_. A escolha %ica a gosto do administrador. Durante a con%igurao, *oc2 notar$ o poder da %le i.ilidade o%erecida pelo sam.a na con%igurao de um ser*idor 06J 4inhas iniciadas por f ou \ so tratadas como coment$rio. Kue.ras de linha pode ser especi%icadas com uma k no %inal da linha. $:.> -Con)igurando o S"4 " co(o controlador de do(inio

+dite o ar-ui*o :etc:sam.a:sm..con% e modi%i-ue o conteIdo do ar-ui*o con%orme e emplo a.ai o: [global] workgroup = CURSO netbios name = aluno1 server string = Samba PDC keepalive = 300 deadtime = 10 logon script = %U.bat logon path = logon drive = j: domain logons = yes os level = 100 prefered master = yes domain master = yes security = user socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 passwd program = /usr/bin/passwd %u passwd chat = "*New*UNIX*password*" %n\n "*Retype*new*UNIX*password*" %n\n" *passwd:*all*authentication*tokens*updated*successfully*" [netlogon] comment = Servico de logon path = /etc/samba/netlogon guest ok = yes browseable = no 9einicie o ser*io sm.. /etc/rc.d/init.d/smb stop /etc/rc.d/init.d/smb start

$:.1:3 Fsando o .inu, co(o cliente sa(ba. ,rie uma conta de m$-uina (-ue *oc2 *eri%ica atra*(s do comando _?ostna(e_! de*e ser o mesmo -ue o inclu)do no ar-ui*o s(b.con), em _nebios na(e_. 1ara criar a conta de m$-uina para o cliente, use (no ser*idor! os comandos -ue *imos anteriormente: useradd -d /dev/null -s /bin/false aluno1$ passwd -l aluno1$ smbpasswd -a -m aluno1

"a ma-uina cliente edite o ar-ui*o :etc:sam.a:sm..con% e modi%i-ue ou adicione as seguintes linhas:

[global] workgroup = CURSO netbios name = aluno2 winbind use default domain = yes obey pam restrictions = yes security = domain encrypt passwords = true wins server = 192.168.0.1 winbind uid = 10000-20000 winbind gid = 10000-20000 template shell = /bin/bash template homedir = /home/%U winbind separator = : printing = cups invalid users = root

+dite o ar-ui*o o ar-ui*o _6etc6nss2itc?.con)_ e su.stitua as linhas: passwd: files group: files shadow: files para: passwd: files winbind group: files winbind shadow: files winbind

Depois de modi%icar os dois ar-ui*os, reinicie o 0am.a e o ^in.ind e teste a con%igurao, ingressando no dom)nio. 1ara isso, use o comando _net rpc `oin_: net rpc join -S aluno1 -U root Password: Joined domain DOMINIO. A senha solicitada ( a senha de root do ser*idor 1D,, cadastrada no 0am.a, assim como %a#emos ao cadastrar as m$-uinas ^indows. Falta agora o 1A6, o sistema de autenticao do sistema, para .uscar os logins no ser*idor. 8sso ( %eito modi%icando os ar-ui*os _6etc6pa(.d6s*ste(-aut?_. Adicione as linhas a.ai o no in)cio do ar-ui*o _6etc6pa(.d6s*ste(-aut?_ (respons$*el pela autenticao dos usu$rios no sistema!, sem apagar as demais: auth account password sufficient sufficient sufficient pam_winbind.so use_first_pass pam_winbind.so pam_winbind.so use_authtok

E,erc9cio1 1 Q ,on%igure um ser*idor sam.a e depois con%igure sua ma-uina para ser cliente do ser*idor 0A6JA da m$-uina a sua %rente.

$1 3 Ser'idor Pro,*

Introduo E o.@eti*o principal de um ser*idor pro 5 ( possi.ilitar -ue m$-uinas de uma rede pri*ada possam acessar uma rede pI.lica, como a 8nternet, sem -ue para isto tenham uma ligao direta com esta. E ser*idor pro 5 costuma ser instalado em uma m$-uina -ue tenha acesso direto W 8nternet, sendo -ue as demais e%etuam as solicitaes atra*(s desta. sustamente por isto este tipo de ser*idor ( chamado de pro 5, pois ( um procurador, ou se@a, sistema -ue %a# solicitaes em nome de outros. Fm ser*idor pro 5 para o protocolo C>>1, por e emplo, pode ter outras %uncionalidades implementadas. Visto -ue todas as solicitaes de p$ginas e%etuadas pelas m$-uinas da rede pri*ada sero %eitas atra*(s dele, ( muito Itil arma#enar localmente as p$ginas -ue %oram solicitadas, permitindo -ue os pr' imos acessos, e%etuados por -uais-uer m$-uinas da rede, possam ser otimi#ados. +ste conceito ( chamado de caching, e *$rios ser*idores pro 5 na *erdade so ser*idores pro 5 cache. 1elo mesmo moti*o, tam.(m ( poss)*el implementar uma %uncionalidade -ue permita controlar o -ue os clientes podem acessar e em -ue momento. E programa -ue ser$ utili#ado neste curso ( o 0-uid, o -ual implementa as %unes de um pro 5 cache e tam.(m pode ser utili#ado para controlar o acesso .aseandoDse em *$rios tipos de regras, como ser$ demonstrado mais adiante, neste mesmo cap)tulo. Visto -ue a we. cont(m mais do -ue apenas p$ginas C>64, ar-ui*os de gr$%icos e de sons, a documentao do 0-uid trata os dados arma#enados no cache como o.@etos. +sta caracter)stica de caching ( o -ue atrai mais ateno no 0-uid. ,omo em geral o linU entre as m$-uinas clientes e o ser*idor pro 5 ( de alta *elocidade (rede local ethernet ou similar! e o linU entre o pro 5 e a we. ( mais lento, ( .astante interessante a possi.ilidade -ue o 0-uid o%erece de arma#enar localmente as Iltimas p$ginas acessadas, de %orma a no ter -ue .usar no*amente na 8nternet uma p$gina -ue tenha sido recentemente *ista por outro usu$rio da mesma rede. "aturalmente *oc2 pode con%igurar o tempo de arma#enamento de cada o.@eto no cache, precisando ser .uscados no*amente a cada re-uisio. 1ortanto, com o 0-uid *oc2 pode instalar um ser*idor 4inu com acesso W 8nternet, e %a#er com -ue outras m$-uinas clientes (usando 4inu , ^indows ou outro sistema

operacional! acessem p$ginas we. e sites %tp atra*(s do ser*idor 4inu , mesmo -ue estas m$-uinas clientes no tenham cone o direta com a internet Q tudo -ue elas precisam ( o acesso ao pr'prio ser*idor onde est$ rodando o 0-uid. E 0-uid ( um ser*idor pro 5 para os protocolos C>>1, C>>10, F>1 e gopher. E acesso a outros ser*ios, como 8,K, 89K e correio eletrXnico pode ser con%igurado com o uso de 81 6as-uerading. A *erso mais atual do 0-uid pode ser sempre encontrada no site o%icial do programa (http::www.s-uidDcache.org!, em.ora *$rias distri.uies @$ o tenham incorporado. Obser'ao: 'roxy &ervices s' %uncionam .em se usados em con@unto com mecanismos -ue restrigem a comunicao direta entre as redes interna e e terna. Jons e emplos so os Dual"5omed 5osts e packet filtering. $1.1 - Co(o os "ro#$ Services )unciona( ,omo mostra o diagrama a.ai o, um 'roxy &ervice possui dois componentes: o ser*idor proxy e o cliente proxy. "esse caso,o ser*idor proxy roda no dual"5omed 5ost. E cliente proxy ( uma *erso de um programa cliente normal (isto (, um cliente >elnet ou cliente F>1! -ue con*ersa com o ser*idor proxy ao in*(s do ser*idor _real_ na Internet. Al(m disso, se procedimentos especiais %orem utili#ados pelos usu$rios, programas clientes normais podem ser usados como clientes proxy. E ser*idor proxy e amina os pedidos do cliente proxy e decide -ual deles de*e apro*ar e -uais de*e repro*ar. 0e o pedido ( apro*ado, o ser*idor proxy contacta o ser*idor real no lugar do cliente (da) a ra#o do termo proxy!, e continua a mandar os pedidos do cliente proxy para o ser*idor real, .em como as respostas desse ser*idor para o cliente. E programa -ue ser$ utili#ado neste primeiro la.orat'rio ( o 0KF8D, o -ual implementa as %unes de um pro 5 cach2 e tam.(m pode ser utili#ado para controlar .aseandoDse em *$rios tipos de regras, como ser$ demonstrado mais adiante.

$1.$ - PrW-re-uisitos para instalao do Pro,* S-uid.


* *

E acesso W rede e terna (8nternet! de*e estar con%igurado corretamente\ 9ecomendaDse -ue o ser*idor tenha uma .oa 9ecomendamos 1&=6J para uma melhor per%ormance\ -uantidade de mem'ria.

9ecomendaDse um disco r)gido 0,08 para permitir um acesso mais r$pido aos ar-ui*os arma#enados em cac5e.

$1.0 - Con)igurao A con%igurao do ser*idor ser$ %eita atra*(s do ar-ui*o :etc:s-uid:s-uid.con%. "os clientes, a con%igurao ( %eita nos pr'prios na*egadores. E ar-ui*o :etc:s-uid:s-uid.con% cont(m todas as con%iguraes do ser*idor 0-uid. A grande maioria das opes de con%igurao presentes no ar-ui*o s-uid.con% est$ muito .em documentada neste mesmo ar-ui*o. As opes esto comentadas (iniciando com _f_! com seus *alores padro. 0empre -ue *oc2 dese@ar modi%icar os *alores destas opes, *oc2 pode adicionar linhas ou descomentar as e istentes modi%icandoDas da

maneira dese@ada. As opes mais usadas do ar-ui*o :etc:s-uid:s-uid.con% so:

%ttp&port7 a porta na -ual o 0-uid ir$ atender Ws re-uisies %eitas a ele. E *alor padro ( /1&=\ caso precise alterar este *alor, descomente a linha e tro-ue a porta por alguma porta -ue no este@a sendo utili#ada. cac%e&mem7 o 0-uid utili#a .astante mem'ria para %ins de per%ormance. +le le*a muito tempo para ler algo do disco r)gido, por isso ele arma#ena as in%ormaes mais utili#adas diretamente da mem'ria. E ser*idor utili#a = 6J de mem'ria como padro. "ote -ue este *alor no limita a -uantidade de mem'ria m$ ima utili#ada pelo processo do 0-uid, mas apenas a -uantidade utili#ada para cac5e. 1ro*a*elmente o processo do 0-uid ir$ tornarDse & ou / *e#es maior do -ue o e posto a-ui. E *alor recomendado depende do per%il de seu ser*idor. "ormalmente, *oc2 de*eria utili#ar 1:3 da mem'ria 9A6 dispon)*el para uso de cac5e. 1or e emplo, se o seu ser*idor tem 1&=6J de mem'ria, *oc2 de*eria alocar /&6J para o cac5e. 0e, por outro lado, o seu ser*idor ( e clusi*amente um ser*idor cac5e, *oc2 de*eria alocar metade da mem'ria 9A6 para este %im. ma#imum&ob'ect&si(e7 medido em bytes, especi%ica o tamanho m$ imo dos ar-ui*os a serem arma#enados em cac5e. Kuais-uer o.@etos maiores do -ue este tamanho no so sal*os em disco. E *alor padro ( 36J. cac%e&dir: diret'rio onde o 0-uid ir$ arma#enar os o.@etos do cac5e. B poss)*el especi%icar mIltiplas linhas cacheOdir para di*idir o cac5e entre di%erentes parties do disco r)gido. A sinta e desta linha (: cacheOdir >81E 1A>C 6J "1 "& Ende: GI'K7 especi%ica o tipo de sistema de alocao -ue ser$ usado. "o caso do 4inu , o tipo ( sempre ufs\ 'AGL7 especi%ica o diret'rio do 4inu onde os ar-ui*os sero arma#enados. +ste diret'rio @$ de*e e istir, pois o 0-uid no o cria. "ote -ue, caso nenhuma entrada cacheOdir se@a especi%icada, o sistema utili#ar$ o diret'rio :*ar:spool:s-uid\ DB7 ( a -uantidade m$ ima de espao a ser utili#ado neste diret'rio. #+7 especi%ica o nImero m$ imo de su.diret'rios -ue podero ser criados a.ai o do diret'rio de cac5e\ #<7 especi%ica o nImero m$ imo de su.diret'rios -ue podero ser criados a.ai o dos su.diret'rios criados em "1\ cac%e&access&log: ar-ui*o no -ual ser$ gerado um registro dos acessos ao ser*idor. E ar-ui*o padro ( :*ar:log:s-uid:access.log\ cac%e&log7 ar-ui*o onde so guardadas in%ormaes gerais so.re o comportamento

da cac5e. E *alor padro ( :*ar:log:s-uid:cache.log\ pid&filename: Ar-ui*o -ue contera o numero do processo do s-uid (18D! dns&nameservers: ser*idor de D"0 -ue ser$ consultado na .usca por p$ginas na we.. cac%e&effective&user squid: Fsu$rio -ue ira criar o cache. cac%e&effective&group squid: <rupo a -ual criara o cache. visible&%ostname: "ome do ser*idor pro 5. aut%&param basic c%ildren )*: "Imero de processos usados para autenticao de usuarios. aut%&param basic realm "ro#$ +,-SO: "ome -ue ser$ usado na tela de autenticao do 1ro 5. aut?Cpara( basic progra( 6bin6ncsaCaut? 6etc6s-uid6s-uidCpass2d: Ar-ui*o de senhas dos usuarios do 1ro 5.

$1.8 - Op7es de Segurana A grande maioria dos administradores de sistemas pro*a*elmente dese@ar$ de%inir uma pol)tica de segurana no 0-uid, isto (, de%inir -uem ir$ acessar e o -ue poder$ ser acessado. E primeiro passo para a de%inio de controle de acesso ao proxy do 0-uid ( a criao de listas de acesso. As listas de acesso meramente do nomes a o.@etos. +stes o.@etos podem ser dom)nios de origem, dom)nios de destino, endereos de 81, etc. A %orma geral de uma linha de lista de acesso (: acl "E6+ >81E EJs1 EJs&... Ende: #KD!7 ( um nome -ue ser$ utili#ado para identi%icar esta lista de acesso\ GI'K7 indica -ual ( o o.@eto a -ue nos re%erimos nesta linha. 1ode ser: src7 especi%ica um 81:m$scara de origem, ou se@a, entram nesta categoria as re-uisies -ue partiram da rede. +speci%ica uma lista de acesso chamada localhost, de%inida como re-uisies *indas da m$-uina local (1&7.;.;.1!. dst7 especi%ica um 81:m$scara de destino, ou se@a, entram nesta categoria todas as re-uisies destinadas para a-uele par 81:m$scara\ srcdomain7 especi%ica um dom)nio de origem, ou se@a, entram nesta categoria as re-uisies -ue partiram do dom)nio especi%icado\ dstdomain7 especi%ica um dom)nio de destino, ou se@a, entram nesta categoria as re-uisies de o.@etos locali#ados na-uele dom)nio\

time7 especi%ica uma e presso descre*endo _tempo_. B %ormado por uma e presso de data, -ue ( uma lista de a.re*iaes dos dias da semana (0 D Domingo, 6 D 0egundaD%eira, > D >eraD%eira, ^ D KuartaD%eira, C D KuintaD%eira, F D 0e taD%eira e A D 0$.ado!, seguida por uma inter*alo de datas no %ormato hh1:mm1Dhh&:mm&. ident7 especi%ica um ou mais nomes de usu$rio. url?regex7 comparao de F94 .aseada em e presses regulares. port7 "umero da porta do destino. Arp7 +ndereo +thernet ( 6A, !. !xemplos7 a l se4! 3"lW"e<e4 +3lhe"es. !+.b" 'layb!y. !+.b" htt'Wa ess de#y se4! a l @!<!s 3"lW"e<e4 @!<!s. !+.b" @!<!s <a+es a l +a?1 s" 10.85.1.2-/32 htt'Wa ess de#y @!<!s +a?1 4em.rar de li.erar o acesso da rede local. a l +i#haW"ede s" 10.85.1.0/2htt'Wa ess all!5 all +i#haW"ede E padro do 0-uid ( negar acesso a tudo e a todos. 1ara permitir a utili#ao do proxy do 0-uid, *oc2 de*e con%igur$Dlo para permitir o acesso. "ormalmente, apenas insereDse uma regra a mais: httpOaccess allow all E.*iamente, isto no restringe o acesso ao seu ser*idor proxy, muito pelo contr$rio, li.era o acesso a -ual-uer m$-uina na 8nternet. 1ara iniciali#ar o 0-uid, a.ra um terminal e digite: # /et /" .d/i#it.d/s?3id sta"t
8niciali#ando o 0-uid N E` P

E,erc9cio1 1D ,on%igure um ser*idor 1ro 5 para -ue o usuario aluno1 no possa acessar os sites glo.o.com, uol.com..r

& Q 1ermita -ue o usuario aluno& possa acessar somente o site www.nscontrol.com..r

$$ - Ser'idor SSE

E ser*io de ssh permite %a#er o acesso remoto ao console de sua m$-uina, em outras pala*ras, *oc2 poder$ acessar sua m$-uina como se esti*esse conectado localmente ao seu console (su.stituindo o rlogin e rsh!. A principal di%erena com relao ao ser*io telnet padro, rlogin e rsh ( -ue toda a comunicao entre cliente:ser*idor ( %eita de %orma encriptada usando cha*es pI.licas:pri*adas 90A para criptogra%ia garantindo uma trans%er2ncia segura de dados. A *elocidade do console remoto conectado *ia 8nternet ( e celente (melhor -ue a o.tida pelo telnet e ser*ios re! dando a impresso de uma cone o em tempo real (mesmo em linUs discados de A.H;; `J:s!, a compactao dos dados tam.(m pode ser ati*ada para ele*ar ainda mais a *elocidade entre clienteDser*idor ssh. Al(m do ser*io de acesso remoto, o scp possi.ilita a trans%er2ncia:recepo segura de ar-ui*os (su.stituindo o rcp!. +m cone es sem criptogra%ia (rsh, rlogin! os dados tra%egam de %orma desprotegida e caso e ista algum sni%%er instalado em sua rota com a m$-uina destino, todo o -ue %i#er poder$ ser capturado (incluindo senhas!. $$.1 3 Caracter9sticas A.ai o as principais caracter)sticas do ser*io ssh (Epenssh!. ,one o de dados criptogra%ada entre cliente:ser*idor. ,'pia de ar-ui*os usando cone o criptogra%ada. 0uporte a %tp criptogra%ado (s%tp!. 0uporte a compactao de dados entre cliente:ser*idor. ,ontrole de acesso das inter%aces ser*idas pelo ser*idor ssh. 0uporte a controle de acesso tcp wrappers. Autenticao usando um par de cha*es pI.lica:pri*ada 90A ou D0A. Algoritmo de criptogra%ia li*re de patentes. 0uporte a 1A6. $$.$ 3 Conectando ao ser'idor SSE +sta ( a %erramenta usada para sees de console remotos. E ar-ui*o de con%igurao de usu$rios ( a:.ssh:con%ig e o ar-ui*o glo.al :etc:ssh:sshOcon%ig. 1ara conectar a um ser*idor ssh remoto:

ssh 3s3a"i!Yi'/#!+eWd!Wse"vid!"Wssh ,aso o nome do usu$rio se@a omitido, seu login atual do sistema ser$ usado. E uso da opo -C ( recomendado para ati*ar o modo de compactao dos dados (Itil em cone es lentas!. A opo -l usuIrio pode ser usada para alterar a identi%icao de usu$rio (-uando no ( usada, o login local ( usado como nome de usu$rio remoto!. Fma porta alternati*a pode ser especi%icada usando a opo -p porta (a && ( usada por padro!. "a primeira cone o, a cha*e pI.lica do ser*idor remoto ser$ gra*ada em a:.ssh:UnowOhosts ou a:.ssh:UnowOhosts& (dependendo da *erso do ser*idor ssh remoto e *eri%icada a cada cone o como checagem de segurana para se certi%icar -ue o ser*idor no %oi al*o de -ual-uer ata-ue ou modi%icao no autori#ada das cha*es. 1or padro, o cliente utili#ar$ o protocolo ssh *erso 1, a opo -$ permite usar o protocolo *erso &. Vari$*eis de am.iente personali#adas para o ssh podero ser de%inidas no ar-ui*o a:.ssh:en*ironment. ,omandos -ue sero e ecutados somente na cone o ssh em a:.ssh:rc e :etc:ssh:sshrc caso contr$rio ser$ e ecutado o auth por padro. $$.03 Con)igurando ser'idor SSE f 1orta padro usada pelo ser*idor sshd. 6Iltiplas portas podem ser f especi%icadas separadas por espaos. 1ort && f +speci%ica o endereo 81 das inter%aces de rede -ue o ser*idor sshd f ser*ir$ re-uisies. 6Iltiplos endereos podem ser especi%icados f separados por espaos. A opo 1ort de*e *ir antes desta opo 4istenAddress ;.;.;.; f 1rotocolos aceitos pelo ser*idor, primeiro ser$ *eri%icado se o cliente ( f compat)*el com a *erso & e depois a *erso 1. ,aso se@a especi%icado f somente a *erso & e o cliente se@a *erso 1, a cone o ser$ descartada. f Kuando no ( especi%icada, o protocolo ssh 1 ( usado como padro. 1rotocol &,1 f As 3 opes a.ai o controlam o acesso de usu$rios:grupos no sistema. f 1or padro o acesso a todos ( garantido (e ceto o acesso root se f 1ermit9oot4ogin %or _no_!. AllowFsers e Allow<roups de%inem uma lista f de usu$rios:grupos -ue podero ter acesso ao sistema. Es coringas f _e_ e _]_ podem ser especi%icados. "ote -ue somente "E6+0 so *$lidos, f F8D e <8D no podem ser especi%icados. f f As direti*as Allow so processadas primeiro e depois Den5. E m(todo -ue f estas direti*as so processadas ( id2ntico a direti*a f _Erder mutualD%ailure_ do controle de acesso do Apache: f E usu$rio de*er$ >+9 acesso *ia AllowFsers e Allow<roups e "cE ser .lo-ueado f por Den5Fsers e Den5<roups para ter acesso ao sistema. 0e uma das direti*as f no %or especi%icada, _e_ ( assumido como padro. f +stas permisses so checadas ap's a autenticao do usu$rio, por-ue f dados a ele pelo :etc:passwd e 1A6 so o.tidos ap's o processo de f autenticao.

fAllowFsers gle5dson teste] fDen5Fsers root adm fAllow<roups users fDen5<roups root adm .in f 1ermite (5es! ou no (no! o login do usu$rio root 1ermit9oot4ogin no f ,ha*es pri*adas do ser*idor (as cha*es pI.licas possuem um _.pu._ adicionado f no %inal do ar-ui*o. Cost`e5 :etc:ssh:sshOhostOUe5 Cost`e5 :etc:ssh:sshOhostOrsaOUe5 Cost`e5 :etc:ssh:sshOhostOdsaOUe5 f >amanho da cha*e. 7H= .its ( o padro 0er*er`e5Jits 7H= f >empo m$ imo para login no sistema antes da cone o ser %echada 4ogin<race>ime H;; f >empo para gerao de no*a cha*e do ser*idor (segundos!. E padro ( f /H;; segundos (1 hora!. `e59egeneration8nter*al /H;; f 8gnora os ar-ui*os a:.rhosts e a:.shosts 8gnore9hosts 5es f 8gnora (5es! ou no (no! os ar-ui*os a:.ssh:UnownOhosts -uando %or usado f para a opo 9hosts90AAuthentication. 0e *oc2 no con%ia neste mecanismo f a@uste esta opo para 5es. 8gnoreFser`nownCosts no f ,heca por permisses de dono dos ar-ui*os e diret'rio de usu$rio antes de f %a#er o login. B muito recomend$*el para e*itar riscos de segurana f com ar-ui*os lidos por todos os usu$rios. 0trict6odes 5es f 1ermite (5es! ou no (no! o redirecionamento de cone es G11. A segurana f do sistema no ( aumentada com a desati*ao desta opo, outros m(todos f de redirecionamento podem ser usados G11Forwarding 5es f +speci%ica o nImero do primeiro displa5 -ue ser$ usado para o redirecionamento f G11 do ssh. 1or padro ( usado o displa5 1; como inicial para e*itar con%lito f com displa5 G locais G11Displa5E%%set 1; f 6ostra (5es! ou no (no! a mensagem em :etc:motd no login. E padro ( _no_. 1rint6otd no f 6ostra (5es! ou no (no! a mensagem de Iltimo login do usu$rio. E padro ( _no_. 1rint4ast4og no

f 1ermite (5es! ou no (no! o en*io de pacotes Ueepali*e (para *eri%icar se o f cliente responde. 8sto ( .om para %echar cone es -ue no respondem mas f tam.(m podem %echar cone es caso no e istam rotas para o cliente f na-uele momento (( um pro.lema tempor$rio!. ,olocando esta opo como f _no_ por outro lado pode dei ar usu$rios -ue no ti*eram a oportunidade f de e%etuar o logout do ser*idor dados como _permanentemente conectados_ f no sistema. +sta opo de*e ser ati*ada:desati*ada a-ui e no programa f cliente para %uncionar. `eepAli*e 5es f Facilidade e n)*el das mensagens do sshd -ue aparecero no s5slogd 05slogFacilit5 AF>C 4og4e*el 8"FE f +speci%ica se somente a autenticao *ia ar-ui*os a:.rhosts e :etc:hosts.e-ui* ( f su%iciente para entrar no sistema. "o ( muito .om usar _5es_ a-ui. 9hostsAuthentication no f 6esmo -ue o acima com o acr(scimo -ue o ar-ui*o :etc:ssh:sshOUnownOhosts tam.(m f ( *eri%icado. >am.(m e*ite usar _5es_ a-ui. 9hosts90AAuthentication no f +speci%ica se a autenticao *ia 90A ( permitida (s' usado na *erso 1 do f protocolo ssh!. 1or padro _5es_. 90AAuthentication 5es f 1ermite autenticao usando senhas (ser*e para am.as as *erses 1 e & do ssh!. f E padro ( _5es_. 1asswordAuthentication 5es f 0e a 1asswordAuthentication %or usada, permite (5es! ou no (no! login f sem senha. E padro ( _no_. 1ermit+mpt51asswords no f Ati*a senhas s:Ue5 ou autenticao 1A6 "J interati*a. "enhum destes ( f compilado por padro @unto com o sshd. 4eia a p$gina de manual do f sshd antes de ati*ar esta opo em um sistema -ue usa 1A6. ,hallenge9esponseAuthentication no f Veri%ica se o usu$rio possui emails ao entrar no sistema. E padro ( _no_. f +ste m'dulo tam.(m pode estar sendo ha.ilitado usando 1A6 (neste caso f che-ue a con%igurao em :etc:pam.d:ssh!. ,hecU6ail no f +speci%ica se o programa login ( usado para controlar a sees de shell f interati*o. E padro ( _no_. Fse4ogin no f +speci%ica o nImero m$ imo de cone es de autenticao simult?neas %eitas f pelo daemon sshd. E *alor padro ( 1;. Valores aleat'rios podem ser

f especi%icados usando os campos _inicio:ta a:m$ imo_. 1or e emplo, f 5:3;:15 re@eita at( 3;w das tentati*as de autenticao -ue e cedam o f limite de 5 at( atingir o limite m$ imo de 15 cone es, -uando f nenhuma no*a autenticao ( permitida. 6a 0tartups 1; f6a 0tartups 1;:/;:H; f 6ostra uma mensagem antes do nome de usu$rio:senha Janner :etc:issue.net f +speci%ica se o ser*idor sshd %ar$ um D"0 re*erso para *eri%icar se o f endereo con%ere com a origem (isto ( Itil para .lo-uear cone es f %alsi%icadas D spoo%ing!. E padro ( _no_. 9e*erse6apping,hecU 5es AllowFsers aldeman netstate

$$.83 Con)igurando ser'idor SSE para autentio por c?a'e de criptogra)ia. E processo consiste em criar uma cha*e pu.lica e pri*ada na ma-uina clientes e en*iar nossa cha*e pu.lica para o ser*idor 00C -ue ira reali#ar autenticacao atra*es desta cha*e. 1ara isso crie um usu$rio no ser*idor e na estao chamado user1. "o computador cliente logue com o usuario user1 e e ecute o seguinte comando:
# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /home/user1.ssh/id_rsa.pub. The key fingerprint is: xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx

A cha*e 1ri*ada est$ em _a:.ssh:idOrsa_ e a 1I.lica em _a:.ssh:idOrsa.pu._.

1ara -ue se@a poss)*el uma cone o 00C sem senha entre cliente e ser*idor, ( preciso di*ulgar para o ser*idor a cha*e pI.lica gerada pelo cliente. B poss)*el %a#er esta c'pia remotamente e ecutando os seguintes comandos:
# scp /home/user1/.ssh/id_rsa.pub user1@192.168.0.1:/tmp/

(digitar senha) # ssh user1@192.168.0.1 (digitar senha) # cat /tmp/id_rsa.pub >> /home/user1/.ssh/authorized_keys

Veri%i-ue se as permisses do ar-ui*o esto 711, e reinicie o ser*idor 00C.

E,ercicio1

1D ,on%igure seu ser*ido 00C para -ue somente o usuario aluno1 possa logar remotamente.

& Q ,o%igure seu ser*idor para permitir autenticao pelo metodo de cha*e com o ser*ido a sua %rente.

$0 3 Ser'idor .5"P

4DA1 ( um protocolo (e ecutado so.re o >,1:81! clienteDser*idor, utili#ado para acessar um ser*io de Diret'rio. +le %oi inicialmente usado como uma inter%ace para o G.5;;, mas tam.(m pode ser usado com autonomia e com outros tipos de ser*idores de Diret'rio. Atualmente *em se tornando um padro, di*ersos programas @$ t2m suporte a 4DA1. Fm Diret*rio ( como um .anco de dados, mas tende a conter mais in%ormaes descriti*as, .aseadas em atri.uto e ( organi#ado em %orma de $r*ore, no de ta.ela. A in%ormao em um Diret'rio ( geralmente mais lida do -ue ( escrita. ,omo conse-Y2ncia, Diret'rios normalmente no so usados para implementar transaes comple as, ou es-uemas de consultas regulares em .ancos de dados, transaes estas -ue so usadas para %a#er um grande *olume de atuali#aes comple as. Atuali#aes em Diret'rios so tipicamente simples ou nem so %eitas. Diret'rios so preparados para dar resposta r$pida a um grande *olume de consultas ou operaes de .usca. +les tam.(m podem ter a ha.ilidade de replicar in%ormaes e tensamente\ isto ( usado para acrescentar disponi.ilidade e con%ia.ilidade, en-uanto redu#em o tempo de resposta. + istem *$rias maneiras di%erentes para disponi.ili#ar um ser*io de Diret'rio. 6(todos di%erentes permitem -ue di%erentes tipos de in%ormaes possam ser arma#enadas no Diret'rio, colocando re-uerimentos di%erentes, so.re como a-uela in%ormao poder$ ser re%erenciada, re-uisitada e atuali#ada, como ela ( protegida de acessos no autori#ados, etc. "o 4DA1, entradas de Diret'rio so organi#adas em uma hierar-uia de $r*ore in*ertida, semelhante em alguns aspectos W organi#ao do D"0. A estrutura desta $r*ore geralmente re%lete limites pol)ticos, geogr$%icos e:ou organi#acionais. E n' mais alto (root! ( tipicamente o componente nome de dom)nio dc de uma companhia, estado ou organi#ao. A.ai o %icam as entradas representando estados ou organi#aes nacionais. A.ai o elas podem ser entradas representando pessoas, unidades organi#acionais, impressoras, documentos, ou -ual-uer outra coisa em -ue *oc2 possa pensar. A %igura mostra um e emplo de um Diret'rio 4DA1 em $r*ore.

$0.1 Con)igurando u( ser'idor .5"P

A %inalidade e con%igurar um ser*idor 4DA1 para o dominio curso.com, criar Fnidades Ergani#acionais e importar as contas de usuarios do 4inu @a e istentes para o ser*idor 4DA1. 1ara con%igurar um ser*idor 4DA1 no 4inu precisamos instalar o pacote openldap. # yum install openldap*

Apos instar os pacotes edite o ar-ui*o de con%igurao slapd.con% e altere as seguintes linhas a.ai o: # vi /etc/openldap/slapd.conf

suffix

"dc=curso,dc=com"

rootdn rootpw

"cn=root,dc=curso,dc=com" {SSHA}hmeBo/v78Vj/RGhm5SCDX9o2dWtaZPOY

A linha rootpwd de*e ter a senha do administrador do 4DA1 codi%icada. 1ara gerar esta cha*e digite o comando: # slappasswd

1recisamos agora construir a .ase do 4DA1 para isso iremos criar a Ergani#acao ,urso e as unidades Ergani#acionais Fsuarios e <rupos. 1ara reali#armos esta tare%a teremos -ue criar um ar-ui*o com a e tenso .ldi% com as in%ormaes necessarias. 0egue a.ai o um e emplo do -ue iremos utili#ar: # vi /root/base.ldif dn: dc=curso,dc=com

objectClass: dcObject

objectClass: organization

o: Organizacao Curso dc: curso

dn: cn=root, dc=curso,dc=com

objectClass: organizationalRole

cn:root

dn: ou=Usuarios,dc=curso,dc=com

objectClass: organizationalUnit

ou: Usuarios

dn: ou=Grupo,dc=curso,dc=com

objectClass: organizationalUnit

ou: Grupo

Agora iremos utili#ar o comando ldapadd para criar nossa .ase do ldap.

ldapadd -h base.ldif Ende:


localhost

-x

-D

"cn=root,dc=curso,dc=com"

-W

-f

D : indica -ue ser$ usada autenticao simples\ DD _Dn do usu$rio_ : indica o Dn do usu$rio -ue *ai %a#er a operao no diret'rio. D^ : %a# -ue aparea um prompt pedindo a senha do usu$rio\ D% _ar-ui*oOldi%OcomOregistros_ : indica o ar-ui*o -ue cont(m os registros a serem inseridos no diret'rio. "dicionando u( usuario

$0.$

1ara adicionar um usuario no 4DA1 precisamos criar o usuario no 4inu e utili#ar um script -ue @a *em @unto com o pacote openldap para migrar esta conta para .ase 4DA1, porem precisamos con%igurar antes o script a ser utili#ado. # vi /usr/share/openldap/migration/migrate_common.ph

$DEFAULT_MAIL_DOMAIN =curso.com; $DEFAULT_BASE = dc=curso,dc=com;

1ara %acilitar estaremos criando um linU no direotrio :root # ln -s /usr/share/openldap/migration/migrate_passwd.pl /root/migrate_passwd # ln -s /usr/share/openldap/migration/migrate_group.pl /root/migrate_group

Agora podemos criar o usuario e importar para .ase 4DA1. # useradd cent # passwd cent

# grep ^cent /etc/passwd > passwd # grep ^cent /etc/group > group

,riando os ar-ui*os .ldi%

#./migrate_passwd passwd > passwd.ldif #./migrate_group group > group.ldif

Agora inserindo os usuarios e grupos na Fnidade Ergani#acional dese@ada.

# ldapadd -h passwd.ldif # ldapadd -h group.ldif

localhost localhost

-x -x

-D -D

"cn=root,dc=curso,dc=com" "cn=root,dc=curso,dc=com"

-W -W

-f -f

1ara apagar um usuario .asta utili#ar o seguinte comando:

ldapdelete -h localhost -x -D 'cn=root,dc=curso,dc=com' "uid=cent,ou=Usuario,dc=curso,dc=com" 1ronto agora .asta reiniciar o ser*io ldap /etc/rc.d/init.d/ldap restart $0.0 Con)igurando u(a estao .inu,1

-W

1recisamos editar os ar-ui*os do cliente ldap ( :etc:ldap.con% e :etc:openldap:ldap.con% ! e in%ormar o dominio do 4DA1. # vi /etc/openldap/ldap.conf BASE dc=curso, dc=com

# vi /etc/ldap.conf host 192.168.0.1 base dc=curso,dc=com Agora precismos mudar o :etc:nsswitch.con%

passwd:

files ldap

shadow:

files ldap

group:

files ldap

+ acrescentar as linhas a.ai o no :etc:pam.d:s5stemDauth

auth

sufficient

pam_ldap.so use_first_pass

account [default=bad success=ok user_unknown=ignore] pam_ldap.so

password

sufficient

pam_ldap.so use_authtok

session

optional

pam_ldap.so

E,ercicio1 1 Q ,on%igure um ser*idor 4DA1 para o dominio curso.com

& Q ,on%igure sua ma-uina para ser um cliente 4DA1 do dominio a sua %rente.

$8 3 Ser'idor @P#
Jasicamente o seu conceito ( a ligao de duas (ou mais! redes pri*adas passando por uma rede pI.lica (internet!, ou se@a, interligar matri# e %ilial. ,om isso trans%ormamos duas (ou mais! redes com se %ossem uma, ou se@a, duas redes distintas, %isicamente separadas, por(m logicamente unidas como se %ossem uma Inica rede. Ftilit$rio de con%igurao de V1" .aseado no 810ec. E Free0:^an tem um daemon -ue controla as trocas de cha*es e con%igura:descon%igura as inter%aces. >odas as mensagens -ue podero ser *istas durante o .oot sero geradas por ele. $8.1 3 Criando as c?a'es do ser'idor. 1recisamos criar as cha*es pu.licas e pri*adas -ue serp utili#adas para o %echamento da cone o de V1" entre os ser*idores. 1ara criar uma cha*e de 51& .its digite o seguinte comando: ipsec rsasigkey 512 $8.$ 3 "r-ui'o 6etc6ipsec.secrets "o ar-ui*o ipsec.secrets de*emos colocar a saida do comando ipsec rsasigUe5 51&. +sse ar-ui*o ( o responsa*el em guardar a cha*e pri*ada do ser*idor V1". EJ0: A primeira linha de*e ser a Inica -ue de*e inciar no comeo da linha as demais de*em iniciar apos um >AJ. : RSA { # RSA 512 bits sl01 Mon May 5 17:31:26 2008

# for signatures only, UNSAFE FOR ENCRYPTION #pubkey=0sAQPU59zdfsghehthskdwUv5eHYi1i5thtrhyrjrfXLLaobccl Gzz6CpbsEWO4ZBICaxczg2gt4t21dl1QHhph5 Modulus: 0xd4e7dcfc730e40dfegrehy3hc2232c91dc14bf9787622d62e5dc57cd8ed37d72cb 6a86dc7251bc4tfa0a96ec1163b86412026916972cx43r34x3t407869879 PublicExponent: 0x03 # everything after this point is secret

PrivateExponent: 0x237bfa2a132d0a43c3ct665ba5560876da4ae1fee96905ce5d0fa0ea24278949aa 1cd212c354cc5f62bb584e1d74ddda10b77b17134ct390f2c59c29a58ffa9 Prime1: 0xedda780ea216760580fc2637f7ecb34c3c34c68436ef7f7922ad8661d8df Prime2: 0xe52623b13ba79f5d34c53c60bf667653b52caca3aa8366862da5a16e30ec1a7 Exponent1: 0x9e91a55f16b9a403ab52c4254c534c43v8e58249faa50c1c904413b3f Exponent2: 0x98c417cb7d1a6a3e9c61c9aeb2a444ee278cxqwq3xt73c3c0f4209d66f Coefficient: 0x1bf2cc753357cc2cawxercctw3y5v12f6554a2dc0e3a9cdedc611186 } $8.0 3 "r-ui'o 6etc6ipsec.con) version 2 config setup interfaces="ipsec0=eth0" klipsdebug=none plutodebug=none conn %default esp=3des-md5-96 authby=rsasig conn nscontrol-nscontrol left=200.227.185.127 leftsubnet=192.168.0.0/24 leftnexthop=200.227.185.1276 leftrsasigkey=0sAQN6gUertertetOuu6zG+zKbDGcLfPv6Ztl9JyAXq JCN16kKmX/P+KCXVtuJzFO0Jfv7+asdadcdx0V3UpdsPKMl5/rTBV right=200.253.56.25 rightsubnet=192.168.2.0/24

rightnexthop=200.253.56.254 rightrsasigkey=0sAQPUasdasdgdgew5AcTikpmJeAEMskdwUv5eHYi1 i5dxXzY7TfXLLaobcclGzz6Cpbasdadqvfqfzj1dl1QHhph5 auto=start inter)acesJZipsec:Jet?:Z 8n%orma -ual inter%ace ser$ utili#ada para criar o canal de V1" klipsdebugJnone plutodebugJnone +stas opes geralmente so mais necess$rias -uando a sua V1" est$ com algum pro.lema. +las _medem_ o n)*el de in%ormao -ue ser$ logado pelo ser*io I'&ec. 0e *oc2 -uiser o m$ imo de in%ormaes poss)*el, ( s' mudar _none_ para _all_. uni-ueidsJ*es +sta opo %a# com -ue uma cone o antiga se@a encerrada -uando uma no*a, com a mesma 8D, aparea. ke*ingtriesJ: +sta opo indica a -uantidade de tentati*as -ue de*em ser %eitas para se negociar uma cone o antes de desistir. +sta opo s' tem e%eito localmente, ou se@a, o outro lado no precisa necessariamente ter o mesmo nImero de tentati*as especi%icadas nesta opo. 1ara %a#er com -ue o ser*io no desista nunca, dei e com o _;_ ou su.stitua por w%ore*er (( recomendado -ue se dei e o _;_!. disablearri'alc?eckJno Ca.ilita ou desa.ilita a checagem dos pacotes -ue aca.am de chegar do tInel. B recomendado -ue *oc2 nunca desa.ilite esta opo, pois ela aumenta a segurana e con%ia.ilidade do tInel e no atrapalha em nada. aut?b*Jrsasig De%ine como os gatewa5s participantes da V1" iro autenticarDse. As opes so:

secret, para senhas ou cha*es 10` rsasig, para assinaturas 90A (o padro e melhor opo!\

conn sa(ple A-ui comeam as con%iguraes dos tIneis -ue sero esta.elecidos. A linha _conn sample_ ( o nome da cone o. Voc2 poderia mud$Dla para -ual-uer nome, como _conn %ortale#a_. 4em.reDse -ue *oc2 no pode mudar o _conn_, apenas o nome -ue segue. le)tJ$1:.,,,.,,,.,,, rig?tJ$::.,,,.,,,.,,,

De%ine -ual ser$ a ponta le%t (ou right! do seu tInel V1". E Free0:^A" tra.alha do seguinte modo: cada host participante do tInel pode ser le%t ou right. "o importa -ual se@a o tipo da V1" a ser esta.elecida, *oc2 sempre de*e de%inir -uem ser$ o le%t e -uem ser$ o right. "esta opo, de*e ser de%inido o 81 do host -ue *oc2 de%iniu -ue ser$ o le%t. "o tem muita import?ncia um host ser le%t ou right desde -ue *oc2 se@a consistente na sua escolha, ou se@a, se *oc2 de%iniu o host gatewa51 como le%t, re%erencieD se a ele sempre como le%t. le)tsubnetJ1>$.1;=.:.:6$8 rig?tsubnetJ1>$.1;=.:.:6$8 A-ui ( de%inido -ual ( o endereo da su.Drede (da rede -ue est$ _atr$s_! do host. "o e emplo ( 1A&.1H=.;.;, -ue ( um endereo de classe ,. 0e us$ssemos um endereo de classe A, de*er)amos colocar :=\ caso %osse classe J seria :1H. le)trsasigke*J:sNPaa;... rig?trsasigke*JNb1\psoeDeB... A-ui *oc2 de*e colocar a cha*e 90A do host le%t para -ue o tInel se@a esta.elecido com sucesso. A cha*e -ue de*e ser colocada a-ui, ( a cha*e -ue est$ no ar-ui*o ipsec.secrets, mais especi%icamente a cha*e -ue est$ na linha _pu.Ue5Z..._, -ue %oi gerada com o comando ipsecOrsasigUe5 le)tne,t?opJ$::.,,,.,,,.,,, rig?tne,t?opJ$::.,,,.,,,.,,, A-ui de*e ser de%inido -ual o endereo 81 do gatewa5 usado pelo host. +sta opo s' tem import?ncia localmente, ou se@a, no necessariamente de*e ser igual nas duas pontas do tInel. autoJstart De%ine -uando a cone o re%erenciada por esta opo ser$ ati*ada. Alguns *alores -ue podem ser colocados a-ui so:

start Z de%ine -ue a cone o ser$ iniciada assim -ue o ser*io 810ec %or iniciado\ add Z de%ine -ue a cone o ser$ %eita manualmente. 1ara -ue se consiga esta.elecer a cone o manualmente, de*eD se usar o comando ipsec auto DDup nomeOdaOcone o.

$8.8 3 Testando o ser'ico 1ara testarmos a V1" precisamos inciar o ser*ico ipsec com o comando ser*ice ipsec start e depois *eri%icar se os tuneis %oram criados com o comando ipsec looU: #ipsec look Destination irtt Iface Gateway Genmask Flags MSS Window

0.0.0.0 0 eth0 192.168.2.0 0 eth0 189.6.103.0 0 eth0 189.6.103.0 0 eth0

189.6.103.1

0.0.0.0

UG

0 0

189.6.103.1 0.0.0.0

255.255.255.0 255.255.255.0

UG U

0 0 0 0

0.0.0.0

255.255.255.192 U

0 0

De uma estao tente esta.elecer algum tipo de comunicao com alguma m$-uina da rede remota. + : ping 1A&.1H=.&.&;

$5 - Kire2all

E o.@eti*o do cap)tulo (: Apresentar a %erramenta ipta.les. 6ostrar o seu %uncionamento, con%igurao e e emplos de uso. $5.1 - iptables A sinta e do ipta.les ( .astante similar W do ipchains. As alteraes so aper%eioamentos na %erramenta em resposta a melhoramentos nas .i.liotecas compartilhadas. . A %erramenta ipta.les %a# parte do pacote nettilter e pode ser encontrada em seu site o%icial onde tam.(m se pode encontrar a sua documentao em *$rios idiomas.

$5.$ - #o'os "spectos ,om o "et%ilter ( introdu#ido o conceito de ta.elas (ta.les!, %oram criada_s tr2s ta.elas chamadas de: %ilter, nat e mangle. A >a.ela 3D1 mostra a relao entre as cadeias padro e as ta.elas. Tabela %ilter nat Cadeias usadas 8"1F>, FE9^A9E e EF>1F> 19+9EF>8"<, 1E0>9EF>8"< e EF>1F>

mangle

19+9EF>8"< e EF>1F>

Tabela $5-1. Tabelas

Kuanto ao al*o das regras, e istem algumaa di%erenas com relao ao ipchains, os al*os mais comuns so: A,,+1> o pacote ( aceito por essa cadeia e segue em %rente. D9E1 o pacote e re@eitado pela cadeia, no e iste uma mensagem 8,61. 9+s+,> 0emelhante ao D9E1, por(m retoma uma mensagem 8,61. +ste destino somente ser$ *$lido nas cadeias 8"1F>, FE9^A9D e EF>1F> 9+D89+,> Altera o endereo 81 de destino do pacote e ser$ usado unicamente na ta.ela nat. +ste destino ser$ usado unicaDmente nas cadeias 19+9EF>8"< e EF>1F>. 9+>F9" 9etorna para a cadeia anterior, e continua a processamento. 6A0KF+9AD+ B usado unicamente em cone es discadas com endereo +P din?micX. 0e %or utili#ado endereo 81 est$tico de*eD se usar o al*o 0"A>. +ste destino somente ( *$lido para a ta.ela nat e na cadeia 1E0>9EF>8"<. >er em *ista -ue alguns destes al*os so na realidade m'dulos, e como todo m'dulo tem -ue ser carregado antes de poder ser usado. ,aso o Uernel tenha sido con%igurado para carregamento autom$tico dos m'dulos, este processo ser$ transparente para o usu$rio. $5.0 - Fsando iptables A %erramenta ipta.les ( usada para con%igurar as regras do net%ilter. A sua sinta e ( muito parecida com a do ipchains, por(m se di%erencia num aspecto muito signi%icati*o: ela ( e tens)*el. 8sto signi%ica -ue suas %uncionalidades so e tens)*eis sem a necessidade de recompilao. 8sso ( poss)*el graas ao uso de .i.liotecas compartilhadas. Antes de poder usar o comando iptables ( preciso carregar o m'dulo correspondente do net%ilter como mostrado a seguir: K"!!tY allist! j]# +!d'"!be i'Wtables +ste comando ( necess$rio tanto para con%igurar o %iltro de pacotes como para con%igurar o "A> ("etworU Address >ranslation D traduo de endereos!. 1ara %acilitar esse tra.alho e istem as tr2s ta.elas de regras mostradas anteriormente: %ilter, nat e mangle. E %iltro de pacotes assume por padro -ue est$ tra.alhando com a ta.ela filter,

A sinta e gen(rica usada pelo comando iptables ( mostrada a seguir:


i'tables !+a#d! regras extenses

,aso se -ueira tra.alhar com as outras ta.elas ser$ necess$rio usar o par?metro D t para alternar entre as ta.elas %ilter, nat e mangle. $5.8 -Co(andos do iptables +ste grupo de opes de%ine a ao espec)%ica a e ecutar\ somente um deles pode ser especi%icado na linha de comando. 0o os comandos de edio das cadeias. DA cadeia Ane a regras ao %inal de uma cadeia. 0e um nome de host ( %ornecido, como %onte ou como destino, uma regra ( adicionada para cada 81 relacionado a este host. DD cadeia Apaga uma ou mais regras da cadeia especi%icada.
DD cadeia regraOnum

Apaga a regra residente na posio _regraOnum_ da cadeia especi%icada. A primeira regra na cadeia ( a de nImero 1.
D9 cadeia regraOnum

0u.stitui a regra _regraOnum_ da cadeia especi%icada pela regra dada. D8 cadeia regraOnum 8nsere uma ou mais regras no comeo da cadeia. 0e um nome de host ( %ornecido, como %onte ou como destino, uma regra ( adicionada para cada 81 relacionado a este host.
D4 NcadeiaP

4ista todas as regras em uma cadeia. ,aso no ha@a nenhuma cadeia especi%icada, todas as regras em todas as cadeias so listadas.
DF NcadeiaP 9emo*e todas as regras de uma cadeia. 0e nenhuma cadeia %or especi%icada, remo*e as regras de todas as cadeias e istentes, inclusi*e as do usu$rio. D# NcadeiaP

9estaura os contadores de datagramas e de .5tes em todas as regras das cadeias especi%icadas para #ero, ou para todas as cadeias se nenhuma %or especi%icada. D" cadeia ,ria uma cadeia de%inida pelo usu$rio com o nome especi%icado.
D NcadeiaP

Apaga a cadeia de%inida pelo usu$rio ou todas se no %or especi%icada uma.

D, cadeia Veri%ica o datagrama descrito pela regra especi%icada contra a cadeia especi%icada. +ste comando retoma uma mensagem descre*endo como a cadeia processou o datagrama. 8sto ( muito Itil para testar a con%igurao do %irewall, e para uma an$lise posterior. D1 cadeia pol)tica De%ine a pol)tica padro para uma cadeia dentro de uma pol)tica especi%icada. As pol)ticas *$lidas so: A,,+1>, D9E1, KF+F+ e 9+>F9". A,,+1> permite a passagem do datagrama. D9E1 descarta o datagrama. KF+F+ passa o datagrama para a $rea do usu$rio para posterior processamento. 9+>F9" %ora o c'digo do %irewall a retomar para a cadeia anterior e continua o processamento na regra seguinte W -ue retomou. $5.5 - &egras As seguintes regras podero ser usadas:
Dp NyPprotocol

De%ine o protocolo ao -ual a regra se aplica. E par?metro protocol pode ser -ual-uer *alor num(rico do ar-ui*o /et /'"!t! !l ou uma das pala*ras cha*e: tcp, udp ou icmp.
Ds ryP addressN:masUP

De%ine a origem do pacote ao -ual a regra se aplica. E par?metro address pode ser um nome de host, um nome de rede ou um endereo 81 com uma m$scara de rede opcional.
Dd N8P addressN:masUP

De%ine o destino do pacote ao -ual a regra se aplica. E endereo e a porta so de%inidos usandoDse as mesmas regras utili#adas para de%inir esses *alores para a origem do pacote.
D@ al*o

De%ine um al*o para o pacote caso ele se encai e nesta regra. Es al*os poss)*eis so A,,+1>, D9E1, KF+F+ ou 9+>F9". B poss)*el especi%icar uma cadeia do Dusu$rio. >am.(m ( poss)*el especi%icar uma e tenso (um tipo de plugin!. Di N8P inter%aceOname De%ine o nome da inter%ace por onde o datagrama %oi rece.ido. Fm nome de inter%ace parcial pode ser usado encerrandoDo com um sinal de [\ por e emplo, eth[ corresponderia a todas as inter%aces +thernet iniciadas com eth. Do N8P inter%aceOname De%ine o nome da inter%ace por onde o datagrama ser$ transmitido. E s)m.olo N8P ( usado nas regras para in*ert2D8as, ou se@a, ( negao da e presso (ou o seu complemento!.

+ emplo: Ds 1A&.1H=.;.1;:/& e-ui*ale ao endereo de origem 1A&.1H=.;.1;, Ds y 1A&.1H=.;.1;:/& e-ui*ale a todos os endereos e ceto 1A&.1H=.;.1;. $5.; - Op7es As opes a seguir tam.(m podem ser utili#adas para a con%igurao de uma cadeia:
D*

0a)da em modo *er.ose. 6ais rico em termos de detalhes so.re o -ue est$ acontecendo ou sendo %eito. Dn 0a)da em modo num(rico e no por nome de host, rede ou porta.
D

+ i.e o *alor e ato do pacote e dos contadores de .5tes em *e# de arredond$D8os para o milhar, milho ou .ilho mais pr' imo. $5.< - Conceito e uso do IP 4as-uerade E IP 6as-uerade permite o uso de endereos IP reser*ados na rede interna com o 4inu %uncionando como gateway@ tradu#indo endereos IP e portas numa cone o com o mundo e terno. 1or e emplo\ uma m$-uina na rede local acredita -ue est$ se comunicando diretamente com outra locali#ada %ora da rede, a m$-uina remota no tem nenhuma in%ormao so.re a m$-uina local e acredita -ue est$ se comunicando diretamente com o Cinux mas(uerade 5ost, 1or sua *e# o Cinux mas(uerade 5ost sa.e -ue as duas m$-uinas esto con*ersando entre si e em -uais portas e e ecuta as tradues de portas e endereos IP necess$rios para a cone o entre as duas m$-uinas. "um primeiro momento pode parecer meio con%uso, por(m a sua con%igurao ( .em simples, no se preocupe se no entendeu todos os detalhes ainda. +sse processo %oi criado para permitir -ue um maior nImero de m$-uinas possam estar conectadas com a 8nternet sem a necessidade de se designar um nImero maior de 81s pI.licos para a rede local. $5.= - Con)igurao do IP 4as-uerade Es seguintes comandos so usados para a con%igurao do mas(uerade,
i'tables -t #at -0 ;E(1DE$1*>G ]s 1,2.168.0.0/2- -@ 70(P$)D0D)

1ara listar as regras -ue %oram criadas no ipta.les ' dado o seguinte e emplo:
i'tables ]t #at -2

E,ercicio1 1 Q ,on%igure um Firewall com a politica padrao de .lo-uear -ual-uer tr$%ego e li.ere apenas o necessario -ue sera apresentado em sala de aula.

$; 3 Segurana no ser'idor.
$;.13 TCPC^rappers E pacote tcpOwrappers pode ser utili#ado para controlar o acesso a alguns ser*ios, como por e emplo %inger, telnet e %tp, entre outros. ,omo nem todos os daemons suportam o uso do tcpd, para controle de acesso, *oc2 de*e sempre consultar a documentao dos programas antes de tentar con%igur$Dlos para utili#ar o tcpOwrappers. Alguns destes programas t2m seu pr'prio sistema de monitorao e controle de acesso, -ue poderia ser utili#ado em *e# do tcpd.

A con%igurao pode ser e%etuada atra*(s dos ar-ui*os :etc:hosts.allow e :etc:hosts.den5. "o ar-ui*o :etc:hosts.den5 con%iguramDse regras para negar ser*ios a determinados clientes, ao mesmo tempo em -ue no ar-ui*o :etc:hosts.allow con%iguramDse regras para permitir -ue determinados clientes tenham acesso a ser*ios. As regras de controle de acesso, e istentes nestes dois ar-ui*os, t2m o seguinte %ormato: listaOdeOdaemons : listaOdeOclientes N : comando P listaOdeOdaemons 4ista de um ou mais nomes de daemons como especi%icados no :etc:inetd.con%, ou curingas. listaOdeOclientes 4ista de um ou mais endereos ou nomes de m$-uinas, padres ou curingas utili#ados para especi%icar -uais clientes podem e -uais no podem acessar o ser*io. comando (opcional! B poss)*el e ecutar um comando sempre -ue uma regra casa com um padro e ( utili#ada. Ve@a e emplos a seguir. ,omo citado anteriormente, curingas podem ser utili#ados tanto na lista de daemons -uanto nas lista de clientes. +ntre os e istentes, podemos destacar os seguintes: A44 0igni%ica todos os daemons ou todos os clientes, dependendo apenas do campo em -ue se encontra. 4E,A4

+ste curinga casa com -ual-uer nome de m$-uina -ue no contenha um caractere ponto _._, isto (, uma m$-uina local. 1A9A"E8D ,asa com -ual-uer nome de m$-uina -ue no case com seu endereo. 8sto geralmente ocorre -uando algum ser*idor D"0 est$ mal con%igurado ou -uando alguma m$-uina est$ tentando se passar por outra. "a lista de clientes podem ser utili#ados nomes ou endereos de m$-uinas, ou ento padres -ue especi%icam um con@unto de m$-uinas. 0e a cadeia de caracteres -ue identi%ica um cliente inicia com um ponto _._, um nome de m$-uina ir$ casar com este padro sempre -ue o %inal desse nome casar com o padro especi%icado. 1or e emplo, se %osse utili#ada a cadeia de caracteres _.minhaorgani#acao_, o nome de m$-uina _galileu.minhaorgani#acao_ casaria com o padro. 0imilarmente, se a cadeia de caracteres termina com um ponto _._, um endereo de m$-uina ir$ casar com o padro -uando seus campos num(ricos iniciais casarem com a cadeia de caracteres especi%icada. 1ara e empli%icar, se %osse utili#ada a cadeia de caracteres _1A&.1H=.&&;._, todas as m$-uinas -ue tenham um endereo 81 -ue inicie com estes / con@untos de nImeros iro casar com o padro (1A&.1H=.&&;.; ao 1A&.1H=.&&;.&55!. + emplo do ar-ui*o hosts.den5
# hosts.deny # Este arquivo lista os nomes das mquinas que _NO_ tm # permisso para usar os servios oferecidos por esta # mquina atravs do INET, usando o servidor # /usr/sbin/tcpd (tcp_wrapper) para verificar permisses. # Recomendamos a leitura do manual hosts_access, na seo # 5; para tanto execute: # man 5 hosts_access # # Lembre-se de que o novo portmap utiliza este arquivo para # decidir quais mquinas podem acessar os servios de NFS # oferecidos por esta mquina. ALL:ALL

+ emplo do ar-ui*o hosts.allow


# hosts.allow # Este arquivo lista os nomes das mquinas que tm # permisso para usar os servios oferecidos por esta # mquina atravs do INET, usando o servidor # /usr/sbin/tcpd (tcp_wrapper) para verificar permisses. # Recomendamos a leitura do manual hosts_access, na seo # 5; para tanto execute: # man 5 hosts_access ALL: localhost in.ftpd: .rede.net ipop3d: ALL

$;.$3 Snort E 0nort ( uma %erramenta "8D0 utili#ada para detectar incidentes de segurana na sua rede. +le pode analisar protocolos, procurar:casar conteIdos de pacotes, pode ser utili#ado para detectar *$rios tipos de ata-ue, como, por e emplo, buffer overflow, port scan, ata-ues ,<8 e muitos outros. E 0nort utili#a uma linguagem de regras muito %le )*el para descre*er o tr$%ego -ue ele de*e analisar ou dei ar passar, e tam.(m um mecanismo de deteco -ue utili#a uma ar-uitetura modular de plugins.

$;.$.1 3 "r-ui'o de con)igurao 6etc6snort6snort.con) 1ara con%igurar o 0nort, temos -ue editar primeiramente o ar-ui*o :etc:s5scon%ig:snort. A seguir teremos as opes a serem con%iguradas:

8">+9FA,+Zeth; AF>EZno A,>8VA>+Zno

A *ari$*el 8">+9FA,+ indica em -ual inter%ace o 0nort ir$ escutar, a *ari$*el AF>EZno indica -ue o 0nort de*er$ pegar o endereo 81 %ornecido no ar-ui*o de con%igurao\ caso especi%i-uemos essa opo como 5es o snort ir$ pegar o *alor 81 diretamente da inter%ace especi%icada ignorando o *alor presente no ar-ui*o de con%igurao. A *ari$*el A,>8VA>+ indica se o 0nort de*er$ ser e ecutado sempre -ue a inter%ace _su.ir_, pois -uando a inter%ace _cai_, o 0nort _cai_ @unto. "o ar-ui*o snort.con% precisamos apenas de%inir as seguintes *ari$*eis:

+m CE6+O"+> *oc2 pode especi%icar uma m$-uina, inter%ace ou rede na -ual o 0nort ir$ _escutar_, ou ainda especi%icar uma lista dos itens acima mencionados. +m +G>+9"A4O"+> *oc2 ir$ con%igurar o -ue o 0nort de*e considerar como sendo uma rede e terna\ especi%icamos o par?metro any para indicar -ual-uer rede. A terceira *ari$*el desse primeiro passo (D"0O0+9V+90! ( especi%icada para -ue o 0nort no considere as tentati*as de acesso pro*enientes do ser*idor D"0 como sendo tentati*as de portscan. As demais *aria*eis de*em ser preenchidas con%orme os endereos dos ser*idores utili#ados para cada ser*io.

$;.$.1 3 "nalisando os logs do snort

Apos sua con%igurao ( necessario iniciar o ser*io snort: service snort start Es logs das tentati*as de in*aso %icam arma#enados em :*ar:log:snort:alert $;.0 3 Kerra(enta #4"P E programa nmap tem por o.@eti*o permitir aos administradores de rede, e aos curiosos em geral, determinar -uais ser*idores esto %uncionando e -ue ser*ios eles esto o%erecendo em um determinado momento. +m.ora este se@am os o.@eti*os primarios da %erramenta no ( recomendado seu uso sem a autori#ao do super*isor do ser*idor no -ual se %ar$ a *arredura usando o nmap. $;.0.1 - Op7es do #(ap1 +ste aplicati*o possui os seguintes m(todos de *arredura: -sP ou Ping scan: Algumas *e#es ( necess$rio sa.er se um determinado host ou rede est$ no ar. "map pode en*iar pacotes 8,61 Lecho re-uestM para *eri%icar se determinado host ou rede est$ ati*a. Co@e em dia, e istem muitos %iltros -ue re@eitam os pacotes 8,61 Lecho re-uestM, ento en*ia um pacote >,1 A,` para a porta =; (de%ault! e caso rece.a 90> o al*o est$ ati*o. A terceira t(cnica en*ia um pacote 0o" e espera um 90> ou 0o"DA,`. -s& ou &CP scan1 +ste m(todo tra.alha em con@unto com *$rias t(cnicas do "map. +le considera todas as portas >,1 e FD1 a.ertas e en*ia comandos "F44 0un91,, para determinar se realmente so portas 91,. B como se o comando Lrpcin%o DpM esti*esse sendo utili#ado, mesmo atra*(s de um %irewall ( ou protegido por >,1 wrappers !. -sS ou TCP Sc# scan1 >(cnica tam.(m conhecida como Lhal%DopenM, pois no a.re uma cone o >,1 completa. B en*iado um pacote 0o", como se ele %osse uma cone o real e aguarda uma resposta. ,aso um pacote 0o"DA,` se@a rece.ido, a porta est$ a.erta, en-uanto um como resposta indica -ue a porta est$ %echada. A *antagem dessa a.ordagem ( -ue poucos iro detectar esse scanning de portas. -sT ou TCP connect!% scan1 B a t(cnica mais .$sica de >,1 scanning. B utili#ada a chamada

de sistema (s5stem call! Lconnect(!M -ue en*ia um sinal as portas ati*as. ,aso a porta este@a a.erta rece.e como resposta Lconnect(!M. B um dos scan mais r$pidos, por(m %$cil de ser detectado. -sF ou F5P scan: +ste m(todo ( utili#ado para determinar -ual porta FD1 est$ a.erta em um host. A t(cnica consiste em en*iar um pacote FD1 de ; .5te para cada porta do host. 0e %or rece.ido uma mensagem 8,61 Lport unreacha.leM ento a porta est$ %echada, seno a porta pode estar a.erta. 1ara *ariar um pouco, a 6icroso%t ignorou a sugesto da 9F, e com isso a *arredura de m$-uinas ^indows ( muito r$pida. -O : Ati*a a identi%icao do host remoto *ia >,1:81. 8r$ apresentar *erso do 0istema Eperacional e tempo ati*o. -p dlistaCdeCportase : +speci%ica -uais portas de*em ser *eri%icadas na *arredura. 1or de%ault, todas as portas entre 1 e 1;&3 so *arridas. + emplo: nmap -sT -p 22,53,110,143 192.168.0.1 $;.8 - #essus "essus ( uma %erramenta para auditoria de segurana. ,om ele ( poss)*el *eri%icar *arias *ulnera.ilidades em sua rede. E nessus permite -ue se %aa isso de uma %orma segura, nao permitindo -ue usu$rios no autori#ados possam scanear sua rede com ele. +le ( composto por duas partes, sendo um cliente e um ser*idor. +le possui uma s(rie de recursos .astante interessantes como tra.alhar em con@unto com o nmap e tam.(m a possi.ilidade de atuali#ao apenas .ai ando no*os plugins de ata-ues e:ou *ulnera.ilidades. E "essus %oi criado em 1AA= por 9enaud Deraison, sendo -ue na-uela (poca o melhor securit5 scanner era o 0A>A" ( -ue se encontra*a .astante desatuali#ado !. Deraison resol*eu di*idir o sistema em plugins, %acilitando muito a atuali#ao e a pre*eno contra no*os ata-ues. A partir da *erso 1.;.; %oi criado um script -ue automaticamente atuali#a o plugins para -ue o nessus possa detectar uma no*a *ulnera.ilidade e assim sugerir uma %orma ou e plicao para corrigiDla. E nessus possui uma <F8 muito %le )*el onde *oc2 con%igura *$rios detalhes de *arredura na sua rede. "ela podeDse con%igurar -uais plugins( ata-ues ! usar e os hosts(targets! -ue sero scanneados. 1rimeiramente rode o nessus cliente, .astando para isso digitar nessus na linha de comando. +le pedir$, entao, a senha -ue *oc2 con%igurou inicialmente. Vamos a.ordar agora -uais so as opes de con%igurao do cliente nessus. #essus ?ost : nesta a.a de con%igurao *oc2 de*e especi%icar o endereo ip do

daemon nessus e tam.(m a porta tcp em -ue ele est$ rodando (geralmente 1&31!. "esta tela tam.(m ( poss)*el optar pelo algoritmo de criptogra%ia -ue ser$ usado. >am.(m ( preciso especi%icar o nome do usu$rio para logar no daemon. Plugins : A-ui reside todo o poder do nessus, nesta a.a se encontram as e ploraes (e ploits! das *ulnera.ilidades conhecidas em %orma de plugins. E nessus se *ale destes plugins para a*aliar as *ulnera.ilidades do sistema scanneado. Pre)s. : 0o especi%icados *alores como usu$rios e senhas de ser*ios como %tp, pop, imap e sm.. De porte desses dados o nessus pode %a#er *eri%icaes muito mais e%icitentes nos seus hosts, @$ -ue alguns e ploits pressupem -ue o _e plorador_ possui uma conta *$lida de algum desses ser*ios. >am.(m ( poss)*el con%igurar o tipo de scan -ue ser$ usado pelo nmap ( caso possua !. Scan Option DT A-ui podeDse especi%icar as portas -ue sero scaneadas pelo nessus, use *irgula para portas indi*iduais e h)%en para inter*alos(=;,11;,33/D1;&3!. "o caso de utili#ar o nessus para scanear ser*idores we. ( .astante interessante especi%icar o path, ou caminho, dos ,<8bs no seu ser*idor. Target Selection 1 1reencha o Inico campo desta a.a para especi%icar as m$-uinas -ue sero scaneadas. ,licando no .oto _9ead %ile..._ *oc2 especi%ica um ar-ui*o onde esto o endereos 81 das m$-uinas a serem *eri%icadas. Fser 1 A-ui esto suas in%ormaces pessoais como a cha*e -ue de*e ser usada e tam.(m podeDse trocar a sua senha do nessus .

E,erc9cio1 1D 4i.ere -ue apenas a ma-uina do instrutor possa acessar o ser*io 00C da sua ma-uina. & Q ,on%igure o ser*idor snort para sua rede. / Q Ftili#e a %erramenta nmap com a ma-uina do seu *i#inho como al*o 3 Q 6onitore no log do snort se hou*e alguma tentati*a de in*aso. 5 Q Ftili#e a %erramenta nessus para a*aliar a segurana do seu ser*idor.

$< - #"AIOS
#agios ( um aplicati*o de monitoramento de sistemas e redes. E programa checa periodicaDmente o status de um ser*io ou cliente alertando aos repons$*eis em caso de %alhas. E status de cada cliente e ser*io da rede pode ser consultado *ia inter%ace we..

Algumas das %unes do #agios so:

z 6onitorar ser*ios da rede (06>1, 1E1/, C>>1, "">1, 18"<, etc.! z 6onitorar recursos do host (uso do processador, uso do disco, etc.! z Desen*ol*imento de plugins, permitindo -ue os usu$rios criem ser*ios personali#ados. z Veri%icao paralela de ser*ios

$<.1 - Instalao do #agios 8nstale os seguintes pacotes 916. nagios-2.9-1.el5.rf.i386.rpm nagios-devel-2.9-1.el5.rf.i386.rpm nagios-plugins-1.4.9-1.el5.rf.i386.rpm # rpm -ivh nagios* $<.$ - Con)igurao do "pac?e A tela de administrao do nagios ( acessada *ia *er*idor ^+J Apache. +nto precisamos antes con%igurar o ser*idor Apache para disponi.ili#ar o diretorio cgi do nagios .1ara isso precisamos apenas descomentar a linha a.ai o do ar-ui*o :etc:httpd:con%:httpd.con%. Include /etc/httpd/conf.d/nagios.conf Agora precisamos criar um usuario para ter acesso a inter%ace administrati*a do nagios. # htpasswd -c /etc/nagios/htpasswd.users admin

$<.0 - Con)igurao do #agios nagios.c)g E nagios.c)g ( o ar-ui*o de con%igurao principal do programa, nele se encontra toD das as con%iguraes .$sicas do mesmo. A princ)pio nenhuma modi%icao precisar$ ser %eita. Jasta apenas colocar o nagios.c)g em 6etc6nagios6. B a partir desse ar-ui*o -ue o #agios carrega todos os outros ar-ui*os de con%igurao. Algumas

distri.uies 4inu @a *em com os ar-ui*os de con%igurao criados, porem no ( nosso caso, mas segue a.ai o o padro utili#ado pelo "agios: nagios,cfg, ar-ui*o de con%igurao principal do "agios, respons$*el por iniciar os ser*ios de monitoramento.

cgi,cfg, ar-ui*o de con%igurao dos programas ,<8s locali#ados na pasta s.in. 5osts,cfg, ar-ui*o contendo in%ormaes so.re hosts. 5ostgroups,cfg, ar-ui*o contendo in%ormaes de hosts por grupos. contacts,cfg, contatos -ue de*ero se noti%icados caso alguma %alha acontea. contactsgroups,cfg, contatos di*ididos em grupos. services,cfg, ser*ios -ue de*ero ser monitorados. dependencies,cfg, in%ormaes de ser*ios -ue dependem de outros ser*ios. timeperiods,cfg, in%ormaes so.re o per)odo de monitoramento, podem ser de%inidos *$rios per)odos de monitoramento di%erentes. c5eckcomands,cfg, de%inio dos comandos -ue podem ser e ecutados pelo "agios. resource,cfg, macros de%inidas pelo usu$rio.

1ara %acilitar a administrao do "agios iremos criar um ar-ui*o para cada %uno no "agios o primeiro ( o ar-ui*o -ue ir$ de%inir as opes de tempo de monitoramento dos ser*ios. # vi /etc/nagios/time.cfg define timeperiod{ timeperiod_name 24x7 alias sunday monday tuesday wednesday thursday friday saturday } 24 Hours A Day, 7 Days A Week 00:00-24:00 00:00-24:00 00:00-24:00 00:00-24:00 00:00-24:00 00:00-24:00 00:00-24:00

define timeperiod{ timeperiod_name workhours

alias monday tuesday wednesday thursday friday }

"Normal" Working Hours 09:00-17:00 09:00-17:00 09:00-17:00 09:00-17:00 09:00-17:00

define timeperiod{ timeperiod_name nonworkhours alias sunday monday tuesday wednesday thursday friday saturday } Non-Work Hours 00:00-24:00 00:00-09:00,17:00-24:00 00:00-09:00,17:00-24:00 00:00-09:00,17:00-24:00 00:00-09:00,17:00-24:00 00:00-09:00,17:00-24:00 00:00-24:00

define timeperiod{ timeperiod_name none alias } Agora *amos criar um ar-ui*o -ue sera chamado de contatos.c%g cu@o conteIdo consiste nas in%ormaes do administrador do "agios. No Time Is A Good Time

# vi /etc/nagios/contatos.cfg define contact{ contact_name alias service_notification_period host_notification_period service_notification_options host_notification_options service_notification_commands host_notification_commands email } nagios-admin Nagios Admin 24x7 24x7 w,u,c,r d,r notify-by-email host-notify-by-email nagios-admin@localhost

1ro imo passo ( criar o ar-ui*o com o grupo de administradores, caso *oce dese@a ter mais de um. define contactgroup{ contactgroup_name alias members } admins Nagios Administrators nagios-admin

Agora iremos criar o ar-ui*o com as in%ormaes so.re as ma-uinas a serem monitoradas e as opes de analise dos hosts. f *i :etc:nagios:hosts.c%g
define host{ host_name alias address use linux-server2 linux-server2 192.168.0.1 generic-host

check_period max_check_attempts check_command notification_period notification_interval notification_options contact_groups }

24x7 10 check-host-alive workhours 120 d,u,r admins

Ende:

address ( o endereo 81 da m$-uina. alias ( um apelido amig$*el para o computador. c5eck?command ( o comando a ser e ecutado, est$ de%inido em c5eckcommands,cfg. max?c5eck?attempts ( o nImero m$ imo de *e#es -ue o programa ir$ checar pelo ser*io at( reportar um erro. notification?interval, de -uantos em -uantos segundos ser$ en*iado uma noti%icao para o usu$rio respons$*el pelo ser*io. notification?period, -ual o hor$rio -ue o ser*io %icar$ ati*o. notification?options, -uando noti%icar um erro, dDdown,uDunrechea.le,rDreco*er5.

1odemos tam.(m monitorar outros ser*ios como disco, cpu, usuarios logados .. etc. 1ara isso precisamos criar um ar-ui*o :etc:nagios:ser*ices.c%g com o seguinte conteudo:
# Monitorar a partio raiz define service{ use host_name service_description check_command } local-service localhost Root Partition check_local_disk!20%!10%!/

# Monitorar a quantidade de usuarios logados

define service{ use host_name service_description check_command } local-service localhost Current Users check_local_users!20!50

# Monitorar a quantidade de processos

define service{ use host_name service_description check_command } local-service localhost Total Processes check_local_procs!250!400!RSZDT

O S: 4em.rando -ue cada ar-ui*o de con%igurao criado de*e ter uma re%erencia no ar-ui*o :etc:nagios:nagios.c%g + : cfg_file=/etc/nagios/services.cfg Agora precisamos apenas iniciar o ser*io nagios com o comando: /etc/rc.d/init.d/nagios start Acessar a tela de administrao pelo endereo: http://192.168.0.x/nagios

$< - Pol9tica de Segurana


$<.1 " i(portXncia1 A pol)tica de segurana ( o %undamento para as -uestes relacionadas W proteo da in%ormao, um papel importante em todas as organi#aes.

E desen*ol*imento ( o primeiro e o principal passo da estrat(gia, no entanto, as maiores di%iculdades esto mais na sua implementao do -ue em seu plane@amento e ela.orao. >em uma importante %uno como %acilitadora e simpli%icadora do gerenciamento de todos os seus recursos. E gerenciamento de segurana ( a arte de criar e administrar a pol)tica de segurana, pois no ( poss)*el gerenciar o -ue no pode ser de%inido. $<.$ O plane`a(ento1 E plane@amento da pol)tica da segurana de*e ser %eito tendo como diretri# o car$ter geral e a.rangente de todos os pontos, incluindo as regras -ue de*em ser o.edecidas por todos. +ssas regras de*em especi%icar -uem pode acessar -uais recursos, -uais so os tipos de usos permitidos no sistema, .em como os procedimentos e controles necess$rios para proteger as in%ormaes. A pol)tica de segurana pode ser de%inida como .ase em padres de re%erencia, como o "J9 800E:8+, 177AA. Assim como as certi%icaes em -ualidade, como o 800E A;;;, certi%icaes em segurana da in%ormao, com o 800E:8+, 177AA, possuiro um *alor cada *e# mais crescente como di%erenciais competiti*os na +ra da 8n%ormao. A pol)tica de segurana tam.(m pode ser di*idida em *$rios n)*eis, partindo de um n)*el mais gen(rico, passando pelo n)*el dos usu$rios, chegando ao n)*el t(cnico. $<.0 Os ele(entos1 Es elementos so ess2ncias para com.ater in*ases, so eles: Vigil?ncia: o sistema de*e ser monitorado a todo o momento. Atitude: postura e conduta -uanto W segurana\ signi%ica tam.(m o correto plane@amento. +strat(gia: de*e ser criati*o -uanto Ws de%inies da pol)tica e do plano de de%esa contra intruses. >ecnologia: a soluo tecnol'gica de*e ser adaptati*a e %le )*el, com o o.@eti*o de suprir as necessidades estrat(gicas da organi#ao. Fma pol)tica de segurana de sucesso a.range sempre esses -uatro principais itens. Fma caracter)stica importante ( -ue ela de*e ser curta o su%iciente para -ue se@a lida e conhecida por todos os %uncion$rios da empresa. $<.8 Considera7es sobre a segurana1 B necess$rio -ue os respons$*eis pelo desen*ol*imento da pol)tica de segurana tenho o conhecimento dos di*ersos aspectos de segurana e tam.(m %amiliari#ao com as -uestes culturais, sociais e pessoais -ue en*ol*em o .om %uncionamento da organi#ao.

A-ui esto algumas consideraes so.re a segurana, importantes para a de%inio de uma .oa pol)tica de segurana. ,onhea seus poss)*eis inimigos. ,onta.ili#e os *alores. 8denti%i-ue, e amine e @usti%i-ue suas hip'teses. ,ontrole seus segredos. A*alie os ser*ios estritamente necess$rios para o andamento dos neg'cios de organi#ao. ,onsidere os %atores humanos. ,onhea seus pontos %racos. 4imite W a.rang2ncia do acesso. +ntenda o am.iente. 4imite W con%iana. "unca se es-uea da segurana %)sica. A segurana ( comple a. A segurana de*e ser aplicada de acordo com os neg'cios das organi#aes. As ati*idades de segurana %ormam um processo constante, como carpir a grama do @ardim. 0e isso no %or %eio regularmente, a grama (ou os hacUers! co.rir$ o @ardim (<em.ricUi da ^arrom ND8D A=P!. $<.5 Os pontos a sere( tratados1 B de responsa.ilidade do administrador alertar so.re as -uestes de segurana e implementar as medidas de%inidas na pol)tica. B essencial -ue e ista sua participao no tra.alho de desen*ol*imento da pol)tica e tam.(m na de%inio das normas e procedimentos a serem adotados. Fma pol)tica de segurana ade-uada de*e tratar no s' dos aspectos t(cnicos, mas principalmente da-ueles relacionados ao tra.alho. +la de*e a.ordar, especialmente, os aspectos do cotidiano, como por e emplo, a de%inio dos cuidados necess$rios como documentos em mesas de tra.alho e ate mesmo com o li o. Es aspectos culturais e locais tam.(m de*em ser considerados na ela.orao da pol)tica de segurana, pois eles in%luenciam diretamente na sua e%eti*idade. A pol)tica de segurana de*e de%inir tam.(m, do modo mais claro poss)*el, as punies e os procedimentos a serem adotados, no caso do noDcumprimento da pol)tica de%inida.

De*em ser tomadas algumas atitudes: A segurana ( mais importante do -ue os ser*ios. A pol)tica de segurana de*e e*oluir constantemente. A-uilo -ue no %or e pressamente permitido ser$ proi.ido. "enhuma cone o direta com a rede interna, origin$ria e ternamente, de*er$ ser permitida sem -ue um r)gido controle de acesso se@a de%inido e implementado. Es ser*ios de*em ser implementados com a maior simplicidade poss)*el. De*em ser reali#ados testes. "enhuma senha de*e ser %ornecida em claro. $<.; " i(ple(entao1 A implementao de*e ser di*ulgada, como por e emplo, atra*(s de eDmails, pain(is, p$ginas da internet. Es es%oros necess$rios para a implantao da segurana podem le*ar anos ate -ue se consiga o resultado esperado. 0eu desen*ol*imento a@uda a diminuir, e no a aumentar, os custos operacionais. A pol)tica de segurana de*e ser aplicada de maneira rigorosa e a noDcon%ormidade de*e ser punida. Alem da auditoria, o monitoramento e a re*iso da pol)tica ( importante para a melhoria cont)nua dos procedimentos de segurana da organi#ao. $<.< Os (aiores obstIculos para a i(ple(entao1 9ecursos %inanceiros insu%icientes. Di%iculdade dos e ecuti*os em compreender os reais .ene%)cios da pol)tica de segurana para a organi#ao. Es e ecuti*os podem apro*ar uma pol)tica de segurana apenas para satis%a#er os auditores, e isso aca.a comprometendo a pr'pria organi#ao. Depend2ncias: as depend2ncias e istem nos di*ersos t'picos da pol)tica, por e emplo, os usu$rios iro reclamar -ue no conseguem tra.alhar remotamente (comprometendo sua produti*idade! e os e ecuti*os, por sua *e#, iro reclamar -ue os usu$rios no podem tra.alhar remotamente, por-ue no e iste tecnologia -ue possi.ilita o acesso remoto seguro. Alguns e ecuti*os podem resistir W implementao da pol)tica, por acharem -ue isso trar$ ameaas ao seu poder e prest)gio.

<eralmente, os e ecuti*os no gostam de compartilhar e discutir os detalhes t(cnicos so.re a segurana. L"o podemos lidar com isso, pois no temos um processo disciplinar.M: um processo disciplinar especi%ico para os casos de noDcumprimento da pol)tica de%inida ( importante para a organi#ao. $<.= Pol9tica para sen?as1 A pro*iso de senhas pelos administradores de sistemas e a utili#ao de senhas pelos usu$rios ( uma parte especi%ica da pol)tica de segurana, de grande import?ncia para as organi#aes. +las so consideradas tam.(m perigosas, principalmente por-ue dependem do uelo mais %raco da corrente da seguranav -ue so os usu$rios. E ser humano consegue memori#ar apenas senhas com tamanho curto, o -ue compromete sua e%ici2ncia. A pol)tica de senhas ( importante tam.(m por-ue di*ersos pro.lemas de segurana das empresas esto relacionados a elas. E es-uecimento das senhas ( um %ato comum, e apresenta cerca de /;w dos chamados ao helpDdesU. Fma .oa pol)tica de senhas -ue au ilie os usu$rios na escolha das mesmas e .alanceie os re-uisitos de segurana m)nimos para redu#ir os pro.lemas de es-uecimentos, portanto, signi%ica tam.(m uma melhor produti*idade dos usu$rios e menores custos com o DhelpDdesU. Fm modo de comprometer as senhas ( por meio do cracU, um so%tware -ue reali#a a codi%icao de pala*ras do dicion$rio. E uso de composies entre letras, nImeros e caracteres especiais minimi#a a e%eti*idade do ata-ue do dicion$rio. Eutro ata-ue -ue tem como o.@eti*os desco.rir senhas de usu$rios ( a adi*inhao de senhas (password guessing!. 1=w das senhas podem ser desco.ertas em de# minutos e A=w das senhas podem ser desco.ertas em 3= horas. Fma pes-uisa reali#ada pela ,ompag, em 1AA7, concluiu as seguintes maneiras -ue as pessoas mais utili#am para criar uma senha:

6aneira 1osies se uais ou nomes alusi*os a che%es "omes ou apelidos de parceiros "ome do local de %(rias pre%erido "ome de time ou @ogador

1orcentagem =&w 1Hw 15w 1/w

E -ue se *2 primeiramente na mesa

=w

De*eDse au iliar o usu$rio a escolher uma senha ade-uada. A senha de*e ser rede%inida pelo menos a cada dois meses. As in%ormaes so.re o ultimo acesso de*e constar. As senhas de*em ser .lo-ueadas a cada tr2s ou cinco tentati*as sem sucesso. A transmisso da senha de*e ser %eita de moro ci%rado, sempre -ue poss)*el. As ati*idades de autenticao de*em ser registradas e *eri%icadas. As senhas e as in%ormaes relati*as a contas de*em ser arma#enadas de modo e tremamente seguro. $<.> Pol9tica para Kire2all1 Fm dos principais elementos da pol)tica de segurana para o %irewall ( a de%inio das regras de %iltragem, -ue, por sua *e#, t2m como .ase a de%inio dos ser*ios a serem %ornecidos para os usu$rios e ternos e a dos ser*ios -ue os usu$rios internos podem acessar. E %irewall geralmente resulta em di*ersos -uestionamentos para as organi#aes. 1or e emplo, no Jrasil, os cidados costumam entregar suas declaraes de imposto de renda *ia internet. ,omo o so%tware para a entrega da declarao utili#a um protocolo propriet$rio, ele no %unciona normalmente em um am.iente comum, necessitando, assim de uma regra especi%ica no %irewall para -ue ele possa %uncionar ade-uadamente. $<.1: Pol9tica para acesso re(oto1 Eutro aspecto importante -ue de*e ser considerado na pol)tica de segurana ( o acesso remoto. E crescimento da necessidade de acesso remoto, ad*indos do tra.alho remoto e da computao m'*el, trans%orma esse aspecto em uma das principais prioridades das organi#aes atuais.

You might also like