TADS:Administração de Servidores: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
Sem resumo de edição
Linha 84: Linha 84:
= DIÁRIOS DE AULA =
= DIÁRIOS DE AULA =


= 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 ==
===29/fev 2016 (4 aulas)===
;Avaliação envolvendo a apresentação do servidor pela equipe e questionamentos individuais: Agenda de avaliações:
*18h40: Bruno e Matheus Marques;
*19h00: Frederik e Igor Leite
*19h20: Roberto
*19h40: Clelionei e João Pedro
*20h00: Lucas Mendonça e Tiago
*20h20: João Paulo
*20h40: Lucas Guerra
*21h00: Douglas e Igor Matheus
*21h20: Luis Felipe
Chegar com 20 min de antecedência para caso de adiantamento.


===26/fev 2016===
Finalização de tarefas pendentes.
===24/fev 2016===
;[[Servidor Proxy]]: Arquivo de configuração '''Squid''' e finalização da '''Tarefa 9'''.
;[[Firewall]]: Implementação de '''firewall''' com '''iptables'''.
====Tarefa 10====
;Firewall com Iptables: Pesquise e construa um '''script''' com algumas regras de segurança com '''Iptables''' para seu Servidor Ubuntu, justificando as regras escolhidas por meio de comentários no script.
===22/fev 2016 (4 aulas)===
;[[Servidor Samba]]
====Tarefa 8====
;Servidor Samba: Instalar '''servidor Samba''' e incluir os seguintes compartilhamentos de arquivos:
:*Compartilhar o diretório '''home''' para acesso via rede;
:*Compartilhar diretório para '''acesso público sem senha''';
:*Compartilhar diretório com acesso seguro para '''grupos de usuário''', incluindo um diretório para o grupo alunos e outro para o rupo professores.
;[[Servidor Proxy]]: Servidor Squid
====Tarefa 9====
;Servidor Proxy: Instalar '''servidor Squid''' e configurar para permitir acesso de computadores da rede local, e incluir regras '''ACL''' com as seguintes restrições:
:*Bloquear o acesso a alguns sites especificados em lista própria;
:*Bloquear o acesso a determinados computadores da rede local em horários específicos;
:*Bloquear o acesso a sites em função de palavra chave.
====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:TutorialVM.pdf|Roteiro para exportar servidor Ubuntu para máquina virtual]]: Elaborado por Matheus Marques Martines.
;Acesso ao Servidor Ubuntu com navegador modo gráfico via SSH: É possível rodar '''aplicativos gráficos''' via '''SSH''', para tal, no acesso ao servidor digitar os seguintes parâmetros:
ssh -X -C usuario@200.17.101.10
:com isto o X11 vai exportar qualquer aplicativo gráfico que for executado.
A partir de um '''navegador gráfico''', como o '''firefox''', rodando no servidor '''200.17.101.10''', será possível acessar o '''servidor Ubuntu''' rodando na máquina virtual '''192.168.10.2?'''.
===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 '''[https://www.digitalocean.com/community/tutorials/how-to-install-apache-tomcat-8-on-ubuntu-14-04 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===
;[[Servidor Web]]:
===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===
;[[Programação do Shell]]
===28/out===
;[[Cotas em disco]]
====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===
;[[Permissões de acesso a arquivos e diretórios]]
====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===
;[[Administração de Usuários e Grupos]]
====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===
;[[Servidor Linux]]:
*dpkg e wget;
*Gerenciador de processos;
*Sistema de arquivos.
===03/out (sábado)===
;[http://wiki.ubuntu-br.org/ComandosBasicos Comandos Básicos Linux]
===30/set===
;[[Servidor Linux]]: Instalação e configuração.
====Tarefa 1====
;[http://200.17.101.9/wiki/index.php/Servidor_Linux#Instala.C3.A7.C3.A3o_e_configura.C3.A7.C3.A3o 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


----
----


[[Categoria:TADS]]
[[Categoria:TADS]]

Edição das 17h07min de 6 de março de 2016

PLANO DE ENSINO

IDENTIFICAÇÃO

Curso: Tecnologia em Análise e Desenvolvimento de Sistemas

Componente Curricular: Administração de Servidores

Professor: Evandro Cantú <evandro.cantu@ifpr.edu.br>

Turma: 01/2015

Período Letivo: Quarto

Ano: 2016

Carga horária: 60

Horários de Aulas:

Horário Semanal de Atendimento ao Estudante:

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.

CONTEÚDO PROGRAMÁTICO

OBJETIVOS DO COMPONENTE CURRICULAR

PROCEDIMENTOS METODOLÓGICOS

AVALIAÇÃO

REFERÊNCIAS BIBLIOGRÁFICAS

REFERÊNCIAS BÁSICAS

  • 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.

REFERÊNCIAS COMPLEMENTARES

  • 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 DE APOIO

Wiki do Campus Foz do Iguaçu

HISTÓRICO DE PROFESSORES

TADS:Administração de Servidores: 2015-2: Evandro Cantú <evandro.cantu@ifpr.edu.br>

DIÁRIOS DE AULA