TP-LINUX.pdf

79
5/19/2018 TP-LINUX.pdf-slidepdf.com http://slidepdf.com/reader/full/tp-linuxpdf 1/79 1  Administração de Sistemas (ASIST) - Instalação de servidores LINUX - Administração de Utilizadores - Administração da rede

Transcript of TP-LINUX.pdf

  • 5/19/2018 TP-LINUX.pdf

    1/79

    1

    Administrao de Sistemas (ASIST)

    - Instalao de servidores LINUX- Administrao de Utilizadores- Administrao da rede

  • 5/19/2018 TP-LINUX.pdf

    2/79

    2

    Distribuies LINUXO ncleo (kernel) do sistema operativo LINUX implementa asfuncionalidades bsicas mais importantes, tais com gesto de dispositivos,processos e memria e interage directamente com o HARDWARE.

    Pode-se dizer que o ncleo o sistema operativo. O ncleo LINUX estem permanente desenvolvimento como cdigo aberto, e gratuito.

    O ncleo fornece acima de tudo uma plataforma estvel para que oSOFTWARE de nvel mais elevado possa funcionar.

    Ncleo LINUX

    HARDWARE

    SOFTWARE

    Para se poder tirar partido das capacidades do ncleo necessrio recorrer a um conjunto extenso deprogramasauxiliares que permitem obter um sistema funcional.

    Alguns destes programas auxiliares tm funes criticas de arranque, como por

    exemplo carregar o ncleo para a memria e passar-lhe o controlo. Ou atajudar no processo de instalao do sistema operativo na mquina.

    Ao conjunto NCLEO + PROGRAMAS d-se o nome Distribuio, asdistribuies no so necessariamente grtis.

  • 5/19/2018 TP-LINUX.pdf

    3/79

    3

    Instalao de distribuies LINUX

    A maioria das distribuies actuais dispe de programas deinstalao assistida de nvel bastante elevado que protegemo utilizador de questes para as quais no sabe as respostas.

    A soluo de instalao assistida quase sem opes, tem a vantagem de trazer oLINUX para os utilizadores correntes, mas para os administradores pode terinconvenientes.

    As decises que o programa de instalao toma autonomamente, sem perguntar,

    podem comprometer determinados objectivos especficos.Felizmente em muitos caso possvel optar por um modo perito (expert) no qual oprograma de instalao tome menos decises e faz mais perguntas.

    Por outro lado a maioria das configuraes pode ser alterada aps a instalao inicial.

    O aspecto que coloca mais problemas a diviso dos discos em parties, depois deconcluda a instalao inicial ser muito difcil de alterar.

  • 5/19/2018 TP-LINUX.pdf

    4/79

    4

    Discos e parties em LINUXNo sistema operativo LINUX a maioria dos recursos de HARDWARE soidentificados por entradas especiais no directrio de sistema /dev. Os vriosdiscos existentes so identificados de acordo com o tipo de interface que utilizam.

    DISCOS IDE : /dev/hda /dev/hdb /dev/hdc /dev/hdd

    DISCOS SCSI ou SATA : /dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde

    A maioria dos discos (no os CD/DVD e outros discos mveis) est dividida emparties. Trata-se de uma diviso lgica do disco que est definida numa zona

    inicial do disco (MBR) conhecida por tabela de parties.Cada partio existente num disco independente das restantes, podendo cada umaconter tipos de dados (formataes) totalmente diferentes, eventualmenteassociadas a sistemas operativos diferentes. Entre outras informaes a tabela de

    parties contm associado a cada partio um identificador do formato da mesma.

    As parties existentes num disco so identificadas por nmeros crescentes desde 1.Exemplo: /dev/hdc2 = 2 partio do disco master do controlador IDE2.

  • 5/19/2018 TP-LINUX.pdf

    5/79

    5

    Tabela de parties exemplos fdisk (LINUX)HOST1# fdisk /dev/sdaCommand (m for help): pDisk /dev/sda: 73.4 GB, 73407868928 bytes255 heads, 63 sectors/track, 8924 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/sda1 * 1 101 811251 83 Linux

    /dev/sda2 102 8924 70870747+ 5 Extended/dev/sda5 102 202 811251 82 Linux swap/dev/sda6 203 711 4088511 83 Linux/dev/sda7 712 4757 32499463+ 83 Linux/dev/sda8 4758 8797 32451268+ 83 Linux/dev/sda9 8798 8924 1020096 83 Linux

    HOST12# fdisk /dev/hdaCommand (m for help): pDisk /dev/hda: 20.0 GB, 20003880960 bytes255 heads, 63 sectors/track, 2432 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/hda1 * 1 13 104391 83 Linux

    /dev/hda2 14 778 6144862+ 83 Linux/dev/hda3 779 1415 5116702+ 83 Linux/dev/hda4 1416 2432 8169052+ 5 Extended/dev/hda5 1416 1925 4096543+ 83 Linux/dev/hda6 1926 1990 522081 82 Linux swap/dev/hda7 1991 2432 3550333+ 83 Linux

  • 5/19/2018 TP-LINUX.pdf

    6/79

    6

    Tabela de parties exemplo Windows

    Uma partio uma zona contigua de um disco, cujos limites (incio e fim) estodefinidos na tabela de parties.

    A tabela de parties associa a cada partio um identificador do formato dosistema de ficheiros que l se encontra.

  • 5/19/2018 TP-LINUX.pdf

    7/79

    7

    Formatao das partiesA principal vantagem da existncia de parties que cada uma pode ser usada deforma totalmente independente.

    Cada partio pode ser usada pelos sistemas operativos para guardar dados,tipicamente organizados em directrios (pastas) e ficheiros. A forma como os dadosso organizados e guardados conhecida por formato do sistema de ficheiros(file system).

    Existem muitos formatos de sistema de ficheiros. Na actualidade nos ambientes

    Windows da Microsoft usa-se o NTFS, embora ainda se use tambm FAT. Nosistema operativo Linux os mais usados so o EXT2 e EXT3

    O sistema de ficheiros guarda vria informao sobre os objectos, nomeadamente asua localizao dentro da partio e atributos tais como o nome e ACL. Toda

    esta informao fica armazenada em estruturas guardadas na prpria partio, oprocesso de criar estas estruturas conhecido por operao de formatao.

    Aps a operao de formatao obtm-se um sistema de ficheiroscompletamente vazio.

  • 5/19/2018 TP-LINUX.pdf

    8/79

    8

    Acesso aos sistemas de ficheirosA forma lgica como os sistemas operativos facultam acesso aos sistemas deficheiros residentes nas vrias parties dos vrios dispositivos de armazenamentoexistentes varia, nos sistemas DOS/Windows usam-se as letras de drive. As letrasA: e B: so tradicionalmente reservadas para os discos flexveis (actualmente em

    desuso) e o primeiro sistema de ficheiros em disco fica com a letra C:.Os sistemas Linux (e Unix em geral) usam uma filosofia diferente, escolhe-se umsistema de ficheiros (partio) para assumir o papel de raiz (root). Os outrossistemas de ficheiros existentes, seja qual for o seu tipo, vo ser integrados no

    sistema de ficheiros de raiz atravs de uma operao designada por montagem.A montagem consiste numa associao lgica criada pelo sistema operativo entre um

    directrio vazio e um sistema de ficheiros residente numa outra partio/disco.

    Aps a montagem, o sistemaoperativo redirecciona para apartio montada, todos osacessos ao directrio vazio.

    / (raiz)

    /etc

    /mnt

    /usr/usr/local

    /mnt/cdrom1 ////devdevdevdev////hdbhdbhdbhdb

    ////devdevdevdev/sda1/sda1/sda1/sda1

    ////devdevdevdev/hda2/hda2/hda2/hda2

    MontagemMontagemMontagemMontagem

  • 5/19/2018 TP-LINUX.pdf

    9/79

    9

    Planeamento das parties e sistemas de ficheirosOs programas de instalao automtica, encarregam-se de analisar os discosexistentes, e em funo disso definir as parties e caractersticas dos sistemas deficheiros a criar.

    Na maioria dos casos tomam as decises correctas, mas falta-lhes o conhecimentosobre os propsitos exactos do sistema.

    Por esta razo em alguns casos as decises podem revelar-se erradas.

    Felizmente na maioria dos casos

    dada oportunidade de intervirdurante a instalao no sentido defazer escolhas relativas s parties acriar.

    No exemplo ao lado, atravs daalterao directa da tabela departies. Em outros casos so dadosvrias vrios modelos possveis aescolher.

  • 5/19/2018 TP-LINUX.pdf

    10/79

    10

    Capacidade das parties

    Sendo mais complexo alterar as parties depois de concluda a instalao, o ideal que desde logo elas sejam as correctamente dimensionadas para os objectivospretendidos.

    Numa primeira anlise podemos afirmar que o aproveitamento ideal do disco obtido com uma partio nica. Isso verdade porque as parties tornam-selimites estticos que no podem ser ultrapassados sob o ponto de vista decapacidade.

    Sob o ponto de vista de segurana estes limites so vantajosos pois permitematribuir a diferentes partes do sistema espaos prprios no disco, impedindoperturbaes entre elas.

    Por exemplo, se as reas dos utilizadores (homes) se encontrarem numapartio diferente do sistema (raiz), ento se um utilizador cometer um

    erro e encher a sua rea de trabalho isso no vai afectar a partio de sistema.

    (embora afecte os outros utilizadores pois a partio fica cheia)

  • 5/19/2018 TP-LINUX.pdf

    11/79

    11

    Capacidade das parties e cotasPara criar independncia entre utilizadores sob o ponto de vista de espao em disco,criar uma partio para cada utilizador no prtico.

    A alternativa o sistema de cotas em que o sistema operativo mantm um controloconstante sobre o espao que cada utilizador/grupo est a usar numa dada partio.

    As cotas apenas podem ser definidas ao nvel de partio

    O facto de as cotas apenas funcionarem ao nvel de partio pode condicionar a forma comoo disco deve ser dividido em parties.

    No boa ideia ter as reas dos utilizadores na partio de raiz e estabelecer cotas nessapartio pois quando ficar sem cota o utilizador vai ter dificuldades em usar o sistema.

    Muitas vezes necessrio que atribuir no uma mas vrias cotas, por exemplo:

    - Cota rea de utilizador - Cota de rea WEB- Cota para correio electrnico - Cota na partio de sistema

    Para cada uma ser necessria a existncia de uma partio separada.

  • 5/19/2018 TP-LINUX.pdf

    12/79

    12

    Capacidade da partio RAIZ

    A partio RAIZ destina-se ser a base dosistema de ficheiros, durante a fase inicial dearranque do sistema operativo tudo de

    que o ncleo dispe, s mais tarde possvelmontar outras parties.

    A partio RAIZ deve ter capacidade para conter todo o sistema operativo base,incluindo elementos cujas dimenses podem crescer ao longo da vida do sistematais como ficheiros de configurao, dados e registos.

    Na prtica, atendendo s capacidades actuais dos dispositivos de armazenamento,num servidor baseado em discos correntes, no faz qualquer sentido usar uma

    partio de raiz de tamanho inferior a 8 Gbytes.

    Aumentar o espao disponvel no sistema relativamente simples pois bastaadicionar (montar) novas parties, eventualmente residentes em novos discos. Esteprocedimento pode depois ser rematado com a utilizao de ligaes simblicaspara produzir a estrutura de ficheiros necessria.

  • 5/19/2018 TP-LINUX.pdf

    13/79

    13

    Por outras palavras a quantidade de memria central de um sistema servidor deveser tal que a memria virtual apenas seja usada muito esporadicamente. Por esta

    razo no h interesse em ter parties SWAP muito grandes, geralmente usa-se aregra de usar um espao em disco igual quantidade de memria central.

    Capacidade das parties SWAP

    A partio SWAP funciona como memriavirtual, dada a lentido do funcionamento dosdiscos em comparao com a memria central,deve ser vista como um mecanismo tampoque evita que a memria se esgote.

    Desde que exista espao em disco livre (no atribudo a nenhuma partio),

    sempre possvel acrescentar novas parties SWAP pois o sistema operativo temcapacidade de usar simultaneamente vrias destas parties, eventualmente emdiscos distintos.

  • 5/19/2018 TP-LINUX.pdf

    14/79

    14

    Tipos de sistema de ficheirosO sistema operativo LINUX suporta uma grandevariedade de sistemas de ficheiros, actualmente omais usado o ext3 (third extended filesystem).

    A maioria dos programas de instalao de

    distribuies LINUX actuais assume o ext3 comovalor por omisso.

    Tal como acontece para as parties do disco, normalmente possvel intervir

    durante a instalao para alterar o tipo de sistema de ficheiros. Algumas dasalternativas actuais ao ext3 que tm vantagens interessantes, so o ReiserFS e o XFS.Todos estes sistemas de ficheiros recentes so do tipo journaling, isso significa queas alteraes realizadas so guardadas num registo e apenas so transferidas para osistema de ficheiros em momentos oportunos.

    Na prtica isto significa que aps uma falha grave no h necessidade de verificar aintegridade da totalidade do sistema de ficheiros, tal como acontecia por exemplocom o ext2.

  • 5/19/2018 TP-LINUX.pdf

    15/79

    15

    RAIZ inicial e mdulosO facto de um tipo de sistema de ficheiros ser suportado pelo LINUX no significaque o ncleo o consiga usar como raiz inicial. A raiz inicial (muitas vezes umRAMDISK temporrio) usada pelo ncleo como base de trabalho durante oarranque da mquina, entre outros ficheiros contm mdulos do ncleo (kernel

    loadable module - KLM).Dada a enorme variedade de capacidades que actualmente o ncleo LINIX possui necessrio seleccionar as mais importantes e mais usadas. Apenas essas so includasintegramente no ncleo, as restantes so suportadas atravs do carregamento de

    mdulos adicionais.Por sua vez o carregamento de mdulos exige um sistema de ficheiros j montado,isto tem uma implicao imediata: o sistema de ficheiros inicial (raiz inicial) temde ser integralmente suportado pelo ncleo, o seu suporte no pode ser carregado

    de um mdulo.Os ncleos includos nas distribuies actuais suportam ext2 e ext3 sem recurso a mdulos,

    contudo o mesmo no se aplica necessariamente aos sistemas de ficheiros ReiserFS e xfs.

  • 5/19/2018 TP-LINUX.pdf

    16/79

    16

    Parmetros de formatao do sistema de ficheirosA formatao dos sistema de ficheiros recorre a programas externos com o nomemkfs seguido do tipo de sistema de ficheiros, por exemplo mkfs.ext3 oumkfs.ext2.

    mke2fs [ -c | -l filename ] [ -b block-size ] [ -f

    fragment-size ] [ -g blocks-per-group ] [ -i bytes-per-

    inode ] [ -j ] [ -Jjournal-options ] [ -N number-of-

    inodes ] [ -n ] [ -m reserved-blocks-percentage ] [ -o

    creator-os ] [ -O feature[,...] ] [ -q ] [ -r fs-revision-level

    ] [ -E extended-options ] [ -v ] [ -F ] [ -L volume-label]

    [ -M last-mounted-directory] [ -S ] [ -T filesystem-type

    ] [ -V ] device [ blocks-count]

    Os programas de instalao automtica

    de distribuies LINUX invocam estesprogramas com as parmetros queconsideram adequados tendo em vista apartio em causa e o tipo de utilizao

    que vai ter.De entre os vrios parmetros sobre os quais vale a pena ponderar encontra-se otamanho de bloco e o nmero de bytes por i-node, valores elevados permitem umaperformance mais elevada, mas podem conduzir ao desaproveitamento do espao

    quando os ficheiros tm dimenso mais reduzida.No exemplo acima, a opo -T permite indicar o tipo de utilizao que o sistemavai ter e deixa para o comando a definio dos parmetros ptimos.

  • 5/19/2018 TP-LINUX.pdf

    17/79

    17

    Configurao da interface de rede

    Num sistema servidor as interfaces de rede devem ser configuradas estaticamente

    Utilizar configurao dinmica, tipicamente atravs do protocolo DHCP cria umadependncia externa no sistema (servio DHCP externo). Num servidor, para o qual

    se pretende uma elevada fiabilidade/disponibilidade, todas as dependnciasexternas so de evitar.

    A configurao esttica da interface de rede exige a colaborao do administrador da

    rede que dever fornecer os vrios elementos:- Endereo IP esttico + mascara de rede + endereo do encaminhador da rede

    - Nome do domnio DNS endereos dos respectivos servidores de nomes

    A nica desvantagem da configurao esttica a necessidade de uma sintoniapermanente entre o administrador da rede e o administrador do sistema servidor. Asalteraes de configurao na rede tm de ser manualmente realizadas no servidor.

  • 5/19/2018 TP-LINUX.pdf

    18/79

    18

    Formas de instalao do LINUX

    As distribuies LINUX disponibilizam vrias formas deinstalao, a maioria delas baseada no prprio LINUX.

    O arranque do sistema de instalao (LINUX) normalmente realizado atravs deum CD/DVD. Na realidade qualquer forma de arranque do LINUX poder ser

    usada, por exemplo directamente do MS-DOS/MS-WINDOWS ou atravs de umaEPROM.

    As distribuies actuais so compostas por um grande volume de software(actualmente muitas ultrapassam as duas dezenas de CDs). Contudo, na prtica amaioria das instalaes recorre apenas a uma fraco deste software.

    A instalao de rede usa apenas um CD (ou at menos do que isso ) paracolocar o sistema de instalao em funcionamento e de seguida usa a rede (ligada

    INTERNET) para obter o software em repositrios (mirrors) criados para esteefeito. Desde que se possua uma ligao INTERNET com capacidades mnimas,esta sem dvida uma alternativa muito prtica.

  • 5/19/2018 TP-LINUX.pdf

    19/79

    19

    Instalao do LINUX - HARDWARE

    O variedade de HARDWARE existente o responsvel pelamaioria das dificuldades no processo de instalao dedistribuies LINUX.

    Se o HARDWARE muito recente devemos ter o cuidado de usar uma distribuiocom ncleo o mais recente possvel para haver alguma garantia que esseHARDWARE suportado.

    O procedimento correcto escolher o HARDWARE para o SOFTWARE que

    vamos usar, assim antes de adquirir o HARDWARE temos de verificar se adistribuio LINUX que vamos usar suporta esse HARDWARE.

    A aquisio de HARDWARE especial de elevado custo termina muitas vezesnuma desiluso quando se chega concluso que no h sistemas operativos capazes

    de tirar partido dele.Os controladores de disco so uma fonte de problemas pois se no so suportadospelo ncleo do sistema de instalao, esta torna-se de todo impossvel.

  • 5/19/2018 TP-LINUX.pdf

    20/79

    20

    Bases de dados de utilizadores e gruposA forma standard de um sistema operativo UNIX guardar as definies relativasa utilizadores e grupos atravs dos ficheiros de texto /etc/passwd e/etc/group. O ficheiro /etc/shadow usado como auxiliar do /etc/passwd.

    bash-3.00$ cat /etc/passwdroot:x:0:0:root:/root:/bin/bashnobody:x:65534:65534:Nobody:/:/bin/shsshd:x:77:77:system user for openssh:/var/empty:/bin/truewww:x:98:98:Gestor WWW:/users/home/www:/usr/bin/tcshi977805:x:2176:102:Joaquim Cardoso Morais:/users/home/i977805:/bin/cshartur:$1$s2b9pyc6$46nIOl8G1fGrymmvsJejG/:1203:98:Artur:/users/home/artur:/bin/bash

    -bash-3.00$ cat /etc/group

    root:x:0:bin:x:1:nogroup:x:65534:

    sshd:x:77:users:x:100:inf:x:102:profs:x:98:dom_users:x:1003:artur,i977805

  • 5/19/2018 TP-LINUX.pdf

    21/79

    21

    Gesto de utilizadores e grupos locaisA maioria das distribuies actuais dispe de programas de gesto deutilizadores em modo grfico que permitem realizar a maioria das tarefas bsicas.

    Em modo de texto existe um conjunto de comandos standard no LINUX:

    useradd ; usermod ; userdel ; groupadd ; groupmod ; groupdel ; chfn ;chsh ; passwd.

    A terceira alternativa consiste na manipulao directa dos ficheiros, este tipo deoperao envolve algum risco pois h necessidade de evitar qualquer tipo deincoerncia ou sobreposio de identificadores.

    Estes comandos tm a vantagem de terem uma solidez aprovada e realizaremalgumas validaes e operaes acessrias.

    Quando os utilizadores esto definidos em repositrios remotos, a forma comoso geridos coincide com a forma de gesto desses repositrios e no pode, namaioria dos casos, ser realizada no sistema local.

  • 5/19/2018 TP-LINUX.pdf

    22/79

    22

    Name Service Switch (NSS)

    A necessidade de diversificar os repositrios de informao de configurao dosistema (entre outros, bases de dados de utilizadores e grupos) levou aodesenvolvimento de sistemas alternativos, um dos mais importantes o sistemacentralizado NIS (Network Information Service), tambm conhecido por Yellow

    Pages.Atravs do NSS, o LINUX consegue integrar de forma eficaz as muitas alternativasdisponveis na actualidade. Trata-se de um sistema modular, por isso a adio dosuporte de novos tipos de repositrio faz-se por simples adio de um mdulo.

    NSS Sistema operativoConsultas

    libnss_dns.so

    libnss_ldap.so

    libnss_files.so

    libnss_nis.so

    libnss_winbind.so

    libnss_mysql.so

    /etc

    Servidores

    DNS

    Servidores

    LDAP

    ServidoresNIS

    Windows 2003

    Server

    Servidor

    MySQL

  • 5/19/2018 TP-LINUX.pdf

    23/79

    23

    Ficheiro de configurao /etc/nsswitch.conf

    O servio NSS configurado atravs do ficheiro /etc/nsswitch.conf, o principalpapel definir a ordem pela qual os vrios repositrios disponveis vo ser usados.

    Note-se que cada mdulo NSS possui ficheiros de configurao prprios, porexemplo o libnss_ldap.so usa o ficheiro de configurao /etc/ldap.conf.

    bash-3.00$ cat /etc/nsswitch.conf#passwd: files ldap winbind nisshadow: files nisgroup: files ldap winbind nis

    hosts: files nis dns winbind

    No exemplo as definies de utilizador sero pesquisadas pela seguinte ordem:

    1 Ficheiros locais (/etc/passwd) 2 Servidores LDAP

    3 Servidores Windows 4 Servidores NIS

    Ser usado o primeiro que for encontrado

  • 5/19/2018 TP-LINUX.pdf

    24/79

    24

    Autenticao dos utilizadores

    Apesar das suas fraquezas, o mecanismo de autenticao de utilizadores mais usadocontinua a ser a associao de uma palavra secreta (password) ao nome deutilizador.

    Quem s tu ?

    Prova-o !

    Devido ao seu carcter secreto, o manuseamento das passwords dos utilizadorestem de ser tratado com cuidados especiais. Como as passwords so normalmentearmazenadas juntamente com as restantes definies dos utilizadores, a diversificao

    dos tipos de repositrio suportado veio complicar a autenticao.Como resposta a estes e outros desafios foi criado um servio destinadoexclusivamente aos procedimentos de autenticao, os Pluggable AuthenticationModules (PAM).

  • 5/19/2018 TP-LINUX.pdf

    25/79

    25

    Pluggable Authentication Modules (PAM)

    A forma tradicional de autenticao de utilizadores em UNIX consiste em compararum digest da password que foi fornecida pelo utilizador com o digest que estarmazenado na base de dados. Mesmo usando algoritmos recentes como o MD5 ou oSHA, o melhor manter os digest secretos, foi com esse objectivo que esta

    informao foi transferida do ficheiro /etc/passwd para o ficheiro /etc/shadow.Alm da necessidade da manter confidencial o digest, o facto de o sistema no teracesso password (apenas o digest), impede a implementao de autenticaochallenge-response. O sistema PAM introduziu uma grande flexibilidade

    permitindo a utilizao de diversos mecanismos suportando diversos tipos derepositrio.

    Tal como o NSS trata-se de um sistema modular, cada modulo implementadeterminada funcionalidade, nem todas relacionados com o acesso a repositrios:

    pam_radius.so

    pam_ldap.sopam_ftp.so

    pam_listfile.so

    pam_winbind.sopam_shells.so

    pam_cracklib.so

    pam_issue.so pam_time.so

    pam_rootok.so

    pam_mysql.sopam_mail.sopam_unix.so

  • 5/19/2018 TP-LINUX.pdf

    26/79

    26

    PAM Cadeias/Sequncias de mdulos

    Cada mdulo intervm numa dada ordem, resultado dessa interveno pode tervrios tipos de impacto no resultado do processamento do conjunto:

    required em caso de sucesso continua a cadeia, em caso de falha tambmcontinua a processar os mdulos seguintes, mas a cadeia vai devolver falha .

    sufficient em caso de sucesso, no existindo falhas required anteriores,devolve sucesso e termina a cadeia. Em caso de falha regista uma falha optional econtinua a processar a cadeia.

    optional - em caso de sucesso continua a cadeia, em caso de falha regista umafalha optional e continua a processar a cadeia.

    binding - em caso de sucesso, no existindo falhas anteriores devolve sucesso etermina a cadeia. Em caso de falha continua a processar os mdulos seguintes, mas a

    cadeia vai devolver falha.requisite em caso de sucesso continua a cadeia, em caso de falha termina deimediato e devolve falha.

  • 5/19/2018 TP-LINUX.pdf

    27/79

    27

    PAM - Configurao

    Os ficheiros de configurao do sistema PAM so normalmente guardados na pasta/etc/pam.d/, para cada servio pode existir um ficheiro de configurao diferente,quando uma aplicao pretende usar o PAM, necessita de fornecer um identificadordo tipo de autenticao que corresponde a um nome de um ficheiro de configurao.

    -bash-3.00$ cat /etc/pam.d/system-auth

    #%PAM-1.0

    auth required pam_env.so

    auth sufficient pam_unix.so likeauth nullok

    auth sufficient pam_ldap.so use_first_pass

    auth required pam_deny.so

    account sufficient pam_unix.so

    account sufficient pam_ldap.so use_first_pass

    account required pam_deny.so

    password required pam_cracklib.so retry=3 minlen=2 dcredit=0 ucredit=0

    password sufficient pam_unix.so nullok use_authtok md5 shadow

    password sufficient pam_ldap.so

    password required pam_deny.sosession optional pam_mkhomedir.so skel=/etc/skel/ umask=0022

    session required pam_limits.so

    session required pam_unix.so

    Autenticao

    Verificao de

    validade/acesso

    Alterao da

    password

    Gesto da

    sesso

    Exemplo com as4 cadeias:

  • 5/19/2018 TP-LINUX.pdf

    28/79

    28

    PAM Alguns mdulos comuns

    Mdulo password que verifica a solidez da nova password que o utilizador est a digitar, alm de

    verificar a no dicionrio do sistema, pode tambm fazer algumas verificaes adicionais.pam_cracklib

    Pode ser usado em qualquer das cadeias, permite devolver sucesso ou falha em funo de uma listaresidente num ficheiro, por exemplo com uma lista de utilizadores autorizados.

    pam_listfile

    Mdulo auth que devolve sempre sucesso para o administrador e devolve sucesso para os outros

    utilizadores, a menos que exista o ficheiro /etc/nologin.pam_nologin

    Mdulo session que apresenta uma mensagem aps a entrada no sistema (message of the day).pam_motd

    Mdulo auth que permite apresentar uma mensagem antes da autenticao do utilizador.pam_issue

    Modulo de interface com repositrios LDAP, suporta as funcionalidades auth, account e password.pam_ldap

    Mdulo auth e account que faz a verificao de mail no inicio da sesso.pam_mail

    Mdulo auth e session que permite manipular as variveis de ambiente segundo um ficheiro deconfigurao, geralmente /etc/security/pam_env.conf.pam_env

    Pode ser usado em qualquer das cadeias, devolve sempre falha. Usado para testes ou para finalizar

    uma cadeia.pam_deny

    Pode ser usado em qualquer das cadeias, implementa as funcionalidades tradicionais do UNIX pr-

    PAM.pam_unix

  • 5/19/2018 TP-LINUX.pdf

    29/79

    29

    rea de trabalho do utilizador (HOME)

    Dependendo da finalidade do sistema e utilizadores do sistema, torna-se muitas vezesnecessrio proporcionar uma pasta pessoal e privada para armazenamento

    permanente de dados do utilizador. Esta pasta conhecida por HOMEDIRECTORY ou apenas HOME.

    A localizao/nome da pasta pessoal est definida no registo do utilizador, paramuitos tipos de servio fundamental uma pasta sobre a qual o utilizador possuadireitos de escrita, tipicamente as permisses usadas so 700. Para servios deutilizador em que existe conceito de directrio corrente, tais como FTP ou a linha de

    comando (acessos por terminal), a HOME ser o directrio inicial.-bash-3.00$ ls -la /etc/skel/total 32drwxr-xr-x 3 root root 4096 Out 17 2006 ./drwxr-xr-x 76 root root 8192 Mai 30 10:20 ../-rw-r--r-- 1 root root 24 Jun 13 2005 .bash_logout-rw-r--r-- 1 root root 191 Jun 13 2005 .bash_profile-rw-r--r-- 1 root root 124 Jun 13 2005 .bashrc

    -rw-r--r-- 1 root root 3793 Ago 23 2005 .screenrcdrwx------ 2 root root 4096 Ago 26 2004 tmp/

    Os programas que criam utilizadorespodem tambm criar a respectivaHOME, normalmente usam como

    modelo a pasta /etc/skel/.

    Depois de copiado o contedo o proprietrio/grupo alterado (comando chown)e as permisses podem ser ajustadas com o comando chmod.

  • 5/19/2018 TP-LINUX.pdf

    30/79

    30

    rea de trabalho do utilizador - permisses

    A privacidade da rea de trabalho do utilizador consegue-se retirando todas aspermisses aos outros utilizadores e grupos, ou seja 700.

    Por exemplo a UMASK 0022, que bastante usada, indica que os bits de valor 2 (permisso deescrita) devem ser desactivados para o grupo e para outros.

    As permisses podem ser facilmente alteradas com o comando chmod, mas no quediz respeito aos novos ficheiros e pastas criados depois disso, as permisses com queso criadas so determinadas pela UMASK. Trata-se de uma mscara de negao debits de permisso, ou seja indica os bits que devem ser desactivados.

    4 2 1 4 2 1 4 2 1

    r w xr w x

    BITS (16)

    Valor decimal dos BITS

    Representao simblica

    GROUP OTHERS

    4 2 1

    r w x

    OWNER

    4 2 18

    Tipo deObjecto

    Permisses

    Especiais

    O valor da UMASK pode ser alterado com o comando umask, mas no se mantmde umas sesses para as outras, ter de ser definido no inicio de cada sesso.

    Determinadas aplicaes podem

    exigir outros tipos de permisso,

    por exemplo para o apache

    poder divulgar uma pgina Web

    numa pasta no interior da HOME,

    a HOME necessita de ter a

    permisso x para others.

  • 5/19/2018 TP-LINUX.pdf

    31/79

    31

    Variveis de ambiente

    HOME

    As variveis de ambiente so um conjunto de dados associado a cada processo quepode ser usado para diversas finalidades, uma das mais comuns guardar informaosobre o sistema e contexto em que o processo/aplicao se encontra.

    As variveis de ambiente podem ser marcadas para exportao (herana pelosprocessos filhos). Devido exportao acabam por afectar todos os processos do

    sistema, muitas vezes com grande impacto no seu funcionamento.

    MANPATH

    HOSTNAME

    USER

    LANG

    LANGUAGE

    TERM

    PATHLD_LIBRARY_PATH

    A maioria dos processos e aplicaes em funcionamento num sistema operativoLINUX so desencadeados a partir de uma SHELL, tipicamente /bin/sh (na

    realidade /bin/bash).O arranque da SHELL por isso a altura apropriada para ajustar as variveis deambiente, isso consegue-se usando os ficheiros de arranque da SHELL.

  • 5/19/2018 TP-LINUX.pdf

    32/79

    32

    Ficheiros de arranque da SHELL

    Uma vez que a SHELL usada como base para o lanamento de aplicaes, o localideal para configurar o ambiente que vai depois ser herdado por todos os processoslanados. Isto particularmente vlido para a SHELL inicial ou de login.

    Cada tipo SHELL usa ficheiros de arranque distintos, a SHELL tradicional /bin/shexecuta os ficheiros /etc/profile e de seguida .profile na HOME ( ~/.profile).

    A SHELL /bin/sh na actualidade simulada pela BASH, quando invocada comoBASH (/bin/bash) usa a seguinte sequncia de ficheiros de arranque: /etc/profile ;

    ~/.bash_profile ; ~/.bash_login ; ~/.profile.

    A C SHELL /bin/csh ou /bin/tcsh executa a seguinte sequncia de ficheiros dearranque: /etc/csh.cshrc ; /etc/csh.login ; ~/.cshrc ; ~/.login.

    Uma caracterstica a reter que os ficheiros da rea do utilizador so executados emltimo lugar, por isso podem alterar o que foi feito nos ficheiros de sistema (/etc/*).

  • 5/19/2018 TP-LINUX.pdf

    33/79

    33

    bash-3.00$ cat /etc/profile# /etc/profile -*- Mode: shell-script -*-# (c) MandrakeSoftif ! echo ${PATH} |grep -q /usr/X11R6/bin ; then

    PATH="$PATH:/usr/X11R6/bin"fiif [ "$UID" -ge 500 ] && ! echo ${PATH} |grep -q /usr/games ; then

    PATH=$PATH:/usr/gamesfiumask 022USER=`id -un`LOGNAME=$USERMAIL="/var/spool/mail/$USER"

    HOSTNAME=`/bin/hostname`export PATH USER LOGNAME MAIL HOSTNAME

    for i in /etc/profile.d/*.sh ; doif [ -x $i ]; then

    . $i

    fidoneunset i

    Ficheiro /etc/profile tpico

    Pasta com mais ficheiros a executar

    Definio da UMASK

    Definio da variveis

    Variveis a exportar

  • 5/19/2018 TP-LINUX.pdf

    34/79

    34

    Cotas de utilizadores e grupos

    As cotas servem para controlar e limitar o espao que cada utilizador ou grupo usanuma determinada partio. Alm do espao ocupado tambm possvel limitar onmero de objectos.

    O objectivo das cotas garantir uma partilha equitativa de um recurso que limitado,evitando que o abuso de alguns comprometa o trabalho dos restantes.

    O controlo de cotas realizado pelo ncleo durante as operaes de manuseamentodo sistema de ficheiros, o ncleo regista as alteraes realizadas pelo utilizador e emfuno das variaes actualiza o registo do utilizador ou grupo.

    O controlo de cotas pelo ncleo no realizado em valor absoluto.

    Supe-se que o ponto de partida um registo de cotas correcto.

    As cotas de utilizador dizem respeito aos recursos ocupados por cada utilizador, ascotas de grupo referem-se ao somatrio dos recursos ocupados por todos osmembros de cada grupo.

  • 5/19/2018 TP-LINUX.pdf

    35/79

    35

    Cotas montagem da partio

    O primeiro passo para activar a contabilizao de cotas numa dada partio alteraras opes de montagem no ficheiro /etc/fstab, incluindo as opes usrquotae/ou grpquota.

    Os programas de suporte de cotas verificam o /etc/fstab para saberem quais asparties onde existe suporte de cotas. Por exemplo durante o arranque do sistema executado o comando quotaon a.

    O comando quotaon informa o ncleo de que deve comear a controlar as cotas

    numa determinada partio. Esta operao pressupe que a contabilizao de cotasnessa partio j existe e est actualizada.

    A opo -a faz com que o comando active as cotas em todas as parties referidasno /etc/fstab que tm as opes usrquota ou grpquota.

    O comando quotaoff desactiva o controlo de cotas pelo ncleo numa dadapartio.

  • 5/19/2018 TP-LINUX.pdf

    36/79

    36

    Cotas contabilizao inicial

    O ncleo registavariaes de cota e actualiza o registo absoluto em funo dessasvariaes. A validade inicial do registo absoluto no da responsabilidade do ncleo.

    O comando quotacheck tem como misso efectuar a contabilizao absoluta das

    cotas, normalmente s necessrio executar uma vez, a menos que uma falha gravedanifique o registo existente nos ficheiros (a)quota.user e/ou (a)quota.grouplocalizados na raiz da partio correspondente.

    O comando quotacheck deve ser executado com precauo, as cotas devem estardesactivadas (quotaoff) e no devem ocorrer alteraes na partio durante oprocesso. Por esta razo o comando quotacheck tenta remontar a partio emmodo leitura-apenas.

    Aps a execuo do comando quotacheck os ficheiros (a)quota.user e/ou(a)quota.group esto reparados e actualizados podendo ento ser executado ocomando quotaon para que o ncleo se encarregue de os manter.

  • 5/19/2018 TP-LINUX.pdf

    37/79

    37

    Cotas definio de valores

    O valor da cota mxima tm de ser definido utilizador a utilizador (cotas deutilizador) ou grupo a grupo (cotas de grupo).

    Tanto para as cotas de espao (blocos de 1024 octetos) como de objectos (i-nodes)

    so definidos dois limites: soft e um hard mais elevado. O limite soft pode serexcedido por um perodo de tempo mximo conhecido por grace period.

    Os valores de cota definidos como zero sero considerados sem limite.

    Os vrios limites de cota podem ser alterados com o comando setquota e ocomando edquota, este ltimo interage atravs de um editor de texto.

    -bash-3.00$ /usr/sbin/setquota

    setquota: Bad number of arguments.

    setquota: Usage:

    setquota [-u|-g] [-F quotaformat]

    -a|...

    setquota [-u|-g] [-F quotaformat] -a|...setquota [-u|-g] [-F quotaformat] -b -a|...

    setquota [-u|-g] [-F quotaformat] -t -a|...

    setquota [-u|-g] [-F quotaformat] -T -a|...

    Bugs to: [email protected], [email protected]

  • 5/19/2018 TP-LINUX.pdf

    38/79

    38

    Cotas apresentao do estado

    Cada utilizador pode visualizar a sua situao de cotas com o comando quota, aoadministrador este comando permite visualizar as cotas de qualquer utilizador.

    O comando repquota permite ao administrador obter o estado geral das cotas no

    sistema de ficheiros.

  • 5/19/2018 TP-LINUX.pdf

    39/79

    39

    Interfaces de rede

    Designa-se por interface de rede o conjunto de componentes de hardware quepermitem a ligao fsica de um computador a um dado tipo de infra-estrutura derede. Relativamente ao MR-OSI, a interface de rede implementa funcionalidadesdo nvel 1 e nvel 2.

    Quando o ncleo LINUX detectauma interface de rede associa-lhe um identificadorapropriado. Uma vez que podem existir vrios dispositivos do mesmo tipo, osidentificadores tm um sufixo numrico que comea em zero.

    Por exemplo as interfaces do tipo ETHERNET sero identificadas por eth0; eth1;

    eth2; , na ordem em que so detectadas.

    Para que o ncleo possa detectar uma interface de rede (ou qualquer hardware) necessita que o

    respectivo suporte (driver) esteja includo no ncleo, ou seja adicionado atravs de um mdulo.

  • 5/19/2018 TP-LINUX.pdf

    40/79

    40

    Administrao de interfaces de rede -ifconfig

    O comando ifconfig um dos meios directos de que o administrador dispe paramanusear as interfaces de rede de um sistema LINUX.

    -bash-3.00$ /sbin/ifconfig --help

    Usage:

    ifconfig [-a] [-v] [-s] [[] ][add [/]] [del [/]][[-]broadcast []] [[-]pointopoint []][netmask ] [dstaddr ] [tunnel ][outfill ] [keepalive ] [hw ] [metric ][mtu ] [[-]trailers] [[-]arp] [[-]allmulti] [multicast]

    [[-]promisc] [mem_start ] [io_addr ] [irq ] [media ][txqueuelen ] [[-]dynamic] [up|down] ...

    O campo (Address Family) serve para identificar a pilha/famlia de

    protocoloso valor por omisso inet

    que representa o IPv4. Outros valoressuportados so por exemplo o inet6 e o ipx. A forma e a aplicao de muitosdos restantes parmetros depende de AF.

  • 5/19/2018 TP-LINUX.pdf

    41/79

    41

    Administrao de encaminhamento -route

    O comando routepermite manipular a tabela de encaminhamento (routing) doncleo do sistema operativo. com base na tabela de encaminhamento que oncleo sabe como fazer chegar os pacotes ao destino correcto.

    /sbin/route [ add | del ] [ -net | -host ]

    [ REDE/IP-DESTINO ] [ netmask MSCARA-DE-REDE ][ gw GATEWAY ] [ [dev] INTERFACE ]

    [root@server ~]# routeKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface172.16.16.2 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0172.16.16.4 0.0.0.0 255.255.255.255 UH 0 0 0 ppp2193.136.62.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0192.168.62.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0.3172.18.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1.7172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1.6

    172.22.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1172.23.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1.5172.24.0.0 192.168.62.7 255.252.0.0 UG 0 0 0 eth0.3172.28.0.0 192.168.62.8 255.252.0.0 UG 0 0 0 eth0.30.0.0.0 193.136.62.1 0.0.0.0 UG 0 0 0 eth0

    Usado sem argumentos o comando routeapresenta a tabela de encaminhamento:

  • 5/19/2018 TP-LINUX.pdf

    42/79

    42

    Configurao IPv4 de uma interface de rede

    Para configurar uma interface de rede IPv4 apenas so necessrios dois elementos:o endereo IP local e a respectiva mascara de rede. Os outros elementos soredundantes e podem ser deduzidos.

    Endereo IPv4

    +Mscara de rede

    Endereo de broadcast

    Esta informao no suficiente para um funcionamento normal de um sistemaem rede, mas sob o ponto de vista de informao associada a uma interface derede a necessria.

    Endereo da rede local+

    Mscara de rede

    Tabela deencaminhamento

    -bash-3.00$ /sbin/ifconfig eth0 192.168.111.150 netmask 255.255.255.0

    -bash-3.00$ /sbin/route add -net 192.168.111.0 netmask 255.255.255.0 eth0

    -bash-3.00$ /sbin/ifconfig eth0

    eth0 Link encap:Ethernet Endereo de HW 00:0C:29:FE:E7:F8inet end.: 192.168.111.150 Bcast:192.168.111.255 Masc:255.255.255.0

    UP BROADCASTRUNNING MULTICAST MTU:1500 Mtrica:1RX packets:243766872 errors:0 dropped:0 overruns:0 frame:0TX packets:249142107 errors:0 dropped:0 overruns:0 carrier:0colises:0 txqueuelen:1000RX bytes:3379540387 (3.1 GiB) TX bytes:1843450578 (1.7 GiB)

    d

  • 5/19/2018 TP-LINUX.pdf

    43/79

    43

    Comando ip

    O comando ip junta as funcionalidades de vrios comandos relacionados com aadministrao de rede, de entre eles o comando ifconfig e o comando route.Acrescenta ainda vrias outras funcionalidades bastante importantes.

    /sbin/ip [ ... ] [ link | addr | route | rule | neigh | tunnel |

    maddr | mroute | monitor | xfrm ] ...

    Usando o comando ip, o exemplo anterior seria:-bash-3.00$ /sbin/ip addr add 192.168.111.150/24 broadcast + dev eth0

    -bash-3.00$ /sbin/ip route add 192.168.111.0/24 eth0

    -bash-3.00$ /sbin/ip addr show dev eth0

    2: eth0: mtu 1500 qdisc pfifo_fast qlen 100link/ether 00:0C:29:FE:E7:F8 brd ff:ff:ff:ff:ff:ffinet 192.168.111.150/24 brd 192.168.111.255 scope global eth0

    # /sbin/ip route show

    172.16.16.11 dev ppp9 proto kernel scope link src 172.16.16.1

    172.16.16.10 dev ppp8 proto kernel scope link src 172.16.16.1193.136.62.0/24 dev eth0 proto kernel scope link src 193.136.62.11192.168.62.0/24 dev eth0.3 proto kernel scope link src 192.168.62.11172.18.0.0/16 dev eth1.7 proto kernel scope link src 172.18.0.1default via 193.136.62.1 dev eth0

    C i h i (d f l )

  • 5/19/2018 TP-LINUX.pdf

    44/79

    44

    Caminho por omisso (default route)

    S possvel enviar pacotes IPv4 para destinos (redes) que constem na tabela

    de encaminhamento.

    claro que no possvel manter entradas na tabela de encaminhamento para todas

    as redes IPv4 existentes a nvel global.Se isso fosse possvel rapidamente se iria verificar que com a excepo das redeslocais, todas as outras seriam representadas por linhas idnticas na tabela deencaminhamento pois oprimeiro salto para chegar a qualquer dessas redes sempre

    o mesmo: o router local de ligao internet. Esse o default router.

    INTERNET

    (TODAS AS OUTRAS REDES)

    Rede Local A

    ROUTER

    2Rede Local B

    Rede Local C

    Rede Local D

    ROUTER 1

    O Router 1 ser o primeiro n do caminho poromisso para as redes A e B.O Router 2 ser o primeiro n do caminho poromisso para as redes D e C.

    Ml i l d / i f

  • 5/19/2018 TP-LINUX.pdf

    45/79

    45

    Mltiplos endereos / interface

    At ao ncleo 2.4 o suporte de vrios endereos sobre a mesma interface fsica eraconhecido por ip alias, para o efeito aos nomes das interfaces era acrescentado umsufixo na forma :n, por exemplo eth0:0, eth0:1, so alias da interface eth0,cada um com o seu prprio endereo IP diferente do da interface eth0.

    Nos ncleos mais recentes, com o comando ip addr add possvel atribuirvrios endereos a uma mesma interface. Para manter a compatibilidade com ocomando ifconfig prtica corrente manter a mesma terminologia usando a opolabel do comando ip.

    [root@server]# /sbin/ip address add 192.168.199.35/24 brd + dev eth0[root@server]# /sbin/ip address add 192.168.199.37/24 brd + dev eth0 label eth0:0

    [root@server]# /sbin/ip address show dev eth0

    2: eth0: mtu 1500 qdisc pfifo_fast qlen 100link/ether 00:80:c8:f8:4a:51 brd ff:ff:ff:ff:ff:ffinet 192.168.199.35/24 brd 192.168.199.255 scope global eth0inet 192.168.199.37/24 brd 192.168.199.255 scope global secondary eth0:0

    [root@server]# /sbin/ifconfigeth0 Link encap:Ethernet HWaddr 00:80:C8:F8:4A:51

    inet addr:192.168.199.35 Bcast:192.168.199.255 Mask:255.255.255.0eth0:0 Link encap:Ethernet HWaddr 00:80:C8:F8:4A:51

    inet addr:10.10.20.10 Bcast:10.10.20.255 Mask:255.255.255.0UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

    S d VLAN

  • 5/19/2018 TP-LINUX.pdf

    46/79

    46

    Suporte de VLAN

    Ao contrrio de um alias que definido no nvel de rede (Ex.: IPv4), uma VLAN definida no nvel de ligao lgica, por isso existe uma separao real tal como setratassem de meios fsicos separados.

    Para se conseguir esta separao a norma IEEE 802.1q define a forma de etiquetar as

    tramas de nvel 2 para que no se misturem entre si. O identificador de VLAN umnmero de 0 a 4095, os equipamentos de rede devem tratar estas tramas etiquetadas(labeled) de tal forma que no se misturem identificadores de valores diferentes.

    O comando vconfig usado para criar uma VLAN numa interface fsica existente:

    [root@server]# /sbin/vconfig add eth0 9

    Aps a execuo do comando acima torna-se vlida a interface eth0.9, todas astramas emitidas atravs de ela transportam a etiqueta IEEE 802.1q com o valor 9.

    De igual modo, nesta interface apenas sero recebidas tramas com etiqueta IEEE802.1q contendo o valor 9.

    Para remover uma VLAN usa-se o mesmo comando:

    VLANID

    # /sbin/vconfig rem eth0.9

    C fi t ti d d

  • 5/19/2018 TP-LINUX.pdf

    47/79

    47

    Configurao automtica da rede

    No sendo muito aconselhvel em servidores, a configurao automtica fundamental nos postos de trabalho.

    A configurao automtica da rede IPv4 faz-se com recurso a servidores DHCPexistentes na rede, em LINUX o comando/servio dhclient permite configurar poreste meio todas ou algumas das interfaces de rede. Depois de obter o endereo parauma interface, o servio mantm-se em execuo para controlar o aluguer (lease)do endereo, procedendo aos refrescamentos necessrios junto do servidor DHCP.

    O servio ifplugd particularmente til em postos detrabalho com vrias interfaces de rede, este serviomonitoriza constantemente o estado das ligaesfsicas.

    Quando um cabo ligado encarrega-se de activar arespectiva interface, quando um cabo desligadoremove a respectiva interface de rede no sistemaoperativo.

    S r id r DHCP

  • 5/19/2018 TP-LINUX.pdf

    48/79

    48

    Servidor DHCP

    O servidor DHCP (dhcpd) recebe pedidos de clientesenviados sob a forma de datagramas UDP queinicialmente so emitidos para o endereo255.255.255.255.

    A misso do servidor observar o endereo fsico(MAC) de origem responder com todos os dadosnecessrios para o cliente poder configurar a rede.

    Embora o servidor DHCP possa ser configurado com endereos MAC estticos,torna-se particularmente til o facto de poder gerir autonomamente uma gama deendereos IP. Para que a atribuio dinmica de endereos seja vivel tem de serlimitada no tempo, daqui surge o conceito de aluguer (lease) que no existia noBOOTP onde as atribuies eram vitalcias.

    Alm do endereo IP, o servidor envia muito mais informao ao cliente, tais comonome do domnio e endereos dos servidores de nomes, essa informao pr-configurada no servidor, normalmente no ficheiro /etc/dhcpd.conf.

    Internet Daemon INETD/XINETD

  • 5/19/2018 TP-LINUX.pdf

    49/79

    49

    Internet Daemon INETD/XINETD

    Grande parte dos servios de um sistema LINUX so assegurados por processosservidores autnomos, esta metodologia assegura a mais elevada disponibilidade eperformance.

    Alm dos servios de elevado grau de utilizao e com necessidade de elevada

    performance, acumulam-se muitas vezes uma grande variedade de servios menoresque apesar da reduzida utilizao tm de estar disponveis em permanncia.

    O Internet Daemon foi desenvolvido para substituir vrios processos servidoresdurante a fase em que esto espera de ser contactados por clientes. Quando o

    contacto ocorre o Internet Daemon invoca o programa apropriado para prestar osservio.

    O Internet Daemon configurado atravs do ficheiro /etc/inetd.conf ou/etc/xinetd.conf, em qualquer dos casos, para cada servio necessrio especificaro protocolo a usar (TCP ou UDP), o nmero de porto (ou identificador do serviodefinido em /etc/services) e o programa que implementa o servio.

    Resoluo de nome DNS cliente

  • 5/19/2018 TP-LINUX.pdf

    50/79

    50

    Resoluo de nome DNS - cliente

    A resoluo de nomes de mquinas (obteno do respectivo endereo IP) podecomear por recorrer ao ficheiro /etc/hosts, mas na maioria dos casos acaba pornecessitar do servio DNS.

    A resoluo de nomes por DNS consiste no envio do nome qualificado a um

    servidor de nomes. Os parmetros para configurar o sistema DNS cliente so apenasos endereos dos servidores de nomes.

    Uma vez que podem surgir nomes no qualificados para serem resolvidos, sernecessrio adicionar-lhes um nome de domnio antes de os enviar ao servidor. Para

    esse efeito pode ser definido o domnio local e uma lista de domnios de pesquisa.Em LINUX o ficheiro de configurao do cliente DNS o /etc/resolv.conf.

    [root@server ~]# cat /etc/resolv.conf

    domain dei.isep.ipp.pt

    search isep.ipp.ptnameserver 192.168.60.7nameserver 192.168.60.11nameserver 193.136.62.3

    Filtragem comando iptables

  • 5/19/2018 TP-LINUX.pdf

    51/79

    51

    Filtragem comando iptables

    O comando iptables permite administrar a filtragem do trfego de rede realizadapelo ncleo. Existem 4 tabelas: filter; nat; mangle e raw, destas as maisusadas so as 2 primeiras, por omisso a tabela usada filter. Algumas opesimportantes so:

    Em cada cadeia pode ser definida uma sequncia de regras com uma numeraoimplcita com incio no valor 1. A numerao importante para algumas operaescomo a eliminao de regras ou insero de regras.

    Cada tabela tm determinadas cadeias de regras pr definidas, mas outras podemser criadas. Para as duas principais tabelas:

    filter : INPUT; FORWARD e OUTPUT.

    nat : PREROUTING; OUTPUT; POSTROUTING

    iptables A - adicionar regraiptables D - eliminar regra

    iptables I - inserir regraiptables R - substituir regraiptables L - listar regrasiptables P - definir poltica da cadeia

    IPTABLES Comportamento por omisso

  • 5/19/2018 TP-LINUX.pdf

    52/79

    52

    IPTABLES Comportamento por omisso

    Para cada cadeia de regras necessrio definir o comportamento por omisso, ou sejao que se vai passar se para um dado pacote a cadeia for processada at ao final semque nenhuma das regras de verifique.

    De entre os quatro comportamentos possveis (ACCEPT; DROP; QUEUE eRETURN) o que deve ser adoptado como comportamento por omisso (poltica dacadeia) DROP.

    iptables P INPUT DROP

    iptables P OUTPUT DROP

    iptables P FORWARD DROP

    Nesse caso as regras da cadeia devero ter como resultado ACCEPT. Estametodologia a mais indicada sob o ponto de vista de segurana, mas tambm maistrabalhosa.

    IPTABLES - regras

  • 5/19/2018 TP-LINUX.pdf

    53/79

    53

    IPTABLES regras

    Existe uma grande variedade de critrios que se podem usar, algumas mais comunsso:

    -p [!] protocolo-s [!] endereo[/mascara]-d [!] endereo[/mascara]

    -i [!] interface-o [!] interface--dport [!] porta1[:porta2]--sport [!] porta1[:porta2]

    No contexto de cada regra definido o que fazer em caso de um pacote obedecer regra: -j COMPORTAMENTO

    -g CADEIA

    Exemplo:

    iptables P FORWARD DROPiptables A FORWARD i eth0 s 195.20.10.23/32 o eth2 p tcp j ACCEPTiptables A FORWARD i eth0 d 193.136.0.0/16 p tcp dport 8080:8081 j ACCEPT

    Scripts

  • 5/19/2018 TP-LINUX.pdf

    54/79

    54

    Scripts

    Designa-se por script um pequeno programa interpretado contido num simplesficheiro de texto directamente executvel.

    Em outros sistemas no UNIX a parte final do nome de um ficheiro (extenso)

    usada para indicar o seu contedo, no caso particular de um script a extensopoder indicar a linguagem usada e por isso qual o interpretador a usar.

    Em LINUX/UNIX usa-se o contedo dos primeiros bytes do ficheiro para o

    classificar (magic number). Independentemente do nome/extenso do

    ficheiro.

    No caso de ficheiros de texto contendo programas interpretados (scripts) aprimeira linha identifica o interpretador que deve ser usado, alm disso sendoum script, dever ter apermisso de execuo activa.

    Shebang

  • 5/19/2018 TP-LINUX.pdf

    55/79

    55

    Shebang

    O shebang (de hash+bang) a sequncia #! na primeira coluna daprimeira linha dos scripts UNIX. Os caracteres #!, ou seja 0x2321 so omagic number que identifica o ficheiro como sendo um script.

    A parte restante da linha do shebang serve para identificar o programa

    interpretador que deve ser usado para executar o script contido no ficheiro.

    #!/bin/bash

    --- --

    -- -- --

    #!/usr/bin/perl

    --- --

    -- -- --

    #!/bin/csh

    --- --

    -- -- --

    #!/bin/sh

    --- --

    -- -- --

    #!/usr/bin/pyton

    --- --

    -- -- --

    #!/usr/bin/php

    --- --

    -- -- --

    Como nas linguagens interpretadas usadas as linhas comeadas por # soconsideradas comentrios, o shebang no interfere com o script propriamentedito.

    Shell Scripts

  • 5/19/2018 TP-LINUX.pdf

    56/79

    56

    Shell Scripts

    O objectivo dos programas classificados como shell fornecer um meio deinteraco com o sistema atravs de comandos. Os comandos podem agrupados emsequncia num script constituindo assim um verdadeiro programa interpretado,para se tirar todo o proveito dos shell scripts so disponibilizados comandos de

    controlo tais como a deciso e os ciclos de repetio.Os shell scripts so uma ferramenta importante para o administrador pois

    permitem automatizar muitas tarefas e esto sempre acessveis, basta um

    editor de texto.

    Muitos preferem usar a CSHELL devido semelhana da sua sintaxe com alinguagem de programao C.

    Uma vez que nos sistemas LINUX actuais tanto a shell tradicional (sh/bash) como a Cshell (csh/tcsh) esto sempre disponveis a opo por uma ou outra uma escolha quase

    pessoal. Normalmente a opo recai sobre a shell que usa diariamente em modo interactivo.

    Outras linguagens como por exemplo PERL e PYTON possuem potencialidades muitomaiores, com bibliotecas bastante extensas, mas exigem a familiarizao do administrador.

    Shell Scripts exemplo simples em BASH

  • 5/19/2018 TP-LINUX.pdf

    57/79

    57

    S Sc p s p o s p s S

    No DEI as passwords dos utilizadores s podem ser alteradas junto do PDC dodomnio windows, para que o comando habitual passwd atinja esse objectivo foisubstitudo por um pequeno script em BASH.-bash-3.00$ cat /usr/bin/passwd

    #!/bin/bash

    echo -e "\n\n\n"echo "Alterao de password geral do utilizador `id -nu` no DEI"echo -e "\n"SMBPASSWD=""for LOC in /usr/local/samba/bin /usr/local/bin /usr/bin ; do

    if [ -x ${LOC}/smbpasswd ]; thenSMBPASSWD=${LOC}/smbpasswd

    break;fi

    done########################if [ -z "${SMBPASSWD}" ]; thenecho "Existe um problema na instalao desta mquina"

    echo " favor contactar os administradores de rede"exit 1fi

    ${SMBPASSWD} -r mafalda2########################

    Execuo programada - servio CRON

  • 5/19/2018 TP-LINUX.pdf

    58/79

    58

    p g

    A possibilidade de programar a execuo de comandos, por exemplo scripts temenormes vantagens para o administrador. Permite definir a execuo peridica detarefas, por exemplo em horrios apropriados a operaes de manuteno.

    Nos sistema LINUX o servio CRON (crond) o mais usado para atingir estes

    objectivos, o ficheiro /etc/crontab o principal ficheiro de configurao. Aslinhas de comando do ficheiro de configurao apresentam a seguinte forma:

    Especificao de data/horaSPC

    UtilizadorSPC

    Comando e argumentos

    MinutoSPC

    HoraSPC

    Dia do msSPC

    MsSPC

    Dia da semana

    0 a 59 0 a 23 1 a 31 1 a 12 0 a 7

    Os valores nmericos de dia dasemana e ms podem sersubstitudos por nomes. Nosdias da semana o valor 0 e o

    valor 7 so duas alternativaspara especificar Domingo.Os valores de data/hora podem ser especificados emintervalos ou por enumerao. O smbolo * representa ointervalo de todos os valores possveis para esse campo.

    Servio CRON exemplos /etc/crontab

  • 5/19/2018 TP-LINUX.pdf

    59/79

    59

    p / /

    */5 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg

    5,35 * * * * root /etc/LinuxHealth >/dev/null 2>&1 &

    45 2 * 8 6 root /root/make-backup >/dev/null 2>&1 &

    As gamas de valores podem ser associadas a um valor de passo na gama de valores, noexemplo acima */5 (0-59/5) nos minutos significa percorrer os minutos de 5 em 5,ou seja equivalente a 0,5,10,15,20,25,30,35,40,45,50,55.

    O ficheiro /etc/crontab apenas pode ser usado pelo administrador, mas o servio

    crond tambm est acessvel aos outros utilizadores atravs de ficheiros deconfigurao normalmente guardados em /var/spool/cron/, estes devem sermanipulados indirectamente atravs do comando crontab e.

    O formato idntico ao do /etc/crontab, mas o nome do utilizador (6 campo)

    omitido pois est implcito.

    O acesso dos utilizadores ao servio CRON pode ser controlado usando osficheiros /etc/cron.allowe /etc/cron.deny.

    Segurana em rede

  • 5/19/2018 TP-LINUX.pdf

    60/79

    60

    g

    O ambiente de rede, em especial em redes WAN, caracteriza-se pela grandedificuldade em controlar o acesso aos dados que nela circulam. A nica alternativa recorrer a algoritmos de cifragem. A abordagem tradicional (simtrica) exige que osdois intervenientes possuam uma chave secreta (pr-partilhada). A criptografia dechave pblica, mais recente, usa chaves diferentes para cifrar e decifrar e com issotorna a distribuio de chaves muito mais simples.

    CIFRARDadosDados cifrados

    DECIFRAR Dados

    Chave

    secreta

    Chave

    secreta

    CIFRARDadosDados cifrados

    DadosDECIFRAR

    CIFRARDadosDados cifrados

    DECIFRAR Dados

    Chave pblica de B

    CIFRARDadosDados cifrados

    DadosDECIFRAR

    A B

    A BChave privada de A

    Chave privada de BChave pblica de A

    Autenticao em rede

  • 5/19/2018 TP-LINUX.pdf

    61/79

    61

    Antes de haver preocupaes com a confidencialidade dos dados (recorrendo criptografia), temos de nos assegurar que estamos a transaccionar dados com aentidade correcta. Essa a misso da autenticao.

    Geralmente a autenticao est associada cifragem

    Criptografia simtrica: a autenticao est assegurada partida pois apenas duasentidades possuem a chave secreta. Note-se que este facto apenas delega o problemada autenticao para a fase anterior de distribuio de chaves. Tipicamente a

    distribuio de chaves secretas recorre a um outro segredo pr-partilhado, como porexemplo a password do utilizador.

    Criptografia de chave pblica: a autenticao no est assegurada porque as chavesusadas para cifrar so pblicas. Se a chave pblica, qualquer um a pode usar.

    No entanto, uma vez que a chave privada conhecida por apenas uma entidade, essefacto pode ser usado para garantir a autenticao. Basta garantir a autenticidade daschaves pblicas pois apenas o detentor da respectiva chave privada poder decifrar.

    Certificados de chave pblica

  • 5/19/2018 TP-LINUX.pdf

    62/79

    62

    p

    A criptografia de chave pblica simplificou muito a distribuio de chaves, mas estasimplificao eliminou a autenticao que estava implcita na criptografia simtrica.Contudo garantindo a autenticidade das chaves pblicas o problema fica resolvido.

    Um certificado de chave pblica contm a identificao do proprietrio da chavepblica (Subject), a identificao do emissor do certificado (Issuer), a chavepblica e assinatura digital do conjunto realizada pelo emissor do certificado.

    Identificao do emissor do certificado

    Data de validade e verso

    Identificao do proprietrio da chave

    Chave pblica

    Assinatura digital

    Chave privadado emissor do

    certificado

    Os clientes aceitam o certificado com base na confiana sobre o emissor docertificado, data de validade do mesmo e identificao do proprietrio da chave.

    Certificado de chave pblica - exemplo

  • 5/19/2018 TP-LINUX.pdf

    63/79

    63

    [root@server ~]# openssl x509 -in /etc/cert/redecert.pem -text

    Certificate:

    Data:Version: 1 (0x0)Serial Number: 2 (0x2)Signature Algorithm: md5WithRSAEncryptionIssuer: C=PT, ST=PORTO, L=PORTO, O=DEI.ISEP, OU=DEI,

    CN=DEICA/[email protected]

    Not Before: Jun 20 11:37:28 2007 GMTNot After : Jun 17 11:37:28 2017 GMT

    Subject: C=PT, ST=PORTO, L=PORTO, O=DEI.ISEP, OU=DEI,CN=rede.dei.isep.ipp.pt/[email protected]

    Subject Public Key Info:Public Key Algorithm: rsaEncryptionRSA Public Key: (1024 bit)

    Modulus (1024 bit):00:cc:38:e2:e6:5d:ff:43:6d:ff:43:12:94:03:db:8f:5c:28:61:1a:61:0d:d5:5e:04:dd:20:a9:d8:99:0c:53:e3:c6:23:b0:6c:4d:fe:6b:9e:b8:00:ea:23:1d:55:fa:e7:9a:9b:1b:fa:ef:e0:0d:2c:e0:e1:43:31:2d:b1:37:b5:27:68:01:e0:3d:d8:bf:96:15:bb:25:31:ec:6c:38:5e:2f:17:4c:b5:14:5e:8c:de:1b:14:20:b9:9c:fb:fe:41:5e:ea:68:17:ab:50:a7:9f:

    6d:93:b3:30:0f:c2:09:2b:7b:43:a4:06:1b:2a:e8:d2:e5:ca:ff:71:e1:69:9c:fbExponent: 65537 (0x10001)

    Signature Algorithm: md5WithRSAEncryption97:e9:b2:9d:f1:ca:16:37:43:21:3a:11:61:03:d7:4b:de:f9:06:f9:ee:02:4e:6e:08:25:bc:e3:98:e8:1d:bf:9f:43:5b:cb:6c:20:d0:6e:7c:d2:53:f2:29:3b:f9:6e:aa:c3:e0:ab:f8:8f:06:83:95:9f:dc:a8:94:bb:a8:50:67:34:de:64:0a:02:29:f0:1b:1d:f1:bc:51:09:37:f9:15:23:14:5d:b6:98:85:86:d4:37:ff:58:d0:74:24:2f:0d:da:d9:c4:02:89:7f:e6:6c:98:c3:f0:8e:42:77:45:3d:a1:ae:a2:8c:20:83:83:c5:2b:cc:58:7c:d7:

    2f:06:32:c6:fa:95:b3:de:5f:48:76:54:08:7a:df:b1:58:a8:8d:d9:74:94:57:c1:57:5b:79:32:f1:71:02:77:bb:6f:2a:9f:42:94:ef:37:d1:03:da:db:9f:b6:11:8a:4b:d4:e4:34:48:86:a0:e3:ce:9e:a3:f4:97:86:37:e1:b9:d4:af:de:a8:e9:ce:2a:70:aa:8f:c5:90:d9:71:48:a8:9b:8b:f0:2e:6c:42:7e:c3:bf:b6:8e:80:79:2f:ed:81:cb:3a:01:69:ce:c0:e8:9f:fe:ce:0a:bf:08:89:4b:68:d0:d5:9b:78:9a:e6:e5:19:92:6c:93:7f:c5:a0:89:f9:45

    Certificados auto-assinados

  • 5/19/2018 TP-LINUX.pdf

    64/79

    64

    Um certificado de chave pblica auto-assinado , como o nome indica, emitido peloprprio proprietrio da chave pblica. Como tal tem um valor reduzido sob o pontode vista de autenticao. Este tipo de certificado exige normalmente uma instalaomanual, sendo um procedimento necessrio para instalar um certificado de uma

    entidade de raiz (ROOT CA).

    Como o nome indica, as entidades certificadoras de raizso o inicio de uma rvore de entidades certificadoras de

    confiana. O certificado da ROOT CA auto-assinadopor isso a sua instalao tem de ser realizadamanualmente.

    Depois de instalar/aceitar um certificado de raiz,qualquer certificado emitido por qualquer elemento darvore ser aceite sem interveno do utilizador.

    Comando openssl (LINUX)

  • 5/19/2018 TP-LINUX.pdf

    65/79

    65

    O comando openssl fornece uma interface de linha de comando para acesso biblioteca openssl que suporta SSL v2 e v3 e TLS v1. Entre outras funcionalidadeso comando openssl permite gerir certificados de chave pblica.

    openssl req a finalidade principal gerar uma chave e emitir um pedido decertificao da mesma. O pedido de certificao deve depois ser processado por umaentidade certificadora que emitir o respectivo certificado. Este comando tambmpode ser usado para produzir um certificado auto-assinado, por exemplo:

    openssl req -nodes -x509 -keyout ttt.key -out ttt.crt -days 3650 -newkey rsa:1024

    openssl x509 processamento de certificados, por exemplo usado pelaentidade certificadora para produzir o certificado a partir de um pedido de certificado.

    O comando openssl pode usar o ficheiro de configurao openssl.cnf, algumasoperaes, nomeadamente de gesto de certificados como autoridade certificadoraexigem o uso deste ficheiro de configurao.

    Registo de actividades System Logger

  • 5/19/2018 TP-LINUX.pdf

    66/79

    66

    Embora cada componente/servio do sistema possa criar registos de actividadeprprios, o ideal que exista um servio central nico para gerir esses registos.

    Os clientes do servio syslogd enviam-lhe informaes, o syslogd responsvelpor classificar essas informaes e eventualmente registar as mesmas.

    SYSTEM LOGGER

    (syslogd)

    NSS

    httpddhcpd

    crond

    ftpdinetd

    Ficheiroslocais

    Servios

    remotos

    syslogd

    remotos

    syslogd

    remotos

    ( ...)

    Servidor

    Outrosprocessos/aplicaes

    Comando logger(SHELL)

    syslogd classificao de mensagens

  • 5/19/2018 TP-LINUX.pdf

    67/79

    67

    As mensagens enviadas para o syslogd contm dois elementos que permitem a suaclassificao rpida:

    Servio de origem (facility) que pode assumir os seguintes valores: auth,authpriv, cron, daemon, kern, lpr, mail, mark, news, security (omesmo que auth), syslog, user, uucp e local0 at local7.

    Gravidade ou Prioridade (severity, priority ou level) que pode ter osseguintes valores, por ordem crescente de gravidade: debug, info, notice,warning, warn (igual ao anterior), err, error (igual ao anterior), crit, alert,emerg, panic (igual ao anterior).

    Estes dois elementos podem ser agrupados na forma {facility}.{severity} e combase neste conjunto que o syslogd determina o que fazer com cada mensagem.

    O ficheiro de configurao /etc/syslog.conf determina o comportamento dosyslogd.

    syslogd configurao

  • 5/19/2018 TP-LINUX.pdf

    68/79

    68

    A configurao do servio syslogd (/etc/syslog.conf) resume-se a especificar regraspara o par {facility}.{severity} e associar essas regras a aces que definem oque fazer com as mensagens. Cada linha do ficheiro constituda por dois camposseparados por um ou mais espaos: uma mascara {facility}.{severity} e uma aco.

    Exemplo: kern.* /var/adm/kernel

    mail.*;mail.!=info /var/adm/mail

    *.alert root,administrator

    mail.=info @server2.domain.ptmail,news.=info *

    kern.info;kern.!err |/root/kern-info

    No caso de existirem vrias regras (linhas) aplicveis a uma dada mensagem, todaselas sero aplicadas em paralelo a essa mensagem.

    syslogd registo centralizado

  • 5/19/2018 TP-LINUX.pdf

    69/79

    69

    O servio syslogd permite a recepo de mensagens remotas atravs da rede,usando pacotes UDP dirigidos ao porto 514, para que isso seja possvel necessrioque o syslogd receba o argumento -r no arranque. Por motivos de segurana, namaioria das instalaes essa possibilidade est inicialmente inactiva.

    Muitos dispositivos de rede tais como impressoras, comutadores, routers e access-points podem ser configurados para enviar mensagens syslog para um dadoendereo/mquina. Essa informao de configurao pode mesmo ser fornecida naresposta do servidor DHCP (option log-servers ).

    O administrador de um cluster de servidores Linux/Unix pode por esta viacentralizar os registos numa nica mquina, colocando em todas as restantes umficheiro /etc/syslog.conf semelhante a:

    *.* @servidor.domino

    Ou enviando apenas uma parte das mensagens, realizando assim uma filtragem localem cada mquina e enviando para o registo central apenas as mais importantes.

    syslogd consulta de registos

  • 5/19/2018 TP-LINUX.pdf

    70/79

    70

    Na maioria dos casos as mensagens que o syslog recebe acabam por seracrescentadas a um ficheiro de texto identificado no /etc/syslog.conf. Namaioria dos sistema Linux adopta-se o directrio /var/log/ para colocao destesficheiros.

    SYSTEM LOGGER

    (syslogd)

    Ficheiros locais

    Servidor Unix/Linux

    Impressora de rede

    ServidorServidor Unix/Linux

    Comutador (switch)

    Tratando-se de ficheiros de texto, a sua consulta directa, recorrendo-se a um vastoconjunto de comandos disponveis para esse efeito, alguns dos mais importantes so:

    cat; less; tail; more; grep; cut; sed

    Registo de entradas e sadas - wtmp

  • 5/19/2018 TP-LINUX.pdf

    71/79

    71

    Dada a sua importncia, existe um sistema independente para registar as entradas esadas dos utilizadores no sistema. Cabe aos programas que controlam essas entradase sadas recorrer a este registo para o manter actualizado, ele constitudo por trsficheiros:

    utmp (normalmente /var/run/utmp) contm, para cada terminal, o nome doterminal, o nome do utilizador actual, a origem do utilizador (maq. remota) e adata/hora a que efectuou o login. Quando o utilizador sa, o registo eliminado.

    lastlog (normalmente /var/log/lastlog) contm, para cada UID, a hora e local(terminal/mquina remota) da ltima entrada no sistema (login).

    wtmp (normalmente /var/log/wtmp) contm o registo de todas as entradas e

    sadas no sistema.

    Consulta do registo de entradas e sadas

  • 5/19/2018 TP-LINUX.pdf

    72/79

    72

    Entrada de utilizador

    (LOGIN)

    rwho

    lastlog

    XSada do utilizador

    (LOGOUT)

    utmp

    wtmp

    FICHEIROS Comandos deconsulta

    users

    w

    who

    last

    ac

    lastlog

    Exemplo de resultado do comando last:

    [root@server ~]# last -5andre pts/0 beavis.dei.isep. Wed Nov 12 16:35 still logged indei pts/0 beavis.dei.isep. Wed Nov 12 11:46 - 14:12 (02:25)i090763 pts/4 srv3.dei.isep.ip Wed Nov 12 09:36 - 09:54 (00:17)

    i080751 pts/3 srv3.dei.isep.ip Wed Nov 12 08:52 - 10:02 (01:10)i040478 pts/2 srv2.dei.isep.ip Wed Nov 12 08:51 - 10:03 (01:11)

    wtmp begins Sat Nov 1 12:59:40 2004

    Cpias de arquivo e segurana

  • 5/19/2018 TP-LINUX.pdf

    73/79

    73

    Em vrios contextos h a necessidade de copiar para sistemas de armazenamentoexterno os dados residentes nos servidores (sistema de ficheiros).

    Arquivo quando existe um volume significativo de informao que deixou de sernecessria para o funcionamento actual do sistema, mas tem de ser preservada, essa

    informao pode ser copiada para dispositivos externos e posteriormente removidado sistema libertando espao.

    Segurana qualquer sistema est sujeito a perdas de dados, por erro dosutilizadores, por falha do hardware/software ou por aces maliciosas. Cabe ao

    administrador manter um calendrio de cpias de segurana adequado para que estasestejam suficientemente actualizadas para resolver as situaes de perdas de dadosque venham a ocorrer no sistema.

    Sob o ponto de vista de segurana os sistemas redundantes podem ser considerados

    uma alternativa a esta metodologia. No so mais do que o levar deste conceito aoextremo em que as actualizaes das cpias so realizadas de forma totalmentesincronizada com as alteraes que ocorrem no original.

    Tipos de cpias de segurana

  • 5/19/2018 TP-LINUX.pdf

    74/79

    74

    Cpias integrais de discos ou parties uma cpia deste tipo permite recuperarde forma expedita um sistema totalmente destrudo (recuperao usando novohardware), consiste na cpia integral, do disco ou da partio sector a sector, como tal independente dos tipos de sistemas de ficheiros que residem no disco, tudo,incluindo a tabela de parties copiado. Tem contudo alguns inconvenientes

    importantes: exige que o disco no esteja a ser usado quando se realiza o backup eexige que o disco para o qual se realiza a recuperao (restore) seja exactamenteigual ao disco original. Em Unix o comando dd permite realizar cpias deste tipo.

    Cpias integrais de sistemas de ficheiros este tipo de cpia percorre todas asentradas do sistema de ficheiros de uma partio e copia-as, bem como todas aspropriedades de cada objecto. aconselhvel que o sistema de ficheiros no esteja aser usado ou pelo menos esteja a ser pouco usado no momento da cpia. Em Linux

    os comandos dump e restore permitem realizar este tipo de cpias i-node a i-node, por esta razo o sistema de ficheiros deve estar desmontado, estes comandosno trabalham objecto a objecto. O comando tar tambm permite realizar este tipode cpias, mas trabalha directamente com objectos (ficheiros, directrios, etc).

    Cpias incrementais

  • 5/19/2018 TP-LINUX.pdf

    75/79

    75

    As cpias integrais de sistemas de ficheiros so operaes demoradas (dependendodo tamanho do sistema de ficheiros e do tipo de suporte para a cpia), depois decriada uma cpia integral, possvel recorrer a cpias incrementais.

    Sistema de ficheiros

    Estado A

    Cpia integral A

    Sistema de ficheiros

    Estado B

    Sistema de ficheiros

    Estado C

    Cpia incremental B Cpia incremental C

    Sistema de ficheiros

    Estado A

    Sistema de ficheiros

    Estado B

    Sistema de ficheiros

    Estado C

    BACKUP

    RESTORE

    A cpia incremental consiste em registar as diferenas entre o estado actual do

    sistema de ficheiros e o estado que est registado na cpia integral ouincremental anterior. O ponto de partida sempre uma cpia integral.

    Cpias incrementais comandos Linux

  • 5/19/2018 TP-LINUX.pdf

    76/79

    76

    A sucesso de cpias incrementais no deve ser prolongada indefinidamente poisacabaria por tornar a operao de restauro muito morosa. Uma prtica corrente realizar uma cpia integral todos os fins de semana (quando o sistema est a sermenos usado) e realizar cpias incrementais diariamente.

    Em Linux, tanto os comandos dump/restore como o comando tar suportamcpias incrementais.

    Exemplo com dump do sistema de ficheiros /home para a unidade de fita /dev/nst0. Cpia integral e 1cpia incremental. O nmero (level) indica se se trata de uma cpia integral (level=0) ou se cpiasincrementais (level=1,2,):

    dump 0uf /dev/nst0 /homedump 1uf /dev/nst0 /home

    Exemplo com tar do sistema de ficheiros /usr para ficheiros de arquivo. Cpia integral e 1 cpiaincremental. O primeiro comando detecta que o ficheiro /var/log/usr.snar no existe e por essa razoassume que se trata da cpia integral, os comandos seguintes apenas vo guardar as alteraes no sistema

    de ficcheiros relativas ao estado que est registado no /var/log/usr.snar:

    tar --create --file=archive.1.tar --listed-incremental=/var/log/usr.snar /usrtar --create --file=archive.2.tar --listed-incremental=/var/log/usr.snar /usr

    Cpias parciais

  • 5/19/2018 TP-LINUX.pdf

    77/79

    77

    Uma cpia parcial abrange apenas uma parte do sistema. Normalmente o objectivo salvaguardar dados referentes a um dado subsistema ou servio, tais como servidoresWeb, servidores de bases de dados, etc.

    A cpia parcial pode ser realizada em Unix com recurso ao comando tar, para esse

    efeito necessrio localizar todos os ficheiros e directrios associados ao subsistemaou servio em causa.

    Muitos servios dispe de comandos prprios para realizar cpias de salvaguarda, por

    exemplo o servio MySQL dispe do comando mysqldump. Nestes casos claramente vantajoso usar estes comandos especialmente concebidos para o efeito.

    Exemplo de produo de uma cpia de segurana comprimida para uma instalao particular doservidor Apache:

    tar -cvzf apache2.tar.gz /etc/apache2/* /var/www/cgi-bin /var/www/htdocs \/etc/sysconfig/apache2 /etc/init.d/apache2

    Sistemas de suporte para as cpias

  • 5/19/2018 TP-LINUX.pdf

    78/79

    78

    Tradicionalmente as cpias de arquivo e segurana usam como suporte unidades defita de acesso sequencial que se caracterizam por um baixo custo para grandescapacidades. Tratando-se de meios amovveis tem a vantagem de proporcionar umacapacidade ilimitada. Note-se que a necessidade de troca manual das unidades de fita um inconveniente importante, a menos claro que se disponha de um sistema

    robotizado para esse efeito. A operao com unidades de fita tem algumasparticularidades, mas tanto os comandos dump/restore como o comando tarsuportam unidades de fita.

    Actualmente, em muitas aplicaes, torna-se praticvel a utilizao de discos queactualmente tm custos relativamente baixos e capacidades muito elevadas.

    Seja qual for o tipo de suporte, h uma necessidade absoluta de garantira separao fsica entre o sistema original e as respectivas cpias.

    As cpias do sistema contm frequentemente informao reservada, este factodeve estar presente quando se faz o seu manuseamento. Por exemplo, quandoas cpias so realizadas atravs de uma rede.

    Software de cpia

  • 5/19/2018 TP-LINUX.pdf

    79/79

    79

    Os comandos Unix mencionados (dump/restore e tar) em combinao com oservio crond e algumas linhas de programao em shell permitem implementarsistemas de cpia de arquivo e segurana totalmente eficazes.

    Existem contudo programas mais fceis de utilizar, muitas vezes estes programas

    recorrem internamente aos comandos dump/restore e tar.Um dos exemplos open source mais divulgados o Amanda, trata-se de umaarquitectura cliente/servidor em rede que consiste num servidor onde so criadas ascpias de arquivo/segurana e de clientes que so usados nas mquinas cujos dados

    se pretende copiar:

    Backup Server

    (Amanda server)

    (Amanda client)

    Server 1

    (Amanda client)

    Server 2

    (Amanda client)

    Server 3

    (Amanda client)