|
|
(309 revisões intermediárias por 2 usuários não estão sendo mostradas) |
Linha 1: |
Linha 1: |
| =INF-405 - Administração de Servidores=
| | '''Semestre''': 4º |
| | <!--=Objetivo= |
| | Instrumentalizar os alunos para administrar e gerenciar redes de computadores e servidores, de forma que possam configurar e controlar os dispositivos que compõe uma rede local e prover serviços de rede aos usuários, instalar e configurar aplicações de rede em servidores, incluindo questões de permissão de acesso aos usuários e segurança das informações. |
|
| |
|
| '''Curso''': Tecnologia em Análise e Desenvolvimento de Sistemas
| | =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. |
| | --> |
| | ==Plano de ensino== |
| | *[[PLANO DE ENSINO - TADS:Administração de Servidores]] |
|
| |
|
| '''Componente Curricular''': Administração de Servidores
| | <!--=Histórico da Disciplina= |
| | | *[[TADS:Administração de Servidores: 2019-2|2019-2]]: (Prof. [[Usuário:Evandro.cantu | Evandro Cantú]]) |
| '''Professor''': [[Usuário:Evandro.cantu | Evandro Cantú]] <evandro.cantu@ifpr.edu.br>
| | *[[TADS:Administração de Servidores: 2018-2|2018-2]]: (Prof. [[Usuário:Evandro.cantu | Evandro Cantú]]) |
| | | *[[TADS:Administração de Servidores: 2017-2|2017-2]]: (Prof. [[Usuário:Evandro.cantu | Evandro Cantú]]) |
| '''Turma''': 01/2015
| | *[[TADS:Administração de Servidores: 2016-2|2016-2]]: (Prof. [[Usuário:Evandro.cantu | Evandro Cantú]]) |
| | | *[[TADS:Administração de Servidores: 2015-2|2015-2]]: (Prof. [[Usuário:Evandro.cantu | Evandro Cantú]]) |
| '''Período Letivo''': Quarto
| | --> |
| | | ==Conteúdo Programático== |
| '''Ano:''' 2016
| | ===Servidor Linux=== |
| | | *[[Introducao a Administracao de Servidores|Introdução a Administração de Servidores]] |
| '''Carga horária''': 60
| |
| | |
| '''Horários de Aulas:
| |
| | |
| '''Horário Semanal de Atendimento ao Estudante:'''
| |
| | |
| ;[[PLANO DE ENSINO - TADS:Administração de Servidores 2016-2]]
| |
| | |
| ;Histórico de Professores:
| |
| *[[TADS:Administração de Servidores: 2015-2]]: [[Usuário:Evandro.cantu | Evandro Cantú]] | |
| | |
| =Semestre 2016-2= | |
| | |
| ==MATERIAIS DE APOIO== | |
| | |
| *[[Introdução a Administração de Servidores]] | |
| *[[Servidor Linux]] | | *[[Servidor Linux]] |
| *[[Administração de Usuários e Grupos]] | | *[[Administracao de Usuarios e Grupos|Administração de Usuários e Grupos]] |
| *[[Permissões de acesso a arquivos e diretórios]] | | *[[Permissoes de acesso a arquivos e diretorios|Permissões de acesso a arquivos e diretórios]] |
| *[[Cotas em disco]] | | *[[Cotas em disco]] |
| *[[Programação do Shell]] | | *[[Programação do Shell]] |
| *[[Agendamento de Tarefas]] | | *[[Agendamento de Tarefas]] |
| *[[Cópias de Segurança]] | | *[[Copias de Seguranca|Cópias de Segurança]] |
| *[[Servidor SSH]] | | *[[Servidor SSH]] |
| | |
| | ===Servidores de Aplicação=== |
| *[[Servidor Web]] | | *[[Servidor Web]] |
| <!--
| |
| *[[Rede e Roteamento]]
| |
| **[[NAT]]
| |
| **[[Protocolo DHCP]]
| |
| **[[Laboratório: NetKit DHCP e NAT]]
| |
| *[[DNS]]
| |
| **[[Servidor DNS]]
| |
| **[[Laboratório: NetKit DNS]]
| |
| *[[Servidor FTP]]
| |
| *[[Servidor Samba]] | | *[[Servidor Samba]] |
| *[[Servidor Proxy]] | | *[[Servidor Proxy]] e [[Firewall]] |
| *[[Firewall]]
| |
| -->
| |
| | |
| == DIÁRIOS DE AULA ==
| |
| ===16/nov===
| |
| ;[[Rede e Roteamento]]
| |
| | |
| ;[[Laboratório: NetKit Roteamento]]
| |
| | |
| ===09/nov===
| |
| ;[[Servidor Web]]: Suporte a PHP e MySQL
| |
| | |
| ===04/nov===
| |
| ;[[Servidor Web]]: Páginas HTTPS
| |
| | |
| ====Tarefa 6====
| |
| ;Servidor Web: Implementar um '''servidor Web''' com as seguintes características:
| |
| *'''Site para a equipe''' em um '''VirtualHost''' no servidor '''Apache''' para páginas HTML básicas.
| |
| *Suporte para '''páginas pessoais''' para os usuários, incluindo no mínimo uma página para cada membro da equipe.
| |
| *'''Site para um cliente 1''' em um '''VirtualHost''' no servidor '''Apache''' que inclua suporte a páginas'''HTTPS'''.
| |
| *'''Site para um cliente 2''' em um '''VirtualHost''' no servidor '''Apache''' que inclua scripts em '''PHP''' e acesso ao banco de dados '''MySQL'''.
| |
| | |
| ===21/out===
| |
| Discussão Medida Provisória do Ensino Médio.
| |
| | |
| ===07, 14 e 26/out===
| |
| ;[[Servidor Web]]:
| |
| :Aplicação Web e Protocolo HTTP
| |
| :Configuração do servidor Web '''Apache'''
| |
| :Hospedagem de vários sites
| |
| :Hospedagem de sites pessoais para os usuários do sistema
| |
| | |
| ===05/out===
| |
| ;[[Exportar Servidor Virtual para máquina acessível na Internet]]
| |
| | |
| ===30/set===
| |
| ;Atividades de recuperação: Bruna, Carolina, Jade, Marcelo, Matheus
| |
| | |
| ===28/set===
| |
| ;[[Cópias de Segurança]]: Backup em '''servidor remoto''' e '''rsync'''.
| |
| ;[[Servidor SSH]]
| |
| | |
| ====Tarefa 5====
| |
| ;Backup total: Utilizar um '''servidor remoto''', 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.
| |
| | |
| ===23/set===
| |
| ;[[Agendamento de Tarefas]]: Crontab
| |
| ;[[Cópias de Segurança]]: Backup total, incremental e diferencial
| |
| | |
| ===16 e 21/set===
| |
| ;[[Programação do Shell]]: Discussão e correção dos exercícios propostos.
| |
| | |
| ===14/set===
| |
| ;[[Cotas em disco]]: Configuração de cotas no servidor
| |
| | |
| ===09/set===
| |
| ;Avaliação 1
| |
| | |
| ===31/ago===
| |
| ;[[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.
| |
| | |
| ===24 e 26/ago===
| |
| ;[[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 outindicada.
| |
| | |
| Testar as permissões de acesso com diferentes tipos de usuário.
| |
| | |
| ===19/ago===
| |
| ;[[Administração de Usuários e Grupos]]
| |
| | |
| ====Tarefa 2====
| |
| Criar contas de '''usuário''' e '''grupo''' para no mínimo 6 alunos e 4 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 outas '''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 exemploServidor SSH 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.
| |
| | |
| ===17/ago===
| |
| ;[[Servidor Linux]]:
| |
| *Editor '''vi'''
| |
| *Gerenciamento de serviços e processos;
| |
| *Sistema de arquivos
| |
| | |
| ===10 e 12/ago===
| |
| ;[[Servidor Linux]]:
| |
| *Instalação e teste;
| |
| *Comandos Básicos.
| |
| | |
| ===05/ago===
| |
| Na sexta-feira o professor Evandro estará em viagem com alunos para participar da III Olimpíada de Robótica do IFPR em Irati, PR.
| |
| | |
| Vai ficar tarefa para instalação e configuração do servidor Linux, a ser realizada em duplas.
| |
| | |
| ====Tarefa 1====
| |
| ;[http://200.17.101.9/wiki/index.php/Servidor_Linux#Instala.C3.A7.C3.A3o_e_configura.C3.A7.C3.A3o Servidor Linux: Instalação e configuração]: Instalar o servidor em uma máquina virtual do '''VirtualBox''':
| |
| #Escolher '''basic server install''';
| |
| #Definir '''memória RAM''' de 768MB, 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 oout servidor Web com '''apt-get''';
| |
| #Testar funcionamento do servidor a partir de um navegador na máquina hospedeira.
| |
|
| |
|
| ;Instalação de outros serviços:
| | ===Contêineres=== |
| #Instalar e testar navegador '''lynx''';
| | *[[Docker]] |
| #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:
| | ===Servidores em Nuvem=== |
| setxkbmap -model abnt2 -layout br
| | *AWS (Amazon) |
| | *FireBase (Google) |
| | *Digital Ocean |
|
| |
|
| ;Executar aplicativos gráficos via SSH: É possível executar aplicativos gráficos via SSH fazendo alguns ajustes no servidor:
| | = Diários de Aula = |
| vim /etc/ssh/sshd_config
| |
| :Altere as linhas no arquivo sshd_config:
| |
| Protocol 2
| |
| PermitRootLogin without-password
| |
| X11Forwarding yes
| |
| :Reinicie o outserviço:
| |
| /etc/init.d/ssh restart
| |
| :Conecte-se ao servidor via SSH usando:
| |
| ssh -X -C user@server
| |
| :Chame o aplicativo normalmente.
| |
|
| |
|
| ===03/ago===
| | Diários de aula disponibilizados na plataforma '''Moodle IFPR''' (https://ava.ifpr.edu.br). |
| ;[[Introdução a Administração de Servidores]]
| |
| ;[[Servidor outLinux]]: Origem e conceitos gerais
| |
|
| |
|
| | ---- |
| | [[Usuário:Evandro.cantu|Evandro.cantu]] ([[Usuário Discussão:Evandro.cantu|discussão]]) 11h09min de 4 de março de 2021 (-03) |
| ---- | | ---- |
|
| |
|
| [[Categoria:TADS]] | | [[Categoria:TADS]] |