Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil MÓDULO: ADMINISTRAÇÃO DE REDES LINUX AUTORIA: RENATO BENEZATH CABELINO RIBEIRO 2 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Módulo De: Administração de Redes Linux Autoria: Renato Benezath Cabelino Ribeiro Primeira edição: 2009 1ª Revisão: 2016 CITAÇÃO DE MARCAS NOTÓRIAS Várias marcas registradas são citadas no conteúdo deste módulo. mais do que simplesmente listar esses nomes e informar quem possui seus direitos de exploração ou ainda imprimir logotipos, o autor declara estar utilizando tais nomes apenas para fins editoriais acadêmicos. Declara ainda, que sua utilização tem como objetivo, exclusivamente na aplicação didática, beneficiando e divulgando a marca do detentor; sem a intenção de infringir as regras básicas de autenticidade de sua utilização e direitos autorais. E por fim, declara estar utilizando parte de alguns circuitos eletrônicos, os quais foram analisados em pesquisas de laboratório e de literaturas já editadas, que se encontram expostas ao comércio livre editorial. 3 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil O Linux é um sistema operacional criado em 1991 por Linus Torvalds, na época um estudante de ciências da computação na universidade de Helsinki, Finlândia. O sistema segue o padrão POSIX, que é o mesmo usado por vários sistemas UNIX. Assim, conhecendo o Linux, o aluno não encontrará muita dificuldade em operar outros sistemas, do tipo UNIX, como por exemplo, FreeBSD, HPUX, SunOS, dentre outros. Linus Torvalds iniciou o desenvolvimento do Linux como um projeto particular, escrevendo o sistema Minix criado por Andrew S. Tanenbaum. Depois de algumas semanas sendo o único participante do projeto, Linus convidou outras pessoas para ingressarem no desenvolvimento de ―um Minix melhor que o Minix‖, enviando a seguinte mensagem: "Você suspira pelos bons tempos do Minix-1.1, quando os homens eram homens e escreviam seus próprios "utilitários de periféricos" ? A presentação 4 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Você está sem um bom projeto em mãos e deseja trabalhar num S.O. que possa modificar de acordo com as suas necessidades ? Acha frustrante quando tudo funciona no Minix? Chega de noite ao computador para conseguir que os programas funcionem ? esta mensagem pode ser exatamente para você. Como mencionei a um mês, estou trabalhando numa versão independente de um S.O. similar ao Minix para computadores AT-386. Ele está, finalmente, próximo do estado em que poderá ser utilizado (embora possa não ser o que você espera), e eu estou disposto a disponibilizar o código fonte para ampla distribuição. Ele está na versão 0.02 ..., contudo eu tive sucesso ao executar bash, gcc, gnu-make, gnu-sed, compressão etc." Atualmente pode-se encontrar uma versão do sistema operacional Linux operando em diversas plataformas: Intel x86, Intel x64, Intel IA-64, ARM, IBM PowerPC, SUN UltraSparc, ARM, Hitachi SH-x, Zilog, MIPS Rx000, Alpha 21x64, Motorola 680x0, Mainframes, Supercomputadores, GPS, Telefones Celulares, e várias outras. A primeira distribuição do Linux era literalmente proibida de ser comercializada, devendo ser entregue gratuitamente aos interessados. Com a liberação das primeiras versões nos anos de 1991 e 1992 a licença de distribuição foi alterada, mantendo-se basicamente a restrição de que qualquer distribuição do Linux ser entregue com o código fonte ―aberto‖, isto é, podendo ser lido, alterado e recompilado, por quem quisesse. 5 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Aprender a utilizar o sistema operacional Linux em um ambiente de Rede de Computadores, instalando e configurando um servidor de rede. Introdução; As distribuições do Linux; Instalação e Personalização; Instalação de Programas; Manpages - Documentação Interna; Gerenciamento de Processos; Arquivos de Log; Administração de Usuários e Grupos; Permissões de Acesso; Agendamento de Tarefas; Cópia de Segurança dos Arquivos; Protocolo TCP-IP; Configuração da Rede; Ferramentas TCP-IP; Iptables - Proteção do Servidor; SSH - Conexão Remota com Segurança; Servidor de Rede DHCP; Servidor de Banco de Dados; Servidor WWW; Monitoramento do Servidor; Certificação. Mestre em Informática (2015) pela UFES, Especialista em Telecomunicações e Gerenciamento de Redes pela UVV (2003) - Vitória e Bacharel em Ciência da Computação (2001) pela FAESA. Atua como Coordenador de TI e Professor da Coordenadoria de engenharia Elétrica do IFES – Campus Vitória. Possui experiência na área de Ciência da Computação, com ênfase em Telecomunicações, Gerenciamento de Redes, Multimídia e Segurança da Informação. O bjetivo E menta S obre o Autor 6 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil UNIDADE 1 ........................................................................................................... 8 As Distribuições Do Linux .................................................................................. 8 UNIDADE 2 ......................................................................................................... 11 Instalação 01 – Início ....................................................................................... 10 UNIDADE 3 ......................................................................................................... 19 Instalação 02 – Instalação do sistema servidor base....................................... 19 UNIDADE 4 ......................................................................................................... 44 Personalizando o ambiente .............................................................................. 44 UNIDADE 5 ......................................................................................................... 49 Gerenciamento de pacotes 1 ........................................................................... 49 UNIDADE 6 ......................................................................................................... 52 Gerenciamento de pacotes 2 ........................................................................... 52 UNIDADE 7 ......................................................................................................... 49 Gerenciamento de pacotes 3 ........................................................................... 49 UNIDADE 8 ......................................................................................................... 58 Manpages = Documentação Interna ................................................................ 58 UNIDADE 9 ......................................................................................................... 64 Gerenciamento De Processos 1 ...................................................................... 64 UNIDADE 10 ....................................................................................................... 68 Gerenciamento De Processos 2 ...................................................................... 68 UNIDADE 11 ....................................................................................................... 72 Configuração do layout do teclado ...................................................................72 S UMÁRIO 7 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil UNIDADE 12 ....................................................................................................... 77 Arquivos De Log ............................................................................................... 77 UNIDADE 13 ....................................................................................................... 82 Administração De Usuários 1 ...................................,,...................................... 82 UNIDADE 14 ....................................................................................................... 86 Administração De Usuários 2 ........................................................................... 86 UNIDADE 15 ....................................................................................................... 89 Permissão de Acesso 1 .................................................................................... 89 UNIDADE 16 ....................................................................................................... 92 Permissão de Acesso 2 .................................................................................... 92 UNIDADE 17 ....................................................................................................... 96 Agendamento De Tarefas 1 ............................................................................. 96 UNIDADE 18 ....................................................................................................... 99 Agendamento De Tarefas 2 ............................................................................. 99 UNIDADE 19 ..................................................................................................... 103 Cópia de Segurança de Arquivos .................................................................. 103 UNIDADE 20 ..................................................................................................... 106 Protocolo TCP/IP ........................................................................................... 106 UNIDADE 21 ..................................................................................................... 112 Configuração de Rede 2 ................................................................................ 112 UNIDADE 22 ..................................................................................................... 116 Ferramentas TCP/IP ...................................................................................... 116 UNIDADE 23 ..................................................................................................... 122 Proteção do Servidor ..................................................................................... 122 UNIDADE 24 ..................................................................................................... 128 Conexão Remota Com Segurança 1 ............................................................. 128 8 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil UNIDADE 25 .......................................................................................... ........... 132 Conexão Remota Com Segurança 2 ............................................................. 132 UNIDADE 26 ..................................................................................................... 135 Servidor De Rede DHCP ............................................................................... 135 UNIDADE 27 ..................................................................................................... 140 Servidor De Banco De Dados ........................................................................ 140 UNIDADE 28 ..................................................................................................... 145 Apache – Servidor WWW .............................................................................. 145 UNIDADE 29 ..................................................................................................... 149 Monitoramento do Servidor ........................................................................... 149 UNIDADE 30 .................................................................................................... 158 Certificação Linux ......................................................................................... 158 GLOSSÁRIO ..................................................................................................... 165 BIBLIOGRAFIA ................................................................................................ 166 9 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil As Distribuições do Linux Objetivo: Conhecer o desenvolvimento do Linux, algumas características desse sistema e as versões existentes. 1. Introdução Um sistema Linux nunca foi entregue ―sozinho‖, contendo apenas o sistema operacional. Desde o início eram criadas versões chamadas ―distribuições‖, que continham além do Sistema Operacional Linux (o chamado kernel do Linux), uma série de aplicativos e utilitários. Algumas empresas, e grupos de desenvolvedores, passaram a entregar (gratuitamente ou por um preço) o sistema operacional Linux, e cada CD passou a ser chamado de uma Distribuição Linux. As principais distribuições disponíveis no Brasil são: Red Hat, Novel SuSE, Conectiva, Librix, Insignea, Kurumin, Ubuntu. No final da década de 1990, praticamente 90% das distribuições do Linux eram utilizadas em Servidores. Atualmente, as distribuições são desenvolvidas para serem utilizadas em Computadores Pessoais ou Servidores, sendo que algumas permitem que se escolha qual tipo de computador será utilizado. Assim, o primeiro cuidado que se deve ter é na escolha da distribuição que será instalada no Servidor. U NIDADE 1 10 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil 2. Distribuições A tabela 1 mostra uma comparação, em algumas das distribuições mais importantes no Brasil: Distribuição Versão Estável Kernel Empresa País Cliente Servidor Origem da distribuição Reconhecimento de Periféricos Fedora 22 2.8 Red Hat EUA SIM SIM RedHat Alta openSuSE 13.2 2.8 Novell ALE SIM SIM RedHat Alta Ubuntu 14.04.3 2.8 Canonical AF.S. SIM SIM Debian Alta Slackware 14.1 2.8 - EUA SIM SIM Slackware Alta Debian 8.1.0 2.8 - EUA SIM SIM Debian Alta Tabela 1: Comparação das distribuições Linux 3. Não são distribuições Linux Uma consideração a ser feita, e que algumas pessoas confundem é que, alguns sistemas compatíveis com o padrão POSIX não são uma distribuição Linux, dentre as quais se destaca: • BSD e FreeBSD (e suas distribuições); • Mac OS X, derivado dos sistemas NeXT e Apple System 9; • BeOS; • AmigaOS; • SUN Solaris e SUN OpenSolaris. 11 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil 4 Ambiente de Estudo Para o estudo deste Módulo podem ser utilizadas diversas estratégias: 1) Instalação completa em um computador de teste; 2) Instalação compartilhada em um computador com MS-Windows, tendo 2 sistemas operacionais; 3) Instalação em uma Máquina Virtual. Este Módulo foi escrito utilizando a distribuição Ubuntu Linux 14.04 LTS 64 Bits1 , instalada em uma máquina virtual criada no aplicativo Oracle VirtualBox, que é um aplicativo gratuito para criação de máquinas virtuais. Outra opção de máquina virtual é o VMWare Workstation.1 http://ubuntu.mirror.pop-sc.rnp.br/mirror/ubuntu-releases/14.04.3/ubuntu-14.04.3-server-amd64.iso 12 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Instalação 01 - Início Objetivo: Aprender os passos necessários para instalar o programa de para-virtualização Oracle VirtualBox. Instalação do Oracle VirtualBox Primeiramente, devemos instalar o Oracle VirtualBox para que possamos instalar o sistema operacional servidor utilizado nessa Unidade. Para tanto, realize o download da versão mais atualizada do aplicativo, disponível no sítio Internet do fabricante2. DICA1: Lembre-se de realizar o download da versão adequada ao seu sistema operacional desktop. DICA2: O sistema operacional Windows 10 não é oficialmente suportado como sistema operacional hospedeiro. Após o término da instalação do Oracle VirtualBox, será preciso criarmos uma máquina virtual com os seguintes requisitos: Memória RAM: 1GB Sockets de Processador / Núcleos: 1 Tamanho do disco rígido: 8GB Desativar recursos de áudio (afinal, estamos trabalhando com SERVIDOR!!) 2 https://www.virtualbox.org/wiki/Downloads U UNIDADE 2 13 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 1: Tela inicial do Oracle VirtualBox. Para a criação da máquina virtual que iremos utilizar no decorrer dessa Unidade, clique na opção para criar uma nova máquina virtual e siga as etapas descritas a seguir. 14 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 2: Primeira etapa do assistente. Após o preenchimento das opções iniciais (nome da máquina virtual, tipo do sistema operacional e respectiva versão), avance para a próxima etapa, clicando no botão Continuar. A seguir, defina a quantidade de memória RAM para essa máquina virtual. O VirtualBox, automaticamente, recomenda uma quantidade de memória RAM, de acordo com as escolhas do sistema operacional e respectiva versão. Respeitando o valor já pré-definido, ajuste a quantidade de memória de acordo com seu desejo. Lembre-se que esse quantitativo de memória RAM será consumido da memória física do computador quando a máquina virtual estiver em operação. Portanto, não defina uma quantidade de memória que não estará disponível. 15 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 3: Definição da memória RAM para a máquina virtual. Clique em Continuar para avançar para a próxima etapa do assistente de criação da máquina virtual, onde será definida a configuração do disco rígido virtual. 16 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 4: Escolha do disco rígido virtual. Seguindo a mesma recomendação indicada na configuração da memória RAM, vamos definir o disco rígido virtual que para a configuração. Aqui você pode escolher entre: criar um novo disco ou reutilizar um disco rígido virtual existente. Para a configuração que estamos realizando, escolha a opção para criar um novo disco virtual e clique na opção Criar. Nesse momento, o VirtualBox questiona acerca do tipo de disco rígido virtual que se deseja criar. Observe que as opções apresentadas fazem referencia a outros programas de virtualização disponíveis no mercado (VMware, Parllels Desktop e QEMU). Vamos escolher a opção VMDK (Virtual Machine Disk) para criarmos o disco rígido virtual por este ser um padrão compatível com a maioria dos programas de virtualização. Clique em Continuar para a próxima etapa do assistente. 17 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 5: Definição do tipo de disco rígido virtual. Nessa etapa, iremos definir como o VirtualBox irá gerenciar o disco rígido que estamos criando. Duas opções estão disponíveis: alocação dinâmica ou tamanho fixo. A opção Alocação Dinâmica permite que o VirtualBox aumente o tamanho do disco virtual por demanda, ou seja, na medida que a ocupação do disco no sistema operacional virtualizado ocorra, o VirtualBox irá crescer o tamanho do arquivo que representa o disco rígido virtualizado. Esse aumento ocorrerá até o tamanho definido em sua configuração. Já na opção Tamanho Fixo, o VirtualBox tentará alocar o espaço para o arquivo que representa o disco virtual imediatamente. Para continuarmos com o assistente de criação da máquina virtual, escolha a opção Dinâmica e clique no botão Continuar. 18 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 6: Gerenciamento do disco virtual. Agora, defina um nome e o tamanho desejado para a criação do disco rígido virtual. Fique atento à definição do nome do arquivo quando a utilização de caracteres especiais. Mantenha o padrão recomendado pelo seu sistema operacional. O VirtualBox já traz, por padrão, as opções preenchidas de acordo com as informações definidas nas etapas anteriores. Você pode alterar essas opções conforme desejar. Lembre- se das recomendações já informadas: não defina um tamanho que disco rígido que não estará disponível fisicamente no seu sistema operacional hospedeiro. Além disso, de acordo com o sistema de arquivos que o local de destino estiver formatado, não será possível criar discos virtuais de tamanhos muito grandes. 19 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Ao final do assistente de criação da máquina virtual, você terá uma tela semelhante à apresentada na Figura a seguir. 20 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 7: Máquina Virtual criada pelo assistente. Pronto! Agora já podemos iniciar a instalação do sistema operacional servidor Ubuntu Linux. 21 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Instalação 02 - Instalação do sistema servidor base Objetivo: Aprender os passos necessários para instalar o Ubuntu Linux em um computador habilitado para o Servidor Instalação do Ubuntu Server 14.04.3 LTS 64 Bits O primeiro passo para a instalação é baixar a versão estável mais atualizada e colocá-lo no computador que será utilizado. Essa é a versão mais recente, e contém uma série de pacotes prontos para serem utilizados. Tanto em um computador de escritório (ou doméstico), quanto em um Servidor de Rede. De forma que não gravamos um CD/DVD com o arquivo que foi realizado o download da imagem de instalação, precisamos editar as configurações da nossa máquina virtual para que seja possível utilizar esse arquivo como um CD/DVD virtual. Para tanto, edite as configurações da máquina virtual recém criada, selecionando a mesma na listagem do VirtualBox e, posteriormente no botão que representa uma ―engrenagem‖ (Settings). Na tela que surgir, clique no ícone STORAGE. Em seguida, escolha a opção da unidade de CD/DVD Empty que está em Controller:IDE. Na opção Atributos, clique no ícone do CD/DVD ao lado direito da opção CD/DVD Drive: IDE Secondary. Figura 8: Configuração da imagem de instalação na máquina virtual. U UNIDADE 3 22 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Escolha a opção Chose a Vitual CD/DVD Disk File ... e localize o arquivo de imagem de instalação que você fez o download. Em seguida, clique em OK para confirmar as escolhas dessa configuração. O VirtualBox retornará para a tela inicial. Para iniciar o processo de instalação do Ubuntu Linux, clique no botão START. Figura 9: Escolha do idioma para o processo de instalação. Utilizando as setas direcionais do tecladoou o mouse, escolha o idioma que será usado no processo de instalação. Para a instalação em andamento foi escolhido o idioma Português do Brasil. Confirme sua opção pressionando ENTER ou clicando com o mouse na opção desejada. 23 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 10: Tela inicial do assistente de instalação. Uma vez definido o idioma de instalação, escolha a opção Instalar o Ubuntu Server para prosseguir com o assistente. 24 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Agora, o assistente de instalação questiona acerca do idioma para o sistema operacional e, consequentemente, utilizará esta escolha para o resto do processo das etapas do processo de instalação. Escolha a opção Portuguese (Brazil) utilizando as setas direcionais e confirme sua escolha pressionando ENTER. Figura 11: Escolha do idioma para o sistema operacional. O assistente de instalação irá alertar acerca da tradução para o idioma escolhido. Confirme essa opção. 25 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 12: Escolha do País do idioma definido. Confirme também a escolha para o País de origem do idioma definido na etapa anterior. Lembre-se que essas escolhas definirão o idioma do sistema operacional que iremos utilizar. Na próxima etapa, o assistente de instalação irá questionar acerca do layout de teclado a ser utilizado. Teclados com ç serão detectados como BR. 26 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 13: Definição do layout de teclado. Escolha a opção Não pressionando ENTER e, na próxima tela, confirme o País de origem Português (Brasil). 27 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 14: Escolha do País para o layout de teclado. A seguir, será preciso confirmar o layout de teclado definido para essa máquina que irá funcionar o sistema operacional servidor. Observe que há vários layouts diferentes. Considerando que o teclado utilizado está no padrão ABNT, escolha a opção Português (Brasil). 28 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 15: Confirmação do layout de teclado. Após confirmar essa escolha, o sistema passa à próxima etapa da instalação que é a de detecção do hardware, conforme configurações definidas para a máquina virtual no VirtualBox. Essa etapa é automatizada e não depende da interação do instalador. A seguir, o assistente de instalação caminha para a etapa onde devemos definir o nome do computador para esse sistema operacional. Lembre-se de que esse nome não deve conter 29 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil caracteres especiais nem espaços. Na prática, devemos seguir um padrão já existente no ambiente em que o servidor será inserido. Caso esse padrão não exista, devemos definir uma nomenclatura para a identificação padronização dos servidores. Para a presente instalação foi definido o nome SRV-ADM-ESAB. Após informar o nome definido, selecione Continuar para avançar à próxima etapa do assistente de instalação. Figura 16: Definição do nome do host para o servidor virtual. 30 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Na etapa que segue, devemos definir as informações de usuário para uma conta que terá direitos administrativos no servidor. Primeiramente, o assistente pergunta o nome completo para a nova conta. Figura 17: Definição das informações da conta de usuário administrativo. A seguir, o assistente questiona acerca do nome de login a ser definido para essa conta. Cabe ressaltar que esse nome seque as mesmas regras que foram apresentadas para a 31 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil nomenclatura do nome do computador. Para a presente etapa, foi definido o nome de login como administrador. Após a confirmação do nome de login, selecione Continuar. Figura 18: Definição do nome de login para a conta administrativa. Na sequência, devemos definir uma senha para essa credencial. Lembre-se das regras de segurança da informação e evite utilizar senhas triviais. Além disso, essa credencial terá direitos administrativos no sistema, ou seja, pode executar diversas tarefas que uma credencial comum, normalmente, não pode. Defina uma senha a seu critério, respeitando as 32 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil melhores práticas de segurança da informação. Confirme a senha digitada na próxima ao avançar. Figura 19: Confirmação da senha digitada. Ainda sobre a conta de login, o assistente de administração questiona acerca da segurança a ser aplicada para a pasta pessoal dessa credencial. Aqui você pode definir se a referida pasta será criptografada ou não. Caso escolha pela criptografia, o sistema irá requerer uma 33 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil chave de criptografia que será utilizada na segurança. Para essa etapa, não iremos criptografar a pasta pessoal. Figura 20: Configuração da segurança na pasta pessoal. Na etapa seguinte, o assistente de instalação tentará determinar um servidor de horários para o ambiente. Essa definição é fundamental para o funcionamento do servidor tendo em vista que toda sua atividade, que é registrada em logs de eventos, utilizará essa configuração (principalmente quando estamos em horário de verão). Logo, o sistema solicita 34 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil a escolha de um fuso horário. Em nosso Estado (ES), devemos escolher a opção padrão que é o fuso horário de São Paulo. Figura 21: Definição do sistema de horário para o servidor. Após confirmar as opções de fuso horário, avançamos para as configurações de particionamento do disco rígido virtual. O particionamento manual em sistemas Linux necessita de conhecimentos mais detalhados sobre como esse sistema operacional 35 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil organiza suas partições. Nessa instalação, utilizaremos as opções padrões do sistema para tal configuração. Figura 22: Configuração de particionamento do disco rígido virtual. Escolha a opção Assistido – usar o disco inteiro e configurar LVM e pressione ENTER para avançar. O sistema solicita confirmação da escolha, informando que todo o conteúdo do disco escolhido será apagado. Na prática, em um ambiente onde houver mais de um 36 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil disco rígido, você deve ter certeza do disco que escolheu para a instalação. Para essa instalação, confirmaremos a escolha pois temos certeza de que esse disco é o correto. Figura 23: Confirmação da escolha do disco para instalação. Novamente, o sistema solicita confirmação das opções definidas. Escolha SIM para avançar no processo de instalação. Caso ainda não tenha certeza, escolha NÃO e redefina suas opções de particionamento para o sistema. 37 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 24: Solicitação de confirmação para as definições de particionamento de disco. Após a devida confirmação, você pode definir o tamanho da partição a ser criada, segundo as opções das etapas anteriores. Caso deseja utilizar todo o espaço livre disponível no disco escolhido, escolha a opção Continuar. Caso contrário, defina um tamanho a ser utilizado. Para a instalação corrente,utilizaremos todo o espaço livre disponível e que definimos no início da Unidade (8GB). 38 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 25: Definição do espaço livre a ser utilizado para o particionamento definido. A seguir, o assistente de instalação solicita confirmação final para aplicar as configurações definidas anteriormente. Caso não tenha certeza do que escolheu, selecione NÃO e redefina suas opções. Para a instalação corrente, vamos confirmar as opções escolhendo a opção SIM. 39 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 26: Confirmação final das definições de particionamento do disco virtual. Na sequência, o assistente de instalação inicia a cópia dos arquivos base do sistema operacional Ubuntu Linux. Essa etapa é automatizada e não requer a intervenção do instalador. O tempo necessário para essa tarefa leverá alguns minutos, dependendo da origem da instalação (CD/DVD, pendrive, arquivo ISO, etc). Durante o processo, o assistente questiona sobre a configuração de acesso à Internet. Caso você esteja em um ambiente corporativo, pode ser necessária a configuração de proxy para 40 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil que o sistema possa realizar o download de conteúdos de atualização. Caso contrário, selecione Continuar para avançar, deixando as informações de proxy em branco. Figura 27: Configurações de proxy para acesso a Internet e download de atualizações. Com essas informações o sistema irá configurar o ambiente para que seja possível acesso aos repositórios de manutenção da distribuição que estamos utilizando. É fundamental que essas configurações sejam informadas corretamente. Caso contrário, o sistema operacional ficará impedido de acessar os repositórios de conteúdo do sistema. 41 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Na sequência, o assistente questiona acerca de como proceder com as atualizações do sistema operacional. É uma boa prática configurar essa opção para instalações automáticas de segurança a fim de se manter o sistema operacional sempre atualizado. A opção de atualização manual é uma tarefa avançada e deve ser escolhida por administradores experientes. Figura 28: Opções de atualização de segurança do sistema operacional. 42 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Ao confirmar a escolha de atualização do sistema operacional, o assistente avança para a etapa de seleção de softwares adicionais para o servidor. Inicialmente, escolheremos apenas o software OpenSSH server o qual utilizaremos para acesso remoto ao servidor virtual. As demais opções serão abordadas nas Unidades que seguem. Selecione Continuar para avançar. Figura 29: Softwares adicionais para o servidor. 43 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Logo, o assistente de instalação irá prosseguir com o processo e irá instalar o resto dos componentes necessários para o funcionamento do servidor. Por fim, você deve escolher como o carregador de inicialização (GRUB) deve ser instalado. Escolha SIM para confirmar a opção padrão das instalações Linux. Figura 30: Localização do gerenciador de inicialização GRUB. Após essa etapa, o assistente de instalação finaliza seu processo e solicita reinicialização do sistema. Para isso, escolha a opção Continuar. 44 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 31: Etapa final da instalação do sistema operacional. Caso o processo de instalação tenha ocorrido com sucesso, o sistema será reinicializado e o servidor entrará em produção. 45 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 32: Servidor virtual pronto para operação e configuração. 46 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Personalizando o ambiente Objetivo: Conhecer os passos necessários para configurar inicia das opções necessárias para a operação do servidor instalado. Configuração da Interface de Rede A primeira atividade de configuração a ser realizada em um servidor de rede é a configuração da interface de rede local. Inicialmente, essa interface vem configurada automaticamente, ou seja, a configuração de endereçamento IP para o servidor está automática. Em um ambiente de produção, nenhum servidor de rede deve possuir essa configuração automática, afinal de contas ele é um equipamento SERVIDOR. Além disso, caso esse endereço de rede seja alterado por algum motivo, como que os CLIENTES irão localizar os serviços providos por esse servidor? Portanto, a primeira atividade é a configuração do endereço de rede IP manual para todas as interfaces de rede que foram instaladas nesse servidor. A configuração manual de endereços IP requer que o administrador (você!) tenha realizado, previamente, o plano de endereçamento que será utilizado no ambiente onde o servidor será inserido. Esse plano contém todas as informações que devem ser seguidas na configuração do ambiente de rede (endereços IP estáticos, endereços IP dinâmicos, máscara de subrede, gateway padrão, endereço IP do servidor de nomes de domínio, etc). U NIDADE 4 47 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Essas informações servirão para podermos configurar, posteriormente, outros serviços básicos desse servidor, tais como: serviço de nomes de domínio (DNS) e serviço de configuração automática de hosts (DHCP). Para iniciarmos o processo de configuração da interface de rede de nosso servidor, faça login no servidor com as credenciais que foram criadas no processo de instalação (Unidade 3). Figura 33: Login no servidor para configuração de rede. Observe que o prompt do usuário que foi efetuado login: administrador@srv-adm-esab:˜$ 48 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil No sistema operacional Linux, isso indica que o usuário conectado não possui direitos administrativos para realizar configurações no sistema. Porém, nosso usuário faz parte do grupo de administradores. Logo, para dar continuidade na configuração de rede, precisamos executar as configurações como tal. Nesse caso, precisamos do comando sudo su. O comando sudo su permite que possamos nos conectar como outro usuário para executarmos comandos no sistema. Nesse caso, o usuário é o su (super user ou root). Lembre-se de que o super usuário no sistema Linux pode executar qualquer comando no sistema. Por padrão, essa credencial vem desativada no sistema e somente pode ser acessada por meio do comando sudo. A senha desse usuário é a mesma que definimos na instalação. Figura 34: Habilitação do super usuário para a configuração do ambiente de rede. 49 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Na sequencia, precisamos editar o arquivo de configuração das interfaces de rede. Na presente distribuição Linux (Ubuntu), esse arquivo se localiza no seguinte local: /etc/network O arquivo que precisamos editar possui o nome interfaces e localiza-se no diretório informado acima. Para editar o arquivo interfaces, vamos utilizar um editor de textos do sistema chamado nano. Logo, para realizar a ação, devemos digitar: nano /etc/network/interfaces Figura 35: Edição do arquivo de configuração de rede. 50 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Altere as informações de configuração do arquivo interfacespara as configurações abaixo: iface eth0 inet static address 10.0.2.3 netmask 255.255.255.0 gateway 10.0.2.2 dns-nameserver 8.8.8.8 Salve o arquivo pressionando as teclas CTRL + O, confirmando o nome do arquivo. Em seguida, pressione CTRL + X para sair e retornar ao sistema. Reinicie o servidor com o comando: # shutdown –r now Após o processo de reinicialização, faça login novamente no sistema para verificarmos se as configurações de rede foram executadas com sucesso. Para tanto digite o comando abaixo: # ifconfig Figura 36: Verificando as configurações de rede. 51 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Pronto! Com as configurações de rede ativas, podemos continuar as demais configurações previstas no presente documento. Gerenciamento de Pacotes 1 Objetivo: Conhecer o gerenciamento de pacotes no Ubuntu Linux. 1 Introdução No Linux, e em diversos sistemas operacionais, tudo que se faz é com o auxílio de programas. Os programas possuem instruções específicas para a realização de tarefas, como o Open Office Writer que é um editor de textos ou o Dolphin, o gerenciador de arquivos do KDE. Esses dois exemplos são de programas ―grandes‖ e complexos, mas existem programas mais simples, como o TAR, que é um programa para a compactação de arquivos. No Linux todos os utilitários, aplicativos, comandos e servidores (daemons), são programas. Alguns programas são utilizados para iniciar outros programas, como o Bash Shell. Outros são utilizados para finalizar todos os programas, como o Shutdown. O gerenciador de instalação denomina ―pacote‖ todos os programas do Linux, assim, neste módulo, deste ponto em diante, será utilizado o termo Pacote, para se referir a qualquer programa instalável no Linux. O nome pacote surgiu do fato de que o arquivo de instalação não contém apenas uma única informação, mas um conjunto de informações que serão utilizadas para auxiliarem o U NIDADE 5 52 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil processo de instalação do programa. O pacote pode conter: arquivos de configuração, arquivos de documentação, manuais, arquivos com código fonte, programas executáveis, e outras informações. Em cada distribuição Linux que utiliza a instalação através de pacotes DEB (que seguem a linha do DEBIAN, como o caso do Ubuntu), existe um arquivo no diretório ―/etc/apt‖ chamado “sources.list”, que contém a listagem de repositórios oficiais da distribuição os quais serão consultados quando solicitarmos a instalação de programas e utilitários. Um cache dos programas e utilitários já instalados pode ser localizado no caminho /var/cache/apt. O conteúdo original do arquivo sources.list pode ser visualizado na Figura 37 abaixo. Figura 37: Conteúdo do arquivo sources.list do Ubuntu Linux 14.04. Conforme observado, a estrutura do arquivo aponta o repositório padrão do Ubuntu Linux onde temos entradas para os pacotes já compilados (.DEB) e para os códigos-fonte. Caso o administrador não deseje que o gerenciador de pacotes realize buscas nos repositórios de códigos-fonte, suas respectivas entradas devem ser comentadas no arquivo sources.list. ATENÇÃO: Nem o repositório Universe ou o Multiverse contém pacotes oficialmente suportados. Em particular, talvez não seja seguro atualizar para estes pacotes. Várias fontes de pacotes estão disponíveis, às vezes, oferecendo apenas um pacote, como no caso de fontes de pacotes fornecido pelo mantenedor de uma única aplicação. Você deve 53 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil ser cuidadoso quando usar fontes não padrão de pacotes. Pesquise a fonte e pacotes cuidadosamente antes de executar qualquer instalação. Algumas fontes e seus respectivos pacotes podem deixar seu sistema instável ou mesmo inabilitá-lo de fazer alguma operação. Ao se editar o arquivo de fontes, devemos observar as primeiras linhas de texto onde é possível identificar a versão corrente do sistema em execução (desde que o arquivo seja o original do sistema). O trecho a seguir apresenta essas informações de nosso sistema: # deb cdrom:[Ubuntu 14.04.3 _Trusty Tahr_ - Beta amd64 (20150805)]/ trusty main restricted Outra forma de se identificar a versão do sistema em execução é por meio do comando lsb_release. No prompt de comandos do sistema, digite o seguinte comando: $ lsb_release -a Figura 38: Resposta do comando lsb_release. 54 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Gerenciamento de Pacotes 2 Objetivo: Manter a base de dados de pacotes atualizada e localizar pacotes. 1 Introdução Atualmente, as principais distribuições Linux incluem um utilitário que auxilia a instalação dos pacotes, tornando esta tarefa muito simples. No caso do Ubuntu, este utilitário é chamado de APT (Advances Packaging Tool)3. 2 O utilitário apt Primeiramente, devemos atualizar a listagem de programas dos repositórios por meio do comando: apt-get update Esse comando irá consultar a listagem de repositórios do arquivo sources.list informado anteriormente e, em cada repositório, irá verificar se há alterações nos conteúdos comparado ao que ele possui em cache local (/var/cache/apt). Caso haja alterações, ele recupera essas informações e atualiza a base de dados local. Lembre-se: para a execução do utilitário APT, é necessário estarmos em modo de super usuário. Caso ainda não esteja, habilite esse modo com o comando sudo su. 3 Mais informações sobre o APT podem ser encontradas em: http://manpages.ubuntu.com/manpages/trusty/pt/man8/apt-get.8.html U NIDADE 6 55 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 39: Atualização da base de dados do APT. Uma vez que a base de dados dos repositórios foi atualizada, podemos localizar pacotes que podem ser instalados para o servidor. Para tanto, devemos utilizar o comando: # apt-cache search <palavra-chave> onde <palavra-chave> deve ser substituído pelo nome (completo ou parcial) do pacote que se deseja localizar. Por exemplo, se desejarmos localizar um pacote que contenha a palavra browser, deveríamos fornecer o comando: 56 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil # apt-cache search browser É recomendado que se atualize a base de dados do APT antes da instalação dos programas. Caso a base local esteja obsoleta, pode ocorrer de o APT não localizar o programa desejado. Não é necessário saber todo o nome do pacote que se deseja instalar. Podemos informar, parcialmente, o nome do pacote. Uma forma ágil de localizarmos o pacote correto para a instalação é através do comando Porém, quanto menos informações forem informadas, mais resultados de possíveis candidatos serão retornados. A seguir, você aprenderá a instalar pacotes de programas no sistema operacional e rede Ubuntu Linux. 57 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Gerenciamento de Pacotes 3 Objetivo: Instalar pacotes no sistema operacional servidor de rede Ubuntu Linux. 1 Introdução A partir desse ponto, o você já pode realizar instalações de pacotes de programas em seu servidor Ubuntu Linux. Fique atento às informações que foram descritas nos capítulos anteriores para que pacotes desnecessários não sejam instalados no servidor. Para a continuidade dos trabalhos, utilizaremos o utilitário APT para realizar instalações de pacotes de programas. Sempre que necessárioinstalar novos pacotes, você pode recorrer a esse capítulo para relembrar as instruções necessárias para essa tarefa. Em resumo, podemos dizer que existem três formas de instalar programas no Linux: 1. Usar o apt-get ou outro gerenciador de pacotes para instalar pacotes próprios da distribuição em uso. Esta é a forma mais simples e menos passível de problemas, que você usa sempre que possível. 2. Programas com instaladores próprios, destinados a funcionar em várias distribuições. Eles também são simples de instalar, mas não tão simples quanto usar o apt-get. Muitos programas são distribuídos apenas desta forma, como o VMware. 3. Instalar o programa a partir do código fonte, o que pode ser necessário no caso de aplicativos pouco comuns, que não estejam disponíveis de outra forma. U NIDADE 7 58 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil O apt-get é uma ferramenta extremamente poderosa e prática Ele pode ser encontrado não apenas no Debian, Ubuntu e no Kurumin, mas em outras distribuições baseadas no Debian, como o Xandros, Memphis e até mesmo no Linspire. Ferramentas como o urpmi, do Mandrake, o synaptic, do Conectiva e o yum, do Fedora também são baseados nele. 2 Instalação de programas Conforme descrito no Capítulo anterior, para usar o apt-get, o primeiro passo é rodar o comando "apt-get update", que faz com que o apt-get verifique todos os repositórios referenciados no arquivo sources.list e baixe a lista com os pacotes disponíveis em cada repositório referenciado. Para instalar pacotes, você deve digitar o comando: # apt-get install <nome_do_pacote> onde <nome_do_pacote> deve ser substituído pelo nome do programa que se deseja instalar. Por exemplo, caso desejamos instalar o programa de monitoramento de portas de comunicação, poderíamos entrar com o seguinte comando: # apt-get install nmap Após a confirmação do comando acima, você deve ver uma tela semelhante à da Figura 40 a seguir. Veja que o apt-get cuida de toda a parte ―complicada‖ do processo de instalação de programas, analisando as dependências necessárias para que o programa informado na linha de comando possa ser instalado. ATENÇÃO: quando a instalação de programas ocorre a partir do código-fonte, o administrador deve instalar TODAS as dependências necessárias antes da instalação do programa desejado. Caso contrário, o sistema operacional irá ―reclamar‖ as dependências. 59 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 40: Instalação do utilitário NMAP. Verifique se as informações apresentadas pelo apt-get estão de acordo com o desejado e confirme a instalação do programa. A partir desse ponto, o apt-get irá realizar o download das dependências (caso existam) e do programa a ser instalado. Ao final, irá instalar o mesmo no sistema operacional e, então, o administrador poderá continuar seu trabalho. 60 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Documentação: manpages Objetivo: Conhecer o sistema de documentação e ajuda do sistema operacional Ubuntu Linux 1 Introdução Uma das características mais conhecidas dos sistemas Unix e similares, incluindo o Linux, é a existência de um programa que contém uma grande documentação sobre o sistema Unix, e seus programas utilitários. Esse programa é chamado de MANPAGE, que e a junção das palavras manual e pages (páginas). Este programa é um ―utilitário de documentação‖, e é organizado em páginas, e cada página faz uma referência a algum dos muitos utilitários existentes nos sistemas Unix. 2 Utilização Para utilizar o utilitário de documentação, digite o comando ―man‖, de manual, na linha de comando do sistema, e o programa que será verificado: $ man unix U NIDADE 8 61 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Figura 41: Documentação e ajuda do sistema. O utilitário manpage apresenta uma vasta documentação sobre vários programas, funções, utilitários e termos em geral. A apresentação da documentação obedece um padrão, mas em alguns casos este padrão não é seguido. Em relação ao idioma, grande parte da documentação é traduzida para os disversos idiomas existentes no mundo, mas isso não acontece em todos os casos. A maior parte da documentação, não traduzida, está em inglês. 62 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil 3 Formato De Apresentação A documentação é apresentada em um formato próprio, dividindo o texto em alguns tópicos. Os principais tópicos são: Nome: contém o nome do programa, ou função, ou utilitário, ou termo e, em alguns casos, contém também uma lista de termos associados, seguida de uma rápida descrição de uma ou duas linhas. Sinopse: apresenta o contexto de utilização do programa ou função ou utilitário. Descrição: contém uma descrição explicando o funcionamento do programa e algumas de suas características. Exemplos: explicações para a utilização e melhorar o entendimento da documentação. Veja também: mostra alguns casos extras, de termos que estão associados à documentação que está sendo vista. Alguns casos poderão incluir outros tópicos, diretamente relacionados ao programa que está sendo visto ou incluídos pelo autor do texto da documentação: Opções de Entrada, Opções de Formatação, Ambiente, Defeitos Conhecidos, Arquivos, Autor, Histórico, Registro, dentre outros. 4 Seções Do Manpages Em alguns casos existirá mais de uma documentação para um determinado termo. Isto acontece porque alguns comandos são utilizados tanto na linha de comando do Unix quanto em programas de computador, como acontece com o comando ―printf‖. A documentação do manpages é dividida em Seções, e cada seção irá tratar de um caso específico de utilização daquele comando. Existem várias seções disponíveis para o 63 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil manpages, dependendo de qual sistema está em uso. A tabela 1 mostra as seções presentes nas principais distribuições Linux e em algumas versões do Unix System IV: Tabela 1: Seções presentas na manpages de algumas distribuições Linux Seção Tipo De Conteúdo 1 Comandos próprios do sistema, executados na linha de comando 2 Chamadas para o Sistema Operacional 3 Biblioteca de Funções da linguagem C 4 Arquivos Especiais (exemplo: unidades de dispositivo) 5 Formato de Arquivos 6 Jogos e Protetores de Tela 7 Seção Geral 8 Administração de Sistema e Daemons No Unix System V algumas seções são diferentes, mas este sistema é pouco utilizado, então não será abordado. Alguns poucos sistemas, tanto Unix quanto Linux, podem possuir algumas seções extras: Tabela 2: Seções extras do manpages. Seção Tipo de Conteúdo 0 Biblioteca de Cabeçalho da linguagem C 9 Rotinas do Núcleo do Sistema n Comandos TCL/TK 64 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil x Servidor de Interface X Window p Comandos POSIX Exemplos de utilização: $ man printf $ man fork $ man nfs $ man tcp $ man ipconfig 65 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil $ man http Para acessar a descrição desejada, basta informar o número desta ao executar o utilitário ―manpages‖: $ man 3 printf 66 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Gerenciamento de Processos1 Objetivo: Conhecer o gerenciamento e controle de programas em execução no Linux. 1 Introdução Um processo, na maioria dos sistemas operacionais, é o nome dado a um programa em execução. No Linux, tanto os comandos, quanto utilitários e aplicativos, são todos considerados processos. Existe uma série de utilitários que auxiliam o gerenciamento dos processos em execução, permitindo que o usuário tenha o controle sobre eles. Nesta Unidade serão mostradas algumas características dos processos no Linux, e algumas ferramentas de manipulação de processos. 2 Características de um Processo Todos os processos são programas em execução gerenciados pelo sistema operacional. Para realizar este gerenciamento, os processos são criados com características que serão utilizadas e manipuladas durante a sua execução. Dentre as principais características destacam-se: • Proprietário: usuário que iniciou a execução do programa que originou o processo; Estado: indica o estado de execução do processo, os mais comuns são: o D (Aguardando) processo espera a liberação de algum recurso; o R (Executando) processo realizando alguma tarefa; o S (Parado) alguma tarefa U NIDADE 9 67 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil interrompeu a execução do processo; o Z (Zumbi) o processo finalizou, mas ainda permanece carregado na memória. • Prioridade: indica a prioridade de execução do processo por um valor numérico. Quanto menor o valor, maior é a prioridade de execução; • Comando: comando que originou a execução do processo. 3 Comando Top O comando TOP é utilizado para mostrar os processos em execução no computador. A Figura 42 mostra uma apresentação deste comando: Figura 42: Visualizando processos com o comendo TOP. 68 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Através do comando TOP pode-se visualizar uma série de características dos processos em execução, e escolhê-las para serem exibidas na tela. O TOP permanece em execução continua, isto é, após a exibição dos processos em execução, o comando continua em execução, atualizando as informações sobre os processos até o momento em que o usuário queira finalizar o TOP. Na figura 2 as características escolhidas foram as seguintes: Tabela 3: Características apresentadas pelo comando TOP. Característica Descrição PID Número de identificação para o processo. UID Número de identificação do usuário que iniciou o processo. USER Nome do usuário que iniciou o processo. PR Prioridade do Processo. TIME Tempo de execução. RES Quantidade de memória utilizada. VIRT Imagem Virtual. Flags Flags de execução. Time+ Tempo de execução ―extendido‖, inclui os segundos. %CPU Percentual de utilização do Processador. %MEM Percentual de utilização da Memória. S Estado do Processo. COMMAND Comando que originou o processo. 69 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Para visualizar todas as opções de características que poderão ser visualizadas pelo TOP, basta pressionar a tecla ―f‖ de Fields, que significa Campos. O ‖top‖ também nos permite a manipulação dos processos por meio de comandos interativos. Veja abaixo alguns dos comandos interativos mais importantes do ‖top‖. ‖k‖ - Finaliza, ou seja, ―mata‖ um processo. ‖m‖ - Ativa/Desativa a exibição de informações da memória. ‖M‖ - Ordena os processos pelo uso da memória residente. ‖N‖ - Ordena os processos pelos seus PIDs. ‖P‖ - Ordena os processos pelo uso da CPU (este é o padrão). ‖ESPAÇO‖ - Atualiza imediatamente a visualização do quadro de processos. ‖h‖ - Exibe a ajuda dos comandos interativos do ‖top‖. ‖q‖ - Abandona o comando ‖top‖. 70 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Gerenciamento de Processos 2 Objetivo: Conhecer o gerenciamento e controle de programas em execução no Linux. 1 Introdução Existem diversos comandos no sistema operacional Ubuntu Linux que podem ser utilizados para visualizar e manipular processos. Cada administrador utiliza o utilitário que mais está familiarizado em seu dia-a-dia. Na continuidade dos estudos sobre processos, iremos conhecer outro utilitário – o PS. 2. Comando Ps O comando PS é semelhante ao comando TOP; a diferença é que o TOP permanece em execução continua e o comando PS não. O comando PS mostra os processos executados, e suas características, no instante em que o comando é acionado, como pode ser visto na Figura 43: Figura 43: O comando PS. U NIDADE 10 71 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil As colunas exibidas pelo comando PS podem ser escolhidas pelo usuário, utilizando as opções extras do comando. Para a opção ―u‖ são exibidas as colunas: USER: Número de identificação do usuário; PID: Número de identificação do processo; %CPU: Percentual de utilização do processador; %MEM: Percentual d utilização da memória; VSZ: Memória Virtual (Disco-Rígido); RSS: Memória Residente (RAM); TTY: Terminal ou Console de inicialização do processo; STAT: Status do processo; START: Hora de início do processo; TIME: Tempo de execução; COMMAND: Linha de comando do processo. Figura 44: O comando PS com a opção -u. As principais opções do comando PS são: $ ps -AjF: exibe todos os processos em execução no computador; 72 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil $ ps -f u <usuário>: exibe todos os processos de <usuário>, se for deixado em branco, exibe os processos do usuário atual. $ ps aux : para apresentar todos processos sendo executados, de todos usuários, incluído o nome do usuário a qual o processo pertence, mesmo os desvinculados de TTYs. 3 Comando Kill O comando KILL é utilizado para enviar um sinal a um processo. Um sinal é um comando especial enviado a um processo em execução. Os possíveis sinais são: • STOP: inativa temporariamente a execução de um processo; • CONT: reativa um processo que recebeu o sinal STOP; • SEGV: informa erros de memória; • TERM: ordena o término da execução de um processo; • ILL: informa erros de execução de instruções; • KILL: mata um processo que parou de responder. O comando KILL geralmente é utilizado para encerrar a execução de um processo que apresentou algum erro de execução e não poderá finalizar corretamente. Mas também pode ser utilizado em programas que estão consumindo muito tempo, ou muitos recursos do computador. 73 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil FÓRUM I Em ambientes corporativos, Windows Server e Linux são as escolh as mais realizadas, havendo quase uma disputa direta entre ambos. Linux é escolhido , entre outras razões, pelo Custo/Benefício. E o Windows, dentre os vários motivos, também conta com a mesma característica a seu favor. Vamos refletir e debater: Como é po ssível que dois sistemas apresentem como ponto forte o Custo/Benefício ? Como esta análise é feita em cada um deles? Antes de dar continuidade aos estudos é fundamental que você acesse sua SALA DE AULA e faça a Atividade 1 no ―link‖ ATIVIDADES. 74 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Configuração do Layout do Teclado Objetivo: Realizar a alteração do layoutdo teclado quando necessário. 1 Introdução Apesar de termos determinado o layout de teclado na instalação do sistema operacional, pode ser necessário alterá-lo em outro momento por qualquer motivo. Nessa unidade iremos conhecer como realizar essa tarefa utilizando o utilitário dpkg-reconfigure. 2 Alterando o layout do teclado Para realizar a alteração do layout do teclado é necessário executarmos esse procedimento como usuário administrador. Se você ainda não o fez, entre com o comando sudo su na linha de comandos do sistema operacional e informa respectiva senha, quando necessário. Após essa etapa, utilizaremos o utilitário de gerenciamento de pacotes do Ubuntu Linux, o dpkg-reconfigure, para podermos realizar a reconfiguração das opções relacionadas com o idioma e afins. No prompt de comandos do sistema operacional, devemos entrar com o seguinte comando: # dpkg-reconfigure keyboard-configuration DICA: Para maiores detalhes com o uso desse utilitário do sistema, consulte sua manpages por meio do comando man dpkg-reconfigure. U NIDADE 1 1 75 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil O primeiro passo é definirmos o tipo do teclado que está em uso. Essa etapa é fundamental para o processo uma vez que cada fabricante de teclado dispõe as teclas de uma maneira diferente. A Figura 45 a seguir apresenta essa etapa. Figura 45: Escolha do modelo do teclado em uso. O tipo de teclado Genérico 105 teclas é o perfil do teclado ABNT2, o padrão no Brasil. Caso não tenha certeza de qual é o seu tipo de teclado, escolha essa opção. Para teclados 76 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil padrão Americano, escolha a opção em destaque. A seguir, iremos definir o layout das teclas de acordo com o país do teclado. Para teclados padrão ABNT, devemos escolher Portugues (Brasil). Já para teclados padrão internacional, devemos escolher Inglês (EUA). Figura 46: Escolha do País de origem do teclado. No meu caso, estou utilizando um teclado padrão americano. Logo, minha escolha foi a que está em destaque na Figura 46. Escolha a opção que corresponde ao seu teclado. 77 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil A seguir, devemos definir dentro do país escolhido, o layout a ser aplicado nas configurações. Observe que há várias layouts possíveis. Mais uma vez, escolha a opção que corresponde ao seu teclado. Para os teclados padrão ABNT2 (o país escolhido foi Portugues – Brasil), escolha o layout padrão. Já no caso dos teclados Americanos, escolha a opção em destaque na Figura 47. Figura 47: Escolha do layout das teclas. 78 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Por fim, o assistente de configuração retorna ao seu menu principal. Nenhuma configuração adicional precisa ser realizada e, portanto, basta que você confirme as configurações realizadas para que as alterações sejam aplicadas (OK). Figura 48: Configuração final do layout de teclado. 79 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Arquivos de Log Objetivo: Conhecer o registro de atividades realizadas pelo sistema e a detecção de ocorrência de falhas em processos. 1 Introdução Quando um processo executa uma tarefa de maneira errada, por erro no código ou por falha em algum equipamento, é desejável que alguma informação referente a esse erro seja passada ao usuário do sistema, para que o mesmo possa corrigir o erro (quando for no código) ou evitá-lo (quando for em um equipamento). Os arquivos de Log são utilizados para auxiliar o usuário nesta tarefa de detecção de erros na execução dos processos. Quando um processo não consegue completar uma tarefa com sucesso, ou seja, há uma falha na execução da tarefa, algumas informações são gravadas para que o usuário possa avaliar o que aconteceu durante a execução daquela tarefa. A principal ferramenta no Linux para a gravação dos arquivos de Log é o utilitário SYSLOG. 2 Syslog O SYSLOG realiza a tarefa de gravar mensagens referentes a: Execução de processos; Mensagens do kernel. U NIDADE 12 80 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Este utilitário é dividido em 3 módulos: • rsyslogd: daemon responsável pelo Log dos processos; • OpenLog: conjunto de funções para serem utilizadas em programas que serão gerenciados pelo SYSLog; • Logger: utilitário de linha de comando, que permite interagir com o SYSLog modificando algumas características da gravação dos Log's. O mais importante dos 3 módulos é o rsyslogd que fará o controle e gravação dos Log's dos processos. 3 rsyslogd O rsyslogd é o daemon responsável por capturar os Log's de todos os processos, inclusive do kernel. Geralmente os arquivos de Log são gravados no diretório ―/var/log‖, mas esse local pode variar de uma distribuição para outra. Os arquivos de Log são gravados geralmente com o nome do processo que gerou o Log seguido da extensão ―.log‖: Tabela 4: Alguns arquivos de log. Arquivo Descrição boot.log Informações sobre a inicialização do sistema. auth.log Informações sobre autenticação. Kern.log Logs gerados pelo kernel. syslog Logs de mensagens gerais. 81 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil 4. Visualizando o Log Uma das maneiras mais utilizadas para visualizar um arquivo de Log é através do comando TAIL, como pode ser visto na Figura 49: Figura 49: Trecho do arquivo de log syslog. 5 Configuração Do SYSLOG A configuração do RSYSLOG é realizada utilizando-se o arquivo ―/etc/rsyslog.d/50- default.conf‖. A sintaxe básica deste arquivo é a seguinte: 82 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil recurso.ação arquivo Os ―recursos‖ são identificados para a gravação das mensagens. Os programas utilizados no sistema utilizarão alguns destes recursos, e quando for um recurso que está em monitoração, um Log será gravado no arquivo especificado. No RSYSLOG existem 21 recursos, os mais utilizados são: Tabela 5: Recursos disponíveis no RSYSLOG. Recurso Programas que utilizam kern Kernel do Linux user Programas do usuário mail Servidor de Correio daemon Daemon's inicializados auth Programas de Autenticação e Segurança cron CRON syslog O próprio SYSLOG * Todos os programas serão monitorados. As ―ações‖ especificam o momento em que o Log será gravado: Tabela 6: Ações que resultam em Log. Recurso Descrição emerg Emergência crítica alert Situação de emergência momentânea crit Condições críticas err Erro de execução warn Situação de advertência 83 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil notice Situação para investigação info Informação debug Depuração de programas * Qualquer situação Por exemplo: • user.* /var/log/user.log: gravará todas as mensagens de um usuário no arquivo /var/log/user.log. Ex: login do usuário, inicialização de aplicativos, erros, etc. • kern.warn /var/log/kernel/warnnings.log: gravará todas as mensagens de advertência originadas pelo kernel no arquivo /var/log/kernel/warnnings.log. Ex: falha ao iniciar processo. Para não acumular excesso de informação de Log, o Linux realiza a substituição dos Log's antigos, utilizando o programa LOGROTATE. O arquivo de configuração é o /etc/logrotate.conf. 84 Copyright© 2016, ESAB – Escola Superior Aberta do Brasil Administração de Usuários 1 Objetivo: Conhecer a administração de contas de usuários no Linux. Criar e gerenciar usuários do servidor. 1 Introdução A principal tarefa de um administrador de Servidor é o Gerenciamento de Usuários. Os usuários serão cadastrados para acessarem o Servidor, de acordo com regras estabelecidas. Estas regras definirão, por exemplo, quais arquivos serão acessíveis por um determinado usuários; os equipamentos que serão utilizados; os horários que o usuário poderão conectar-se ao Servidor, entre outras. Nesta Unidade serão vistos alguns comandos e utilitários que permitirão ao administrador gerenciar os usuários. Através do Terminal de Comandos: o Gerenciamento de Usuários: useradd, userdel, usermod, passwd; o Gerenciamento de Grupos: groupadd, groupdel, groupmod; As informações dos usuários são armazenadas nos seguintes arquivos: ―/etc/shadow‖ e ―/etc/passwd‖. As informações referentes aos grupos são armazenadas no arquivo: ―/etc/group‖. Esses arquivos são visados por intrusos, os chamados hackers, que buscam informações e senhas de usuários, para terem acesso à todos os dados armazenados nos servidores. U NIDADE 13 85 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil A seguir, serão mostradas as maneiras de se administrar Usuários e Grupos no Ubuntu Linux, pelo Terminal de Comandos. 2 Gerenciando Usuários Através do Terminal de Comandos, pode-se utilizar vários comandos de administração dos usuários. Estes comandos permitem criar, apagar e modificar as informações referentes a usuários e grupos. 2.1 Adicionando um Usuário Para adicionar usuários através do Terminal de Comandos, utiliza-se o comando ―useradd‖. A sintaxe deste comando é a seguinte: Figura 50: Sintaxe do comando USERADD. Tabela 7: Principais opções do comando “useradd”. Opção Descrição -c Comentário, geralmente associado ao nome completo do usuário. -d Diretório de utilização do usuário. O padrão é o ―/home‖, mas pode ser qualquer outro. 86 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil -g Grupo associado ao usuário. O grupo deve ser criado antes do usuário. login Nome utilizado para o login do usuário. Se o grupo não for informado, então será criado um grupo com o mesmo nome do usuário, e o usuário será associado a ele. Para adicionar o usuário ―ricardo‖, pertencente ao grupo ―administradores‖, digita-se o comando: $ useradd -c ―Administrador Linux ESAB.‖ admesab -g adm Após a utilização do comando ―useradd‖, deve-se utilizar o comando ―passwd‖, para se criar uma senha para o usuário, e assim permitir que o mesmo tenha acesso ao sistema. Para tanto, entre com o comando: $ passwd admesab 2.2 Removendo um Usuário Para remover um usuário pelo Terminal de Comandos, basta digitar o comando ―userdel -r <usuario>‖: $ userdel -r admesab Figura 6: Remoção de usuário O comando userdel remove o usuário, e a opção ―-r‖ removerá o diretório do usuário. Se ela não for passada, o diretório do usuário deverá ser removido manualmente. 87 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil 2.3 Modificando Um Usuário A modificação dos dados de um usuário pelo Terminal de Comandos é feita com o comando usermod. Este comando é muito semelhante ao comando useradd, tendo a mesma sintaxe: $ usermod [-c comment] [-d home_dir] [-e expire_date] [-f inactive_days] [-g initial_group] [-G group[,...]] [-m [-k skeleton_dir]] [-o] [-p passwd] [-s shell] [-u uid] login As opções são as mesmas do comando useradd e a alteração será imediata. 2.4 Alterando a Senha de um Usuário A alteração da senha poderá ser feita pelo comando passwd. Se a alteração da senha for feita pelo próprio usuário, e o mesmo utilizar o comando passwd, serão necessários 3 passos: 1) Informar a senha atual; 2) Informar a nova senha; 3) Repetir a nova senha. 88 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Administração de Usuários 2 Objetivo: Criar e gerenciar grupos de usuários no servidor. 1 Introdução Em um ambiente de rede de computadores temos a necessidade de organizar as contas de usuários em grupos. A organização em grupos é fundamental para a manutenção do sistema e das políticas de segurança e controle de acesso ao sistema e serviços. 2 Adicionando um Grupo Para adicionar um grupo, pelo Terminal de Comandos, utiliza-se o comando groupadd <grupo> , onde <grupo> é o nome do grupo que se deseja criar. $ groupadd admesab Opcionalmente pode-se informar o número de identificação do grupo, com a opção ―-g NUM‖, da seguinte maneira: $ groupadd -g 2009 fiscal. 2.1 Removendo um Grupo Para remover um grupo, deve-se verificar se o mesmo não possui nenhum usuário associado a ele. Se um grupo não contiver nenhum usuário, então poderá ser removido do sistema. Para remover um grupo pelo Terminal de Comandos, utiliza-se o comando ―groupdel <grupo>‖. Uma listagem dos grupos existentes no servidor pode ser obtida U NIDADE 14 89 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil listando o conteúdo do arquivo /etc/group. Observe que esse arquivo não deve ser editado manualmente. Qualquer criação/ remoção de grupos deve ser feita pelos utilitários informados nessa Unidade. Figura 51: Listagem de grupos padrão do servidor. 90 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil 2.2 Modificando um Grupo Para modificar um grupo pelo terminal de comandos utiliza-se o comando groupmod. É possível modificar-se o Número de Identificação do grupo, com a opção ―-g‖, ou o Nome do grupo, com a opção ―-n‖: $ groupmod -g 1001 -n admlinuxesab admesab O comando anteior modificará o grupo admesab, renomeando-o para admlinuxesab. A Figura apresenta o resultado da operação de manutenção do grupo. Figura 52: Grupo ADMLINUXESAB modificado. 91 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil Permissões de Acesso 1 Objetivo: Conhecer o acesso à arquivos e diretórios em ambiente com vários usuários. 1 Introdução Uma das características dos sistemas Unix, também presente no Linux, é a capacidade de gerenciamento de múltiplos usuários no sistema. Essa característica define um sistema como sendo Multiusuário. Em sistemas multiusuário, os arquivos e diretórios passam a pertencer a usuários específicos, ou a grupos de usuários. O Linux possui a capacidade de classificar a maneira como um arquivo ou diretório será acessado pelos usuários do sistema. Esta classificação é dividida em 3 partes: • Proprietário do arquivo: classificação para o usuário que possui controle total sobre o arquivo, sendo geralmente o criador do arquivo; • Grupo de usuários: classificação para os usuários que compartilham o mesmo grupo do proprietário do arquivo; • Todos os usuários: classificação feita a todos os usuários do sistema. U NIDADE 15 92 Copyright © 2016, ESAB – Escola Superior Aberta do Brasil 2 Organização Do Acesso Quando um usuário é criado no Linux, um grupo deverá ser definido para este usuário. Se o grupo não for definido, então um grupo com o mesmo nome do usuário será criado e associado ao usuário. Se não houver necessidade de integração entre os usuários,
Compartilhar