Вы находитесь на странице: 1из 113

Sistemas Operacionais 2009

Prof. Edney

Servidores e Segurana de Redes em Linux

Sistemas Operacionais Linux Prof. Edney

NDICE
ndice .................................................................................................................................. I Cronologia do Linux .......................................................................................................... 1 Viso Geral ........................................................................................................................ 2 Principais Caractersticas do Linux .................................................................................... 2 Onde Baixar ....................................................................................................................... 3 Instalao do Linux Slackware 12 ................................................................................... 4 Keymap Configurao De Teclado .............................................................................. 5 Partio Swap ................................................................................................................ 5 Diretrio Barra ( / ) ........................................................................................................ 5 Partio Windows .......................................................................................................... 5 Instalao Do Slackware ................................................................................................ 6 Make Bootdisk ............................................................................................................... 7 Modem Configuration .................................................................................................... 7 Enable Hotplug Subsystem at Boot ................................................................................ 7 Install Lilo (Linux Loader) ............................................................................................. 7 Configure Lilo to Use Frame Buffer Console ................................................................. 7 Optional Lilo Append = <Kernel Parameters> Line .................................................... 8 Select Lilo Destination ................................................................................................... 8 Mouse Configuration ..................................................................................................... 8 Configure Network ........................................................................................................ 8 Confirm Startup Services ............................................................................................... 9 Console Font Configuration ........................................................................................... 9 Hardware Clock Set to Utc ............................................................................................. 9 Time Zone Configuration ............................................................................................. 10 Select Default Window Manager for X......................................................................... 10 Warning: No Root Password Detected.......................................................................... 10 Setup Complete ............................................................................................................ 10 Padro POSIX.................................................................................................................. 10 Ambientes Grficos ......................................................................................................... 11 Estrutura de Diretrios do Linux ...................................................................................... 12 Manual de Comandos....................................................................................................... 13 Ls list ......................................................................................................................... 13 Navegao no Modo Texto .......................................................................................... 13 Man manual .............................................................................................................. 14 Who quem................................................................................................................. 14 W quem, o qu .......................................................................................................... 14 Date data ................................................................................................................... 14 Pwd path work directory ........................................................................................... 15 Cd change directory .................................................................................................. 15 Rmdir remove directory ............................................................................................ 16 Cat concatenete ......................................................................................................... 16 More e Less ................................................................................................................. 17 Head e Tail................................................................................................................... 17 Wc word count .......................................................................................................... 17

Pgina I

Sistemas Operacionais Linux Prof. Edney More e Less ................................................................................................................. 18 Mv move ................................................................................................................... 18 Rm remove................................................................................................................ 19 Ln Link ........................................................................................................................ 20 Diff diference file ...................................................................................................... 20 Find buscar................................................................................................................ 21 Grep ............................................................................................................................. 22 Comandos Para Filtros ..................................................................................................... 23 Sort .............................................................................................................................. 23 Cut cortar .................................................................................................................. 23 Redirecionamento de Entrada e Sada .............................................................................. 25 Gerenciamento de Pacotes................................................................................................ 26 Wget ............................................................................................................................ 26 Installpkg ..................................................................................................................... 26 Removepkg .................................................................................................................. 27 Compactao de Arquivos................................................................................................ 27 Tar ............................................................................................................................... 27 Gzip ............................................................................................................................. 27 Gerenciamento de Processos ............................................................................................ 27 Seqncia de Execuo de Um Processo ...................................................................... 29 Classificao de Processos ............................................................................................... 30 Controle de Tarefas (Job Control) .................................................................................... 31 Comandos Para Gerenciamento de Processos ............................................................... 31 Criando um Programa em C ......................................................................................... 32 Exibindo Processos em Execuo ................................................................................. 33 Exibindo processos em Execuo Calculando o Tempo de Execuo ............................... 34 Pstree process tree (rvore de processos) ................................................................... 34 Top .............................................................................................................................. 34 Free .............................................................................................................................. 35 Kill .............................................................................................................................. 36 Killall........................................................................................................................... 36 Gerenciamento de usurios, grupos e privilgios .............................................................. 36 Usurios e Grupos ........................................................................................................ 36 O que compe um usurio ............................................................................................ 37 O que compe um grupo .............................................................................................. 38 Arquivos e Diretrios de configurao ......................................................................... 38 Arquivo /etc/passwd ..................................................................................................... 38 Arquivo /etc/shadow .................................................................................................... 40 Arquivo /etc/group ....................................................................................................... 42 Arquivo /etc/default/useradd ........................................................................................ 43 Arquivo /etc/login.defs ................................................................................................. 43 useradd ou adduser ....................................................................................................... 44 chage ........................................................................................................................... 45 passwd ......................................................................................................................... 46 userdel ......................................................................................................................... 46 id ................................................................................................................................. 47 su ................................................................................................................................. 47 Pgina II

Sistemas Operacionais Linux Prof. Edney groupadd ...................................................................................................................... 48 gpasswd ....................................................................................................................... 48 groupdel ....................................................................................................................... 49 groups .......................................................................................................................... 49 Criando um usurio com poder de root ............................................................................. 49 Congelando (suspendendo) um usurio ............................................................................ 50 Removendo um usurio manualmente .............................................................................. 50 Gerenciamento de privilgios ........................................................................................... 51 Permisses e Privilgios ............................................................................................... 51 Bits de atributos especiais ............................................................................................ 51 Listagens de Privilgios ................................................................................................... 52 Listagens de Privilgios................................................................................................ 52 Comandos para gerenciamento de privilgios ................................................................... 53 chmod .......................................................................................................................... 53 chown .......................................................................................................................... 55 chgrp ............................................................................................................................ 56 umask [mscara] ........................................................................................................ 57 Gerenciamento de Sistemas de Arquivos .......................................................................... 57 Dispositivos de Armazenamento e rvores de diretrios ................................................... 58 Parties e Sistemas de Arquivos ..................................................................................... 59 Drives do linux e seus arquivos de dispositivos ............................................................ 59 Particionando um disco rgido .......................................................................................... 60 MS-DOS ...................................................................................................................... 60 Criando um sistema de arquivos num disco rgido ............................................................ 61 mkfs ............................................................................................................................. 61 Redimensionando sistemas de arquivos ............................................................................ 61 resize2fs ....................................................................................................................... 61 resize_reiserfs .............................................................................................................. 62 Formatao de baixo nvel em um disco flexvel .............................................................. 62 fdformat ....................................................................................................................... 62 Montando e desmontando os discos ................................................................................. 63 mount ........................................................................................................................... 63 Montando um Pendrive ................................................................................................ 64 umount ......................................................................................................................... 64 Verificando o espao livre ................................................................................................ 64 df ................................................................................................................................. 64 Verificando o tamanho de arquivos e diretrios ................................................................ 65 du................................................................................................................................. 65 Verificao e reparo de um sistema de arquivo ................................................................. 65 fsck .............................................................................................................................. 65 Obtendo informaes de um sistema de arquivos ext2 ...................................................... 66 dumpe2fs ..................................................................................................................... 66 Montando automaticamente sistemas de arquivos: o arquivo /etc/fstab ............................. 66 Montando automaticamente sistemas de arquivos: o arquivo /etc/fstab ............................. 67 Configuraes de Rede .................................................................................................... 68 Hostname ..................................................................................................................... 68 Domain Name .............................................................................................................. 68 Pgina III

Sistemas Operacionais Linux Prof. Edney Name Server (Domain Name Server Servido DNS) ................................................... 68 IP ................................................................................................................................. 68 Submask Address ......................................................................................................... 69 Default Gateway (Gateway Padro) ............................................................................. 69 Static IP ....................................................................................................................... 69 Como Configurar Rede Com IP Fixo............................................................................ 69 Comunicao Entre Redes................................................................................................ 70 Ative o Servio de Roteamento: ................................................................................... 71 Servidor DHCP ................................................................................................................ 71 O que o DHCP? ......................................................................................................... 71 Como Funciona? .......................................................................................................... 72 Para que Serve? ............................................................................................................ 73 Problemas .................................................................................................................... 74 Configurao do Servidor DHCP ................................................................................. 75 Comandos Importantes ................................................................................................. 76 Exemplo de Redes com Servidor DHCP ....................................................................... 77 Servidor HTTP - Apache.................................................................................................. 77 Importante:................................................................................................................... 81 Servidor FTP ................................................................................................................... 81 Segurana do Servidor FTP Bloqueando Usurios ..................................................... 81 Acessando FTP Via Browser ........................................................................................ 82 Servidor de Banco de Dados MySQL ............................................................................... 82 Instalao ..................................................................................................................... 82 Possveis Problemas ..................................................................................................... 83 Servidor DNS .................................................................................................................. 83 Introduo .................................................................................................................... 83 Como o Servidor DNS Funciona? ................................................................................ 84 Clientes DNS ............................................................................................................... 86 Configurao do Servidor DNS .................................................................................... 87 Configurao Passo a Passo ......................................................................................... 91 Configurando o Envio e Recebimento de E-mails com Servidor DNS .............................. 93 Contedo do Arquivo access ........................................................................................ 94 Contedo do Arquivo local-host-names ........................................................................ 94 Name Virtual Host ....................................................................................................... 94 Configurando o Name Virtual Host do httpd.conf (Apache) ............................................. 94 Observaes:.................................................................................................................... 95 Segurana Varreduras de Rede ...................................................................................... 95 Pesquisas Reversas de DNS ......................................................................................... 95 Host ............................................................................................................................. 95 Boas Prticas ................................................................................................................ 96 Mail Exchange ............................................................................................................. 96 Dig ............................................................................................................................... 96 Trasnferncias de Zonas ............................................................................................... 96 Host l ......................................................................................................................... 96 Boas Prticas ................................................................................................................ 97 Traceroute .................................................................................................................... 97 Traceroute .................................................................................................................... 97 Pgina IV

Sistemas Operacionais Linux Prof. Edney Traceroute -I ................................................................................................................ 97 Traceroute -p................................................................................................................ 98 Boas Prticas ................................................................................................................ 98 Ping ............................................................................................................................. 98 Ping ............................................................................................................................. 98 Utilizando o nmap para realizar uma varredura de ping .................................................... 98 Nmap sP..................................................................................................................... 98 Boas Prticas ................................................................................................................ 99 nmap PT..................................................................................................................... 99 Boas Prticas ................................................................................................................ 99 nmap sT ..................................................................................................................... 99 nmap sS ..................................................................................................................... 99 nmap O1 .................................................................................................................. 100 Segurana Manipulando IPTables ............................................................................... 100 Sintaxe Bsica................................................................................................................ 101 Exemplo:.................................................................................................................... 101 Segurana Samba ........................................................................................................ 102 Compartilhando Diretrio do Windows no Linux ....................................................... 103 Exemplo:.................................................................................................................... 103 Compartilhando Diretrio do Linux no Windows ....................................................... 103 Exemplo de Compartilhamento do Diretrio Geral: .................................................... 103 PDC em Linux ........................................................................................................... 104 Adicionando Usurio ao Samba ................................................................................. 104 Exemplo:.................................................................................................................... 104 Configurando o Cliente Windows .............................................................................. 104 Removendo Usurio do Samba................................................................................... 104 Desabilitando Usurio do Samba ................................................................................ 104 Habilitando Usurio do Samba ................................................................................... 104 Segurana Snort (IDS Intrusion Detection System) .................................................. 105 Instalando o Snort ...................................................................................................... 105 Removendo o Snort .................................................................................................... 106 Comandos do Snort .................................................................................................... 106 Instalando a Interface Grfica BASE ....................................................................... 106

Pgina V

Sistemas Operacionais Linux Prof. Edney

CRONOLOGIA DO LINUX
Ano 1969 Acontecimento Criao do Unix na AT & T O Unix distribudo para as universidades. montado o cenrio para o 1974 surgimento em todo mundo de programadores de sistemas altamente capacitados 1983 1984 1988 1990 1991 Richard Stallman cria a Free Software Foundation O X Window criado no MIT Criao do Minix Linus Torvalds assiste sua primeira aula de C. Linus Torvalds inicia o desenvolvimento do Linux A verso 0.01 discutida na internet. lanada a verso 0.95 do Linux. A Yggdrasil lana a primeira distribuio do Linux em Dezembro. A Yggdrasil libera a produo da distribuio do Linux. lanada a verso 0.99pll5 do Linux. lanado o Xfree86. a Yggdrasil, o 1994 primeiro cd-rom contendo uma distribuio Linux . a Red Hat, a Slackware e outras distribuies surgem em cd-rom. 1995 Surge a primeira verso modularizada de Linux. A Caldeira lana a verso 1.0 com o Netscape incluso e com o WordPerfect for X A Conectiva lana a primeira verso brasileira do Linux, baseada na Red Hat.

1992

1993

1996

1998

Pgina 1

Sistemas Operacionais Linux Prof. Edney

VISO GERAL
Kernel o ncleo do sistema operacional, a parte mais prxima do nvel fsico (hardware). Composta de chamadas ao sistema, de acesso aos dispositivos de entrada e sada e de gerncia de recursos da mquina. Shell o nome genrico de uma classe de programas que funcionam como interpretador de comandos e linguagem de programao script (interpretada) no Unix. Os shells mais populares so: bash, csh, tcsh, ksh e zsh. O shell a interface entre o usurio e o kernel. O usurio pode escolher qual dos shells vai utilizar. O shell padro do Linux o bash.

PRINCIPAIS CARACTERSTICAS DO LINUX


O Linux um sistema operacional de 32 bits (e 64 bits em CPUs de 64 bits), semelhante ao Unix, que gratuito, de fonte aberta e compatvel com padres. O Linux tem tudo que voc pode esperar de um sistema operacional moderno, como: Multitarefa realmente preemptiva, incluindo suporte total para mltiplos usurios; Proteo de memria; Memria Virtual; Funcionamento em rede; Velocidade e estabilidade; Suporte para mquinas de multiprocessamento simtrico (SMP) isto , mquinas com diversas CPUs;

Pgina 2

Sistemas Operacionais Linux Prof. Edney Interface grfica com o usurio e ambiente de rea de trabalho; Dentre outras importantes caractersticas. Na verdade, o Linux no o sistema operacional em sua totalidade. Quando instala o que comumente denominado Linux, voc est instalando uma enorme quantidade de ferramentas que funcionam em conjunto como um sistema verdadeiramente funcional. O Linux, por si s, o kernel deste sistema operacional, seu corao, sua mente, seu sistema nervoso. O Kernel responsvel exclusivamente pelo transporte das tarefas de mais baixo nvel que tornam todo o resto possvel - fazendo malabarismos com diversos processos que ocorrem simultaneamente, gerenciando sua memria de forma que no interfiram uns nos outros, satisfazendo suas solicitaes de acesso a um disco e muito mais.

ONDE BAIXAR

http://www.debian.org

http://www.conectiva.com.br

http:// linux-mandrake.com

http://www.slackware.org/

http://www.redhat.com

http://www.linux.corel.com

Pgina 3

Sistemas Operacionais Linux Prof. Edney

INSTALAO DO LINUX SLACKWARE 12


Primeiro voc deve entrar no BIOS (Basic Input Output System) de seu computador para se certificar que este ir bootar pelo cd (tentar encontrar um Sistema Operacional no cd antes de fazer essa mesma verificao nos outros dispositivos que possam existir). Aps esse procedimento, ser necessrio inserir o dvd do Slackware 12 no drive e reiniciar o micro. Nessa inicializao, voc entrar no Linux, mesmo que seu computador tenha o Sistema Operacional Windows. Ele pedir para que voc configure o teclado (keyboard) mas isso no ser necessrio pois voc ir configur-lo quando estiver instalando o Slackware (basta teclar enter). Ser pedido o login (tecle enter) e voc entrar no modo texto do Linux (aparecer em seu prompt o texto root@slackware:/#). No incio da instalao ser necessrio criar a partio onde o Linux ser instalado e uma partio extra para que ele utilize como partio swap. Digite: cfdisk Obs.: aparecer uma tela no estilo DOS onde ser mostrado o espao livre em seu disco rgido e todas as parties existentes nele. Agora voc deve fazer o particionamento e a formatao da partio swap e da partio onde o Linux ser instalado. Comece pela partio swap. Lembre-se que o tamanho ideal para sua partio swap exatamente o dobro da capacidade de sua memria RAM. Type de partio Linux swap n 82 Type de partio Linux n 83 Aps as parties terem sido escritas escolha a opo QUIT. Digite setup e tecle enter. Aps esse procedimento, basta responder as perguntas que o assistente de instalao do Slackware lhe fizer. Pgina 4

Sistemas Operacionais Linux Prof. Edney

Keymap Configurao De Teclado


qwerty/br-abnt2.map. Digite 1 para confirmar sua escolha.

Partio Swap
Logo em seguida sua partio swap detectada pelo Linux. Para aceit-la basta responder com YES. Ento o Linux faz algumas conferncias nessa partio, faz novamente sua formatao e a reativa.

Diretrio Barra ( / )
O Linux pedir para que voc escolha em que partio deseja colocar o diretrio (/). lembre-se que este diretrio equivale a unidade c: do Windows. A partio que voc j criou para o Linux aparece como primeira opo, basta selecion-la. Aps escolhe-la, faa novamente a formatao desta partio (aqui, qualquer escolha errada poder significar a perda do Windows e todas as suas informaes). Ao mandar formatar essa partio voc poder escolher o tipo de filesystem que deseja (o filesystem o sistema de arquivos que ser usado pelo linux. Ele de suma importncia pois contm as regras de como o Linux ir tratar e interpretar seus dados). Escolha o reiserfs e d um OK. O Linux levar um tempo formatando est partio. Confirme com um OK no fim.

Partio Windows
Aps formatar sua partio o Linux encontrar, caso voc tenha, a partio onde o Windows foi instalado. Ele lhe perguntar se deseja adicionar informaes sobre essa partio no arquivo fstab para que seja possvel visualizar a partio Windows de dentro do Linux. Escolha a opo YES e tecle enter.

Pgina 5

Sistemas Operacionais Linux Prof. Edney Selecione a partio que aparecer e escolha a opo Select. Aps esse procedimento, ele lhe avisar que voc dever indicar o caminho onde essa partio dever ser montada dentro de sua estrutura de diretrios para que este procedimento seja feito automaticamente sempre o Linux for iniciado. Como j aprendemos anteriormente, o diretrio padro para montar dispositivos no Linux o /mnt/. Por isso, indicaremos na caixa de texto o seguinte caminho: /mnt/winXP/. Aps o OK o Linux nos avisar que a partio Windows ser montada no diretrio indicado.

Instalao Do Slackware
Aps todos esses passos prvios para a configurao do Slackware teremos que indicar a partir de onde o Slackware ser instalado (origem dos arquivos de instalao). Como estamos utilizando cd-rom para a instalao escolheremos a opo 1 Install from a Slackware CD or DVD. Aps essa escolha, basta dar OK. Existem dois tipos de instalao possveis: auto e a manual. Auto: todo o Slackware instalado automaticamente. Ou seja, todos os servios e servidores possveis so previamente instalados sem que voc tenha que ficar se preocupando em habilitar ou no qualquer aplicativo do pacote. Essa a instalao mais simples e a que faremos para que depois de instalado possamos comear a configurar todos os servios e servidores que o curso pretende. Manual: esta instalao exige que o usurio seja um usurio avanado pois ela mostra todas as opes dos pacotes que podero ou no ser instalados e cabe ao usurio escolher tudo. usualmente utilizado quando queremos preparar uma mquina Linux para um determinado fim. Escolha a opo auto e de OK. Voc ver agora a tela de PACKAGE SERIES SELECTION onde dever fazer uso das setas de movimentao para se posicionar em cada pacote e utilizar a barra de espao para marcar ou desmarcar o pacote conforme sua necessidade.

Pgina 6

Sistemas Operacionais Linux Prof. Edney Para o uso didtico no ser necessrio marcar nem desmarcar qualquer um dos pacotes. Basta dar OK. Escolha a instalao full para que todo o Slackware seja instalado em seu computador. D OK e agora basta aguardar enquanto o Slackware vai sendo instalado em seu micro. Aps alguns minutos de instalao voc ser perguntado sobre qual Kernel ir ser usado pelo Linux. Escolha a opo Skip this menu (use the default /boot/vmlinuz) e d OK para que o Linux use o kernel padro que j foi instalado em seu computador.

Make Bootdisk
A instalao lhe perguntar se deseja criar um disco de boot para eventuais problemas na instalao do Linux. Escolha a opo Skip making a bootdisk e d um SKIP.

Modem Configuration
A instalao lhe perguntar sobre o modem usado em seu computador. Escolha o modelo correto e d um OK (geralmente ser um modem pci).

Enable Hotplug Subsystem at Boot


Na instalao lhe oferecido habilitar o hotplug que um sistema que detecta automaticamente hardwares novos para que voc no precise fazer a instalao manual dos mesmos j instalados em seu micro. Responda YES.

Install Lilo (Linux Loader)


O LILO (Linux Loader) controla o boot em seu computador apresentando uma tela vermelha na inicializao onde possvel escolher qual sistema operacional ser usado (Linux ou Windows). Escolha a opo simple Try to install LILO automatically e d OK.

Configure Lilo to Use Frame Buffer Console


Nesta opo escolha a resoluo em que seu monitor ir funcionar, geralmente 1024 x 768 x 256 para monitores mais novos. Escolha essa opo e d OK.

Pgina 7

Sistemas Operacionais Linux Prof. Edney

Optional Lilo Append = <Kernel Parameters> Line


Nesta opo no necessrio digitar nada, apenas d OK.

Select Lilo Destination


Nesta opo voc escolhe onde o LILO ser instalado. Para que ele seja iniciado quando o computador der boot o LILO deve ser instalado na MBR (Master Boot Record), que a partio de seu disco rgido onde o computador ir procurar um sistema operacional. Por isso, escolha a opo MBR Install to Master Boot Record (possibly unsafe), d OK.

Mouse Configuration
Nesta opo voc escolhe o mouse que utilizado por voc. O mouse da escola a opo imps2 Microsoft PS/2 intellimouse. Faa essa escolha e d OK. Confirme sua escolha com a opo Yes.

Configure Network
Escolha a opo YES para fazer sua configurao de rede. Host Name nome de seu computador Domain Name domnio de rede onde o computador est. Static IP coloca um IP fixo no computador. Geralmente utilizado em servidores dentro de uma rede. DHCP configura o computador para pegar um IP na rede buscando-o em um servidor DHCP. Loopback o endereo da prpria placa de rede, geralmente usado para fazer testes. Escolha Static IP, d OK. Ponha o IP indicado pelo professor.

Pgina 8

Sistemas Operacionais Linux Prof. Edney NetMask mscara de rede. Indica no endereo IP quantos octetos foram destinados a endereos de rede e quantos octetos foram destinados a endereos de hosts (micros ou quaisquer equipamentos na rede). Coloque 255.255.255.0 Gateway Addres endereo utilizado quando um computador deseja se comunicar com outro e o ip deste outro micro no encontrado na rede local. Este Gateway Adrees pode ser considerado a porta de entrada e sada de uma rede local. Deixe-o em branco e d OK. Nameserver Servidor de nomes mais conhecido como DNS (Domain Name Server). Este servidor converte um IP vlido na minha rede para um endereo que mais fcil de se entender pelo usurio ou vice-versa. A princpio, nossa rede no ir acessar um nameserver. Escolha a opo No. Aps esse procedimento realizado basta escolher a opo Accept para aceitar suas novas configuraes de rede.

Confirm Startup Services


Aqui voc escolhe quais servios sero iniciados junto a inicializao do Linux. Escolha os itens: rc.httpd (servidor de pginas web), rc.mysqld (servidor de banco de dados gratuito), rc.sendmail (servidor de e-mail). Desabilite o item rc.pcmcia pois no estamos fazendo instalao do Slackware em um notebook. D OK

Console Font Configuration


Configurao do tamanho e tipo de fonte a ser usado no modo texto. No necessrio alterar. Escolha a opo No.

Hardware Clock Set to Utc


Altera as configuraes de data e hora. No necessrio alterar aqui pois muito mais amigvel faz-lo atravs da interface grfica. Escolha No e d OK. Pgina 9

Sistemas Operacionais Linux Prof. Edney

Time Zone Configuration


Configurao de Fuso Horrio. Escolha a opo America/Sao_Paulo e d OK.

Select Default Window Manager for X


Selecione aqui a interface grfica padro para que seja iniciada toda vez que o usurio der o comando xinit. Escolha a opo xinitrc.kde para que o KDE seja a interface grfica padro.

Warning: No Root Password Detected


A instalao detectou que o usurio root ainda no possui uma senha. Escolha a opo Yes para colocar uma senha inicial para o root. New password ser a senha inicial do usurio root. Entre com a senha 123456. Aps o trmino da aula essa senha ser alterada, por isso, no erre ao coloc-la. Aps digitar a senha, tecle enter. O linux, por questes de segurana, ir pedir para que voc repita a senha de root por trs vezes. Coloque a mesma senha em todas as vezes e tecle enter. Pressione enter para continuar a instalao.

Setup Complete
A instalao do Linux foi bem sucedida e chegou ao fim. D OK, pressione crtl + alt + del e retire o DVD do Slackware do drive. Aps esse procedimento realizado, o computador ser reiniciado e voc ter acesso a tela do LILO para escolher em qual sistema operacional deseja entrar. Escolha Linux e tecle em enter para prosseguirmos nossa aula.

PADRO POSIX

Todos as verses de Unix baseadas nas verses da AT & T e de Berkeley,

frequentemente com muitos cruzamentos e acrscimos, resultando em uma confuso de

Pgina 10

Sistemas Operacionais Linux Prof. Edney verses do Unix; porm, em 1990, o IEEE (Instituto de Engenheiros Eltricos e Eletrnicos) comeou a desenvolver o padro POSIX (Portable Operation System Interface Unix) para uniformizar as caractersticas dos Sistemas UNIX.

O Linux segue este padro.

AMBIENTES GRFICOS
KDE The K Desktop Environment

Gnome - Computing made easy

WindowMaker - X11 Window Manager

Pgina 11

Sistemas Operacionais Linux Prof. Edney

ESTRUTURA DE DIRETRIOS DO LINUX


Diretrio /bin /boot /dev /etc /home /lib /mnt /opt /proc /root /sbin /tmp /usr /usr/local /usr/src /var Descrio Arquivos binrios de comandos essenciais do sistema. Arquivos de boot (inicializao; boot-loader; Grub); kernel do Linux. Dispositivos (devices) de entrada/sada: floppy, hardisk, CD-ROM, modem . Arquivos de configurao (scripts) e inicializao. Diretrio local (home) de usurios. Bibliotecas e mdulos (drives): compartilhadas com freqncia. Diretrio de montagem de dispositivos, sistemas de arquivos e partio. Para instalao de programas no oficiais da distribuio. Diretrio virtual (RAM) onde rodam os processos ativos. Diretrio local do superusurio (root). Arquivos de sistema essenciais (binrios do superusurio). Arquivos temporrios gerados por alguns utilitrios. Arquivos de usurios nativos da distribuio. Para instalao de programas no oficiais da distribuio. Arquivos fontes do sistema necessrios para compilar o kernel. Arquivos de log e outros arquivos variveis.

Pgina 12

Sistemas Operacionais Linux Prof. Edney

MANUAL DE COMANDOS Ls list


Lista arquivos e diretrios. ls [opes] [arquivo...] Parmetro Descrio -a Inclui a entrada dos diretrios cujos nomes comecem com .", normalmente omitidas. -l Lista usando o formato longo (fornece informaes adicionais de arquivos e/ou diretrios listados: data, tamanho, privilgios, proprietrio, grupo etc). -t Ordena por ordem de tempo, do arquivo ou diretrio mais novo para o mais antigo, ao invs de usar a ordem alfabtica do nome.

Navegao no Modo Texto


Para simplificar e agilizar a utilizao de linhas de comando, o ambiente oferece recursos muito teis. Por exemplo, a seta para cima pode ser usada para mostrar, de um em um, os comandos digitados anteriormente. Isso permite que, caso se deseja utilizar novamente um comando ja digitado, no haja a necessidade de redigit-lo. Tecla Cima Baixo Descrio Apresenta o ultima linha de comando digitada; Apresenta a linha de comando digitada aps a linha de comando mostrada na tela; Esquerda / direita Usadas para editar o comando corrente; Ctrl + r Ctrl + tab Permite procurar por um comando j utilizado; Completa o nome de um arquivo ou comando existente.

Pgina 13

Sistemas Operacionais Linux Prof. Edney

Man manual
Mostra as pginas do manual online dos comandos utilizados no Linux. man [opes] nome ... Exemplo: Mostra o manual on-line do utilitrio ls. $ man ls

Who quem
Mostra quem esta acessando o sistema. who [opes] [am i]

W quem, o qu
Mostra quem esta acessando o sistema e o que eles esto executando. w [opes] [usurio]

Parmetro Descrio -s Usa o formato curto. No lista o tempo de acesso JCPU ou PCPU; Usurio Mostra informaes somente sobre um usurio especificado.

Date data
Mostra a data e a hora do sistema. Este comando exibe a data e hora corrente, desde que aplicado sem argumentos. Somente o superusuario poder, atravs do uso de argumentos associados ao comando date, alterar a data e hora do sistema. Parmetro -ddatestr Descrio Mostra a hora e data especificados em date string a qual pode estar em quase qualquer formato comum. O mostrador est no formato padro de sada, ou se um argumento iniciando com + dado para date, no formato

Pgina 14

Sistemas Operacionais Linux Prof. Edney especificado pelo argumento; -u Imprime ou acerta a hora e data em Tempo Universal Coordenado (Coordinated Universal Time - tambm conhecido como Tempo Mdio de Greenwich) ao invs do horrio local (do relgio de parede). MMDDhhmm MM representa o ms; DD o dia dentro do ms; hh as horas; mm os minutos cc Yy -ss Representa os dois primeiros dgitos do ano Representa os dois ltimos dgitos do ano Representa os segundos

Pwd path work directory


Exibe o nome do diretrio de trabalho atual. Exemplos: $ pwd /home/root/

Cd change directory
Muda o diretrio corrente. cd [nome...] Parmetro Descrio nome Especifica o diretrio que deve ser acessado. A localizao do diretrio pode ser relativa ou absoluta, como mostrada nos exemplos seguintes. J para acessar o diretrio anterior ao corrente, deve-se utilizar no lugar do nome dois pontos em seqncia, ... Mkdir make directory Cria diretrio.

Pgina 15

Sistemas Operacionais Linux Prof. Edney mkdir [-p] nome... Parmetro Descrio -p Possibilita a criao de vrios diretrios concatenados, ou seja, um sendo subdiretrio do outro. nome Nome para o novo diretrio ou conjunto de diretrios. Com o comando mkdir e possvel criar novos diretrios a partir do diretrio corrente.

Rmdir remove directory


Remove diretrios. rmdir [-p] nome... Parmetro Descrio -p Apaga todos os diretrios especicados; nome Nome do diretrio, ou conjunto de diretrios, que ser apagado.

Cat concatenete
Encadeia e imprime arquivos na sada padro. cat [opes] [arquivo...] Parmetro Descrio -b Numera todas as linhas de sada que no esto vazias ou com espaos, comeando com 1. -n Numera todas as linhas comeando com 1. Exemplos: $ cat > texto.exemplo // cria o arquivo texto.exemplo O linux um sistema operacional de 32 bits (e 64 bits em cpus de 64 bits), semelhante ao UNIX, que gratuito, de fonte aberta e

Pgina 16

Sistemas Operacionais Linux Prof. Edney compatvel com padres. O linux tem tudo que voc pode esperar de um sistema operacional. <Ctrl>+<d> # Salva o contedo digitado no arquivo texto.exemplo

More e Less
Exibe o contedo de um arquivo pagina a pagina. more [opes] [arquivo...] Parmetro Descrio -num Determina a quantidade de linhas, num, que ser mostrada por vez na sada padro +num Inicia a exibio do arquivo a partir da linha num

Head e Tail
Exibe o incio de um arquivo na sada padro. Por default, as dez primeiras linhas so mostradas. head [opes] [arquivo...] Parmetro Descrio -num Lista as primeiras N linhas Exemplo: Exibe o contedo das duas primeiras linhas do arquivo texto.exemplo. $ head -n 2 texto.exemplo O linux um sistema operacional de 32 bits (e 64 bits em cpus de 64 bits),

Wc word count
Contagem de linhas, palavras e caracteres de arquivos. wc [opes] [arquivo...] Parmetro Descrio Pgina 17

Sistemas Operacionais Linux Prof. Edney -c -l -w

Imprime a quantidade de bytes do arquivo Imprime a quantidade de linhas do arquivo Imprime a quantidade de palavras do arquivo O comando wc conta e apresenta o total de linhas, palavras e caracteres de um

arquivo-texto. Exemplos: $ wc texto.exemplo 6 42 222 texto.exemplo

6 representa o nmero de linhas 42 representa o nmero de palavras 222 a quantidade de caractere

More e Less
Exibe o conteudo de um arquivo pagina a pagina. more [opes] [arquivo...] Parmetro Descrio -num Determina a quantidade de linhas, num, que ser mostrada por vez na sada padro +num Inicia a exibio do arquivo a partir da linha num

Mv move
Move ou renomeia arquivos. mv [opes] arquivo... destino Parmetro Descrio -i Pergunta antes de mover um arquivo sobre outro que j existente.

Pgina 18

Sistemas Operacionais Linux Prof. Edney -f arquivo destino

No pede confirmao, mesmo se o arquivo de destino j exista. Nome do arquivo ou conjunto de arquivos que sero movidos Pode ser um novo nome para o arquivo ou o nome do diretrio de destino para o arquivo O comando mv transfere um arquivo, ou uma lista de arquivos, para o diretrio

de destino. Podem ser usados metacaracteres para racionalizar a quantidade de argumentos. Ele tambm pode ser usado para renomear um arquivo. Exemplos: $ mv texto.exemplo documento.exemplo

Rm remove
Remove arquivos. rm [opes] arquivo... Parmetro Descrio -r Exclui um diretrio e o seu contedo -f No pede confirmao, para eliminar arquivos e/ou diretrios Este comando remove um arquivo, ou uma lista de arquivos, usando metacaracteres. Conforme a opo tambm pode ser utilizado para remover diretrios. Exemplos: $ cd copia $ ls texto.exemplo texto.exemplo.old $ rm texto.exemplo rm: remove regular file `texto.exemplo'? Y

Pgina 19

Sistemas Operacionais Linux Prof. Edney

Ln Link
Freqentemente necessrio manter um arquivo em um diretrio e vincul-lo a outro. Por exemplo: voc poderia manter diversas verses de um programa, denominado prog.0.9, prog.1.1 etc, mas usar o nome prog para se referir a verso usada atualmente. Ou voc pode ter um arquivo instalado em uma partio, pois h espao em disco nela, mas o programa que usa o arquivo precisa estar em uma partio diferente porque o nome do caminho tem muito cdigo no programa. O Linux fornece ligaes para lidar com estas situaes. Uma delas, a ligao simblica um tipo de arquivo provisorio que apenas aponta para outro arquivo. Se voc editar, ler ou executar a ligao simblica, o sistema ser inteligente o suciente para fornecer o arquivo real. ln [opes] origem [destino] Exemplo $ ln -s ../texto.exemplo texto Parmetro Descrio -s Cria link simblico

Diff diference file


Compara dois arquivos de formato texto linha a linha. diff [opes] primeiro-arquivo segundo-arquivo Parmetro Descrio -i Ignora alteraes no caso; condiserando letras maisculas e minsculas iguais. -b Ignora alterac~oes em montante de espacos em branco. O comando diff procura encontrar o menor conjunto de diferenas entre as linhas dos arquivos, listando as que devem ser mudadas no primeiro arquivo para torn-lo idntico ao segundo-arquivo.

Pgina 20

Sistemas Operacionais Linux Prof. Edney Exemplos: $diff /root/texto1.txt /root/texto2.txt

Find buscar
Procura arquivos por nomes ou outras caractersticas e processa alguma ao com os arquivos encontrados. Parmetro Descrio -name Procura pelo nome de um arquivo ou conjunto de arquivos. arquivo -size {+ | = | Procura baseada no tamanho dos arquivos. A expresso verdadeira: usando -} tamanho '+' se o tamanho do arquivo for maior que tamanho; usando '=' se for igual ao tamanho; e, usando '-', se for menor que tamanho. -newer x Procura arquivos mais novos que x ou que tenham sido atualizados mais recentemente que ele. \! Negao O comando find procura arquivos recursivamente em cada diretrio especificado em caminho, confrontando-os com a expresso passada. A expresso escrita utilizando-se vrios operadores do comando. Cada operador retorna verdadeiro ou falso. Podem-se compor os operadores usando-se and, or, not e parnteses. A expresso avaliada at que se possa verificar qual o seu valor: verdadeiro ou falso. Exemplos: $ find /home/root/ -name "aluno*" /home/root/aula/alunos /home/root/aula/alunos.copia $ find /home/root/ -size +1000k /home/root/Documents/Apostila de Linux.sxw /home/root/j2sdk-1_4_0_03-linux-i586-rpm.bin

Pgina 21

Sistemas Operacionais Linux Prof. Edney /home/root/j2sdk-1_4_0_03-fcs-linux-i586.rpm /home/root/mdk1.iso /home/root/mdk2.iso /home/root/mdk3.iso No exemplo acima comando find, o Linux procurar, a partir do diretrio /home/root, por arquivos maiores que 1000 kbytes. Observe que foram encontrados seis arquivos nessa situao: abrirei o diretrio /home/root e listarei o contedo para que observe.
$ ls -l mdk* -rw-r--r--rw-r--r--rw-r--r-1 root 1 root 1 root root root root 682471424 Set 30 09:24 mdk1.iso 681586688 Set 30 09:29 mdk2.iso 681881600 Set 30 09:34 mdk3.iso

Grep
Procura por um padro em um arquivo. grep [opes] padro arquivos... Parmetro Descrio -c Apresenta simplesmente o nmero de vezes que apareceu o parmetro padro. -l Mostra os nomes dos arquivos que contem o parmetro padro. Este comando pesquisa linhas nos arquivos de entrada que casam com uma expresso regular (parmetro padro). As linhas da entrada que possuam o padro so escoadas na sada, as linhas que no contenham o padro so rejeitadas. til para buscar denifies de variveis ou funes em programas. Exemplos :$ cat alunos Claudiane Matheus $ grep c alunos 2

Pgina 22

Sistemas Operacionais Linux Prof. Edney Izaura

$ grep Mat alunos Matheus

$ grep l Claudiane * alunos alunosCopia

COMANDOS PARA FILTROS


So utilitrios que recebem uma entrada, realizam algumas operaes e apresentam o resultado processado como sada. Ou seja, os filtros utilizam uma entrada (em geral a entrada padro, a menos que seja especificada outra) para processar uma informao e convert-la em outra, que ser apresentada na sada (que tambm normalmente a sada padro), porm sem mudar o contedo original da informao.

Sort
Ordena as linhas de arquivos texto. sort [opes] arquivo Parmetro Descrio -r Reverte o resultado da comparao, fazendo com que as linhas com valores maiores apaream antes das linhas de valor menor. -b Ignora espaos em branco iniciais ao encontrar os campos chaves de cada linha.

Cut cortar
Seleciona campos de uma tabela. cut {-c|-f|..} [opes] [arquivo...] Parmetro Descrio -c Lista-de-caracteres Lista somente caracteres listados em lista-de-caracteres

Pgina 23

Sistemas Operacionais Linux Prof. Edney -f

Lista-de-campos Lista somente os campos listados na lista-de-campos. Campos so separados por um TAB por padro.

-d

Para uso com -f, onde os campos so separados pelo primeiro caractere em delimitador ao invs de TAB. Esta uma opo. A entrada padro tratada como uma tabela. O comando seleciona colunas da tabela para serem removidas ou copiadas na sada padro. Exemplos: $ cat alunos Claudiane Matheus Izaura $ cut -c1-7 alunos Claudia Matheus Izaura Este comando listou o contedo da 1 coluna at a coluna 7 $ cut -d 'u' -f 1 alunos Cla Mathe Iza Este comando listou o contedo das linhas at a letra 'u', ou seja a 1 metade. $ cut -d 'u' -f 2 alunos diane s

Pgina 24

Sistemas Operacionais Linux Prof. Edney ra Este comando listou o contedo das linhas aps a letra 'u', ou seja a 2 metade.

REDIRECIONAMENTO DE ENTRADA E SADA


O usurio pode, atravs do redirecionamento de E/S, redefinir de onde um comando ou programa receber sua entrada e para onde enviar sua sada. A entrada de um comando so os dados sobre os quais o comando ir operar. Estes dados podem vir de um arquivo especificado pelo usurio, de um arquivo de sistema, do terminal ou da sada de outro comando. A sada de um comando e o resultado da operao que ele realiza sobre a entrada. A sada dos comandos pode ser impressa na tela do terminal, enviada a um arquivo ou servir de entrada para outro comando. Todos os comandos que foram utilizados at agora, apresentaram seus resultados na tela. Esta a sada padro (STDOUT). Porm, pode-se alterar esta sada, por exemplo, para um arquivo: Na tabela a seguir, so apresentados alguns operadores utilizados para redirecionamento de E/S. Operador > >> | < Redireo Da sada. Da sada para o fim do arquivo. Da sada de um comando para entrada de outro. Da entrada. Exemplos: Concatena dois arquivos aula1a.dat e aula1b.dat no arquivo aula1completa.dat: $ cat aula1a.dat aula1b.dat > aula1-completa.dat

Pgina 25

Sistemas Operacionais Linux Prof. Edney ou $ cat aula1a.dat > aula1-completa.dat $ cat aula1b.dat >> aula1-completa.dat Ser visto agora a respeito de um recurso tambm importante de redirecionamento de E/S: o pipe (barra vertical, '|' ). Com o seu uso, o resultado da execuo de um comando a entrada para a execuo de outro comando. Exemplo: Suponha que se deseja visualizar e quantificar todos os processos pertencentes ao usurio root, para isso, existem duas possibilidades: Sem pipe: $ ps au > processos $ grep edney processos > processosroot $ wc -l processosroot 2 processosjosericard ou, com pipe: $ ps au | grep joseric| wc -l No primeiro caso, ainda seria necessrio remover os arquivos processos e procesosroot.

GERENCIAMENTO DE PACOTES Wget


Faz download de arquivos da internet tanto via protocolos TCP quanto FTP $ wget <url do arquivo desejado>

Installpkg
Instala pacotes de aplicativos no Slackware

Pgina 26

Sistemas Operacionais Linux Prof. Edney $ installpkg <nome do pacote a ser instalado>

Removepkg
Remove pacotes previamente instalados no Slackware. $ removepkg <nome do pacote a ser removido>

COMPACTAO DE ARQUIVOS Tar


Compacta / descompacta arquivos $ tar <parmetro> <nome do arquivo compactado com a exteno .tar> <nome do arquivo a ser compactado> Parmetro Ao -cf Compacta arquivo no formato tar. -xvf -cvzf Descompacta arquivo no formato tar. Compacta arquivos no formato tgz Ex.: tar cvzf teste.tgz teste/* teste.tgz nome do arquivo compactado teste/* diretrio e contedo a ser compactado

Gzip
Compacta / descompacta arquivos $ gzip <nome do arquivo a ser compactado> $ gunzip <nome do arquivo a ser descompactado>

GERENCIAMENTO DE PROCESSOS
Todo sistema oferece uma interface para que os usurios tenham algum controle sobre os processos que est executando.

Pgina 27

Sistemas Operacionais Linux Prof. Edney Definio de Processo: Processo um programa em execuo.Mais especificamente, do ponto de vista do sistema operacional, a estrutura responsvel pela manuteno de todas as informaes necessrias execuo de um programa. Os processos so entidades independentes, e cada processo individual possui permisses de acesso e atributo como o PID (Process Identification identificao do processo). O linux, como qualquer outro sistema operacional, responsvel por gerenciar os processos do sistema, de forma a otimizar a utilizao da CPU, de maneira que, se um processo tenta ler ou escrever dados no disco rgido, por exemplo, ficar em estado de waiting (espera) at que a operao de entrada e sada seja completada. Enquanto isso, outro processo ser executado, minizando assim o desperdcio do tempo da CPU, memria e perifricos. No diretrio /proc criado um subdiretrio para cada processo em execuo. Os nomes desses subdiretrios so os PIDs desses processos. Os arquivos cmdline, environ e status, dentro desses subdiretrios, contm informaes detalhadas sobre a execuo desses processos. Os comandos ps, pstree e top podem ser utilizados tambm para obter informaes sobre os processos em execuo. possvel tambm alterar a prioridade de execuo dos processos, por meio dos comandos nice e renice, que permitem um controle individual sobre a prioridade de um processo. Um processo pode ter prioridades variando entre -20 (maior prioridade) e 19 (menor prioridade). O comando nice permite executar um programa ou comando com uma determinada prioridade (a prioridade padro 10), enquanto o renice permite modificar a prioridade de um processo que est em execuo no momento. Contudo, somente o usurio root pode executar processos com prioridade negativa ou modificar a prioridade de processos em execuo para negativa. Um processo possui vrios atributos que controlam a sua execuo. Atributo PID Descrio (Process Identification identificao do processo) Identifica um processo em execuo, Nenhum PID pode ser repetido at nova inicializao do sistema. PPID (Parent Process Identification identificao do processo pai) - Identifica o

Pgina 28

Sistemas Operacionais Linux Prof. Edney processo pai que gerou o processo filho. UID (User Identification identificao do usurio) Identifica o usurio que criou o processo. Somente o usurio root pode abortar os processos criados por outros usurios. GID (Group Identification identificao do grupo) Identifica o grupo ao qual pertence o processo. EUID (Effective User Identification identificao do usurio efetivo) - Quando um programa for executado com seu setuid ligado (isto feito pelo comando chmod +s <arquivo>), o EUID deste processo passa a ser do dono do arquivo executvel, em vez do UID do usurio que est executando este programa. Por exemplo, se o programa que informa o espao em disco for propriedade do usurio root e o seu setuid estiver ligado, qualquer usurio que venha a execut-lo vai adquirir privilgios de usurio root somente para esse processo. EGID (Effective Group Identification identificao do grupo efetivo).

Seqncia de Execuo de Um Processo


Quando um processo est sendo executado, passa por vrios estados. Logo que iniciado, posto no estado de ready (pronto). O scheduler (escalonador de tarefas) do kernel decide, de acordo com a prioridade e a ordem das suas filas de execuo, quando ceder a CPU a esse pocesso, que passa para o estado de running (execuo). Quando seu time slice (fatia de tempo) esgotar, ele ser novamente posto no estado de ready e ficar aguardando um novo escalonamento. Quando um processo tenta efetuar alguma operao de entrada e sada, ele pode ser bloqueado se o perifrico que ele est tentando acessar estiver ocupado, e passar ao estado de waiting (espera) at que a operao de entrada e sada seja completada. No final da execuo, o processo pode ser morto (com o comando kill). Processos que terminam sem que seu parent (pai) seja informado, podem entrar no estado zombie (zumbi), que um processo morto por estar rfo.

Pgina 29

Sistemas Operacionais Linux Prof. Edney

CLASSIFICAO DE PROCESSOS
Quando execuo, os processos no Unix (e no Linux tambm) podem ser classificados em: Foreground (primeiro plano) Processos executando em foreground so inicializados no terminal de comandos, podem interagir com os usurios e exibem a sua execuo no monitor de vdeo. Esses processos prendem o prompt, impedindo que outros processos sejam inicializados pelo terminal de comandos. Background (segundo plano) Processos executando em background so inicializados no terminal de comandos, no exibem a sua execuo no monitor de vdeo. Esses processos no prendem o prompt e permitem que outros processos sejam inicializados pelo terminal de comandos. Quando ao tipo, os processos no Unix (e no Linux tambm) podem ser classificados em: Processos interativos Processos interativos so iniciados a partir de uma sesso de usurio no terminal de comandos e so controlados por ele. Quando um comando do shell executado, um processo executado em foreground, um program em foreground recebe dados da entrada-padro (stdin) do terminal que controla e envia dados para a sada-padro (stdout) ou para a sada-padro de erros (stderr) desse mesmo terminal. Teclando <ctrl> + <z>, esse processo suspenso e o shell envia a mensagem: stopped e o nmero do job desse processo. Teclando <ctrl> + <x>, esse processo abortado. Os shells possuem comandos para o controle de jobs como fg, bg, jobs. Processos em lote (batch) Processos em lote so controlados pelos comandos at, batch e cron. A sada desses comandos enviada por mail para o usurio, depois que a execuo for concluda. Quando ao tipo, os processos no Unix (e no Linux tambm) podem ser classificados em: Daemons Daemons so processos servidores normalmente executados quando o Linux inicializado, permanecendo em execuo enquanto o sistema estiver em Pgina 30

Sistemas Operacionais Linux Prof. Edney funcionamento esperando em background (segundo plano) que algum outro processo solicite o seu servio. o caso, por exemplo, do sendmail e do postfix, que so programas de transporte de mail atravs do computador ou para outros computadores interligados via rede.

CONTROLE DE TAREFAS (JOB CONTROL)


O controle de tarefas se refere habilidade de suspender a execuo de processos e retormar a sua execuo posteriormente. Este recurso fornecido pelo shell e pelo terminal, sendo empregado pelos usurios do sistema. O shell associa um ou mais processos a cada job inicializado por ele. Isto pode ser visualizado pelo comando jobs. Quando o shell inicializa um processo em background, ele exibe uma linha como a mostrada a seguir: $ vi & [1] 3182 Isto indica que o nmero do job 1 e que o PID do processo associado a este job 3182

Comandos Para Gerenciamento de Processos


<ctrl> + <c> Aborta um processo <ctrl> + <z> Suspende um processo Exemplo: $ cat > arquivo.exemplo testando <ctrl> <z> $jobs [1]+ Stopped $fg 1 cat >arquivo.exemplo

Pgina 31

Sistemas Operacionais Linux Prof. Edney Exemplo: $ find / -iname "a*" > arquivoslocalizados <ctrl> <z> Par a execuo do processo $ jobs Lista os jobs ativos [1]+ Stopped find / -iname "a*" > arquivoslocalizados

$ bg 1 Continua a execuo do comando find em 2 plano (background) $ fg 1 Continua a execuo do comando find em 1 plano (foreground) outra maneira de executar um processo em segundo plano utilizando & no fim da linha de comando $ find / -iname a* > arquivoslocalizados & $ jobs l

Criando um Programa em C
Edite um arquivo chamado de letra.c com o editor vi $ vi letra.c //letra.c int main(){ char ch='a'; int i; for (i =1; i<8000;i++) { usleep(3000); printf("\n%c", ch++); if (ch=='z') ch = 'a'; } printf("\n.::Fim de Arquivo::.\n\n"); Pgina 32

Sistemas Operacionais Linux Prof. Edney } compile o arquivo com o comando $ gcc letra.c -o letra Edite um arquivo chamado de num.c com o editor vi $ vi num.c //num.c int main() { int i; for (i =1; i<8000;i++) { usleep(3000); printf("\n%d", ch++); } printf("\n.::Fim de Arquivo::.\n\n"); } compile o arquivo com o comando $ gcc num.c -o num

Exibindo Processos em Execuo


ps process Exibe informaes sobre os processos ativos. ps [opes] Parmetro Descrio -a Exibe tambm informaes de outros usurios -u -x Exibe o nome do usurio e a hora de incio do processo Exibe tambm os processos no associados a um terminal de controle

Pgina 33

Sistemas Operacionais Linux Prof. Edney -p Exibe o processo cujo o nmero pid. Execute os programas $ ./num & ./letra & abra um outro terminal $ ps au

EXIBINDO PROCESSOS EM EXECUO CALCULANDO O TEMPO DE EXECUO


Execute o programa $ time ./num &

Pstree process tree (rvore de processos)


Exibe informaes sobre os processos ativos em forma de rvore. pstree [opes] Parmetro Descrio -a Exibe argumentos de linha de comando -c -l -n -p No compacta as subrvores. Exibe linhas detalhadas Classifica processos pelo pid em vez do nome Mostra pid dos processos $ pstree -acp

Top
Exibe os processos com maior consumo de CPU top [opes]

Pgina 34

Sistemas Operacionais Linux Prof. Edney

Parmetro Descrio -u Exibe apenas processos pertencentes ao usurio especificado <usurio> -U <usurio> -d <n> No mostra processos pertencentes ao usurio especificado Atualiza o monitor de vdeo a cada n segundos Para pedir ajuda, pressione <h> Para matar um processo pressione <k> e digite o pid Para sair pressione <q>

$ top

Free
Exibe a quantidade de memria livre usada no sistema free [opes] Parmetro Descrio -b Exibe as informaes em Bytes -k -m -o Exibe as informaes em KiloBytes Exibe as informaes em MegaBytes Exibe os dados sem levar em considerao a memria utilizada como buffer. -s <n> Exibe continuamente no intervalo (em n segundos) especificado os dados de memria Exemplo $ free -s 5

Pgina 35

Sistemas Operacionais Linux Prof. Edney

Kill
Kill - Finaliza um processo pelo PID

kill [opes] [sinal] <pid_processo> Parmetro Descrio -n Sinal aplicado ao processo -l Exemplo: $ kill -9 2314 (mata (cancela ou aborta) o processo 2314 Lista todos os nomes e nmeros de sinais

Killall
Finaliza um processo pelo nome killall [opes] [sinal] <nome_processo> Parmetro Descrio -n Sinal aplicado ao processo -l Exemplo: $ killall -9 gedit (mata (cancela ou aborta) o processo gedit). Lista todos os nomes e nmeros de sinais

GERENCIAMENTO DE USURIOS, GRUPOS E PRIVILGIOS


O Linux multiusurio e possui ferramentas para gerenciamento dos usurios, grupos e seus privilgios de acesso a arquivos e diretrios, como tambm o espao que estes podem ocupar no disco rgido.

Usurios e Grupos

Pgina 36

Sistemas Operacionais Linux Prof. Edney Um usurio algum que possui uma identificao no sistema, um nome e um nmero. Essas informaes permitem ao Linux controlar como o acesso garantido aos usurios e o que eles podem fazer depois de obter a permisso de acesso. Um grupo um conjunto de usurios. Cada grupo tambm possui uma identificao nica no sistema, um nome e um nmero. Os administradores de sistema frequentemente controlam o acesso por grupos. A maioria das distribuies do Linux utiliza um sistema de grupo privado de usurios (UPG), tornando a administrao muito mais simples. O sistema UPG no altera o padro Unix, simplesmente oferece uma nova conveno no gerenciamento de grupos. Toda vez que um usurio novo criado, automaticamente criado um novo grupo com o mesmo nome de usurio, do qual ele o nico membro.

O que compe um usurio

Item Login Password UID

Descrio O nome do usurio. Cada nome de usurio deve ser nico A senha pela qual o usurio pode acessar o sistema. Abreviatura de User Identification (identificao de usurio). Esse nmero usado em conjunto com o nome do login para permitir o acesso do usurio ao sistema.

GID Comment Home Directory

Abreviatura de Group Identification (identificao de Grupo). Descrio do usurio. Geralmente o nome completo do usurio. o diretrio do usurio quando ele acessa o sistema, onde seus

Pgina 37

Sistemas Operacionais Linux Prof. Edney Path arquivos so armazenados. Todos os seus arquivos de configurao pessoal tambm so mantidos aqui Shell o programa executado quando o usurio acessa o sistema. Geralmente um shell de comando como o bash.

O que compe um grupo


Item Name Password Descrio O nome do grupo. Cada nome de grupo deve ser nico. Se um grupo possui uma senha para controlar o seu acesso, ela deve ser definida. Na maioria dos casos, porm, no necessrio se preocupar com ela. GID User List Abreviatura de Group Identification (identificao de Grupo). uma lista dos usurios que fazem parte do grupo

Arquivos e Diretrios de configurao


As informaes sobre usurios so armazenadas nos arquivos /etc/passwd e /etc/shadow e as informaes sobre grupos, no arquivo /etc/group. Os programas ou ferramentas que gerenciam usurios e grupos editam esses arquivos. Os arquivos /etc/default/useradd e /etc/login.defs so utilizados pelo comando useradd na criao de usurios novos. O diretrio /etc/skel contm os arquivos padro utilizados na criao de um usurio.

Arquivo /etc/passwd
Obs.: Sintaxe desse arquivo : <usurio> : <senha criptografada> : <UID> : <GID> : <comentrio> : <home> : <shell> Incio do Arquivo

Pgina 38

Sistemas Operacionais Linux Prof. Edney # /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/bin/sh daemon:x:2:2:daemon:/sbin:/bin/sh adm:x:3:4:adm:/var/adm:/bin/sh lp:x:4:7:lp:/var/spool/lpd:/bin/sh 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:/var/spool/mail:/bin/sh news:x:9:13:news:/var/spool/news:/bin/sh uucp:x:10:14:uucp:/var/spool/uucp:/bin/sh operator:x:11:0:operator:/var:/bin/sh games:x:12:100:games:/usr/games:/bin/sh nobody:x:65534:65534:Nobody:/:/bin/sh rpm:x:13:101:system user for rpm:/var/lib/rpm:/bin/false vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin rpc:x:70:70:system user for portmap:/:/bin/false xfs:x:71:71:system user for XFree86:/etc/X11/fs:/bin/false apache:x:72:72:system user for apache-conf:/var/www:/bin/sh postfix:x:73:73:system user for postfix:/var/spool/postfix:/bin/false rpcuser:x:74:74:system user for nfs-utils:/var/lib/nfs:/bin/false sshd:x:75:75:system user for openssh:/var/empty:/bin/true gdm:x:76:76:system user for gdm:/var/lib/gdm:/bin/false

Pgina 39

Sistemas Operacionais Linux Prof. Edney ftp:x:77:77:system user for proftpd:/var/ftp:/bin/false postgres:x:78:78:system user for postgresql:/var/lib/pgsql:/bin/bash root:x:501:501:Jose ricardo:/home/root:/bin/bash mysql:x:79:79:system user for MySQL:/var/lib/mysql:/bin/bash aluno:x:502:500:aluno:/home/aluno:/bin/bashArquivo /etc/shadowObs.: Sintaxe desse arquivo : <usurio> : <senha criptografada> : <n dias aps 01/01/1970 a senha foi mudada pela ltima vez> : <n dias depois da criao do usurio, a senha pode ser modificada> : <n dias depois da criao do usurio, a senha deve ser modificada> : <notifica o usurio n dias antes que a senha expire> : <desabilita a conta n dias aps a senha ter expirado> : <n dias aps 01/01/1970 a conta ser expirada> : <campo reservado> para maiores informaes, execute o comando: $ man shadow Incio do Arquivo # /etc/shadow root:$1$oLz1JH5g$9Ru.bA5PHdlOFy.0LcsMc/:12438:0:99999:7::: bin:*:12438:0:99999:7::: daemon:*:12438:0:99999:7::: adm:*:12438:0:99999:7::: lp:*:12438:0:99999:7:::

Pgina 40

Sistemas Operacionais Linux Prof. Edney sync:*:12438:0:99999:7::: shutdown:*:12438:0:99999:7::: halt:*:12438:0:99999:7::: mail:*:12438:0:99999:7::: news:*:12438:0:99999:7::: uucp:*:12438:0:99999:7::: operator:*:12438:0:99999:7::: games:*:12438:0:99999:7::: nobody:*:12438:0:99999:7::: rpm:!!:12438:0:99999:7::: vcsa:!!:12438:0:99999:7::: rpc:!!:12438:0:99999:7::: xfs:!!:12438:0:99999:7::: apache:!!:12438:0:99999:7::: postfix:!!:12438:0:99999:7::: rpcuser:!!:12438:0:99999:7::: sshd:!!:12438:0:99999:7::: gdm:!!:12438:0:99999:7::: ftp:!!:12438:0:99999:7::: postgres:!!:12438:0:99999:7::: josericardo:$1$ABi/Noww$bPGIOJBA.g/Fm8cXyIJAj1:12438:0:99999:7::: mysql:!!:12445:0:99999:7::: aluno:$1$VKnE269n$cYEEpP2o.LsLMVJ9EHa410:12504::99999::::

Pgina 41

Sistemas Operacionais Linux Prof. Edney

Arquivo /etc/group
Obs.: Sintaxe desse arquivo : <grupo> : <senha criptografada> : <GID> : <comentrio> : lista de usurios Voc no est vendo o arquivo group na ntegra pois eliminei algumas linhas para que coubesse num slide.Incio do arquivo # /etc/groups root:x:0: bin:x:1: daemon:x:2: sys:x:3: tty:x:5: disk:x:6: lp:x:7: mem:x:8: kmem:x:9: wheel:x:10: uucp:x:14: floppy:x:19: cdrom:x:22: users:x:100: xgrp:x:102:xfs,gdm rpc:x:70: xfs:x:71: apache:x:72: Pgina 42

Sistemas Operacionais Linux Prof. Edney postfix:x:73: pppusers:x:230: popusers:x:231: rpcuser:x:74: sshd:x:75: slocate:x:233: ftp:x:77: josericardo:x:501: mysql:x:79: aluno:*:500:

Arquivo /etc/default/useradd
Item GROUP=100 HOME=/home INACTIVE=-1 Descrio Indica o GID do primeiro usurio vlido a ser criado Indica onde sero criados os diretrios home dos usurios Indica quantos dias aps a expirao da senha a conta ir se tornar invlida EXPIRE= Indica a data na qual a conta ser desabilitada, se o valor for nulo, a conta no ser desabilitada SHELL=/bin/bash SKEL=/etc/skel Especifica o shell do usurio Copia recursivamente os arquivos e subdiretrios presentes no diretrio especificado para o diretrio home.

Arquivo /etc/login.defs
Item Descrio

Pgina 43

Sistemas Operacionais Linux Prof. Edney

MAIL_DIR

/var/spool/mail #diretrio onde sero armazenadas as mensagens de e-mail

PASS_MAX_DAYS 99999 # nmero de dias at que a senha expire PASS_MIN_DAYS PASS_MIN_LEN 0 # nmero mnimo de dias entre duas alteraes de senha 5# nmero mnimo de caracteres para uma senha

PASS_WARN_AGE 7# nmero de dias anteriores expirao da senha que o usurio deve ser notificado UID_MIN UID_MAX GID_MIN GID_MAX #USERDEL_CMD 500# nmero mnimo para UID de contas de usurios 60000 # nmero mximo para UID de contas de usurios 500# nmero mnimo para GID de contas de usurios 60000 # nmero mximo para GID de contas de usurios /usr/sbin/userdel_local # Comando a ser usado com o comando userdel na remoo de um usurio CREATE_HOME yes# indica se o diretrio home do usurio deve ou no ser criado.

useradd ou adduser
Adiciona usurios ao sistema useradd <usurio> [opes] adduser <usurio> [opes] Item -d <dir_home> Descrio Diretrio home do usurio que est sendo criado

Pgina 44

Sistemas Operacionais Linux Prof. Edney

-c <comentrio> -g <grupo> -G <grupos> -s <programa> -e <mm/dd/aa> -f dias> Exemplos Grupo

Comentrio

Grupos extras dos quais o usurio ser membro Programa que o usurio utilizar ao entrar no sistema (normalmente um shell) Especifica a data na qual a conta ser desabilitada

<num Indica quantos dias aps a expirao da senha a conta ser desabilitada.

# useradd aluno # adduser jose # adduser ricardo -d /home/ricardo -c Prof Jos Ricardo -g professores -s /bin/bash

chage
Muda as informaes de expirao de senha de um usurio chage <usurio> [opes] Item -l -M dias> -m <num Nmero mnimo de dias entre alteraes de senha. O Valor zero indica que o Descrio Exibe informaes de expirao de senha de um usurio <num Nmero mximo de dias at que a senha expire

Pgina 45

Sistemas Operacionais Linux Prof. Edney dias> -d <mm/dd/aa> -I dias> -E <mm/dd/aa> -W dias> <num Indica o nmero de dias anteriores expirao da senha que o usurio deve ser notificado Exemplos # chage aluno -l # chage aluno <num (letra i) Nmero de dias entre a expirao da senha e o bloqueio da conta do usurio Data de expirao da conta do usurio usurio pode alterar sua senha a qualquer tempo Data da ltima alterao da senha

passwd
Define a senha para um usurio passwd <usurio> Exemplo # passwd josericardo

userdel
Elimina um usurio do sistema userdel <opo> <usurio> Item -r Descrio Remove todos os arquivos do usurio, incluindo o seu diretrio home Exemplo: # userdel -r aluno

Pgina 46

Sistemas Operacionais Linux Prof. Edney

id
Exibe o identificador do usurio id [opes] Item -u Descrio Exibe apenas o identificador efetivo do usurio

-g

Exibe apenas o identificador de grupo efetivo do usurio

Exemplo: $ id $ id -u

su
Troca o id efetivo do usurio. (loga como um outro usurio) su [opes] [usurio] Item -c <comando> -l Torna o interpretador um interpretador de acesso. Isso significa limpar todas as variveis de interpretador, exceto TERM, HOME, SHELL, USER e LOGNAME, e configura a varivel PATH, alterando a localizao para o diretrio pessoal do usurio. Descrio Executa apenas o comando especificado

Exemplos: Pgina 47

Sistemas Operacionais Linux Prof. Edney $ su -c ls /root $ su -l josericardo

groupadd
Adicona grupos ao sistema groupadd <grupo> [opes] Item -g <GID> Descrio Nmero do grupo Exemplo: # groupadd laboratorio # groupadd sistemas -g 1000

gpasswd
Define senha para um grupo e realiza vrias funes de administrao de usurios e grupos. Obs.: Embora seja possvel definir e remover senhas para grupos, essa modalidade no funciona em alguns sistemas Linux/Unix. Neste caso, para permitir ou negar acesso de usurios em um determinado grupo, utilizamos as opes -a e -d. gpasswd [opes] [usurios] <grupo> Item -a -d -r -A -M Descrio Adiciona usurio ao grupo Exclui usurio do grupo Remove senha do grupo Define o administrador do grupo Define membros do grupo

Pgina 48

Sistemas Operacionais Linux Prof. Edney

-R

Desabilita o acesso ao grupo pelo comando newgrp Exemplos: # useradd jose # passwd jose # gpasswd laboratorio // define a senha do grupo laboratorio # gpasswd -a jose laboratorio # gpasswd -d jose laboratorio # gpasswd -r laboratorio # userdel -r jose

groupdel
Remove um grupo do sistema groupdel <grupo> Exemplos: # groupdel sistemas # groupdel laboratorio

groups
Exibe os grupos de um usurio. Se nenhum usurio for especificado, mostrar informaes sobre o usurio que executou o comando. groups [grupo] Exemplos: $ groups $ groups root

CRIANDO UM USURIO COM PODER DE ROOT


Crie um usurio Pgina 49

Sistemas Operacionais Linux Prof. Edney # useradd jose # passwd jose Edite o arquivo /etc/passwd com um editor de texto qualquer e modifique o UID e o GID do usurio jose para 0: jose:x:501:501::/home/jose:/bin/bash passar a ser: jose:x:0:0::/home/jose:/bin/bash Ento o usurio jose ter todo o poder do root, por padro.

CONGELANDO (SUSPENDENDO) UM USURIO


Edite o arquivo /etc/passwd com um editor de texto qualquer e comente a linha referente ao usurio a ser congelado jose:x:501:501::/home/jose:/bin/bash passar a ser: #jose:x:501:501::/home/jose:/bin/bash Ento o usurio jose no poder logar no sistema at que o comentrio seja removido.

REMOVENDO UM USURIO MANUALMENTE


Edite o arquivo /etc/passwd com um editor de texto qualquer e apague a linha referente ao usurio a ser removido. Edite o arquivo /etc/group e apague a linha referente ao usurio a ser removido. Edite o /etc/shadow e apague a linha referente ao usurio a ser removido. Remova o diretrio home do usurio (se existir). Remova o arquivo /var/spool/mail/<usurio>

Pgina 50

Sistemas Operacionais Linux Prof. Edney

GERENCIAMENTO DE PRIVILGIOS
O gerenciamento de privilgios permite o administrador do sistema definir polticas para acesso dos usurios e grupos aos arquivos, diretrios e programas executveis do sistema.

Permisses e Privilgios
O linux fornece facilidades de proteo dos arquivos e diretrios. Estas protees so organizadas em trs classes de privilgios: do dono, do grupo e dos outros. Cada classe composta de trs nveis bsicos de permisses: para leitura, para escrita e para execuo. O dono do arquivo normalmente aquele que criou o arquivo, ou dono ao o superusurio (root) definiu que o arquivo pertenceria. O grupo do arquivo normalmente, mas nem sempre, o grupo ao qual o usurio pertence (ou, depende do sistema, um dos grupos ao qual o usurio pertence). Normalmente os arquivos so criados com uma permisso padro, que, salvo meno em contrrio (comando umask) ser o dono com permisso para ler e escrever (e, se for o caso, executar), grupo e outros com permisso para ler (e, se for o caso, para escrever e/ou executar).

Bits de atributos especiais


So bits que permitem um controle adicional s permisses-padro descritas anteriormente. BIT Setuid Descrio Se este bit estiver ligado, o arquivo executado como se fosse executado pelo dono; no faz sentido para diretrios. Setgid Se este bit estiver ligado, o arquivo ser executado como se fosse invocado por um membro do grupo proprietrio; todo arquivo criado num diretrio com o bit setgid ligado criado com o mesmo grupo do diretrio.

Pgina 51

Sistemas Operacionais Linux Prof. Edney

Sticky

Um arquivo criado em um diretrio com o bit sticky ligado s pode ser apagado por seu proprietrio.

LISTAGENS DE PRIVILGIOS$ ls -l
-rwxrwxrwx -rw-rw-r--rw-r--r--rw-r--r--rw-r--r--rw-r--r--rw-r--r-drwxrwxr-x drwxr-xr-x 1 1 1 1 1 1 1 2 2 josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo josericardo 1162509 705 389 0 705 83 861 4096 4096 Nov Out Nov Nov Nov Nov Nov Out Nov 11 15 11 11 11 11 11 15 11 10:16 16:45 09:36 09:37 09:38 09:36 09:40 16:13 09:42 Apostila de Linux.sxw* arquivos.html exemplo1.dat exemplo2.dat exemplo3.dat exemplo.dat exemplo.zip Java/ textos/

Os dez primeiros caracteres das linhas listadas pelo comando ls -l, definem precisamente o que os usurios de cada classe podem fazer com seus arquivos e diretrios. Esses caracteres so chamados de modos de permisso. Para entender o que esses caracteres signicam, separe-os em quatro grupos com 1, 3, 3 e 3 caracteres O primeiro caracter define o tipo de entidade do sistema de arquivos (arquivo, diretorio, link etc): um - representa um arquivo normal; o d", um diretorio; o l", um link simblico. Outras possibilidades raramente utilizadas.

Listagens de Privilgios

Os outros nove caracteres devem ser separados em trs grupos de trs caracteres cada: o primeiro grupo define as permisses do dono; o segundo, as permisses do grupo; e o terceiro, as permisses dos outros usurios. Em cada grupo, as permisses sempre aparecem na ordem leitura, escrita, execuo. A permisso de leitura e sempre indicada com um r"; a permiss de escrita, com um w"; e, a permisso de execuo com um x". Enquanto, a permisso negada e indicada por um hfen, -", na posio adequada. Exemplo: $ ls -l arquivos.html -rw-rw-r-- 1 josericardo josericardo 705 Out 15 16:45 arquivos.html

rw-

rw-

r--

Pgina 52

Sistemas Operacionais Linux Prof. Edney tipo dono grupo outros

COMANDOS PARA GERENCIAMENTO DE PRIVILGIOSchmod


Altera as permisses de um arquivo ou diretorio. chmod [opes] modo arquivo... Item -R Modo -c -v -f Descrio Muda o modo de permisso de diretrios e seus contedos, recursivamente. Pode ser representado simbolicamente ou numericamente. Mostra informaes sobre os arquivos modificados. Descreve detalhadamente as alteraes de atributos. No imprime mensagens de erro. Modo simblico: uma lista de expresses na forma

<classe><operando><valor> separados por vrgula. Classe u g o a Descrio Permisses para o dono do arquivo. Permisses para o grupo do arquivo. Permisses para outros usurios. Todos os anteriores (all).

Operando + = -

Descrio Adiciona permisses as permisses existentes no arquivo. Assinala explicitamente uma permisso, retirando as outras. Retira permisses das permisses existentes no arquivo.

Pgina 53

Sistemas Operacionais Linux Prof. Edney

Valor r w x s t

Descrio Permisso de Leitura Permisso de escrita Permisso de Execuo Bit setuid se atribudo a u, bit setgid se atribudo a g. Bit sticky Modo absoluto: definido na forma <atributo_especial>

<dono><grupo><outros> Obs.: O atributo especial opcional Atributo Especial 0 1 2 3 4 5 6 7 Dgito 0 Descrio Nenhum atributo especial ligado Bit sticky ligado. Bit setgid ligado. Bits sticky e setgid ligados Bit setuid ligado Bits sticky e setuid ligados Bits setuid e setgid ligados Bits setuid, setgid e sticky ligados Binrio Equivalente Permisses 000 --Descrio Nenhuma

Pgina 54

Sistemas Operacionais Linux Prof. Edney

001

--x

execuo

2 3 4 5 6 7

010 011 100 101 110 111

-w-wx r-r-x rwrwx

escrita Escrita e execuo leitura Leitura e execuo Leitura e escrista Leitura, escrita e execuo

Exemplos# chmod u+x script Adiciona permisso de execuo para dono ao arquivo script # chmod u+wx,g-w,o=r Adiciona permisso de escrita e execuo para o dono, retira permisso de escrita do grupo e para os outros usurios permite apenas a leitura # chmod 750 teste dono = leitura, escrita e execuo grupo = leitura e execuo outros = nenhuma permisso # chmod 0750 teste equivalente ao anterior # chmod 777 /home/samba/share liga o bit sticky do diretrio e d permisso de leitura, escrita e execuo para todos os usurioschown Muda o dono de um arquivo

Pgina 55

Sistemas Operacionais Linux Prof. Edney chown [opes] <novo_dono[.novo_grupo]> <arquivo> Item -R -c -v -f Descrio Muda o dono de todos os arquivos e subdiretrios abaixo especificados. Mostra informaes sobre os arquivos modificados. Descreve detalhadamente as alteraes de atributos. No imprime mensagens de erro. Exemplos # chown josericardo apostilalinux.sxw S muda o proprietrio # chown root.root apostilalinux.sxw Muda o proprietrio e o grupo

chgrp
Muda o grupo de um arquivo chown [opes] <novo_grupo> <arquivo> Item -R Descrio Muda o grupo de todos os arquivos e subdiretrios abaixo especificados.

-c -v -f

Mostra informaes sobre os arquivos modificados. Descreve detalhadamente as alteraes de atributos. No imprime mensagens de erro. Exemplos # chgrp alunos exercicios.txt

Pgina 56

Sistemas Operacionais Linux Prof. Edney

umask [mscara]
Altera o valor da mscara de criao de arquivos. Os valores do umask so baseados no valor 666, isto , a sada e a entrada do comando umask so subtradas deste valor. A mscar padro de criao de arquivos unix 022, isto , a permisso de criao de acesso dos arquivos 666 022 = 644 (rw-r--r--); o que significa que o usurio tem direito de leitura e escrita, o grupo e os demais usurios tm permisso de leitura. Exemplos $ umask Exibe a mscara que est sendo utilizada $ touch teste $ umask 002 A permisso 666 002 = 644 (rw-rw-r--) $ touch teste2 $ ls -l teste* -rw-rw-r--rw-r--r-1 1 josericardo josericardo josericardo josericardo 0 Abr 19 11:25 teste 0 Abr 19 11:26 teste2

GERENCIAMENTO DE SISTEMAS DE ARQUIVOSSistemas de arquivos uma estrutura


criada no disco rgido (formatao lgica) que, aps o particionamento, permite que os arquivos sejam criados, removidos, copiados, etc. A partio de um disco rgido uma seo deste onde ser criado um sistema de arquivos. Existem vrios tipos diferentes de partio de disco rgido, cada uma delas adequada a um tipo especfico de sistema de arquivos.

Pgina 57

Sistemas Operacionais Linux Prof. Edney

DISPOSITIVOS DE ARMAZENAMENTO E RVORES DE DIRETRIOSEmbora todos os


arquivos linux e unix estejam conectados em uma gingasteca rvore de diretrios que comea no diretrio raiz, os arquivos por si mesmos residem em dispositivos de armazenamento diferentes, como discos flexveis, discos rgidos, cd-roms etc. Os arquivos linux residentes em um dispositivo de armazenamento qualquer so organizados em um sistema de arquivos. A rvore de diretrios, que permanece separada da rvore de diretrios principal, at que seja conectada a ela. Por exemplo, um drive de discos flexveis com arquivos linux tem sua prpria rvore de diretrios e necessrio conectar essa subrvore de diretrios rvore de diretrios principal residente na partio do disco rgido. At que isso seja feito, no ser possvel acessar os arquivos presentes no disco flexvel. Este processo de conectar a rvore de diretrios de um dispositivo de armazenamento qualquer rvore de diretrios principal chamado de montar o dispositivo de armazenamento. Isso feito pelo comando mount. Para acessarmos arquivos residentes em um dispositivo de armazenamento qualquer, precisamos primeiro mont-lo em um diretrio especfico. S o superusurio (root) pode realizar esta operao. O sistema de arquivos principal montado automaticamente. Outros sistemas de arquivos residentes em outros dispositivos de armazenamento precisam ser montados explicitamente pelo comando mount. Antes de desligar o sistema, todos os sistemas de arquivos montados tm que ser desmontados explicitamente, exceto o sistema de arquivos principal, que desmontado automaticamente. O comando utilizado para esta operao o comando umount.

Pgina 58

Sistemas Operacionais Linux Prof. Edney

PARTIES E SISTEMAS DE ARQUIVOSTodos os discos rgidos precisam ser


particionados antes de serem utilizados. Quando um disco rgido particionado, uma rea especfica do mesmo est sendo designada para ser utilizada. As parties permitem que um disco rgido seja dividido para que nem todas as informaes sejam armazenadas na mesma rea. Cada sistema operacional tem uma forma particular de gravar informaes nas parties e essas formas so conhecidas como sistemas de arquivos. Existem dois tipos de partioes no Linux: primria e estendida. As parties primrias no podem ser divididas e um disco pode conter no mximo 4 parties primrias ou trs parties estendidas; j as parties estendidas podem ser subdivididas em vrias unidades lgicas. Um disco rgido pode conter ambos os tipos de parties ao mesmo tempo. Enquanto a partio informa ao sistema operacional grave as informaes nesta rea do disco rgido!, um sistema de arquivo informa ao sistema operacional grave as informaes neste formato! Ou seja, as parties informam ao sistema onde gravar os dados e sistema de arquivo informa como gravar os dados. Um sistema de arquivo criado no disco rgido quando o formatamos. O linux suporta vrios sistemas de arquivos, sendo os principais: ext2, ext3, reiserfs e swap. Existem dois tipos de formatao: formatao de baixo nvel e de alto nvel. Na formatao de baixo nvel, tambm chamada de fsica, so criada as trilhas e setores do disco. Na formatao de alto nvel, tambm chamada de lgica criado o sistema de arquivos.

Drives do linux e seus arquivos de dispositivos


Aos drives e parties do linux so dados nomes diferentes aos seus correspondes em outros sistemas operacionais. No linux os arquivos de dispositivo (drive de dispositivo) encontramos no diretrio /dev so utilizados para comunicao com os dispositivos em seu sistema (como discos rgidos, mouses, etc.). Por exemplo, se voc tiver um mouse em seu sistema, ir acess-lo por meio ldo arquivo de dispositivo /dev/mouse. Dispositivo Nome do Driver no Linux

Pgina 59

Sistemas Operacionais Linux Prof. Edney

Disquete

/dev/fd(n)

Disco rgido

/dev/hd(.z)(n)

Disco SCSI /sd(.z)(n)

PARTICIONANDO UM DISCO RGIDOExistem vrios programas de partcionamento de


discos rgidos no Linux, entre eles o fdisk e o cfdisk. fdisk cria parties no disco rgido fdisk [opes] [dispositivo] Item -l -s Descrio Exibe as parties e sai Exibe o tamanho da partio, a menos que seja um partio.

MS-DOS
Exemplo # fdisk /dev/hdb Digite m para obter uma lista de comandos que podem ser executados pelo fdisk.

Pgina 60

Sistemas Operacionais Linux Prof. Edney

CRIANDO UM SISTEMA DE ARQUIVOS NUM DISCO RGIDOPara formatar logicamente


um disco rgido, podemos utilizar os comandos mkfs, mkfs.*, mke2fs, mkreiserfs e mkdosfs. Esses comandos s podem ser executados com o dispositivo desmontado.

mkfs
Cria um sistema de arquivos em um dispositivo de armazenamento (formata logicamente o dispositivo). mkfs [opes] <dispositivo> Item -v -c -t Descrio Exibe as operaes que o comando mkfs executa Verifica a existncia de blocos ruins no dispositivo. sistema de arquivos, onde tipo_sistema pode ser ext2, ext3, reiserfs ou

<tipo_sistema> msdos Exemplos: # mkfs -t ext2 /dev/hdb2 # mkfs -t msdos /dev/hdb3

REDIMENSIONANDO SISTEMAS DE ARQUIVOS


Para redimensionar sistemas de arquivos, podemos utilizar os comando reseize2fs e resize_reiserfs. Esses comandos no manipulam o tamanho da partio. Se o tamanho no for especificado, o tamanho do sistema de arquivos ser igual ao tamanho da partio.

resize2fs
Redimensiona os sistemas de arquivos ext2 e ext3 resize2fs [opes] <dispositivo> [tamanho] Item Descrio

Pgina 61

Sistemas Operacionais Linux Prof. Edney

-f -p

Fora o redimensionamento Exibe uma barra de progresso da operao Exemplo: # resize2fs /dev/hda7 524288 obs.: tamanho em bytes

resize_reiserfs
Redimensiona os sistemas de arquivos Reiserfs resize_reiserfs [opes] <dispositivo> Item -f -s Descrio Fora o redimensionamento [+/-] Tamanho do sistema de arquivos

<tamanho[K|M|G]> Exemplo: # resize_reiserfs -s -1G /dev/hda7

FORMATAO DE BAIXO NVEL EM UM DISCO FLEXVELPara formatar fisicamente


um disco flexvel, podemos utilizar o seguinte comando:

fdformat
Efetua a formatao de baixo nvel (cria trilhas e setores) de um disco flexvel, sem criar um sistema de arquivos fdformat [opes] <dispositivo><tipo_drive> Item -n H1200 Descrio No faz verificao aps a formatao tipo_drive: Drive 5 polegadas 1.2 Mb

Pgina 62

Sistemas Operacionais Linux Prof. Edney

H1440

drive 3 polegadas 1.44 Mb Exemplo: # fdformat /dev/fd0H1440 Obs.: algumas distribuies utilizam u1440, u1200, antes de executar o

comando fdformat verifique no diretrio /dev/ o nome correto do link usando o comado ls l | less

MONTANDO E DESMONTANDO OS DISCOSPara montar e desmontar os discos, podemos


utilizar os comandos mount e umount.

mount
Monta sistemas de arquivos mount [opes] <dispositivo> <ponto_montagem> Item -a -h -r Descrio Monta todos os dispositivos referenciados no arquivo /etc/fstab Exibe mensagem de ajuda Monta o dispositivo somente para leitura (sem permisso para gravao) drive 3 polegadas 1.44 Mb -w -t<tipo> msdos vfat ntfs ext2 ext3 Monta o dispositivo para leitura e gravao Especifica o tipo de sistema de arquivo no dispositivo FAT 16 do MS-DOS FAT 32 Windows 95 OSR2/Windows 98 Windows NT 4.0 Linux Journaling do Linux (ext2 + journaling)

Pgina 63

Sistemas Operacionais Linux Prof. Edney reiserfs iso9660 nfs smbfs Exemplo: # mount -t vfat /dev/hda1 /mnt/windows Outro sistema de arquivo do Linux Sistema de arquivos para montagem de CD-ROM Sistema de arquivos de rede do Unix Sistema de arquivos de rede do Windows

Montando um Pendrive
Crie um ponto de montagem em /mnt (diretrio onde voc vai montar a imagem do pendrive em seu disco). # mkdir /mnt/pendrive Faa a montagem do pendrive # mount t vfat /dev/sdb /mnt/pendrive

umount
Desmonta sistemas de arquivos. O comando umount no permite desmontar um sistema de arquivos no qual estamos trabalhando. Se tentarmos fazer isto, o sistema operacional exibir uma mensagem de erro. umount <dispositivo> ou <ponto_montagem> Exemplo: # umount /dev/hda1 ou # umount /mnt/windows

VERIFICANDO O ESPAO LIVRE df


O comando df pode ser utilizado para verificar os espao livre num dispositivo. df [opes] <dispositivo>

Pgina 64

Sistemas Operacionais Linux Prof. Edney Item -i -k Descrio Mostra os valores em inodes Mostra os valores em kilobytes Exemplo: # df # df /dev/hda1

VERIFICANDO O TAMANHO DE ARQUIVOS E DIRETRIOSdu


O comando du informa o espao ocupado pelos arquivos ou diretrios. du [opes] [arquivos ou diretrio] Item -a -b, k ou m -s Descrio Exibe os dados dos diretrios e arquivos Exibe os dados em bytes, kilobytes ou megabytes Exibe apenas o espao total ocupado Exemplo: # du ./ # du -s /usr

VERIFICAO E REPARO DE UM SISTEMA DE ARQUIVO fsck


O comando fsck permite verificar e reparar um sistema de arquivos em um dispositivo de armazenamento fsck [opes] <dispositivo> Item -A Descrio Verifica todos os sistemas de arquivos contidos no /etc/fstab

Pgina 65

Sistemas Operacionais Linux Prof. Edney

-C -N -a -r -t <tipo_sistema>

Mostra barra de progresso (somente para ext2/ext3) No executa, somente mostra o que seria feito Repara automaticamente o sistema de arquivos. Repara interativamente o sistema de arquivos (solicita confirmao) Sistema de arquivos, onde tipo_sistema pode ser ext, ext3, reiserfs ou msdos

Exemplos: # fsck -t ext2 /dev/hda2 # fsck -t ext3 /dev/hda3

OBTENDO INFORMAES DE UM SISTEMA DE ARQUIVOS EXT2dumpe2fs


Este comando obtm informaes de um sistema de arquivos ext2 de um disco rgido dumpe2fs <dispositivo> Exemplos: # dumpe2fs /dev/hda2

MONTANDO AUTOMATICAMENTE SISTEMAS DE ARQUIVOS: O ARQUIVO /ETC/FSTABO arquivo /etc/fstab contm as entradas dos dispositivos e/ou
parties que contm os sitemas de arquivos existentes no Linux. possvel adicionar mais dispositivos e/ou parties editando cuidadosamente esse arquivo. Exemplo do arquivo /etc/fstab
# /etc/fstab /dev/hda5 none /dev/hda7 none /dev/hda1 none /dev/hda6 /dev/sda1 / /dev/pts /home /mnt/windows swap /mnt/camera /mnt/cdrom ntfs /proc auto ext3 devpts ext3 supermount noatime mode=0620 noatime user,dev=/dev/scd0,fs=auto,ro,--,iocharset=iso8859-1,codepage=850,umask=0 exec,dev,suid,rw,umask=0,iocharset=iso8859-1 proc defaults defaults user,iocharset=iso8859-1,kudzu,codepage=850,noauto,umask=0,exec

swap

Pgina 66

Sistemas Operacionais Linux Prof. Edney

MONTANDO AUTOMATICAMENTE SISTEMAS DE ARQUIVOS: O ARQUIVO /ETC/FSTAB


Coluna 1 2 Descrio Dispositivo. o arquivo do dispositivo a ser montado Ponto de montagem. o diretrio onde o dispoistivo referenciado na 1 coluna ser montado 3 4 Sistema de arquivos. Especifica o tipode sistema de arquivo. Opes. Especifica as opes de montagem dos dispositivos defaults exec dispositivo noexec no permite que os programas sejam executados a partir do dispositivo auto monta o dispositivo automaticamente na inicializao montagem-padro do dispositivo permite que os programas sejam executados a partir do

noauto o dispositivo deve ser especificado para a montagem user rw ro 5 permite que os usurios comuns montem o dispositivo monta o dispositivo para leitura e escrita monta o dispositivo para somente leitura

Dump do dispositivo 0 1 No faz dump do dispositivo faz dump do dispositivo

Verificao e reparo do dispositivo 0 1 No faz verificao e reparo do dispositivo Faz verificao e reparo do dispositivo, isto , usa os comandos

Pgina 67

Sistemas Operacionais Linux Prof. Edney fsck, fsck.* e e2fsk para tal Obs.: a palavra supermount, contida na 3 coluna, diz que um sistema de arquivos virtual, que fica permanente montado sobre os dispositivos de mdia removvel, mesmo que no haja mdia inserida neles. Pois para acess-los basta abrir o seu diretrio /mnt/cdrom e para retirar o cd no h necessidade de desmont-lo para sair do diretrio e retirar a mdia.

CONFIGURAES DE REDE
Existem vrias formas de se configurar uma rede no Linux, atravs da manipulao direta de arquivos de configurao, utilizando o utilitrio netconfig etc.. Para tanto, preciso entender para que serve ada uma das opes solicitadas durante esta configurao:

Hostname
Nome que se deseja atriubuir ao host (equipamento de rede), que pode ser um computador, uma impressora ou qualquer outro dispositivo conectado a rede.

Domain Name
Domnio de rede ou, simplesmente, o nome atribudo a rede.

Name Server (Domain Name Server Servido DNS)


O Domain Name Server, ou simplesmente DNS, tem a finalidade de converter um IP em um nome e um nome em um IP. Ele possui duas tabelas de converso interna que fazem este trabalho. Por isso possvel digitar no browser o endereo www.uol.com.br e a requisio encontrar o IP 200.202.137.2, seu endereo IP correspondente.

IP
O endereo IP um nmero formado por quatro octetos, cuja finalidade fornecer um endereo de rede e host para um determinado equipamento na rede. Atravs do endereo IP possvel acessar os recursos oferecidos por tal equipamento na rede.

Pgina 68

Sistemas Operacionais Linux Prof. Edney

Submask Address
Mscara de rede, este nmero define como esto organizados os octetos em um endereo IP. O endereo IP formado por octetos ou partes de octetos que se referem ao endereo da rede e octetos ou partes de octetos que se referem ao nmero do host dentro de uma determinada rede.

Default Gateway (Gateway Padro)


Equipamento que ter a finalidade de fazer a comunicao da rede local com outras redes. Tambm conhecido como roteador da rede. Sua funo necessria quando um host da rede envia pacotes para outro host, cujo endereo no pertence a mesma rede. Este pacote sai da rede local atravs do Default Gateway e direcionada a rede que o host de destino est.

Static IP
Quando se escolhe a opo Static IP, necessrio informar o endereo IP a ser atribudo ao host que se est configurando. Geralmente, este tipo de configurao com IP fixo feito apenas nos hosts que provero servios na rede (Servidores de Rede). Os demais hosts da rede que recebem tais servios so chamados de clientes e recebem estas informaes de rede de um servidor DHCP.

Como Configurar Rede Com IP Fixo


netconfig Aps digitar esse comando, voc deve informar todos os dados solicitados para a configurao da rede. Esses dados foram citados acima. Voc tambm pode fazer a configurao manualmente atravs da edio do arquivo /etc/rc.d/rc.inet.conf.

Possveis Problemas
Por padro o Slackware reconhece a placa de rede como eth0. Sendo assim, o comando netconfig funciona perfeitamente quando utilizado. Porm, em alguns casos, possvel que sua placa de rede seja reconhecida como eth1, eth2, ethx.

Pgina 69

Sistemas Operacionais Linux Prof. Edney Nestes casos preciso faz-la ser reconhecida pelo sistema operacional como eth0 pra que o netconfig funcione como se deve. Segue abaixo os passos: Configure uma rede qualquer na eth1. # ifconfig eth1 192.168.0.1 Execute o comando ifconfig para descobrir o MAC ADDRESS de sua placa de rede e anote-o. # ifconfig Derrube a placa de rede eth1. # ifconfig eth1 down Execute o comando nameif para fazer com que a eth0 seja o novo nome para o MAC ADDRESS desejado (que fora anotado anteriormente). # nameif eth0 00:0C:29:E8:29:C6 Reconfigure sua rede atravs do comando netconfig e, em seguida, reinicie a rede. # /etc/rc.d/rc.inet1 start Para se certificar que tudo funcionou conforme planejado execute o comando ifconfig novamente e veja se as configuraes de rede foram feitas na eth0. # ifconfig

COMUNICAO ENTRE REDES


Para que dois ou mais hosts pertencentes a redes diferentes (redes lgicas e/ou fsicas) possam se comunicar necessrio que os pacotes TCP/IP sejam roteados entre essas redes, ou seja, que estes pacotes tenham uma via de mo dupla ligando as duas redes onde eles possam trafegar nos dois sentidos, fazendo com que seja possvel a comunicao entre elas. A mquina responsvel por encaminhar pacotes TCP/IP, cujo endereo de destino no seja outro host da mesma rede chamada de Default Gateway ou, simplesmente, Roteador. Pgina 70

Sistemas Operacionais Linux Prof. Edney Para fazer o roteamento entre essas redes no Linux necessrio atribuir um segundo IP para a placa de rede do roteador, fazendo com que esta placa de rede tenha um endereo IP pertencente as redes que devem se comunicar. Para tanto, execute os seguintes comandos supondo que seu IP o 192.168.0.1 e a mscara de rede est configurada com 255.255.255.0:

Ative o Servio de Roteamento:


/etc/rc.d/rc.ip_forward start Adicione um novo endereo IP para a placa de rede, este endereo deve pertencer a rede para a qual voc quer criar um roteamento: ifconfig eth0:0 1 192.168.100.200 Crie suas rotas da seguinte forma: route add net 192.168.100.0 netmask 255.255.255.0 gw 192.168.100.200 route add net 192.168.0.0 netmask 255.255.255.0 gw 192.168.0.1 Desta forma voc acaba de criar duas rotas para a sua placa de rede, sendo uma delas no sentido da rede 192.168.0.0 para a rede 192.168.100.0 tendo como default gateway o host 192.168.100.200 e a outra no sentido da rede 192.168.100.0 para a rede 192.168.0.0, tendo como default gateway o host 192.168.0.1.

SERVIDOR DHCP
Numa rede de Arquitetura TCP/IP, todo computador tem que possuir um endereo IP distinto. O DHCP - Dynamic Host Configuration Protocol - o protocolo que prov um meio para alocar estes endereos dinamicamente.

O que o DHCP?
A configurao automtica e dinmica de computadores ligados a uma rede TCP/IP, no que tange aos inmeros parmetros de rede, j possvel utilizando-se o Dynamic Host Configuration Protocol (DHCP) ([RFC2131]). O DHCP, que e' hoje um protocolo recomendado, em vias de ser padronizado pelo Internet Activities Board (IAB),

Pgina 71

Sistemas Operacionais Linux Prof. Edney facilita, e ate' mesmo viabiliza, a gerencia de grandes redes IPs, assim como a vida dos usurios itinerantes com seus computadores portteis. Para o perfeito funcionamento de um computador ligado a uma rede Internet, no apenas precisa-se configurar o seu endereo IP, mas tambm uma serie de outros parmetros de rede. Um cliente DHCP busca encontrar um ou mais servidores DHCP que possam fornecer os parmetros desejados, para que sua maquina possa ser automaticamente configurada. Embora no seja o nico parmetro indispensvel, o endereo IP e', sem duvida, o mais importante deles, assim como o mais peculiar, posto que um determinado endereo no deve ser utilizado por mais de um cliente ao mesmo tempo. O DCHP possibilita a implementao uma poltica de alocao dinmica de endereos IPs, que possibilita a reutilizao de endereos disponveis ao longo do tempo.

Como Funciona?
Um servidor DHCP, respondendo a uma solicitao de parmetros de um cliente, oferece uma opo, dentre as que tiverem disponveis, para o solicitante, informando-lhe o tempo de arrendamento (leasing) dos parmetros oferecidos. Em resposta aos oferecimentos dos diversos servidores, o cliente poder optar por aceitar, ou no, uma das proposta, indicando o fato ao servidor da proposta eleita, ou optando por fazer nova requisio. Recebendo o aceite do cliente, o servidor reserva o endereo IP (se ainda estiver disponvel) e indica o fato ao cliente, que, a partir de ento, poder fazer a correta e almejada configurao do seu computador. facultado ao cliente, solicitar um re-arrendamento dos parmetros obtidos ao servidor. Tal solicitao devera' ser feita quando atingido a metade do tempo de arrendamento combinado, minorando assim a possibilidade de ocorrncia de problemas com eventuais descompassos entre os relgios dos dois equipamentos. Espera-se tambm que o cliente informe ao servidor quando no for mais utilizar os recursos alocados - por exemplo, quando estiver sendo desligado. Porem, esta atitude cordial do cliente, se no ocorrer, no far com que o endereo seja indefinidamente

Pgina 72

Sistemas Operacionais Linux Prof. Edney inutilizado, posto que, ao final do tempo de arrendamento, o servidor assumira' que tal endereo poder' ser re-alocado sem problemas. possvel que o servidor DHCP no esteja no mesmo enlace do cliente e que entre eles haja algum roteador que no faca o roteamento dos pacotes DHCP. Deve-se lembrar que o cliente DHCP, por no saber inicialmente quem e' o servidor DHCP, utiliza o broadcast para procur-lo, e que o mesmo pode ser feito pelo servidor at que o cliente tenha um endereo IP fixo. No caso ento de, entre o servidor e o cliente, haver um roteador que no encaminhe devidamente pacotes DHCP, h a necessidade de um elemento intermedirio: o relay DHCP. O relay DHCP e' uma mquina capaz de receber pacotes dos clientes DHCP de sua rede, por exemplo, e encaminhar essas solicitaes a um ou mais servidores em outras redes.

Para que Serve?


Ao oferecer um endereo IP a um cliente solicitante, o servidor DHCP envialhe outros parmetros opcionais, chamados "opes do DHCP". H dezenas deles, como mascara de rede, endereo(s) de roteador(es), endereos de servidores de DNS, nome do cliente, nome do domnio DNS, rotas estticas, dentre outros. Todas as opes disponveis podem ser encontradas em [RFC2132]. Um servidor DHCP pode implementar polticas de alocao de endereos e opes DHCP de forma manual, automtica e dinmica. Na alocao manual, o administrador do servidor DHCP estabelece um endereo IP para cada endereo Medium Access Control (MAC). Por exemplo, dado o endereo Ethernet 00:20:35:b1:49:4f, a ele ser associado o endereo IP 192.168.0.33. Na alocao automtica, disponibiliza-se um conjunto de endereos IPs, de tal forma que, quando um endereo solicitado, um dos elementos do conjunto disponvel alocado de forma permanente e automtica para o solicitante. A alocao dinmica ocorre como a automtica, exceto que o endereo arrendado apenas por um perodo de tempo determinado. Em funo dos recursos de configurao do servidor utilizado, possvel a um administrador utilizar o DHCP para gerenciar a poltica de distribuio de endereos apropriada para a sua rede. Maquinas como roteadores ou servidores devem, preferencialmente, utilizar endereos configurados manualmente, j maquinas clientes fixas Pgina 73

Sistemas Operacionais Linux Prof. Edney podem utilizar endereos alocados automaticamente, e maquinas moveis devem adquirir endereos de forma dinmica, por exemplo. Uma outra aplicao interessante e' utilizar o DHCP, em conjunto com o PPP, nos servidores de comunicao para alocao de endereos e parmetros de rede para clientes temporrios que utilizam o acesso discado. O PPP tem seu prprio jeito de alocar a um cliente um endereo IP: o IP Control Protocol - IPCP ([RFC1332]), que possibilita ao servidor de comunicao (servidor PPP) passar para o cliente um endereo IP. Onde, ento, entraria o DHCP? Alguns servidores de comunicao ([Wobus97]) podem solicitar via DHCP um determinado IP antes de pass-lo para o cliente, via IPCP.

Problemas
A alocao dinmica de endereos nem sempre e' conveniente para todas as maquinas de uma rede. Maquinas que so referenciadas pelos seus endereos IPs, e no por seus nomes, como os roteadores, por exemplo, devem ter um endereo IP fixo. H casos em que um determinado recurso e' associado a um determinado endereo IP definido pelo DNS, e.g. e' comum associar um endereo IP a um servidor Web. Dessa forma, no e' conveniente utilizar uma busca dinmica do endereo IP deste servidor. Pode-se utilizar alocao manual, associando no servidor DHCP o endereo de MAC do servidor Web a seu endereo IP. A alocao dinmica pode tambm inviabilizar os esquemas de segurana que se baseiam em permitir ou coibir o acesso a determinados recursos atravs da identificao do endereo IP ou do nome da maquina do solicitante (e.g. os comandos r's do UNIX ou os esquemas de controle de acesso por nome/endereos IP do apache). Em redes onde este tipo de controle e' feito a nvel de maquina, e' necessrio restringir o uso do DHCP dinmico. O uso do DHCP dinmico pode vir a comprometer seriamente a segurana de uma rede cujos pontos de acesso no so controlados, ou so utilizados por usurios no confiveis. Um usurio mal intencionado ou desavisado pode causar grandes transtornos, configurando um servidor DHCP no oficial, por exemplo. O DHCP e' construdo sobre o protocolo UDP, que e' um protocolo inseguro, herdando, portanto, as suas falhas de segurana.

Pgina 74

Sistemas Operacionais Linux Prof. Edney

Configurao do Servidor DHCP


Edite o arquivo dhcpd.conf atribuindo a ele os parmetros a seguir, conforme exemplo do arquivo a seguir. mcedit /etc/dhcpd.conf
Arquivo DHCPD.CONF # dhcpd.conf # # Configuration file for ISC dhcpd (see 'man dhcpd.conf') # ddns-update-style none; # Ativa a atualizao dinmica de IPs default-lease-time 600; # Perodo de concesso padro max-lease-time 7200; # Perodo mximo de concesso option subnet-mask 255.255.255.0; # Mscara de rede option domain-name "estudolinux.com.br"; # Nome da rede

option domain-name-servers 195.165.10.5; # Servidor DNS (Domain Name Server)

option pop-server 195.165.10.10; # Servidor de recebimento de e-mails subnet 195.165.10.0 netmask 255.255.255.0 { # Configurao da rede option broadcast-address 195.165.10.255; # Endereo de broadcast option routers 195.165.10.1; # Endereo do roteador ou default gateway range 195.165.10.101 195.165.10.240; # Faixa de Ips que o servidor DHCP poder distribuir } # Configurao especfica de Servidores group { # Criao de uma configurao especfica por MAC Address use-host-decl-names true; # host edy { # Nome do host hardware ethernet 00:11:5B:34:1A:D1; # Endereo fsico da placa de rede fixed-address 195.165.10.10; # IP fixo para esta placa de rede } host jricardo { hardware ethernet 00:08:0D:B6:CC:C2; fixed-address 195.165.10.5; } host fire { hardware ethernet 00:06:4F:06:24:34; fixed-address 195.165.10.1; } }

Pgina 75

Sistemas Operacionais Linux Prof. Edney Aps editar o arquivo dhcpd.conf, de acordo com sua necessidade, voc dever colocar o servio para ser iniciado junto com a inicializao do seu Linux. Para tanto, necessrio saber onde est localizado o executvel do servio de DHCP. Digite o comando type para descobrir onde se encontra o arquivo de inicializao do servidor DHCP type dhcpd mostra o caminho do programa echo /usr/sbin/dhcpd >> /etc/rc.d/rc.local Aps este procedimento, voc dever fazer a configurao de rede do seu servidor DHCP com IP esttico e pertencente a rede que fora configurada no arquivo de configurao do servidor DHCP.

Comandos Importantes
Parar a rede /etc/rc.d/rc.inet1 stop Reiniciar a rede /etc/rc.d/rc.inet1 start Aps esse momento, basta que os clientes do servidor DHCP sejam configurados e passem a buscar seus respectivos Ips e demais configuraes no servidor DHCP.

Pgina 76

Sistemas Operacionais Linux Prof. Edney

Exemplo de Redes com Servidor DHCP

SERVIDOR HTTP - APACHE


O servidor Apache um dos mais conhecidos e utilizados servidores de pginas de internet. Em sua configurao padro, responde a solicitaes de usurios de internet e intranet atravs da porta 80 e do protocolo HTTP (HiperText Markeup Language). Este servidor funciona atravs de mdulos que podem ser habilitados ou no, dependendo do tipo de infra-estrutura de pginas que se pretende atender. Um belo exemplo seria habilitar o servidor Apache para rodar PHP (Personal Home Page), uma linguagem de programao para tornar dinmicas as pginas de internet, o qual muito difundido no Brasil. Para tanto, necessrio que o PHP esteja instalado na mquina do servidor Apache e que o prprio Apache seja configurado para repassar as solicitaes feitas por pginas PHP para este mdulo.

Pgina 77

Sistemas Operacionais Linux Prof. Edney Neste tpico, faremos apenas as configuraes mnimas necessrias para que o servidor Apache funcione e responda as solicitaes HTML (de pginas estticas). Por isso, siga os seguintes passos: No diretrio /etc/apache existe o principal arquivo de configurao do Apache, o arquivo httpd.conf. Vamos editar esse arquivo: mcedit /etc/httpd/httpd.conf Voc dever comentar a linha DocumentRoot "/srv/httpd/htdocs" e reescrev-la da seguinte maneira: DocumentRoot "/home/" # DocumentRoot: The directory out of which you will serve your # documents. By default, all requests are taken from this directory, but # symbolic links and aliases may be used to point to other locations. # #DocumentRoot "/srv/httpd/htdocs" # ALTEREI AQUI PARA AS PASTAS DOS USUARIOS DocumentRoot "/home/" Nota: perceba que existe um trecho de comentrio logo acima de cada parmetro de configurao cujo objetivo ensinar ou relembrar ao administrador do servidor seu significado, o que pressupe que o conhecimento da lngua inglesa fundamental. O parmetro DocumentRoot estabelece um diretrio inicial ou um diretrio raiz onde o administrador do servidor colocar todos os sites hospedados neste servidor, assim como no exemplo abaixo: Logo abaixo de DocumentRoot existe um parmetro chamado Directory que dever conter o mesmo caminho apontado em DocumentRoot, como mostrado abaixo: # This should be changed to whatever you set DocumentRoot to. # #<Directory "/srv/httpd/htdocs"> # # ALTEREI AQUI PARA AS PASTAS DOS USUARIOS Directory "/home/" http://192.168.100.1/edney endereo do site sem levar em conta um possvel servidor DNS para resolver o nome Pgina 78

Sistemas Operacionais Linux Prof. Edney http: protocolo utilizado para trafegar pginas HTML //192.168.100.1 endereo do servidor Apache na rede (internet ou intranet) edney nome do domnio ou pgina a que se deseja acessar Este endereo ser traduzido para uma estrutura de diretrios no sistema operacional, sendo o IP substitudo pelo parmetro DocumentRoot. Ento o servidor Apache procurar a pgina do usurio no diretrio /home/edney/. O prximo parmetro a ser configurado o DirectoryIndex. Ele indica a pgina inicial do site, ou seja, o arquivo a ser procurado pelo servidor Apache no diretrio onde o web site est. Est pgina ser mostrada inicialmente sempre que este site for acessado. # DirectoryIndex: Name of the file or files to use as a pre-written HTML # directory index. Separate multiple entries with spaces. # <IfModule mod_dir.c> DirectoryIndex index.html index.htm index.php default.html default.htm </IfModule> Nota: como se pode perceber, voc poder indicar vrias pginas como pgina inicial para o Apache e assim que cada web site for solicitado ele procurar por estes nomes de arquivos. O primeiro a ser encontrado ser mostrado no browser do usurio. Caso isto no acontea, o usurio receber uma pgina de erro padro do Apache. Para habilitar o mdulo de PHP descomente a seguinte linha: #Uncomment de following line to enable PHP # #Include /etc/httpd/mod_php.conf Salve este arquivo e feche-o. Agora voc dever iniciar o servio do Apache em seu Linux digitando o seguinte comando: /etc/rc.d/rc.httpd (start / stop / restart) start para iniciar o servio que antes no estava rodando stop para parar o servio que estava rodando restart para parar e iniciar novamente o servio que estava rodando

Pgina 79

Sistemas Operacionais Linux Prof. Edney Para saber se seu servio do Apache est rodando execute o comando: nmap localhost Ele varrer as portas de sua mquina procurando os servios que esto sendo executados, como mostrado abaixo: root@edy:~#nmap localhost Starting nmap 3.50 ( http://www.insecure.org/nmap/ ) at 2006-06-30 09:04 BRT Interesting ports on localhost (127.0.0.1): (The 1643 ports scanned but not shown below are in state: closed) PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 37/tcp open time 53/tcp open domain 80/tcp open http 110/tcp open pop3 111/tcp open rpcbind 113/tcp open auth 139/tcp open netbios-ssn 445/tcp open microsoft-ds 548/tcp open afpovertcp 587/tcp open submission 631/tcp open ipp 953/tcp open rndc 3306/tcp open mysql 6000/tcp open X11 Nmap run completed -- 1 IP address (1 host up) scanned in 1.147 seconds Nota: No momento de iniciar o servio do Apache voc poder receber uma mensagem de erro de permisso negada. Isso acontece porque o arquivo rc.httpd est sem permisso de execuo. Voc poder constatar isso vendo as permisses deste arquivo atravs do seguinte comando: ls -all Aps constatar esse fato, altere as permisses deste arquivo com o comando: chmod 754 rc.httpd. Novamente execute o passo anterior e inicie o servio do Apache.

Pgina 80

Sistemas Operacionais Linux Prof. Edney

Importante:
Alteramos o parmetro DocumentRoot para /home/ porque este diretrio o diretrio de usurios do Linux. Ento, apartir deste momento, cada usurio adicionado ao Linux passa a ter um subdiretrio com todas as permisses de leitura e gravao no diretrio /home. Sendo assim, cada usurio adicionado no sistema operacional passa a ser dono de um web site.

SERVIDOR FTP
FTP significa File Tranfer Protocol (Protocolo de Transferncia de Arquivos). Este protocolo muito difundido na internet por ser uma maneira fcil e rpida de fazer transferncia de arquivos (upload / download). O nome FTP pode se referir tanto ao protocolo de transferncia de arquivos quanto a programas que utilizam este protocolo, com intuito de facilitar a interface com usurios. Essa transferncia de arquivos envolve normalmente o acesso a computadores remotos atravs de usurio e senha. Para configurar o servidor de FTP no Slackware, basta seguir os passos abaixo: Edite o arquivo inetd.conf:
mcedit /etc/inetd.conf

Remova o comentrio da linha abaixo:


pop3 stream tcp nowait

Reinicie o servio:
/etc/rc.d/rc.inetd restart

Segurana do Servidor FTP Bloqueando Usurios


possvel bloquear acesso de usurios indesejados ao servidor FTP atravs do arquivo de configurao ftpusers. Este arquivo contem a lista de usurios que no podem se logar no sistema operacional atravs do protocolo FTP.

Pgina 81

Sistemas Operacionais Linux Prof. Edney Para tanto, edite-o e acrescente ou remova / comente os nomes dos usurios que voc deseja que tenha ou no permisso a fazer FTP em seu servidor:
mcedit /etc/ftpusers

Por questes de segurana, no bom que o usurio root tenha permisso para fazer FTP porque ele um usurio muito poderoso dentro do Linux e se suas permisses forem seqestradas voc poder ter problemas.

Acessando FTP Via Browser


Para acessar o servio de FTP via browser basta digitar o seguinte endereo em sua URL: ftp://usuario@servidor Exemplo: ftp://edney@estudolinux.com.br

SERVIDOR DE BANCO DE DADOS MYSQL Instalao


Logue com o usurio mysql:
# su mysql

Execute o seguinte comando pra instalar o dicionrio de dados do servidor de banco de dados MySQL:
# mysql_install_db

Saia do usurio logado:


# exit

Inicie o servidor MySQL com o seguinte comando:


# /etc/rc.d/rc.mysqld start

Logue no MySQL pra fazer teste:


# mysql

D o comando
mysql> show databases;

Pgina 82

Sistemas Operacionais Linux Prof. Edney Se receber as informaes dos bancos de dados criados com o comando mysql_install_db poder sair que o banco de dados foi instalado corretamente.
# exit

Possveis Problemas
Se receber a mensagem de permisso negada no momento de iniciar o servidor MySQL, d a seguinte permisso ao arquivo rc.mysqld:
# chmod 777 /etc/rc.d/rc.mysqld

Nunca execute o comando mysql_install_db se o usurio mysql no estiver logado. Caso tenha feito, execute o seguinte comando:
# chown -R mysql.mysql /var/lib/mysql

SERVIDOR DNS Introduo


Um dos mais importantes servios existentes na Internet, o DNS (Domain Name Service) ou Servio de Nome de Domnio ou ainda, Servidor de Nome de Domnio . Antes de aprendermos a montar um servidor DNS, interessante relembrarmos como funcionam algumas coisas na Internet. Quando usamos o browser para navegar e a consultamos sites diversos, vemonos sempre clicando na barra de endereos do mesmo e digitando algo como www.algumsite.com.br. A pergunta : como aps alguns segundos este site exibido em nossa mquina, onde ele est fisicamente? como ele sabe que algum fez uma solicitao pra que ele fosse exibido, porque digitamos WWW? Podemos observar uma coisa em comum em todos os sites pelos quais navegamos. Todos eles so chamados pelo nome, ou seja, aprendemos com muito mais facilidade o nome www.algumsite.com.br do que o nmero de IP (Protocolo de Internet) do servidor onde o site esta hospedado. Ao digitarmos esse endereo no browser, o mesmo se encarrega de iniciar um trabalho para que esse nome possa ser traduzido (resolvido) em um numero IP. Os responsveis por essa traduo so os servidores DNS. Sempre, lembre-se disso, ao

Pgina 83

Sistemas Operacionais Linux Prof. Edney digitarmos um nome de site qualquer em nosso browser, haver sempre um DNS que vai descobrir pra ns onde est o site que queremos, ou melhor, qual o IP da mquina onde esse site est hospedado. Mas o DNS no atua apenas quando digitamos algo do tipo WWW. H outros servios em que o trabalho de um DNS fundamental. O envio de mensagens eletrnicas (e-mail) e a transferncia de arquivos na Internet (FTP), so outros exemplos que podemos citar. Para que o trabalho do DNS seja realmente vlido, existe um outro elemento nessa histria toda, so os domnios. Podemos citar o domnio estudolinux.com.br como exemplo. Esse domnio (veja que o www no aparece, pois www no faz parte dos nomes de domnio) foi registrado por algum em um rgo nacional que cuida do registro de domnios no Brasil. Estamos falando da Fapesp Para que um domnio seja vlido, necessrio que o mesmo tenha sido registrado na Fapesp (isso no caso do Brasil). Aps o registro, podemos usar o domnio para diversas finalidades, inclusive montar servidores DNS. Imagine um servidor DNS com o nome de mail.estudolinux.com.br. Observe que apenas acrescentamos o mail ao nome do domnio. A mesma coisa pode acontecer com uma conta de e-mail, como por exemplo: edney@mail.estudolinux.com.br. Note a presena do domnio nas duas situaes. Em ambas as situaes ns no temos a presena explcita de nmero de IP, apenas o nome do domnio. Como vimos anteriormente, quem se encarrega de traduzir domnios em nmero de IP so os servidores DNS.

Como o Servidor DNS Funciona?


Vamos voltar um pouco no tempo para entendermos sobre isso. No incio da Internet, apenas poucos computadores dela faziam parte. Esses computadores, para se comunicarem, precisavam de um nome e, lgico, de um nmero de IP. Essas informaes eram armazenadas em um arquivo chamado hosts.txt e o mesmo era distribudo para todos os computadores da poca para que todos pudessem se conhecer. Sendo assim, toda vez que um computador necessitasse encontrar outro na rede, ele consultava o hosts.txt e verificava a existncia do computador procurado l dentro.

Pgina 84

Sistemas Operacionais Linux Prof. Edney Com o passar do tempo o nmero de computadores comeou a crescer e virou isto que temos hoje. O que aconteceu com o hosts.txt? Ficou sendo o tempo inteiro atualizado e redistribudo na rede? Lgico que no. Para isso foi inventado o DNS. Com a chegada do DNS, a informao pode ser descentralizada e espalhada em diversos computadores. Hoje o que acontece que temos milhares de DNS espalhados no mundo e, cada um deles, possui informaes sobre uma quantidade de domnios especfica. A coisa comea a ficar mais clara agora, pois se vrios computadores so responsveis por uma quantidade de domnios X, ento, quando o meu browser pergunta a um DNS sobre um domnio especfico e este no possui a informao, ento ele sai perguntando a outros DNS afora at alcanar a resposta. como quando chegamos a um lugar desconhecido e estamos procurando a casa de algum. Perguntamos a uma pessoa que, caso no saiba, nos indica outra e assim sucessivamente at encontrarmos a tal casa. Com os servidores DNS acontece a mesma coisa. Ao fazer uma conexo com a Internet, automaticamente o nosso provedor diz a nossa mquina quais so os DNS que vo responder pelos domnios que forem solicitados durante a navegao, envio de e-mail ou transferncia de arquivos, etc. Se esses DNS no forem capazes de responder as minhas solicitaes, ento eles sairo buscando a informao em outros DNS na web. Assim como em quase tudo, os domnios obedecem a uma hierarquia. Os servidores de Internet responsveis pelos domnios de mais alto nvel so os root servers. Neles encontram-se os "top level-domains" ou domnios de mais alto nvel. Lembra que a nossa mquina pergunta por um determinado domnio ao DNS indicado pelo nosso provedor? Pois , quando esse DNS no sabe a resposta, ento ele pergunta aos root servers. Os root servers podem no ter informaes sobre um domnio X e ento vo precisar perguntar para outros DNS no mundo. Mas, perguntar a quem? Sigamos o exemplo do estudolinux.com.br. Voc digita na barra de endereos do seu browser o domnio

estudolinux.com.br;

Pgina 85

Sistemas Operacionais Linux Prof. Edney Nesse instante o browser vai solicitar informaes ao DNS indicado pelo provedor. Este no sabe nada sobre esse domnio e vai perguntar aos root servers, que tambm no conhecem o domnio. E agora? Os root servers analisam o domnio e verificam que o mesmo possui o final ".br". Opa!!! Quem capaz de responder por esse final? Isso o root server sabe e enderea rapidamente a requisio para os servidores da Fapesp onde esto registrados os domnios "br". Os servidores da Fapesp no so responsveis pelo estudolinux, porm, sabem em que servidor o domnio se encontra e fazem a pergunta ao mesmo. O.k., o DNS responsvel responde.: "o.k., eu sou o responsvel por esse domnio". A busca foi encerrada.

Clientes DNS
Neste tpico citei o DNS como um dos mais importantes (talvez o mais importante) servios da Internet. No h exagero algum nisso. O esquema acima mostrou o que acontece com a mquina de um usurio brasileiro que requisita um web site. Vimos que ela precisa saber quem so os DNS que primeiro iro atend-la. Pois , ento ns, usurios de Internet com conexo discada ou no, somos todos clientes DNS. O arquivo que devemos editar como um cliente DNS o /etc/resolv.conf. Vamos observar o arquivo resolv.conf abaixo.
nameserver 192.168.100.213 nameserver 192.168.100.1

Veja que temos apenas duas linhas com entradas nameserver, com os respectivos IP's dos servidores DNS que a minha mquina usou durante a conexo. Poderamos especificar mais um, caso quisssemos. A pesquisa feita preferencialmente ao primeiro da lista. Caso o primeiro no responda, a pesquisa dirigida ao segundo e assim por diante at que o nmero mximo de tentativas seja feita. Use um editor de textos qualquer para criar o seu arquivo resolv.conf. Dois outros arquivos importantes na configurao de um cliente DNS so o /etc/hosts e o /etc/hosts.conf. Pgina 86

Sistemas Operacionais Linux Prof. Edney No /etc/hosts podemos especificar hosts. Os hosts especificados nesse arquivo no so procurados via DNS, pois o arquivo /etc/hosts consultado sempre antes do /etc/resolv.conf, ou seja, se um host encontrado dentro de /etc/hosts, ento a busca no olha para /etc/resolv.conf. Veja abaixo um arquivo /etc/hosts.
127.0.0.1 localhost.localdomain localhost

O contedo desse arquivo : IP da mquina fullname hostname Nesse caso especfico h apenas uma mquina citada no arquivo, ou seja, um nico host. Todas as vezes que tentarmos localizar "localhost", quem vai responder por esse nome o /etc/hosts e no o /etc/resolv.conf. Por ltimo, vamos falar sobre o /etc/hosts.conf. Este arquivo possui a diretiva "order" que estabelece por onde deve comear o processo de resoluo de nomes. No caso acima, a busca feita primeiro em /etc/hosts e, em seguida em /etc/resolv.conf. Observe que esta escrito "Bind", pois esse o pacote que, ao ser instalado, responsvel por todo conjunto de tarefas referentes ao DNS. Resumindo, na configurao de um cliente DNS, temos trs arquivos importantes nessa histria toda. So eles: /etc/resolv.conf; /etc/hosts; /etc/host.conf O primeiro indica quais servidores DNS sero usados por nossa mquina, o segundo possui uma listas de hosts que no precisaro ser perguntados aos DNS do resolv.conf e o terceiro indica em qual ordem a resoluo de nomes feita.

Configurao do Servidor DNS


Agora vamos ver como preparar um servidor DNS, uma mquina que capaz de responder por domnios. Dois diretrios so muito importantes nesse trabalho:

Pgina 87

Sistemas Operacionais Linux Prof. Edney cd /etc cd /var/named Dentro de /etc temos o arquivo named.conf. Dentro de /var/named temos os arquivos correspondentes a cada domnio pelo qual nosso servidor responsvel. Abaixo temos um exemplo de /etc/named.conf. Observe onde aparece o termo "zone". Cada vez que encontr-lo significa que ali existe a indicao de um domnio. Note tambm o incio do arquivo onde aparece "directory /var/named", etc. Essa a parte do arquivo em que dizemos ao BIND em qual diretrio os arquivos dos domnios devem ser procurados. Ento a coisa funciona assim: crio uma nova zona para um domnio novo qualquer crio em /var/named o arquivo referente a essa zona (domnio) Vamos apontar para os arquivos de configurao da zona estudolinux.com.br atravs do arquivo abaixo (/etc/named.conf), basta imitar ou copiar e alterar a rea que aponta para a zona j existente.
options { directory "/var/named"; }; zone "." { type hint; file "named.ca"; }; zone "0.0.127.in-addr.arpa" { type master; file "0.0.127.in-addr.arpa.zone"; }; zone "localhost" { type master; file "localhost.zone"; }; zone "estudolinux.com.br" { type master; file "estudolinux.zone"; };

OK, no foi difcil. Uma outra coisa que devemos prestar ateno na diretiva type. Na zona que criamos, estabelecemos como "master". Isto significa que o nosso servidor o servidor primrio dessa zona. Se fssemos o servidor secundrio, trocaramos

Pgina 88

Sistemas Operacionais Linux Prof. Edney "master" por "slave". Vamos ver isso depois. Salve o named.conf e v para o diretrio /var/named e copie o arquivo "named.local" para "meudomnio.com.br". Use o comando:
# cp named.local meudominio.com.br

Vamos agora editar esse arquivo e deix-lo OK, mas antes vamos ver alguns detalhes do mesmo. No incio do arquivo temos uma informao TTL (time to live) 3600 (Ex.: $TTL 86400). Essa diretiva indica a quantidade de tempo que as informaes desse domnio so vlidas para outros servidores. Calma, vamos entender melhor. Quando um outro DNS recebe a informao sobre esse domnio, a mesma ficar no cache dessa mquina durante 3600 segundos (ou uma hora). Com essa informao em cache, a prxima vez que algum perguntar por esse domnio, a consulta no precisa ser feita ao DNS responsvel (ao menos durante aquela 1 hora em que a informao est no cache). Se houver uma outra consulta aps essa 1 hora, a sim, haver uma nova consulta ao DNS responsvel. Vamos ver sobre as outras informaes:
2003072401 ;Serial 28800 ;Refresh 14400 ;Retry 3600000 ;Expire 86400 ;Minimum

SERIAL: uma verso do arquivo. Toda vez que houver uma alterao no arquivo do domnio, precisamos alterar esse nmero para que o servidor secundrio saiba e possa copiar essa nova verso. No exemplo acima temos: 2003072401. Analisando da direita para esquerda, podemos dizer que temos a verso 01 de um arquivo criado em 24/07/2003. No existe uma regra fixa pra essa informao, mas voc deve cri-la de uma forma que possa interpret-la depois. REFRESH: indica o tempo, em segundos, em que o servidor secundrio deve fazer uma consulta ao primrio para saber sobre os domnios do mesmo. nessa hora que a informao serial importante, pois, caso o serial de algum domnio tem sido alterado, ento o servidor secundrio realiza uma nova cpia do mesmo. No exemplo acima o refresh deve ser feito em 28800 segundos, ou seja, de 8 em 8 horas.

Pgina 89

Sistemas Operacionais Linux Prof. Edney RETRY: se por algum motivo, na hora em que o servidor secundrio fizer o "refresh" no primrio, e o mesmo no responder, ento ele tentar uma nova consulta no tempo estabelecido em "retry". EXPIRE: o tempo mximo que o servidor secundrio pode ficar sem consultar o primrio. Aps esse tempo, a informao sobre o domnio ser expirada. Vamos agora para as outras informaes.
definio do servidor DNS @ IN NS localhost. ;definio do servidor de e-mail @ IN MX mail.estudolinux.com.br ; definio dos hosts localhost IN A 127.0.0.1 www IN A 192.168.100.213 mail IN A 192.168.100.213 ftp IN A 192.168.100.213 ; Informaes iniciadas com ";" so consideradas comentrios.

A linha: @

IN

NS

localhost.informa quem o servidor de nomes (NS)

para "estudolinux.com.br (representado pelo smbolo @)". A linha: @ IN MX mail.estudolinux.com.br informa quem o servidor

de e-mail (MX) para "meudomnio.com.br (representado pelo smbolo @)". Por fim temos a definio dos hosts, ou seja, os endereos IP das mquinas que respondem por determinados servios como: www, ftp, mail, etc.
localhost www mail ftp IN IN IN IN A A A A 127.0.0.1 127.0.0.1 200.198.71.220 127.0.0.1

Observe por exemplo na linha iniciada em "mail". Essa linha resolve a indicao MX (mail exchanger) feita acima. Na indicao MX, dissemos que o servidor de e-mail desse domnio o "mail.estudolinux.com.br". Quando fazemos isso, devemos dizer quem e a mquina "mail" (que no nosso caso a 192.168.100.213). Observe tambm que indicamos qual o IP para o servio WWW, ou seja, quando algum buscar por "www.estudolinux.com.br", ento, conforme a nossa configurao, o servidor ser o 192.168.100.213, assim como para o servio FTP.

Pgina 90

Sistemas Operacionais Linux Prof. Edney Para testarmos esse domnio preciso reiniciarmos o servio NAMED. Para fazer isso vamos para o diretrio onde esto os principais servios do nosso sistema. O diretrio o /etc/rc.d/. Dentro do diretrio digite:
# ./rc.bind status

Esse comando nos dir se o servio est sendo executado ou parado. Se estiver sendo executado, ento voc pode usar ./rc.bind restart para parar e iniciar o servio imediatamente. Se estiver parado, ento use ./rc.bind start. Para testarmos o nosso domnio podemos fazer alguns testes usando o comando ping. $ ping www.estudolinux.com.br $ ping mail.estudolinux.com.br $ ping ftp.estudolinux.com.br Esperamos ter clareado um pouco a idia de DNS nesse artigo. Aproveitamos tambm para pedir a sua colaborao para deixar esse artigo mais completo, pois sabemos que h muitas outras coisas a serem aqui acrescentadas e isso far com que o site (www.useredhat.com.br) armazene uma quantidade grande e importante de informaes que cada vez mais usurios podero utilizar.

Configurao Passo a Passo


cd /var/named/cacching-example/ cp localhost.zone ../estudolinux.zone cd .. mcedit estudolinux.zone
$TTL 86400 @ IN SOA notebook.estudolinux.com.br. root.notebook.estudolinux.com.br. ( 2006040801 ; serial 8H ; refresh 2H ; retry 1W ; expiry 1D ) ; minimum NS notebook.estudolinux.com.br. IN MX 10 estudolinux.com.br. localhost IN A 127.0.0.1 estudolinux.com.br IN A 192.168.100.213

Pgina 91

Sistemas Operacionais Linux Prof. Edney


jricardo edy fire ftp www mail www.fabiano IN IN IN IN IN IN IN A A A A A A A 192.168.100.213 192.168.100.213 192.165.100.213 192.168.100.213 192.168.100.213 192.168.100.213 192.168.100.213

cp caching-example/localhost.zone estudolinux.rev mcedit estudolinux.rev.


$TTL 86400 $ORIGN estudolinux.com.br. 100.168.192.in-addr.arpa notebook.estudolinux.com.br. 2006040801 8h 2h 1w 1d ) 213 213 213 213 NS IN PTR IN PTR IN PTR NS

IN SOA root.notebook.estudolinux.com.br. ( ; serial ; refresh ; retry ; expiry ; minimum notebook.estudolinux.com.br. notebook edy fire notebook.fabiano.com.br.

mcedit /etc/named.conf
options { directory "/var/named"; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ // query-source address * port 53; }; // // a caching only nameserver config // zone "." IN { type hint; file "caching-example/named.ca"; }; zone "localhost" IN { type master; file "caching-example/localhost.zone";

Pgina 92

Sistemas Operacionais Linux Prof. Edney


allow-update { none; }; }; zone "0.0.127.in-addr.arpa" IN { type master; file "caching-example/named.local"; allow-update { none; }; }; # INDICA O ARQUIVO QUE FARA O DNS REVERSO zone "0.100.168.192.in-addr.arpa" IN { type master; file "estudolinux.rev"; }; # INDICA O ARQUIVO QUE USARA O DNS NORMAL zone "estudolinux.com.br" IN { type master; file "estudolinux.zone"; };

chmod 744 /var/named/estudolinux.zone chmod 744 /var/named/estudolinux.rev /etc/rc.d/rc.bind start nmap localhost

SERVIDOR DE E-MAIL
Edite o arquivo /etc/inetd.conf e remova o comentrio da seguinte linha: #pop3 stream tcp nowait root /usr/sbin/popa3d

Em sua configurao remova o comentrio desta linha (#), salve e feche o arquivo. Reinicie o servio: /etc/rc.d/rc.inetd restart

CONFIGURANDO O ENVIO E RECEBIMENTO DE E-MAILS COM SERVIDOR DNS


Para configurar o envio e recebimento de e-mails em um servidor Linux necessrio configurar dois arquivos: /etc/mail/access e /etc/mail/local-host-names.

Pgina 93

Sistemas Operacionais Linux Prof. Edney Estes arquivos so responsveis pela segurana do servidor de e-mail e neles devem ser configuradas as informaes de envio e recebimento de e-mails que o seu servidor permitir.

Contedo do Arquivo access


192.168.100 RELAY # REDE EM QUE O SENDMAIL ACEITA ENVIO DE MENSAGENS Neste arquivo configurado o endereo de rede para o qual o SendMail aceita enviar mensagens. As redes que no estiverem contidas neste arquivo no tero e-mails direcionados a ela enviados pelo servidor de e-mail.

Contedo do Arquivo local-host-names


# names of hosts for which we receive email mail.estudolinux.com.br # HOST EM QUE O POP3 ACEITA RECEBIMENTO DE MENSAGENS Neste arquivo configurado o computador que o servidor de e-mail aceita o recebimento de mensagens, ou seja, o nome da mquina em que est o servidor de e-mail e que foi previamente configurado no servidor DNS.

Name Virtual Host


No arquivo /etc/apache/httpd.conf existe uma rea de configurao chamada Name Virtual Host. Essa rea se destina a criar hosts virtuais no apache, em termos prticos, a idia criar um DocumentRoot especfico para cada URL. Imagine uma empresa que hospeda vrios sites na internet. Caso no fosse possvel criar hosts virtuais, essa empresa deveria ter um servidor apache em cada maquina para hospedar um determinado site, o que no seria vivel em termos de administrao. Para resolver esse problema o apache trabalha com esses hosts virtuais que analisam a URL digitada e encaminham a solicitao feita pelo browser do usurio para o diretrio raiz do site que est sendo solicitado.

CONFIGURANDO O NAME VIRTUAL HOST DO HTTPD.CONF (APACHE)


NameVirtualHost 192.168.100.213 # ENDEREO QUE O SERVIDOR FICAR ESCUTANDO # O VIRTUAL HOST QUE TEM A DESCRICAO DA PORTA 80 DEVE SER O PRIMEIRO A SER COLOCADO

Pgina 94

Sistemas Operacionais Linux Prof. Edney


#### CRIANDO ENDERECOS VIRTUAIS EM UM UNICO SERVIDOR APACHE #### # HOST QUE ESTOU CRIANDO - PGINA VIRTUAL DENTRO DO APACHE <VirtualHost 192.168.100.213> ServerAdmin edney@mail.estudoluinux.com.br #E-MAIL DO RESPONSVEL PELO SITE DocumentRoot /home/edney/ # INDICA O DIRETRIO RAIZ DO SITE ServerName www.edney.estudolinux.com.br # APLICA AS CONFIGURAES DESSE SITE EM FUNAO DA URL </VirtualHost> # ABAIXO TEMOS AS CONFIGURAES DE UM OUTRO SITE NO MESMO SERVIDOR APACHE <VirtualHost 192.168.100.213> ServerAdmin fundacao@mail.estudolinux.com.br DocumentRoot /home/fundacao/ ServerName www.fundacao.estudolinux.com.br </VirtualHost>

OBSERVAES:
No coloque o comentrio na frente das configuraes. Mesmo sendo comentrios, fazem com que as configuraes apresentem erros; Para cada novo site hospedado em seu servidor haver uma nova rea d configurao compreenda entre as TAGS <VirtualHost> e </VirtualHost>; Nome domnio de cada site dever ser cadastrado no servidor DNS para que o Apache possa responder a solicitaes. Para as configuraes acima foram cadastrados os seguintes domnios: www.edney e www.fundacao, ambos apontando para o mesmo IP (neste caso o IP 192.168.100.213).

SEGURANA VARREDURAS DE REDE Pesquisas Reversas de DNS


Uma pesquisa reversa de DNS o ato de consultar um host associado a um IP particular em um servidor DNS.

Host
host <10.0.0.1> O resultado informa que o host provavelmente est em execuo e sua localizao.

Pgina 95

Sistemas Operacionais Linux Prof. Edney

Boas Prticas
No atribua hostnames que possam revelar quaisquer tipos de informaes sobre os hosts; Considere atribuir hostnames que incluam o IP como parte do hostname. Este esquema ajuda a organizar os hosts disponveis a partir de uma perspectiva administrativa e, ao mesmo tempo, no revela informaes extras.

Mail Exchange
O comando dig consulta os registros MX de um domnio em seu servidor DNS padro e retorna seu servidor de correio.

Dig
dig mx UOL.com.br

Trasnferncias de Zonas
Geralmente, os servidores DNS so configurados para agirem como um servidor primrio ou como servidor secundrio de modo a fornecerem hierarquia e redundncia. Uma transferncia de zona ocorre quando um servidor DNS secundrio contata um servidor DNS primrio a fim de atualizar suas informaes sobre as zonas. Essas transferncias de zona podem revelar o papel ou a localizao de hosts particulares. Alguns servidores DNS primrios so configurados incorretamente e permitem que qualquer host realize uma transferncia de zona. Para tentar uma transferncia de zona para uma organizao particular, requerido o IP de um servidor DNS. Se essa informao no estiver disponvel possvel tentar uma consulta whois ao domnio alvo.

Host l
host l <domnio> <IP do servidor DNS> host l uol.com.br 10.0.0.1

Pgina 96

Sistemas Operacionais Linux Prof. Edney Se o invasor for bem sucedido na realizao de transferncia de zona ele pode conseguir informaes sobre os papis dos hosts dentro de uma organizao e seus respectivos endereos IP.

Boas Prticas
No permita que hosts no-autorizados realizem transferncias de zona a partir de seu DNS; Como as transferncias de zona so realizadas atravs da porta TCP 53, configure seu firewall para bloquear conexes internas nesta porta; Instale um servidor DNS separado para hosts da intranet. Esse servidor no deve ser acessvel externamente.

Traceroute
O programa traceroute funciona enviando pacotes UDP a portas altas no destino com os valores de TTL (time to live) inicialmente configurados como 1 e ento incrementados em 1 para cada pacote subseqente. Gateways decrementam o campo TTL de um pacote IP em 1 antes de encaminh-lo ao longo da rota. Se o TTL de um pacote for igual a zero, o gateway particular enviar um pacote ICMP Time to Live Exceeded de volta origem. Assim a ferramenta traceroute determina os endereos IP dos gateways ao longo do caminho para o destino examinando os pacotes ICMP Time To Live Exceeded retornados.

Traceroute
traceroute <IP ou domnio de destino>

Traceroute -I
A ferramenta traceroute envia pacotes UDP por padro, mas ela pode utilizar pacotes ICMP quando executada com a opo I. traceroute I <IP ou domnio de destino>

Pgina 97

Sistemas Operacionais Linux Prof. Edney

Traceroute -p
Alguns firewalls so configurados para permitir pacotes cuja porta de origem 20 (FTP) ou 53 (DNS). A opo p em traceroute pode, portanto, ser utilizada para configurar a porta de origem dos pacotes UDP saintes a fim de tentar tirar proveito dessa regra. traceroute p53 <IP ou domnio de destino> traceroute p20 <IP ou domnio de destino>

Boas Prticas
Configure seu firewall para remover pacotes UDP e ICMP entrantes; Configure seu firewall para remover pacotes ICMP Time to Live Exceeded de sada; Se precisar permitir pacotes UDP entrantes para DNS, configure o firewall para permitir apenas pacotes UDP entrantes com porta de origem 53 (DNS) originados a partir do endereo IP especfico de um servidor DNS.

Ping
A maneira mais rpida de determinar se um host est on-line atravs do comando ping. Ele envia uma solicitao de ICMP echo request, fazendo com que o alvo responda com um pacote ICMP reply. Observe que um host no pode ser configurado para responder as solicitaes de ICMP echo request. Portanto, mesmo que um host no responda a solicitaes de eco, ele pode estar on-line.

Ping
ping <ip ou domnio alvo>

UTILIZANDO O NMAP PARA REALIZAR UMA VARREDURA DE PING Nmap sP


A opo sP no nmap far uma varredura de ping. Sintaxe:

Pgina 98

Sistemas Operacionais Linux Prof. Edney nmap sP <ip da rede> * Exemplo: # nmap sP 192.168.100.*

Boas Prticas
Configure seu firewall para descartar solicitaes de ICMP echo requests entrantes e respostas de ICMP echo replies de sada. Isso evitar que hosts em sua rede respondam a solicitaes de ICMP echo requests.

nmap PT
A opo PT troca a porta padro do ping com nmap. A porta padro a 80. # nmap PT8080 192.168.0.1 se um host responder com o pacote RST o nmap o considerar ativo e a varredura ser feita.

Boas Prticas
Configure seu firewall para descartar pacotes ACK que no pertenam a uma conexo j estabelecida.

nmap sT
Realizar uma varredura TCP. # nmap sT 10.0.0.1 Os nmeros de portas TCP variam de 1 a 65535. Por padro o nmap varre apenas as portas conhecidas. O parmetro p indica o range de portas a ser varrida. # nmap sT 192.168.1.1 p 1-65535

nmap sS
Esse tipo de varredura faz com que o scanner envie pacotes SYN ao host alvo. Como este mtodo no completa o three way handshake, considerado secreto, j que frequentemente no registrado pelo log do host alvo. # nmap sS 192.168.1.150 Pgina 99

Sistemas Operacionais Linux Prof. Edney

nmap O1
Usado para descobrir o sistema operacional do host alvo. # nmap O1 uol.com.br

SEGURANA MANIPULANDO IPTABLES


# iptables [parmetro] Parmetro Significado -P Policy (poltica). Altera a poltica da chain. A poltica inicial de cada chain ACCEPT. -A Acrescenta uma nova regra a chain. Como segurana, colocamos todas as chains em poltica DROP com o P e depois abrimos o que necessrio com A. Ex.: # Iptables A OUTPUT d 172.20.5.10 j DROP # Iptables A OUTPUT s 192.168.0.1 d 172.20.5.10 j ACCEPT -D Apaga uma regra. A regra deve ser escrita novamente com a opo D; Ex.: # iptables D OUTPUT d 172.20.5.10 j ACCEPT

Tabela Filter

a tabela padro do netfilter e trata das situaes implementadas por um firewall de filtro de pacotes. Estas situaes so: Input: tudo que entra no host; Forward: tudo que chega ao host mas deve ser redirecionado a um host secundrio ou a outra interface de rede; Output: tudo que sai do host;
Tabela Nat

Implementa funes de NAT (Network Address Translation) ao host firewall. Suas situaes so: Prerouting: utilizada quando h a necessidade de se fazer alteraes em pacotes antes que os mesmos sejam roteados;

Pgina 100

Sistemas Operacionais Linux Prof. Edney Postrouting: utilizado quando h a necessidade de se fazer alteraes em pacotes aps o tratamento de roteamento;
Tabela Mangle

Implementa alteraes especiais em pacotes em um nvel mais complexo. A tabela mangle capaz de, por exemplo, alterar a prioridade de entrada e sada de um pacote baseado do tipo de servio o qual o pacote se baseava. Suas situaes so: Prerouting: modifica pacotes dando-lhes um tratamento especial antes que os mesmos sejam roteados; Output: altera os pacotes de forma especial gerados localmente antes que os mesmos sejam roteados.
Ao

Ao DROP REJECT ACCEPT LOG

Significado Exclui o pacote Rejeita o pacote Aceita o pacote Cria um log do pacote redirecionando a algum arquivo

SINTAXE BSICA
iptables [-t tabela] [opo] [chain] [dados] j [ao]

Exemplo:
# iptables A FORWARD d 192.168.1.1 j DROP Onde: Tabela: filter a tabela default (opo A); Chain: FORWARD; Dados: -d 192.168.1.1; Ao: DROP

Pgina 101

Sistemas Operacionais Linux Prof. Edney

Parmetro Significado -p Especifica o protocolo aplicado a regra. Pode ser qualquer valor numrico especificado no arquivo /etc/protocols ou o prprio nome do protocolo (tcp, icmp, udp etc.) -i Especifica a interface de entrada a ser utilizada; Ex.: -i eth0 Pode-se tambm especificar todas as interfaces de rede do nosso host da seguinte forma: -i eth+ -o Especifica a interface de sada a ser utilizada e se aplica da mesma forma que o parmetro i, porm, somente nas chains de OUTPUT e FORWARD. -s Especifica o origem (source) do pacote ao qual a regra deve ser aplicada. Nesta opo geralmente usamos o IP seguido de sua sub-rede. Ex.: -s 10.0.10.0/155.0.0.0 A mscara pode ser omitida e, neste caso, o IPTables optar pela mscara 255.255.255.0. possvel utilizar este parmetro com o nome ao invs do IP. Ex.: -s www.gnu.org -d Especifica o destino do pacote (destination) ao qual a regra deve ser aplicada. Sua utilizao se d da mesma forma que o s. ! Significa excluso e utilizado quando se deseja aplicar uma exceo a uma regra. utilizado juntamente com as aes -s, -p, -i, -o etc Ex.: -s ! 10.0.0.3 # refere-se a todos os endereos possveis com exceo do 10.0.0.3. Ex.: -p ! icmp # refere-se a todos os protocolos com exceo do icmp -j Define o alvo (target) do pacote caso o mesmo se encaixe em alguma regra. As principais aes so ACCEPT, DROP, REJECT e LOG ---sport Porta de origem (source port), com esta regra possvel aplicar filtros com base na porta de origem do pacote. S pode ser aplicada a portas referentes aos protocolos UDP e TCP. Ex.: -p tcp ---sport 80 # refere-se a porta 80 do protocolo TCP ---dport Porta de destino (destination port), especifica a porta de destino do pacote e funciona de forma similar a regra ---sport.

SEGURANA SAMBA
Cada seo do arquivo /etc/samba/smb.conf descreve um compartilhamento especfico, exceto a seo [global] que aplicada a todos os compartilhamentos do servidor. O nome da seo igual ao nome do recurso compartilhado. H trs sees com nomes especiais: [global], [homes] e [printers]. As permisses de acesso so definidas de acordo com os padres Unix. Pgina 102

Sistemas Operacionais Linux Prof. Edney

Compartilhando Diretrio do Windows no Linux


# smbmount //<nome do computador>/<nome do compartilhamento> <ponto de montagem> -o username=<usurio Windows>, passwd <senha>

Exemplo:
# smbmount //WinMachine/comum /mnt/comum -o username=edney, passwd edney Para tornar esse ponto de montagem padro na inicializao basta adicionar a linha de comando ao final do arquivo /etc/rc.d/rc.local # echo smbmount //WinMachine/comum /mnt/comum -o username=edney, passwd edney >> /etc/rc.d/rc.local

Compartilhando Diretrio do Linux no Windows


Alterar as configuraes de workgroup na rea global Criar o diretrio a ser compartilhado # mkdir -p <caminho>

Alterar a permisso do diretrio criado conforme desejo. Para permitir gravaes colocar 777 # chmod 777 <caminho> Inserir a rea de referncia do diretrio compartilhado em rede no

/etc/samba/smb.conf No Windows no precisa fazer nenhum configurao

Exemplo de Compartilhamento do Diretrio Geral:


[geral] comment = Seguranca de Redes - Sistemas Operacionais II # COMENTARIO available = yes # DISPONIVEL NA REDE browseable = yes # NAVEGAVEL path = /home/geral #CAMINHO DO DIRETORIO COMPARTILHADO NO SISTEMA OPERACIONAL public = yes # ACESSIVEL A TODOS writable = yes # PERMISSAO DE ESCRITA # write list = @edney # PERMISSAO DE ESCRITA PARA UM DETERMINADO GRUPO only user = no guest only = no Pgina 103

Sistemas Operacionais Linux Prof. Edney # Audited directory through experimental VFS audit.so module: Uncomment next line. # vfs object = /usr/lib/samba/vfs/audit.so # INDISPONIBILIZA O COMPARTILHAMENTO

PDC em Linux
Edite o arquivo /etc/samba/smb.conf na rea [global] conforme mostrado abaixo: # TRANSFORMANDO O SAMBA EM UM PDC security = user os level 65 local master = yes domain master = yes preferred master = yes domain logons = yes wins support = yes

Adicionando Usurio ao Samba


smbpasswd a <usuario>

Exemplo:
# smbpasswd a edney

Configurando o Cliente Windows


Clique com o boto direito em Meu Computador escolha a opo Propriedades, v at a guia Nome do Computador, clique no boto ID de Rede e siga o assistente para colocar o cliente Windows na mesma rede.

Removendo Usurio do Samba


A lista de usurios do samba fica no arquivo /etc/samba/private/smbpasswd. Para remover um usurio basta usar o seguinte comando: # smbpasswd x <usuario>

Desabilitando Usurio do Samba


# smbpasswd d <usuario>

Habilitando Usurio do Samba


# smbpasswd e <usuario>

Pgina 104

Sistemas Operacionais Linux Prof. Edney

SEGURANA SNORT (IDS INTRUSION DETECTION SYSTEM) Instalando o Snort


Para instalao do Snort necessrio visitar o site do produto www.snort.org.br para fazer o download da ltima verso. Nos basearemos na verso 2.2 e em mais alguns pacotes especficos para fins didticos mas instalaes de verses diferentes seguem o mesmo princpio. Priorizaremos o uso do Shell para que a instalao ocorra e para o estudo dos principais comandos e funcionalidades da ferramenta. Siga os seguintes passos: Crie o seguinte diretrio: /home/pkg para armazenar os pacotes baixados da internet: # mkdir /home/pkg Use o utilitrio wget para baixar o Snort. # wget http://www.snort.org/dl/old/snort-2.4.0.tar.gz O arquivo baixado vem compactado com o utilitrio zip, por isso devemos descompact-lo antes de tentar instalar o pacote. # gunzip snort-2.4.0.tar.gz Descompacte o arquivo novamente # tar -xvf snort-2.4.0.tar O resultado ser o diretrio snort-2.4.0/. Agora entraremos no diretrio para efetuarmos os passos da instalao: # cd snort-2.4.0/ Configurar a instalao para que se adqe ao hardware existente em sua mquina: ./configure enable-dynamicplugin --with-mysql Aps esse passo necessrio gerar a instalao: # make Por ltimo iremos instalar o snort: # make install

Pgina 105

Sistemas Operacionais Linux Prof. Edney Para saber onde se localiza o daemon que inicializar o Snort basta digitar o seguinte comando: # type snort snort is /usr/local/bin/snort Ento edite o arquivo /etc/rc.d/rc.local adicionando ao final do arquivo o seguinte texto: # INICIANDO O SNORT E O GUARDIAN /usr/local/bin/snort D /usr/sbin/guardian.pl Este arquivo ir inicializar o servio do Snort e do Guardian na inicializao do Linux.

Removendo o Snort
Como no momento da gerao da instalao do snort o diretrio criado estava com o nome de snort-2.4.0, este ser o nome do pacote do snort no sistema operacional. Por isso, para remov-lo, basta entrar com a seguinte linha de comando no Shell: # removepkg snort-2.4.0

Comandos do Snort
Parmetro -v -vd -vde Significado Mostra os cabealhos dos pacotes Capturar os cabealhos IPs Mostrar os dados dos pacotes Arquivos Importantes

Arquivo Significado /var/log/snort/alert Logs de alerta do snort, indicam possveis tentativas de invaso

Instalando a Interface Grfica BASE


Descompacte o arquivo base-1.3.5-all-src.zip. # unzip base-1.3.5-all-src.zip Altere o nome do diretrio para base # mv base-1.3.5-all-src base

Pgina 106

Sistemas Operacionais Linux Prof. Edney Publique o diretrio base no Apache e o acesse via browser atravs do endereo http://localhost/base e siga os 5 passos de configurao da interface grfica. Note que antes necessrio instalar a base de dados no MySQL.

Pgina 107

Вам также может понравиться