TADS:Administração de Servidores
Administração de Servidores
Carga Horária
72 horas
Ementa
- Instalação de aplicativos em servidores.
- Sistema de arquivos e permissão de acesso.
- Administração de usuários e grupos.
- Cotas de disco e políticas de backup.
- Servidores de arquivo.
- Configurações de rede e roteamento estático e dinâmico.
- Servidores de acesso centralizado a sistemas.
- Servidor DNS.
- Servidores de aplicação (Web, correio eletrônico, acesso remoto e outros).
- Redes Privadas Virtuais (VPN).
- Segurança e firewall.
Bibliografia Básica
- SIEVER, E. et all. Linux: O guia essencial. 5 ed. Porto Alegre: Bookman, 2006.
- VALLE, O. T. Administração de Redes com Linux: Fundamentos e práticas. Florianópolis: IFSC, 2010.
- SCHRODER, C. Redes Linux - Livro de Receitas. Rio de Janeiro: Alta Books, 2008.
- FERREIRA, R. E. Linux: Guia do administrador do sistema, 2 ed. Novatec, 2008.
- SOUZA, R. F. Administração de Servidores Linux: Passo-a-passo para pequenas empresas. Fortaleza: Clube de Autores: 2012.
Bibliografia Complamentar
- MORIMOTO, C. E. Servidores Linux: Guia prático. Meridional: 2008.
- TIBET, C. V. Linux: Administração e suporte. São Paulo: Novatec, 2001.
- VIANA, E. R. C. Virtualização de Servidores Linux Para Redes Corporativas: Guia Prático. Ciência Moderna: 2008.
- KUROSE, J. F.; ROSS, K. W. Redes de Computadores e a Internet: Uma abordagem top-down. 5 ed. Addison Wesley, 2010.
- COMER, D. E. Interligação em Redes com TCP/IP. Vol. 1, 5 ed. Rio de Janeiro: Campus, 2006.
Materiais disponíveis na Wiki sobre Administração de Servidores
- Introdução a Administração de Servidores
- Servidor Linux
- Administração de Usuários e Grupos
- Permissões de acesso a arquivos e diretórios
- Cotas em disco
- Programação do Shell
- Agendamento de Tarefas
- Cópias de Segurança
- Servidor SSH
- Rede e Roteamento
- DNS
- Servidor Web
- Servidor FTP
- Servidor Samba
- Servidor Proxy
Ano Letivo 2015-2
- Professor: Evandro Cantú <evandro.cantu@ifpr.edu.br>
- Encontros: 2a feira: 19h15-20h45 / 4a feira 21h00-22h30 - 4 aulas/semana
- Atendimento paralelo: 4a feira - 18h00-19h00.
Diários de Aula
22/fev 2016 (4 aulas)
- Exportar servidor Ubuntu para máquina acessível na Internet
- Os Servidores Ubuntu deverão exportados para uma máquina virtual rodando em um servidor acessível da Internet, com as seguintes caracteríscas:
- Endereço IP público do Servidor: 200.17.101.10
- Contas de usuário e senha: Cada aluno da turma tem uma conta no servidor, pertencente ao grupo sudo, identificada pelo primeiro nome, com exceção dos nomes repetidos (igorl, igorq, lucasg, lucasm, joaot, joaop). Após o primeiro acesso, importante trocar a senha.
- Acesso via SSH: O acesso ao servidor com IP público será via SSH. Uma vez acessado o servidor os servidores individuais também serão acessados via IP privado da rede interna.
- Endereços IP privados dos servidores individuais: Os servidores individuais receberão IP fixo, segundo a seguinte listagem:
- 192.168.10.20: Professor
- 192.168.10.21: Bruno e Matheus
- 192.168.10.22: Clelionei e João Pedro
- 192.168.10.23: Douglas e Igor Matheus
- 192.168.10.24: Frederik e Igor Leite
- 192.168.10.25: João Paulo
- 192.168.10.26: Lucas Guerra
- 192.168.10.27: Lucas Mendonça e Thiago
- 192.168.10.28: Luis
- 192.168.10.29: Roberto
- Mídia:Roteiro para exportar servidor Ubuntu para máquina virtual: Elaborado por Matheus Marques Martines.
Tarefa 8
- Servidor Samba
- Instalar servidor Samba, incluindo compartilhamento do diretório home para acesso via rede, diretório compartilhado sem senha, e diretório com acesso seguro para grupos de usuário.
Tarefa 9
- Servidor Proxy
- Instalar servidor Squid e configurar para permitir acesso somente de computadores da rede local, incluindo regras ACL para bloquear o acesso a alguns sites.
17/fev 2016
- Serviços adicionais para permitir a manutenção de VirtualHosts em um Servidor Web
- Cotas em disco para Servidores Web: As Cotas em disco são um recurso importante para disciplinar o uso do espaço em disco disponível para cada VirtualHost disponibilizar as conteúdo na Web. Para tal, as cotas em disco devem ser ativadas para os administradores dos VirtualHosts e aplicadas no diretório /var/www/html, ou no diretório na qual o conteúdo Web ficará armazenado.
- Acesso remoto com Servidor SSH
- Acesso com Servidor FTP
Tarefa 7
- Servidor FTP
- Instalar servidor FTP para usuários e também FTP Annonymous com acesso somente em leitura no diretório público.
15/fev 2016
- Instalação Servidor Web TomCat
- Versão TomCat 8: Este servidor deverá ser utilizado na apresentação do trabalho da disciplina Desenvolvimento Web III (Prof. Felippe), sobre aplicação Java Web.
Continuação da Tarefa 6
10/fev 2016
Revisão servidor PHP e MySQL
Continuação da Tarefa 6
06/fev 2016 (sábado)
- Apresentação
- Certificados SSL -> Frederik
Continuação da Tarefa 6
03/fev 2016
- Apresentação
- MySQL -> Matheus Marques
Tarefa 6
- Servidor LAMP
- Implementar um servidor LAMP (Apache/MySQL/PHP) e servidor Tomcat. Hospedar nos servidores:
- Site para a equipe em um VirtualHost no servidor Apache para páginas HTML básicas.
- Site para cliente 1 em um VirtualHost no servidor Apache que inclua scripts em PHP e acesso ao banco de dados MySQL.
- Site para cliente 2 no servidor Tomcat que inclua scripts em JSP (Java Server Pages) e acesso ao banco de dados MySQL.
- Suporte para páginas pessoais para os usuários, incluindo no mínimo uma página para cada membro da equipe.
23/dez
- Confraternização alunos TADS
21/dez
19/dez (sábado)
Apresentação dos exercícios sobre Laboratório: NetKit DNS e Servidor Web.
16/dez
- Aplicação Web
- Papel do navegador e do servidor Web e os protocolos envolvidos.
- Protocolo HTTP
- Regras para troca de mensagens entre o cliente e o servidor Web.
- Servidor Web
- Servidor Apache
07, 09 e 14/dez
- DNS
- Serviço de Nomes de Domínio
- Servidor DNS
- Implementação de um servidor para uma Zona de Domínio
- Laboratório: NetKit DNS
- Implementação de um cenário de testes para o servidor DNS
25 e 30/nov e 02/dez
- Rede e Roteamento
- Servidor DHCP.
- Laboratório: NetKit DHCP e NAT
23/nov
- Rede e Roteamento
- Configuração das Interfaces e NAT.
18/nov
- Cópias de Segurança
- Continuação da Tarefa 5: Backup incremental.
16/nov
- Cópias de Segurança
- Backup total.
- Servidor SSH
- Acesso com chave pública de autenticação.
Tarefa 5
- Backup total
- Criar um servidor remoto para ser acessado via SSH para ser utilizado para armazenar arquivos de backup total:
- Utilizar como servidor remoto o Ubuntu Server de uma outra equipe.
- Criar no servidor remoto uma conta especial para ser acessada pelo script de backup, por exemplo, bkuser. Definir como diretório home deste usuário um diretório especial para guardar os arquivos de backup, por exemplo /backup (este diretório poderia ser montado em uma partição exclusiva para backup).
- Gerar a chave de autenticação pública no cliente (ssh-keygen) que vai rodar o script de backup e copiá-la para o servidor remoto (ssh-copy-id), que vai armazenar os backups .
- Criar na máquina cliente um script de backup que identifique e salve diariamente os diretórios /home e /dados e que depois transfira os mesmos para o servidor remoto.
- Agendar a tarefa usando o agendamento de tarefas.
- Backup incremetal e Backup total
- Criar um script de backup para ser armazenado em um servidor remoto, combinando:
- Armazenar de arquivos de backup total realizados mensalmente, mantendo o histórico dos arquivos e nomeando-os com a identificação do mês;
- Atualizar de arquivos de backup incremental, usando rsync, executado diariamente.
14/nov (sábado)
- Agendamento de Tarefas
- Crontab
- Cópias de Segurança
- Backups
11/nov
- Programação do Shell
- Resolução dos exercícios.
- Agendamento de Tarefas
09/nov
- Cotas em disco
- Revisão
07/nov (sábado)
Avaliação dos servidores
Avaliações individuais
- Igor Matheus (Ñ), Igor Leite (ok), João Paulo (Ñ), Lucas Moraes (ok), Roberto (ok) e Victor (Ñ)
04/nov
28/out
Tarefa 4
Criar cotas em disco para usuários e grupos para controle do espaço de armazenamento dos diretórios /home e /dados. O ideal seria que estes diretórios tivessem sido montados em partições separadas. Como não foi montado desta forma, vamos aplicar o sistema de quotas a partição / (raiz) do sistema.
- Atribuir quota de 1MB por usuário e 5MB por grupo.
- Atribuir 500 inodes por usuário e 500 inodes por grupo.
- Testar o funcionamento do sistema de quotas.
26/out
Continuação Tarefa 3.
21/out
Tarefa 3
Criar diretórios para utilização compartilhada para os usuários dos grupos primários e secundários:
- Grupos primários: Alunos e Professores
- Grupos secundários: Arduino, PHP, Mobile, etc
Alocar os diretórios no seguinte subdiretório:
/dados/professores /dados/alunos /dados/arduino ...
- Permissões
- Definir para os diretórios as seguintes permissões:
- Diretório home do usuário: Leitura, Escrita e Execução somente para o Dono do diretório;
- Diretório professores: Leitura, Escrita e Execução para o Dono e para o Grupo do diretório;
- Diretório alunos: Leitura, Escrita e Execução para o Dono e para o Grupo do diretório;
- Diretórios para grupos secundários: Leitura, Escrita e Execução para o Dono e para o Grupo, e acesso a Leitura e Execução para os Outros.
Verifique a permissão padrão do diretório home que está sendo utilizada quando um usuário é criado. Se necessário, utilize o comando umask para que novos usuários fiquem com a permissão indicada.
Testar as permissões de acesso com diferentes tipos de usuário.
19/out
Continuação Tarefa 2.
14/out
Continuação Tarefa 2.
07/out
Tarefa 2
Criar contas de usuário e grupo para todos os alunos e professores da turma:
- Grupos primários: Alunos e Professores
- Grupos secundários: Arduino, PHP, Mobile, etc
- Verificar com a turma os grupos de interesse para formar os grupos secundários.
- Cada usuário deve pertencer a um grupo primário e pode pertencer a um ou mais grupos secundários.
Requisitos para as contas de usuário e grupo:
- Estabelecer regramento para os nomes de login
- Por exemplo: nome: João Paulo de Souza -> login: jsouza
- Cadastrar cada usuário incluindo as seguintes informações: Nome Completo, Telefone, email.
- Cadastrar as senhas (1234) e solicitar para os usuários fazerem a troca e testar a conta através ssh.
Exemplo:
groupadd Alunos groupadd Professores groupadd Arduino adduser --ingroup Alunos jsouza adduser jsouza Arduino
- No exemplo foram criados três grupos Alunos, Professores e Arduino; em seguida foi criado o usuário jsouza no grupo primário Alunos; depois o usuário jsouza foi incluído no grupo secundário Arduino.
Alteração da senha
passwd jsouza
Verificar arquivos /etc/passwd e /etc/group fazendo os ajustes diretamente com o editor vi caso necessário.
- finger
- Instalar o aplicativo finger com apt-get e verificar se as informações dos usuários estão corretas. Veja que com o finger é possível identificar se os usuários estão ativos no sistema.
05/out
- dpkg e wget;
- Gerenciador de processos;
- Sistema de arquivos.
03/out (sábado)
30/set
- Servidor Linux
- Instalação e configuração.
Tarefa 1
- Instalação e configuração do Servidor Linux
- Instalar o servidor em uma máquina virtual do VirtualBox:
- Escolher basic server install;
- Definir memória RAM de 512MB, pois teremos várias máquinas virtuais em um mesmo hardware;
- Além do servidor básico, instalar o Servidor OpenSSH, para poder acessá-lo remotamente (os demais serviços serão instalados posteriormente).
- Na configuração da máquina virtual no VirtualBox, estabelacer a configuração de rede do Servidor Linux como Placa em modo Bridge, para que o servidor fica na mesma rede local dos demais computadores do laboratório;
- Verificar a configuração de rede do Servidor Linux com ifconfig;
- Testar conectividade com ping entre o Servidor Linux a a máquina hospedeira;
- Conectar-se remotamente ao Servidor Linux com ssh.
- Instalação do servidor Web apache
- Instalar o servidor Web com apt-get;
- Testar funcionamento do servidor a partir de um navegador na máquina hospedeira.
- Instalação de outros serviços
- Instalar e testar navegador lynx;
- Instalar e testar o aplicativo traceroute.
- Teclado ABNT Brasil
- Caso tenha instalado versão em inglês do teclado, o mesmo pode ser ajustado com o comando:
setxkbmap -model abnt2 -layout br
- Executar aplicativos gráficos via SSH
- É possível executar aplicativos gráficos via SSH fazendo alguns ajustes no servidor:
vim /etc/ssh/sshd_config
- Altere as linhas no arquivo sshd_config:
Protocol 2 PermitRootLogin without-password X11Forwarding yes
- Reinicie o serviço:
/etc/init.d/ssh restart
- Conecte-se ao servidor via SSH usando:
ssh -X -C user@server
- Chame o aplicativo normalmente.
28/set
- Introdução a Administração de Servidores
- Servidor Linux
- Origem e conceitos gerais