Mudanças entre as edições de "ISL-FicLinux (página)"
(121 revisões intermediárias por 3 usuários não estão sendo mostradas) | |||
Linha 9: | Linha 9: | ||
==Curso FIC Linux 2019== | ==Curso FIC Linux 2019== | ||
− | {{collapse top | Semestre 2019- | + | {{collapse top | Semestre 2019-2 - Prof. Eraldo Silveira e Silva}} |
− | + | Pontos para nova edição: | |
+ | *salvamento de imagem customizada | ||
+ | *ubuntu tweaks | ||
− | + | ==Cronograma Tentativa== | |
− | |||
− | |||
− | =12/ | + | Horários: 19h às 22h. |
− | + | ||
− | ==Objetivos== | + | {| class="wikitable"| |
− | + | | AULA || DATA || Professor || Conteúdo | |
− | ===Parte 1=== | + | |- |
− | + | | 1 || 27/09/2019 || ERALDO || Programa da Disciplina.Forma de Avaliação. O computador: hardware e software. SO Linux: histórico e distribuições. Ligando/Logando/Desligando a Máquina. Conceitos básico de Sistema de Arquivos e Processos. | |
− | *Apresentar o IFSC: estrutura, câmpus e serviços | + | |- |
− | *Apresentar o curso: perfil do egresso, competências gerais, áreas de atuação do egresso e conteúdos previstos | + | | 2 || 29/09/2019 || ERALDO || Gerenciamento de Arquivos I: Operações sobre arquivos e diretórios usando o terminale o Nautilus. |
− | *Apresentar o Cronograma Tentativa | + | |- |
− | *Apresentar metodologia e forma de avaliação | + | | 3 || 3/09/2019 || ERALDO || Gerenciamento de Arquivos II: continuação Operações sobre arquivos e diretórios. Links Simbólicos, Criação de Arquivo com vi e outros editores. |
− | + | |- | |
− | ===Parte 2=== | + | | 4 || 5/09/2019 || ERALDO || Interfaces Gráficas: X11, Gnome. KDE e outras. Instalação de Programas via Gerenciador de Pacotes. |
+ | |- | ||
+ | | 5 || 10/09/2019 || ERALDO || Administração de contas de usuários I | ||
+ | |- | ||
+ | | 6 || 12/09/2019 || ERALDO || Administração de contas de usuários II | ||
+ | |- | ||
+ | | 7 || 17/09/2019 || ERALDO || Permissionamento de Arquivos | ||
+ | |- | ||
+ | | 8 || 19/09/2019 || ERALDO || Gerenciamento de Processos | ||
+ | |- | ||
+ | | 9 || 24/09/2019 || ERALDO || Introdução ao Shell Script | ||
+ | |- | ||
+ | | 10 || 26/09/2019 || ERALDO || Introdução ao Shell Script | ||
+ | |- | ||
+ | | 11 || 1/10/2019 || ERALDO || Introdução a Redes. Conceito de Protocolos. Ferramentas de Rede no Linux. | ||
+ | |- | ||
+ | | 12 || 3/10/2019 || ERALDO || Conceito de Protocolos. Protocolos de Aplicação: exemplo http. Protocolo DNS | ||
+ | |- | ||
+ | | 13 || 8/10/2019 || ERALDO || Camada de Transporte: protocolo UDP. Protocolo TCP. Diferenças dos protocolos de Transporte TCP/UDP. | ||
+ | |- | ||
+ | | 14 || 10/10/2019 || ERALDO || Camada IP e aspectos da configuração da mesma sob o Linux | ||
+ | |- | ||
+ | | 15 || 15/10/2019 || ERALDO || Camada de Enlace/Física. Hubs X Switches. O Papel do Protocolo ARP. Outros serviços/protocolos: Serviço DHCP e NAT | ||
+ | |- | ||
+ | | 16 || 17/10/2019 || ERALDO|| Segmentação Redes IP. Cálculo de subredes. | ||
+ | |- | ||
+ | | 17 || 22/10/2019 || ERALDO || Introdução ao IPV6. Introdução ao Access Point TPLINK N750: configuração da LAN e WAN | ||
+ | |- | ||
+ | | 18 || 24/10/2019 || ERALDO || Serviço SSH no Linux. Acesso a rede WIFI. Conceitos básicos de redes sem fio. | ||
+ | |- | ||
+ | | 19 || 29/10/2009 || ERALDO || Tópicos Adicionais sobre redes no Linux: Configuração Manual X NetworkManager. Relatório Avaliativo 1. | ||
+ | |- | ||
+ | | 20 || 31/10/2019 || ERALDO || Relatório Avaliativo 2 | ||
+ | |} | ||
+ | |||
+ | =Curso FIC Linux 2019-2= | ||
+ | |||
+ | ==Professor== | ||
+ | |||
+ | :*Prof. [[Eraldo Silveira e Silva]] | ||
+ | :*email: eraldo@ifsc.edu.br | ||
+ | :*sala: Sala de I de Professores da Área de Telecomunicações (primeira sala lado da Biblioteca - direção esquerda) | ||
+ | |||
+ | =27/08/2019= | ||
+ | |||
+ | ==Objetivos== | ||
+ | |||
+ | ===Parte 1=== | ||
+ | |||
+ | *Apresentar o IFSC: estrutura, câmpus e serviços | ||
+ | *Apresentar o curso: perfil do egresso, competências gerais, áreas de atuação do egresso e conteúdos previstos | ||
+ | *Apresentar o Cronograma Tentativa (ver SIGA A) | ||
+ | *Apresentar metodologia e forma de avaliação | ||
+ | |||
+ | ===Parte 2=== | ||
*Conceitos de Hardware, Software e Firmware | *Conceitos de Hardware, Software e Firmware | ||
Linha 39: | Linha 93: | ||
*Histórico do Linux | *Histórico do Linux | ||
*Linux e GNU/Linux | *Linux e GNU/Linux | ||
+ | *Instalando o Linux | ||
*Arquitetura do Linux | *Arquitetura do Linux | ||
*Distribuições | *Distribuições | ||
Linha 45: | Linha 100: | ||
*Primeiros contatos. | *Primeiros contatos. | ||
− | ==Professores do FIC Linux Edição 2019- | + | ==Professores do FIC Linux Edição 2019-2== |
− | + | ||
− | *Prof. [[Eraldo Silveira e Silva]] (Redes com Linux) | + | *Prof. [[Eraldo Silveira e Silva]] (Introdução ao Linux e Redes com Linux) |
==Apresentação do IFSC== | ==Apresentação do IFSC== | ||
Linha 57: | Linha 112: | ||
*[[ISL-FicLinux_(Plano_de_Ensino) | Introdução ao Linux]] | *[[ISL-FicLinux_(Plano_de_Ensino) | Introdução ao Linux]] | ||
− | *[ | + | *[https://wiki.sj.ifsc.edu.br/index.php/PRL-FicLinux_(Plano_de_Ensino) Projeto de Rede Residencial com o Linux] |
*[[Curso_de_Formação_Continuada_de_Configuração_de_Redes_de_Computadores_Linux | PPC do Curso e Outras Regulamentações]] | *[[Curso_de_Formação_Continuada_de_Configuração_de_Redes_de_Computadores_Linux | PPC do Curso e Outras Regulamentações]] | ||
Linha 64: | Linha 119: | ||
Horários: 19h às 22h. | Horários: 19h às 22h. | ||
− | + | VER SIGA A [https://sig.ifsc.edu.br/sigaa/verTelaLogin.do] | |
− | + | ||
− | + | ==Metodologia, Avaliação e Critérios de Aprovação== | |
− | + | ||
− | + | *Aulas expositivas e aulas práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais. | |
− | + | *Avaliações individuais: Listas de exercícios com aproveitamento e entregues no prazo. | |
− | + | *Critérios para aprovação: Serão considerados aprovados os alunos que obtiverem conceito final 6 ou superior em cada componente curricular. ATENÇÃO: Possuir no mínimo 75% de presença | |
− | + | ||
− | + | ==Bibliografia== | |
− | + | ||
− | + | #Odilson Tadeu Valle | |
− | + | ##Administração de redes com Linux: fundamentos e práticas | |
− | + | ##Editora IFSC, 2010 | |
− | + | #Gleydson Mazioli da Silva | |
− | + | ##Guia Foca Linux | |
− | + | ##http://www.guiafoca.org/ | |
− | + | #Luiz Carlos Lobato Lobo de Medeiros e Wendel Soares | |
− | + | ##Formação de suporte técnico PROINFO | |
− | + | ##https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo | |
− | + | #Ari Frazão Jr e Marcelo Braga | |
− | + | ##Administração de Sistemas Linux | |
− | + | ##https://pt.scribd.com/doc/128912228/Administracao-de-Sistemas-Linux | |
− | + | ||
− | + | ==Conceitos de Hardware, Software e Firmware== | |
− | + | ||
− | + | *Em informática, o hardware consiste nos equipamentos | |
− | + | **Ex: Computador, teclado, mouse, monitor | |
− | + | *Software é um aplicativo, desenvolvido em uma linguagem de programação | |
− | + | **Ex: Windows, Linux, Mozilla Firefox, Google Chrome | |
− | + | *Firmware é um conjunto de instruções básicas e específicas para um hardware | |
− | + | **Ex: BIOS nos computadores, sistemas de controle das máquinas de lavar, etc. | |
− | + | ||
− | + | ==Estrutura de um Computador e Arquitetura de Processadores== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | *Material de Referência: https://www.dropbox.com/s/fn3l9os4l7gh9o5/AULA%201.odp?dl=0 | |
− | + | ===Outros Links Interessantes=== | |
− | |||
− | |||
− | + | *Bits, [https://pt.wikipedia.org/wiki/Byte Bytes] e tamanho de memória; | |
+ | *Representação de Caracteres: [https://pt.wikipedia.org/wiki/ASCII Tabela ASCII]; | ||
+ | *O [https://pt.wikipedia.org/wiki/Microprocessador microprocessador], barramentos e memórias semicondutoras: RAM,ROM, E2PROM, FLASH; | ||
+ | *Memórias cache e memórias secundárias; | ||
+ | *[https://pt.wikipedia.org/wiki/Mem%C3%B3ria_virtual Memória Virtual] e Swapping; | ||
+ | *Registradores de 32bits ou 64bits | ||
+ | *Arquitetura [https://pt.wikipedia.org/wiki/X86 x86] / [https://pt.wikipedia.org/wiki/AMD64 x86-64] – presente nos computadores pessoais | ||
+ | *Arquitetura ARM – presente em sistemas embarcados e dispositivos móveis | ||
+ | *Múltiplos núcleos (core) | ||
+ | *Máquinas Virtuas: VirtualBox, UML (User Mode Linux). | ||
− | + | ==O papel do Sistema Operacional== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | *O [https://pt.wikipedia.org/wiki/Sistema_operativo SO] é um programa (software) que controla a máquina e a torna utilizável para o usuário; | |
+ | *Abstrações do Sistema: arquivos e processos; | ||
+ | *Pode ser multitarefa e multiusuário; | ||
+ | *[https://en.wikipedia.org/wiki/Device_driver Driver] de dispositivo | ||
+ | *[https://pt.wikipedia.org/wiki/Multi_boot Múltiplos OS instalados] em um computador. É possível?? | ||
− | + | ==Sistema de Arquivos== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | *Forma como estão estruturados/organizados os arquivos/dados em uma determinada mídia [https://pt.wikipedia.org/wiki/Sistema_de_ficheiros]; | |
− | + | *Um sistema operacional deve saber como acessar e operar sobre este sistema; | |
− | + | *Tipos de sistemas: ext4, NTFS, VFAT32 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | *Forma como estão estruturados/organizados os arquivos/dados em uma determinada mídia [https://pt.wikipedia.org/wiki/Sistema_de_ficheiros]; | ||
− | *Um sistema operacional deve saber como acessar e operar sobre este sistema; | ||
− | *Tipos de sistemas: ext4, NTFS, VFAT32 | ||
==Exemplos de SO== | ==Exemplos de SO== | ||
Linha 186: | Linha 203: | ||
==Arquitetura do Linux== | ==Arquitetura do Linux== | ||
+ | ===Material de Referência=== | ||
+ | |||
+ | *[https://www.dropbox.com/s/zvpo7zw19ns7rmk/AULA%202.odp?dl=0 Slides Introdução ao SO Linux] | ||
*Ver pg.16 a 19 de [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo] | *Ver pg.16 a 19 de [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo] | ||
Linha 209: | Linha 229: | ||
*Ubuntu Mate (fork do Ubuntu) | *Ubuntu Mate (fork do Ubuntu) | ||
*Debian | *Debian | ||
+ | |||
+ | ==Instalando o Linux== | ||
+ | |||
+ | *Fazer Download do arquivo ISO em [http://mirror.pop-sc.rnp.br/mirror/ubuntu-releases/18.04/] versão Ubuntu 18.04.3 LTS; | ||
+ | *Instalar a VirtualBox (já está instalada no nosso Lab). Baixar de [https://www.virtualbox.org/wiki/Downloads] e selecionar para a máquina hospedeira alvo; | ||
+ | *Seguir o procedimento colocado pelo professor. | ||
+ | |||
+ | *[Ver https://www.dropbox.com/s/4xfdhqq8lruvq8m/LinuxSobreVM.odp?dl=0 Slides de Instalação] | ||
==Ligando e Desligando o Sistema Linux== | ==Ligando e Desligando o Sistema Linux== | ||
Linha 219: | Linha 247: | ||
*O Desktop no Ubuntu ver[https://help.ubuntu.com/stable/ubuntu-help/shell-overview.html] | *O Desktop no Ubuntu ver[https://help.ubuntu.com/stable/ubuntu-help/shell-overview.html] | ||
− | =AULA 2 - Dia | + | =AULA 2 - Dia 29/08/2019= |
==Objetivos== | ==Objetivos== | ||
Linha 249: | Linha 277: | ||
*movendo e renomeando arquivos; | *movendo e renomeando arquivos; | ||
*vendo a história de comandos com history; | *vendo a história de comandos com history; | ||
+ | |||
+ | ===Slides=== | ||
+ | |||
+ | *[https://www.dropbox.com/s/wtc479wmrtle9m4/SistemaDeArquivos.odp?dl=0 Slides Sistema de Arquivos] | ||
==Conceito de sistemas de arquivos, arquivos e diretórios== | ==Conceito de sistemas de arquivos, arquivos e diretórios== | ||
Linha 266: | Linha 298: | ||
*[https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo Interpretador de comandos - Comandos Básicos - pg.20 e 21] | *[https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo Interpretador de comandos - Comandos Básicos - pg.20 e 21] | ||
− | *[ | + | *[https://www.dropbox.com/s/mv6qpa8bqimiwzg/Aula1_Linux%282%29.pdf Ver lista de exercícios da Aula 2] |
<!-- *[https://www.dropbox.com/s/g3xr3wimffde2zm/Aula2_Linux_OperacoesComArquivos_2.pdf Ver lista de exercícios da Aula 3] --> | <!-- *[https://www.dropbox.com/s/g3xr3wimffde2zm/Aula2_Linux_OperacoesComArquivos_2.pdf Ver lista de exercícios da Aula 3] --> | ||
− | =AULA 3 - Dia | + | =AULA 3 - Dia 03/09/2019= |
− | |||
− | === | + | ===Mirros do Ubuntu Download e Outros=== |
− | |||
− | |||
− | |||
− | + | *[http://mirror.pop-sc.rnp.br/mirror/ubuntu-releases/18.04.3/ Ununtu 18.04.3 Mirror Brazil] | |
− | * | + | *[https://linuxmint.com/edition.php?id=267 Linux Mint] |
− | |||
− | + | *[https://software.opensuse.org/distributions/leap Opensuse] | |
− | * | + | *[https://elementary.io/ Elementary Os] |
− | + | *[https://lubuntu.net/ Lubuntu] | |
− | * | + | *[https://www.debian.org/CD/live/ Debian] |
− | |||
− | + | *[https://kubuntu.org/getkubuntu/ Kubuntu] | |
− | |||
− | |||
− | |||
− | *[ | ||
− | |||
− | + | *[https://peppermintos.com/ Peppermint] | |
− | + | *[https://www.linuxliteos.com/ Linux Lite] | |
− | + | *[https://www.lxle.net/download/ LXLE para PCs Antigos...] | |
− | * | + | *[https://www.bodhilinux.com/ Bodhi Linux] |
+ | ===Como verificar se o arquivo está correto?=== | ||
− | + | *[https://help.ubuntu.com/community/HowToMD5SUM HowToMD5SUM] | |
− | + | ===Instalar e Preparar 3 transparências no Oppenoffice=== | |
− | |||
− | + | *Nome da Equipe e da Distribuição - colar a desktop no slide | |
+ | *O que tem de interessante nesta distro | ||
+ | *Requisitos da Distribuição | ||
+ | |||
+ | *Gerar pdf e Enviar para o Siga a | ||
− | + | =AULA 4 - Dia 03/09/2019= | |
− | |||
− | == | + | ==Objetivos== |
− | + | *Ainda operações com arquivos; | |
+ | *Uso de Coringas | ||
+ | *Editor de texto sobre Ubuntu | ||
+ | *Redirecionamento de Entradas e Saídas | ||
+ | *Aspectos da Interface Gnome no Ubuntu 18.04 | ||
− | + | ==Material de Referência== | |
− | [ | + | *[https://www.dropbox.com/s/zti7nn0xq25x8ne/Aula2_Linux_OperacoesComArquivos_2.pdf Ainda Operações com Arquivos] |
+ | *[https://www.dropbox.com/s/af3jolkvrb24g8c/Aula3_Linux_LinksSimb_licos_gedit_cat.pdf Edição de Texto] | ||
+ | *[https://www.dropbox.com/s/vihh5r9186d40uj/Aula3_Linux_Parte4_RedirecionamentoEntradasSaidas.pdf Redirecionamento de Entradas e Saídas] | ||
− | =AULA 5 - Dia | + | =AULA 5 - Dia 10/09/2019= |
==Objetivos== | ==Objetivos== | ||
− | * | + | *Gerenciamento de Processos - Parte 1 |
− | + | *Permissionamento de Arquivos - Parte 1 | |
− | + | ||
− | * | + | ==Material de Referência== |
− | |||
− | |||
− | |||
− | |||
− | https://www. | + | *[https://www.dropbox.com/s/4i1n2wqsds18eol/Aula5_Linux_GerenciamentoDeProcessos_Parte1.pdf?dl=0 Gerenciamento de Processos - Parte 1] |
+ | *[https://www.dropbox.com/s/3z61r8r0b9wpftr/Aula4_Linux_PermissionamentoDeAcesso_Parte1.pdf Permissionamento de Arquivos - Parte 1] | ||
− | = | + | =AULA 6 - Dia 12/09/2019= |
− | + | ==Objetivos== | |
− | |||
− | + | *Aval1 | |
− | = | + | ==Comand wget== |
− | + | Para fazer o downloiad do Linux Ubuntu via linha de comando: | |
− | + | wget http://mirror.pop-sc.rnp.br/mirror/ubuntu-releases/18.04.3/ubuntu-18.04.3-desktop-amd64.iso | |
− | |||
− | |||
− | |||
− | |||
− | |||
==Material de Referência== | ==Material de Referência== | ||
− | *[https://www.dropbox.com/s/ | + | *[https://www.dropbox.com/s/fdl5kzq0ba2nv3v/Aula4_Linux_PermissionamentoDeAcesso_Parte2.pdf Permissionamento Parte 2 ] |
− | =AULA 7 - Dia | + | =AULA 7 - Dia 12/09/2019= |
==Objetivos== | ==Objetivos== | ||
− | * | + | *Instalação do Ubuntu em partições separadas |
− | * | + | *Permissionamento de Grupos e Outros |
− | * | + | *Criação de Contas de Usuários |
− | * | + | *Camandos adicionais para gerenciamento de processos |
− | + | ||
− | + | ==Instalação== | |
+ | Considere a estrutura de sistemas de arquivos abaixo. Montar um sistema de arquivos da forma abaixo considerando que sb1 seria um segundo hd máquina virtual. | ||
− | + | [[arquivo:SOP2019-1-ExemploMontagemSistema.png]] | |
− | + | Logar no sistema e usando o terminal verificar as configurações estabelecidas. | |
− | |||
− | + | df -h | |
+ | cd /home | ||
+ | ls spock | ||
− | + | Usar o comando gparted para criar uma partição adicional no segundo disco. | |
− | + | sudo apt-get install gparted | |
− | + | sudo gparted | |
− | |||
− | + | Redimensionar a partição original para poder criar uma adicional. | |
− | + | ==Material de Referência== | |
− | |||
− | + | *[https://www.dropbox.com/s/fdl5kzq0ba2nv3v/Aula4_Linux_PermissionamentoDeAcesso_Parte2.pdf Permissionamento Parte 2 ] | |
− | |||
− | |||
− | + | *[https://www.dropbox.com/s/ozjd3qz0yblcj43/Aula6_Comandos_Adicionais_de_Gerenciamento_de_Processos.pdf Gerenciamento de Processos Parte 2] | |
− | + | =AULA 8 - Dia 12/09/2019= | |
− | + | ||
− | + | ==Objetivos== | |
− | + | ||
− | + | *Permissionamento de Grupos e Outros | |
+ | *Criação de Contas de Usuários | ||
+ | *Reparticionamento de Disco após instalação. Montagem de sistemas com mount. | ||
+ | |||
+ | ==Desafio Final== | ||
+ | Na máquina instalada na aula anterior fazer as seguintes operações: | ||
− | + | *Reparticionar o disco 2 (/dev/sdb) em 2 partições de 5G (usar o comando gparted) (redimensionar a partição do spock) | |
− | + | *Criar uma conta para o usuário uhura | |
− | + | *Criar dois subdiretórios no diretório home de uhura. Estes diretórios serão pontos de montagem dos dois sistemas de arquivos criados no segundo disco. | |
− | + | *Montar os sistemas de arquivos usando o comando mounthttps://wiki.sj.ifsc.edu.br/index.php/ISL-FicLinux_(Plano_de_Ensino) | |
− | + | *Mudar o dono destes diretórios (usuário e grupo) )para o novo dono (uhura) | |
− | + | *Verificar o sistema montado (comando df) | |
− | + | *Testar o acesso entrando como | |
− | + | ==Continuando o o permissionamento de Grupos e Outros== | |
− | |||
− | + | Ver material de referência | |
− | + | ==Material de Referência== | |
− | + | *[https://www.dropbox.com/s/fdl5kzq0ba2nv3v/Aula4_Linux_PermissionamentoDeAcesso_Parte2.pdf Permissionamento Parte 2 ] | |
− | + | *[https://www.dropbox.com/s/ozjd3qz0yblcj43/Aula6_Comandos_Adicionais_de_Gerenciamento_de_Processos.pdf Gerenciamento de Processos Parte 2] | |
− | |||
− | |||
− | |||
+ | =AULA 9 - Dia 24/09/2019= | ||
− | + | ==Objetivos== | |
− | + | ||
− | + | *ainda criação de usuários | |
− | + | *ainda gerenciamento de processos: crontab | |
− | + | *compactação e backups em linha de comando | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==Material de Referência== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | *[Ainda Gerenciamento de Usuários https://www.dropbox.com/s/8vsg0yeforcsuq9/Aula7_GerenciamentoDeUsuarios_Parte1.pdf?dl=0] | |
− | + | *[https://www.dropbox.com/s/ozjd3qz0yblcj43/Aula6_Comandos_Adicionais_de_Gerenciamento_de_Processos.pdf Gerenciamento de Processos Parte 2] | |
− | + | *[https://www.dropbox.com/s/61n9is9c8o7bgbz/Aula3_Linux_Parte3_vi.pdf?dl=0 Introdução ao VI] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | =AULA | + | =AULA 10 - Dia 26/09/2019= |
==Objetivos== | ==Objetivos== | ||
− | * | + | *Finalização da aula anterior: arquivo sudoers |
− | * | + | *Introdução ao shell script |
− | * | + | *Um pouco sobre instalação de pacotes |
+ | *exercicício avaliativo 2 | ||
− | == | + | ==Material de Referência== |
− | *[http://tele.sj.ifsc.edu.br/~ | + | *[https://www.dropbox.com/s/54tnv5rjwguzppd/Aula8_ShellScript_Parte1.pdf?dl=0 Introdução ao Shell script] |
+ | *[http://tele.sj.ifsc.edu.br/~luciano.barreto/ensino/ficlinux20162/fic-aula9-pacotes.pdf Instalação de Pacotes (Prof.Luciano Barreto)] | ||
− | =AULA | + | =AULA 11 - Dia 1/10/2019= |
− | * | + | Introdução a Redes de Computadores |
+ | **Conceito Básicos em Redes e Protocolos | ||
+ | **Ferramentas de Redes | ||
+ | **Exemplo de Protocolo de Aplicação: http | ||
+ | **O processo de encapsulamento | ||
− | = | + | ==Plano de Ensino== |
− | + | *[https://wiki.sj.ifsc.edu.br/index.php/PRL-FicLinux_(Plano_de_Ensino) Plano de Ensino] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | ==Laboratório 1 - Ferramentas de Rede e Conceitos Básicos== |
− | + | *Familiarização com a infraestrutura dos laboratórios de redes | |
+ | *Familiarização com ferramentas de rede: ifconfig, ping, traceroute; | ||
+ | *Desenvolver a noção de endereçamentos de rede IP e de endereço de hardware (MAC) | ||
+ | *Desenvolver a noção de rotas em redes IP | ||
+ | *Testar a conectividade IP com ping | ||
− | [https:// | + | *Ver [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)] |
− | == | + | ==Laboratório 2 - Wireshark e encapsulamento== |
− | + | *Familiarização com o sniffer de rede WireShark | |
+ | *Observar o comportamento do ping e se familiarizar com o processo de encapsulamento; | ||
− | + | **Ver [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)] | |
− | + | ==Conceituando Protocolos e Aplicações de Rede== | |
− | [http:// | + | [http://docente.ifsc.edu.br/odilson/RCO60803/Conceituando%20protocolos.pdf Conceituando protocolos] |
− | |||
− | + | =AULA 12 - Dia 03/10/2019= | |
− | |||
− | |||
− | + | ==Objetivos== | |
− | |||
− | + | *Exercício de Revisão | |
− | + | *Conceituando protocolos | |
− | + | *Protocolos de aplicação: exemplo http | |
+ | *O serviço DNS | ||
− | + | ==Exercício de revisão 2.1== | |
− | + | #Liste as configurações da interface eth0 da sua máquina Linux. Recorte e cole em um doc (tipo DRAW) do openoffice. Indique usando flechas onde estão os endereços IPV4, IPV6, MAC(endereço de hardware) e o local indicando onde a interface está ativa. | |
− | + | ==Laboratório 3 - Conceituando protocolo== | |
− | + | Ver [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)#Laborat.C3.B3rios] | |
− | + | ==Laboratório 4 - Desvendando o HTTP com Wireshark - BÁSICO== | |
+ | Ver [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)#Laborat.C3.B3rios] | ||
+ | ==Laboratório 7 - O DNS == | ||
− | [https:// | + | Ver [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)#Laborat.C3.B3rios] |
− | = | + | =AULA 13 - Dia 8/10/2019= |
− | + | ==Objetivos== | |
− | + | *Explorar o papel e diferenças dos protocolos de Transporte TCP/UDP | |
+ | *Explorar a Camada IP e aspectos da configuração da mesma sob o Linux | ||
− | |||
− | + | ===TCP e UDP=== | |
− | + | *[http://docente.ifsc.edu.br/odilson/RCO60803/UDP%20Basico.pdf Introdução a camada de transporte e UDP básico] | |
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/TCP%20Basico.pdf Camada de transporte: TCP básico] | ||
− | + | ==Camada IP no Linux: Configuração das Interfaces usando ifconfig e ip addr== | |
− | + | Usando a ferramenta Netkit2, que permite construir redes virtuais com o Linux vamos construir DUAS redes locais interligadas por um roteador. Em cada rede colocaremos dois PCs. As interfaces estarão completamente desconfiguradas: | |
− | + | <ol> | |
− | + | <li> | |
− | [ | + | Construir um arquivo texto de nome rede.conf usando o editor de texto gedit. |
− | + | <code>gedit rede.conf &</syntaxhighlight> | |
− | [ | + | </li> |
− | + | <li> | |
− | = | + | Criar a seguinte topologia: |
+ | <code> | ||
+ | #Descrição das Máquinas e Roteadores | ||
+ | r1[type]=generic | ||
+ | |||
+ | pc1[type]=generic | ||
+ | pc2[type]=generic | ||
+ | |||
+ | pc3[type]=generic | ||
+ | pc4[type]=generic | ||
− | + | #Definição da Topologia da Rede | |
− | |||
− | |||
− | |||
− | |||
− | == | + | pc1[eth0]=lan0 |
+ | pc2[eth0]=lan0 | ||
− | + | pc3[eth0]=lan1 | |
+ | pc4[eth0]=lan1 | ||
+ | r1[eth0]=lan0 | ||
+ | r1[eth1]=lan1 | ||
+ | </syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Executar netkit fazendo (atualize se necessário - pergunte para o professor como fazer): | ||
+ | Aplicativos >> Educativo >> Netkit2 | ||
+ | </li> | ||
+ | <li> | ||
+ | Carregar o arquivo lab.conf a partir do Netkit2: | ||
+ | <code>File >> Load Only</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Visualizar a rede a ser implementada: | ||
+ | <code>File >> Graph</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Executar a configuração: | ||
+ | <code>Network >> Start</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Verificar o estado de todas interfaces (se UP ou DOWN) com: | ||
+ | <code>ifconfig -a</syntaxhighlight> | ||
+ | <code>ip addr</syntaxhighlight> | ||
+ | Note que nas últimas versões do Linux o comando ip vem sendo recomendado (embora o ifconfig ainda esteja disponível). | ||
+ | </li> | ||
+ | <li> | ||
+ | Vamos configurar as interfaces. Para tanto vamos assumir que teremos duas sub-redes: | ||
+ | <code>lan0 - endereço da rede 10.10.10.0/24</syntaxhighlight> | ||
+ | <code>lan1 - endereço da rede 20.20.20.0/24</syntaxhighlight> | ||
+ | A interface eth0 de PC1 receberá o endereço 10.10.10.1/24 e a interface eth0 de PC2 recebera 10.10.10.2/24. A interface do roteador NA lan0 também deve receber um endereço: 10.10.10.254/24: | ||
− | + | No PC1: | |
− | + | <code>ifconfig eth0 10.10.10.1/24</syntaxhighlight> | |
− | + | No PC2: | |
− | + | <code>ifconfig eth0 10.10.10.2/24</syntaxhighlight> | |
− | + | No R1: | |
− | + | <code>ifconfig eth0 10.10.10.254/24</syntaxhighlight> | |
− | + | </li> | |
− | + | <li> | |
− | + | Seguindo a mesma lógica configure as máquinas e o roteador na lan1 | |
+ | </li> | ||
+ | <li> Um ponto importante a ser lembrado é que quando uma interface é configurada com um número IP, a tabela de roteamento do sistema é alimentada com o número correspondente da rede associada ao número. Isto pode ser observado em TODAS as máquinas, inclusive no roteador: | ||
+ | <code> route -n </syntaxhighlight> | ||
+ | ou | ||
+ | <code> ip route </syntaxhighlight> | ||
+ | </li> | ||
+ | </ol> | ||
− | == | + | ==Camada IP no Linux: verificando e configurando rotas - configuração da rota default == |
− | + | <ol> | |
− | + | <li> Um ponto importante a ser lembrado é que quando uma interface é configurada com um número IP, a tabela de roteamento do sistema é alimentada com o número correspondente da rede associada ao número. Isto pode ser observado em TODAS as máquinas, inclusive no roteador: | |
− | + | <code> route -n </syntaxhighlight> | |
− | + | ou | |
− | + | <code> ip route </syntaxhighlight> | |
− | + | Esta informação é importante pois define a entrega DIRETA de pacotes na rede, ou seja, se PC1 quiser enviar um pacote para PC2, esta linha na tabela de roteamento garante que o pacote IP seja despachado diretamente para o PC2 através de um frame ETHERNET endereçado para o MAC do PC1. | |
− | + | </li> | |
− | + | <li> Confira os endereços MAC e IP das interfaces dos PC1 e PC2 e anote. Faça um ping no PC1 em direção a PC2. | |
− | + | <code>root@pc1:~# ping 10.10.10.2</syntaxhighlight> | |
− | + | </li> | |
− | + | <li> Use um capturador de pacotes em modo texto para observar o tráfego na eth0 do PC2. Observe os endereços MAC do Frame Ethernet e os endereços IP do pacote IP. | |
− | + | <code>root@pc2:~# tcpdump -i eth0 -e</syntaxhighlight> | |
− | + | ENTÃO? O que se pode concluir? É uma entrega direta ou indireta? | |
− | + | </li> | |
− | + | <li> Uma curiosidade. Tente observar o tráfego na interface eth0 do Roteador R1. É possível observar algo? O que se pode concluir? Pare agora o ping e os tcpdumps executados. | |
− | + | </li> | |
− | + | <li> Qualquer máquina IP acaba tomando uma decisão de roteamento. O PC1, ao observar que PC2 está na sua própria rede 10.10.10.0/24, entrega diretamente o pacote. E se PC1 tentar entregar para PC3? Faça um ping e observe o que acontece: | |
− | + | <code>root@pc1:~#ping 20.20.20.1</syntaxhighlight> | |
− | + | Não deve ter funcionado :-( | |
− | + | Um primeiro problema é que simplesmente a camada IP observa que o endereço não é entrega DIRETA mas não tem informação (linha) na tabela de roteamento dizendo para quem deve ser entregue o pacote. | |
− | + | </li> | |
− | * | + | <li> Vamos acrescentar uma linha na tabela de PC1 dizendo como fazer esta entrega INDIRETA. Usaremos o conceito de gateway default. Ou seja, se não tiver para quem entregar explicitamente, o pacote será entregue para o gateway default: |
− | + | <code>root@pc1:~# route add default gateway 10.10.10.254</syntaxhighlight> | |
− | + | confira o estabelocimento da rota: | |
+ | <code>root@pc1:~# route -n</syntaxhighlight> | ||
+ | tente o ping novamente escutando com o tcpdump na interface eth0 de R1. Ainda não funcionou mas o R1 já recebe os pacotes. Confira o MAC de destino do pacote. Deve ser o MAC do roteador. | ||
+ | </li> | ||
+ | <li> | ||
+ | POR QUE NÃO FUNCIONOU: será que R1 não sabe como entregar o pacote para PC3? Confira se o pacote sai de R1 na rede lan1: | ||
+ | <code>root@r1:~# tcpdump -i eth2 -e</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Temos um problema ainda que o nosso roteador Linux NÃO está habilitado a ser roteador. Isto pode ser feito com: | ||
+ | <code>echo 1 > /proc/sys/net/ipv4/ip_forward</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> Tente novamente o ping de PC1 para PC3. Ainda não funcionará mas escute a interface eth1 de R1 e a interface eth0 de PC3 e verá que os pacotes do ICMP REQUEST estão chegando. Confira inclusive os MACs envolvidos... | ||
+ | </li> | ||
+ | <li> | ||
+ | O que estaria faltando ainda para que PC3 responda aos ECHO REQUEST? O problema é de entrega indireta. O PC3 não sabe como entregar pacotes "externos". Acrescente um gateway default. | ||
+ | </li> | ||
+ | <li> | ||
+ | Exercício adicional com 2 roteadores. Ver manual: | ||
+ | * [http://linux-ip.net/html Guia de Administração da Camada IP no Linux | ||
+ | </li> | ||
+ | </ol> | ||
− | |||
− | + | =AULA 13 - Dia 8/10/2019= | |
− | == | + | ==Objetivos== |
+ | |||
+ | *Continuação do exercício da aula anterior. | ||
+ | *Explorar a Camada IP e aspectos da configuração da mesma sob o Linux. | ||
+ | *Explorar protocolo ICMP | ||
+ | *Explorar os conceitos de DHCP e NAT. | ||
+ | |||
+ | ==Instalação do Netkit2== | ||
+ | |||
+ | Ver [https://wiki.sj.ifsc.edu.br/index.php/Netkit2] | ||
+ | |||
+ | ==Revendo a camada IP== | ||
+ | |||
+ | Ver [http://docente.ifsc.edu.br/odilson/RCO60803/IP%20Basico.pdf] | ||
+ | |||
+ | ====PARTE 1 - Rede com 3 roteadores==== | ||
+ | |||
+ | :Laboratório a ser montado no netkit. | ||
+ | |||
+ | [[Image:LabRoteamento-RCO1-2017-2.png |thumb | 800px| Figura 1 - Rede para roteamento]] | ||
+ | |||
+ | #Construir a rede apresentada na Figura 1, usando como apoio a configuração do netkit descrita na sequência. As sub-redes (SN) a serem utilizadas na parte 1 e 2 são: | ||
+ | ## SN1 : 200.10.1.0/24 | ||
+ | ## SN2 : 200.10.2.0/24 | ||
+ | ## SN3 : 200.10.3.0/24 | ||
+ | ## SN4 : 200.10.4.0/24 | ||
+ | ## SN5 : 200.10.5.0/24 | ||
+ | ## SN6 : 200.10.6.0/24 | ||
+ | ## SN7 : 200.10.7.0/24 | ||
+ | ## SN8 : 200.10.8.0/24 | ||
+ | #Abaixo o arquivo de configuração para o NetKit. Copie e salve como '''/home/aluno/roteamento.conf'''.<syntaxhighlight lang=text> | ||
− | + | H1[type]=generic | |
+ | H2[type]=generic | ||
− | == | + | R1[type]=generic |
+ | R2[type]=generic | ||
+ | R3[type]=generic | ||
− | |||
− | = | + | H1[eth0]=SN1:ip=200.10.1.1/24 |
+ | H2[eth0]=SN8:ip=200.10.8.1/24 | ||
− | == | + | R1[eth0]=SN1:ip=200.10.1.254/24 |
+ | R1[eth1]=SN4:ip=200.10.4.1/24 | ||
+ | R1[eth2]=SN2:ip=200.10.2.1/24 | ||
− | |||
− | |||
+ | R2[eth0]=SN8:ip=200.10.8.254/24 | ||
+ | R2[eth1]=SN4:ip=200.10.4.2/24 | ||
+ | R2[eth2]=SN7:ip=200.10.7.1/24 | ||
− | === | + | R3[eth0]=SN2:ip=200.10.2.2/24 |
+ | R3[eth1]=SN7:ip=200.10.7.2/24 </syntaxhighlight> | ||
+ | #Inicie o Netkit e carregue o arquivo de configuração e execute-o. | ||
+ | #Execute comandos de ping entre os hosts e roteadores. | ||
+ | ##O ping entre as interfaces/equipamentos pertencentes a mesma sub-rede funcionam, por quê? | ||
+ | ##O ping entre interfaces/equipamentos de sub-redes distintas não funcionam, por quê? | ||
+ | #Usando como apoio os comandos de inserção de rota insira as rotas default em H1 e H2: | ||
+ | ##H1: <syntaxhighlight lang=bash> route add default gw 200.10.1.254 </syntaxhighlight> | ||
+ | ##H2: <syntaxhighlight lang=bash> route add default gw 200.10.8.254 </syntaxhighlight> | ||
+ | #Habilitar o roteamento e instalar rotas em cada roteador para que pacotes vindos de H1 para H2 passem por R1, R3 e R2. O retorno deve ser via R2 e R1. | ||
+ | ##R1: <syntaxhighlight lang=bash> | ||
+ | echo 1 > /proc/sys/net/ipv4/ip_forward | ||
+ | route add -net 200.10.8.0/24 gw 200.10.2.2 </syntaxhighlight> | ||
+ | ##R2: <syntaxhighlight lang=bash> | ||
+ | echo 1 > /proc/sys/net/ipv4/ip_forward | ||
+ | route add -net 200.10.1.0/24 gw 200.10.4.1 </syntaxhighlight> | ||
+ | ##R3: <syntaxhighlight lang=bash> | ||
+ | echo 1 > /proc/sys/net/ipv4/ip_forward | ||
+ | route add -net 200.10.8.0/24 gw 200.10.7.1 | ||
+ | route add -net 200.10.1.0/24 gw 200.10.2.1 | ||
+ | </syntaxhighlight> | ||
+ | #Teste a conectividade IP com o comando ping. | ||
+ | ##O ping entre as interfaces/equipamentos pertencentes a mesma sub-rede funcionam, por quê? | ||
+ | ##O ping entre interfaces/equipamentos de sub-redes distintas não funcionam, por quê? | ||
+ | #Confirme os caminhos estabelecidos monitorando as interfaces com o tcpdump e/ou traceroute. | ||
− | + | ==Serviço DHCP== | |
− | |||
− | + | *[http://docente.ifsc.edu.br/odilson/RCO60803/IP_DHCP_NAT.pdf DHCP e NAT] | |
− | + | Construir uma rede simular a aula anterior mas deixar PC1 desconfigurado (sem endereço IP e sem default router). Criar uma máquina para atuar como servidor DHCP. | |
<ol> | <ol> | ||
<li> | <li> | ||
− | + | Editar o arquivo de configuração do dhcp server: | |
− | + | ||
− | |||
− | |||
− | |||
<code> | <code> | ||
#Descrição das Máquinas e Roteadores | #Descrição das Máquinas e Roteadores | ||
− | r1[type]= | + | r1[type]=gateway #já habilitado para forward |
pc1[type]=generic | pc1[type]=generic | ||
Linha 651: | Linha 777: | ||
pc3[type]=generic | pc3[type]=generic | ||
pc4[type]=generic | pc4[type]=generic | ||
− | + | ||
+ | pcdhcp[type]=generic | ||
+ | |||
+ | |||
#Definição da Topologia da Rede | #Definição da Topologia da Rede | ||
+ | |||
+ | pc1[eth0]=lan0 #desconfigurada... | ||
+ | |||
+ | pc2[eth0]=lan0:ip=10.10.10.2/24 | ||
+ | pc2[default_gateway]=10.10.10.254 | ||
+ | |||
+ | pcdhcp[eth0]=lan0:ip=10.10.10.3/24 | ||
+ | pcdhcp[default_gateway]=10.10.10.254 | ||
+ | |||
+ | pc3[eth0]=lan1:ip=20.20.20.1/24 | ||
+ | pc3[default_gateway]=20.20.20.254 | ||
+ | |||
+ | pc4[eth0]=lan1:ip=20.20.20.2/24 | ||
+ | pc4[default_gateway]=20.20.20.254 | ||
+ | |||
+ | |||
+ | r1[eth0]=lan0:ip=10.10.10.254/24 | ||
+ | r1[eth1]=lan1:ip=20.20.20.254/24 | ||
− | + | </syntaxhighlight> | |
− | + | </li> | |
+ | <li> No server estabelecer a configuração desejada: | ||
− | + | nano /etc/dhcp/dhcpd.conf | |
− | + | ||
+ | com: | ||
+ | |||
+ | <code> | ||
+ | |||
+ | subnet 10.10.10.0 netmask 255.255.255.0 { | ||
+ | range 10.10.10.10 10.10.10.50; | ||
+ | option routers 10.10.10.254; | ||
+ | option broadcast-address 10.10.10.255; | ||
+ | default-lease-time 600; | ||
+ | max-lease-time 7200; | ||
+ | } | ||
− | |||
− | |||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
</li> | </li> | ||
<li> | <li> | ||
− | + | Rodar o servidor DHCP na máquina pc_dhcp: | |
− | + | <code> | |
+ | /usr/sbin/dhcpd -q -4 -pf /run/dhcp-server/dhcpd.pid -cf /etc/dhcp/dhcpd.conf eth0 | ||
+ | </syntaxhighlight> | ||
</li> | </li> | ||
<li> | <li> | ||
− | + | No cliente (PC1) fazer: | |
− | + | <code> | |
+ | dhclient -v eth0 | ||
+ | </syntaxhighlight> | ||
</li> | </li> | ||
<li> | <li> | ||
− | + | Usando o ifconfig e route confira se o PC1 está completamente configurado. Faça teste com o ping | |
− | |||
</li> | </li> | ||
− | <li> | + | <li> Rode o tcpdump na eth0 de r1 para "verificar" os pacotes DHCP: |
− | + | <code> | |
− | + | tcpdump -i eth0 | |
+ | </syntaxhighlight> | ||
</li> | </li> | ||
− | <li> | + | <li> Repetir a operação no PC2. Baixe a interface antes: |
− | + | <code> | |
− | <code>ifconfig - | + | ifconfig eth0 down |
− | + | dhclient -v eth0 | |
− | + | </syntaxhighlight> | |
</li> | </li> | ||
− | < | + | </ol> |
− | + | ||
− | + | DESAFIO: Na rede do exercício 1 acrescentar na lan do H1 um servidor DHCP. Acrescente um H3 nesta rede e faça-o adquirir a configuração da rede dinamicamente. | |
− | + | ||
− | + | =AULA 14 - Dia 15/10/2019= | |
− | + | ==Objetivos== | |
− | + | ||
− | + | *Finalizar o laboratório sobre o NAT | |
− | + | *Laboratório IPv6 | |
− | + | ||
− | + | ||
− | + | ==O NAT== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Vamos tentar elaborar um laboratório usando o NAT MASQUERADE | |
+ | https://www.karlrupp.net/en/computer/nat_tutorial | ||
− | + | Construir uma rede com 3 LANs e 2 roteadores como na aula passada. Executar o APACHE em uma máquina da lan3 (exemplo PC4). Não colocar rotas para lan0 em r2. Desta forma PC1 não deve pingar em PC4. | |
− | + | ||
− | + | <code> | |
− | + | LAN0 <-R1-> LAN1 <-R2 -> LAN2 | |
− | + | </syntaxhighlight> | |
− | + | ||
− | + | <code> | |
− | < | + | #Descrição das Máquinas e Roteadores |
− | < | + | r1[type]=gateway |
− | </ | + | r2[type]=gateway |
− | + | ||
− | + | pc1[type]=generic | |
− | + | apache[type]=generic | |
− | + | ||
− | + | ||
− | + | pc1[eth0]=lan0:ip=10.10.10.1/24 | |
− | + | pc1[default_gateway]=10.10.10.254 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | r1[eth0]=lan0:ip=10.10.10.254/24 | |
− | + | r1[eth1]=lan1:ip=20.20.20.254/24 | |
+ | r1[route]=30.30.30.0/24:gateway=20.20.20.253 | ||
− | + | r2[eth0]=lan1:ip=20.20.20.253/24 | |
− | + | r2[eth1]=lan2:ip=30.30.30.254/24 | |
− | |||
− | r2[ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | pc3[eth0]=lan2:ip=30.30.30.2/24 | |
− | + | pc3[default_gateway]=30.30.30.254 | |
− | + | pc4[eth0]=lan2:ip=30.30.30.1/24 | |
− | + | pc4[default_gateway]=30.30.30.254 | |
+ | </syntaxhighlight> | ||
− | + | <ol> | |
− | + | <li> Rodar o apache em PC4: | |
− | + | <code> /etc/init.d/apache2 start </syntaxhighlight> | |
− | + | </li> | |
− | + | <li> Testar se o Apache é acessível a partir de PC3 | |
− | + | <code>lynx END_PC3 </syntaxhighlight> | |
− | + | <li> | |
− | + | Em R1 fazer: | |
− | + | <code>iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE</syntaxhighlight> | |
− | + | </li> | |
− | + | <li> Monitorar os pacotes que chegam e saem da eth0 de PC4. | |
+ | </li> | ||
+ | <li> Fazer em PC1: | ||
+ | lynx END_PC4 #endereço de PC4. | ||
+ | O que se pode concluir? | ||
+ | </li> | ||
− | + | </ol> | |
− | |||
− | + | ==LAboratório de Introdução ao IPv6== | |
− | |||
− | + | ===Material de REferência=== | |
− | |||
− | + | *[http://docente.ifsc.edu.br/odilson/RCO60803/IPv6.pdf IPv6] | |
− | |||
− | + | ===Roteiro de atividades sobre o IPv6=== | |
− | |||
− | + | A figura abaixo apresenta o diagrama esquemático da rede a ser montada/analisada. Observe que todos os IPv6 ''Global Unicast'' já estão definidos na mesma, são esses IPs que utilizaremos em nosso experimento. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | [[Arquivo:Diagrama_rede_IPv6.jpg]] | |
− | + | #Crie em seu computador um arquivo com nome '''/home/aluno/IPv6.conf''', com o seguinte conteúdo: <syntaxhighlight lang=bash> | |
− | + | #Ligacao das maquinas nos dominios de colisao | |
− | + | #Duas pequenas redes interligadas pelo backbone | |
− | + | ||
− | + | # Hosts definitions | |
− | + | pc1[type]=generic | |
− | + | pc2[type]=generic | |
− | + | pc3[type]=generic | |
− | [ | + | pc4[type]=generic |
− | + | ||
− | = | + | # Hosts' interfaces to local routers |
− | + | pc1[eth0]=link0:ipv6=2001:bcc:faca:1::101/64 | |
− | [ | + | pc2[eth0]=link1:ipv6=2001:bcc:cafe:1::102/64 |
− | + | pc3[eth0]=HUB1:ipv6=2001:bcc:1f0:1::103/64 | |
− | == | + | pc4[eth0]=HUB1 |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | pc1[ | + | #Default Gateways definitions |
− | pc2[ | + | pc1[route]=default6:gateway=2001:bcc:faca:1::1 |
+ | pc2[route]=default6:gateway=2001:bcc:cafe:1::1 | ||
+ | pc3[route]=default6:gateway=2001:bcc:1f0:1::1 | ||
− | + | # Routers definitions | |
− | + | r1[type]=gateway | |
+ | r2[type]=gateway | ||
− | + | #Routers interfaces definitions | |
+ | r1[eth0]=backbone0:ipv6=2001:db8:dead:1::1/64 | ||
+ | r1[eth1]=link0:ipv6=2001:bcc:faca:1::1/64 | ||
+ | r1[eth2]=link1:ipv6=2001:bcc:cafe:1::1/64 | ||
+ | r2[eth0]=backbone0:ipv6=2001:db8:dead:1::2/64 | ||
+ | r2[eth1]=HUB1:ipv6=2001:bcc:1f0:1::1/64 | ||
− | # | + | #Routers definitions |
− | + | r1[route]=2001:bcc:1f0:1::0/64:gateway=2001:db8:dead:1::2 | |
− | + | r2[route]=2001:bcc:faca:1::0/64:gateway=2001:db8:dead:1::1 | |
− | + | r2[route]=2001:bcc:cafe:1::0/64:gateway=2001:db8:dead:1::1 | |
− | + | </syntaxhighlight> | |
− | + | #Tenha certeza que o Netkit2 estja atualizado: General >> Update. | |
− | + | #Rode o NetKit em seu computador. Em um terminal digite: <syntaxhighlight lang=bash> | |
− | + | netkit2 & </syntaxhighlight> | |
− | + | #No menu '''File''' - '''Load and Run''', procure o arquivo '''/home/aluno/IPv6.conf''' e clique em OK. Abrirá uma janela com 6 abas, onde cada uma delas é um terminal de configuração do respectivo equipamento: '''pc1-4''' ou '''r1-2'''. | |
− | + | #Observe que o '''pc4''' não está com sua interface configurada. | |
− | pc3 | + | #Ao clicar no menu '''File''' - '''Graph''', pode-se ter uma visão da rede a ser simulada e conferir se é equivalente ao diagrama proposto. |
− | + | #Faça um '''ping6''' entre o '''pc1''' ao '''pc3''': <syntaxhighlight lang=bash> | |
− | + | ping6 -c4 2001:bcc:1f0:1::103 </syntaxhighlight> | |
− | pc4 | + | #Faça um '''ping6''' entre o '''pc1''' e '''pc2'''. |
− | + | #No '''pc4''' use o seguinte comando para adicionar o endereço IPv6 à interface de rede: <syntaxhighlight lang=bash> | |
− | + | ip addr add 2001:bcc:1f0:1::104/64 dev eth0 </syntaxhighlight> | |
− | + | #No '''pc4''', acrescente o ''default gateway'' com o seguinte comando: <syntaxhighlight lang=bash> | |
− | + | ip -6 route add default via 2001:bcc:1f0:1::1 dev eth0 </syntaxhighlight> | |
− | + | #No '''pc1''' use o seguinte comando para verificar como ficou a configuração dos endereços da interface de rede. O resultado é similar ao apresentado pelo comando '''ifconfig''': <syntaxhighlight lang=bash> | |
+ | ip addr show dev eth0 </syntaxhighlight> | ||
+ | #Todo o roteamento está pronto, mas caso desejássemos poderíamos acrescentar rotas com comando similares aos já utilizados. Por exemplo, no '''r1''', para adicionar uma rota estática para a rede dos '''pc3''' e '''pc4''' utilizaríamos o seguinte comando: <syntaxhighlight lang=bash> | ||
+ | ip -6 route add 2001:bcc:1f0:1::/64 via 2001:db8:dead:1::2 dev eth0 </syntaxhighlight> | ||
+ | #Confira as rotas estabelecidas em todos os ''hosts'' com o comando abaixo. | ||
+ | ##São coerentes com os dados apresentados no diagrama acima?<syntaxhighlight lang=bash> | ||
+ | ip -6 route show </syntaxhighlight> | ||
+ | #No '''pc1''' use os seguintes comandos para ver a rota para alguns vizinhos: <syntaxhighlight lang=bash> | ||
+ | traceroute6 2001:bcc:1f0:1::103 | ||
+ | traceroute6 2001:bcc:1f0:1::104 </syntaxhighlight> | ||
+ | #*Anote as rotas. | ||
+ | #Deixe um '''ping6''' entre o '''pc1''' ao '''pc3''' rodando: <syntaxhighlight lang=bash> | ||
+ | ping6 2001:bcc:1f0:1::103 </syntaxhighlight> | ||
+ | |||
− | + | =AULA Dia 17/10/2019= | |
− | + | ||
− | + | ===Objetivos=== | |
+ | |||
+ | *Compreender que Ethernet não é Internet e que não é necessário o mundo IP para haver comunicação. | ||
+ | *Diferenciar Hub de Switch | ||
+ | *Compreender o papel do protocolo ARP | ||
+ | *Introdução ao equipamento TP-LINK N750 | ||
+ | |||
+ | ===Fonte Base=== | ||
+ | |||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/Camada%20de%20enlace.pdf Camada de Enlace] | ||
− | + | ===Animação Pearson/Kurose=== | |
− | com | + | *[https://media.pearsoncmg.com/aw/ecs_kurose_compnetwork_7/cw/content/interactiveanimations/csma-cd/index.html Animação CSMA/CD] |
− | + | ==Introdução ao Roteador-AP da TP-Link== | |
− | + | Ver manual https://www.tp-link.com/us/support/download/tl-wdr4300/ | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ===Configuração Básica=== | |
− | + | Seguir as instruções do professor para a seguinte configuração: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | #Retirar o plugue cabo ethernet que liga o PC do Lab a rede do IFSC. Conectar o PC a uma das portas LAN do AP; | |
− | + | #Conectar a WAN do AP ao Lab. do IFSC; | |
− | + | #Em um terminal do PC aplique o comando: | |
− | + | sudo dhclient eth0 | |
− | + | #No browser do PC acesse o AP colocando o endereço: | |
− | + | http://tplinklogin.net | |
+ | #Entrar com user admin e senha admin | ||
+ | #Configurar a WAN para DHCP (IP dinâmico) | ||
+ | #Configurar a LAN para DHCP na faixa 192.168.0.10 a 192.168.0.100 | ||
+ | #Usar uma máquina virtual para testar a aquisição do IP: | ||
+ | pc1[type]=generic | ||
+ | pc1[eth0]=uplink:bridge=eth0 | ||
− | + | ==Desafios sobre o uso do equipamento TP-LINK N750== | |
− | |||
− | |||
− | + | DESAFIO 1: Elabore um experimento para mostrar que a LAN do AP funciona como um switch. | |
− | + | Sugestão: Use uma máquina adicional colocada em uma porta do AP. | |
− | |||
− | |||
− | |||
− | |||
− | |||
+ | DESAFIO 2: Elabore um experimento para mostrar como o NAT funciona no AP. Se inspire no experimento realizado sobre o NAT. | ||
− | + | =AULA Dia 22/10/2019= | |
− | |||
+ | ==Objetivos== | ||
− | + | *Relatório avaliativo 1: montagem de rede cabeada com NAT e DHCP lado LAN; | |
− | + | *Introdução a rede Wireless (WLAN); | |
− | |||
− | + | ==Relatório Avaliativo 1== | |
− | |||
− | + | Implementar a rede abaixo. Construir e postar um arquivo no SIGA A com as seguintes informações: | |
− | |||
− | |||
− | + | [[arquivo:FICLinux-2-RedeRelatorioAvaliativo1.png]] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | #Configuração da WAN no AP D-Link; | |
+ | #Configuração da LAN no AP D-Link; | ||
+ | #Status das redes no AP (aoós rebootar); | ||
+ | #ping funcionando da MV no hospedeiro; | ||
+ | #ping funcionando da MV no site www.ifsc.edu.br | ||
− | |||
− | |||
− | |||
− | ===Objetivos== | + | =AULA Dia 24/10/2019= |
− | * | + | |
− | * | + | ==Objetivos== |
− | * | + | |
− | * | + | *Um pouco mais segmentação de redes IP |
− | * | + | *Introdução a rede Wireless (WLAN); |
+ | *Configuração da rede Wifi em 2.4Ghz | ||
+ | *Uso de filtros por MAC | ||
+ | *Visibilidade da Rede | ||
+ | *Configuração da rede Wifi em 5Ghz | ||
+ | *Opções de extensão da rede sem fio usando cabo entre APs | ||
+ | |||
+ | ==Um pouco mais segmentação de redes IP== | ||
+ | |||
+ | Links interessantes: | ||
+ | |||
+ | *[http://www.sj.ifsc.edu.br/~tisemp/RES/ApostilaRedes.pdf Apostila Redes IFSC] | ||
+ | *http://jodies.de/ipcalc | ||
+ | *http://www.davidc.net/sites/default/subnets/subnets.html | ||
+ | *https://www.todoespacoonline.com/w/2015/06/calculo-de-sub-redes-ipv4/ | ||
+ | |||
+ | ==Introdução a rede Wireless (WLAN)== | ||
− | |||
− | |||
− | |||
− | |||
− | + | Ver material em [https://wiki.sj.ifsc.edu.br/index.php/PJI2-2019-1#30.2F05.2F2019:_Redes_sem_fio] | |
− | |||
− | # | ||
− | |||
− | + | ==Configuração da rede Wifi em 2.4Ghz usando o AP Router com NAT== | |
− | + | #Entrar na configuração do AP conforme aula anterior. | |
− | # | + | #Conectara a WAN do AP na rede do laboratório e o PC em uma porta da LAN do AP. |
− | + | #Configurar a WAN para IP dinâmico. | |
− | + | #Configurar a rede WIreless 2.4 Ghz: | |
− | + | ##Nome SSID: FIC-NomeAluno | |
− | + | ##Configurar canal AUTO e channel width para AUTO | |
− | # | + | ##Habilite o broadcast da rede. |
− | + | #Configurar segurança (Wireless Security) para WPA versão Automática, Criptografia AES e password ABCDEF | |
− | + | #Configurar o DHCP na LAN para distribuir endereços entre 192.168.0.100 e 192.168.0.200 | |
− | + | #Salve as configurações | |
− | + | #Reboote o roteador | |
− | # | + | #Teste a conectividade da rede usando um celular. Verifique a conformidade do endereço do celular com os endereços distribuídos pelo AP; |
− | + | #teste ping entre MVs e celular | |
− | + | #teste ping entre MV e mundo externo | |
− | + | #Tente fazer um ping da rede do laboratório em direção ao celular. Discuta o resultado. | |
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | [[arquivo:FICLinux-2-RedeWifi2.4Ghz-APcomNAT.png]] | |
− | |||
− | |||
− | |||
− | + | ==Uso de filtros por MAC== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | *Na configuração da WLAN entre em Wireless MAC Filtering | |
− | * | + | *Em Filtering Rules coloque Deny (negar) |
+ | *Adicione um terminal que deseja bloquear o acesso. Utilize o MAC do seu celular (veja em configurações do telefone ou anote na opção Wireless Statistics) | ||
+ | *Habilite o Filtro e tente se conectar | ||
− | + | OBS: Este filtro é interessante para ter maior segurança na rede, garantindo que somente dispositivos gabilitados possam acessá-la. | |
− | |||
− | = | + | ==Visibilidade da Rede== |
− | * | + | *desabilite a visbilidade da rede. Desconecte a rede do seu celular e tente encontrá-la novamente. |
− | |||
− | |||
− | == | + | ==Opções de extensão da rede sem fio usando cabo entre APs== |
− | + | Conecte um segundo AP (WAN do segundo AP a LAN do primeiro AP). Teste a conectividade colocando uma máquina Linux na LAN do segundo AP. | |
+ | Esta configuração deve funcionar mas impõe um overhead adicional devido ao NAT realizado duas vezes... | ||
− | + | DESAFIO: mostrar que o NAT está sendo duplicado. | |
− | === | + | [[Arquivo:WLAN-2PAs-viaWAN.png]] |
+ | |||
+ | *Estendendo a rede através da LAN usando segundo AP e LAN | ||
+ | |||
+ | Discuta com o colega ao lado e pense como poderia conectar o segundo AP via LAN. Uma configuração adicional será necessária. | ||
+ | |||
+ | |||
+ | =AULA 19 - Dia 29/10/2019= | ||
+ | |||
+ | ==Objetivos== | ||
+ | |||
+ | *Estudar métodos de extensão da rede WiFi | ||
+ | |||
+ | *[https://www.dropbox.com/s/blqz4m0bxd6usfi/LaboratorioOpcoesDeExtensaoRedesWif.pdf Laboratório de Extensão de Rede Wifi] | ||
+ | |||
+ | =AULA 20 - Dia 29/10/2019= | ||
+ | |||
+ | ==Objetivos== | ||
+ | |||
+ | *Informações adicionais sobre a rede doméstica | ||
+ | *Experimento de Consolidação de Conhecimento | ||
+ | |||
+ | ==Informações adicionais sobre a rede doméstica== | ||
− | + | ===Conferindo o IP Público=== | |
− | + | Existem sites que proporcionam a visão do seu IP Público e o estado das portas: | |
− | + | Exemplo: http://www.portchecktool.com/ | |
− | # | + | |
− | # | + | ===Acessando um hospedeiro dentro da rede Internet=== |
− | + | ||
− | # | + | A rede doméstica normalmente é privada (possui um endereço do tipo 192.168.0.10/24). Como poderia rodar um serviço tipo ssh ou mesmo um webserver usando inclusive um NOME de DNS? |
− | + | Existem serviços (alguns gratuitos ou temporariamente gratuitos) que prestam este serviço. É o caso do no-ip.com e do [https://www.dynu.com/ dynu] e do https://www.noip.com/pt-BR [no-ip]. Observe que são sites de empresas/organizações e portanto o acesso aos mesmos é por sua conta (não nos responsabilizamos). | |
− | + | ||
− | + | ||
− | + | ||
− | + | Links adicionais obre o o noip: | |
− | # | + | https://pplware.sapo.pt/tutoriais/tutorial-aprenda-usar-servico-no-ip-parte-i/ |
− | + | ||
− | + | ==Serviço SSH== | |
− | + | ||
− | + | ||
+ | ===Instalação do SSH (Secure Shell)=== | ||
+ | |||
+ | No Ubuntu server (baseado no material do Prof.Odilson) | ||
+ | |||
+ | #sudo su | ||
+ | #apt-get update | ||
+ | #apt-get install openssh-server | ||
+ | ##O SSH já estará funcionaneod normalmente. | ||
+ | #Para acessar o servidor basta digitar em um terminal: ssh login@ipd_do_servidor. Será solicitado a senha. | ||
+ | #Para configurações extras deve-se editar o arquivo /etc/ssh/sshd_config e acrescentar, por exemplo: | ||
+ | ##X11Forwarding yes (no) ### habilita/desabilita acesso com ambiente gráfico remoto | ||
+ | ##AllowUsers Fred Wilma ### Libera o acesso somente para os usuáriso Fred e Wilma | ||
+ | ##DenyUsers Dino Pebbles ### Bloqueia o acesso aos usuários Dino e Pebbles e libera para os demais usuários | ||
+ | ##AllowGroups admin ### Libera o acesso somente para o grupo admin. | ||
+ | #Após modificar o arquivo de configuração deve-se reiniciar o serviço: service ssh restart | ||
+ | |||
+ | ===Uso do SSH=== | ||
+ | |||
+ | Para login: | ||
+ | |||
+ | ssh ssh login@ipd_do_servior | ||
+ | |||
+ | Cópia remota de arquivos: | ||
+ | |||
+ | scp arquivo login@ipd_do_servidor:caminho | ||
+ | |||
+ | ==Mais sobre configurações de interfaces no Linux (Material do Prof.Odilson Tadeu Valle)== | ||
+ | |||
+ | |||
+ | Qualquer dispositivo (físico ou lógico) capaz de transmitir e receber datagramas IP. Interfaces de rede ethernet são o exemplo mais comum, mas há também interfaces PPP (seriais), interfaces tipo túnel e interfaces loopback. De forma geral, essas interfaces podem ser configuradas com um endereço IP e uma máscara de rede, e serem ativadas ou desabilitadas. Em sistemas operacionais Unix a configuração de interfaces de rede se faz com o programa ifconfig. Para mostrar todas as interfaces: ifconfig -a | ||
+ | #Para configurar uma interface de rede (que fica automaticamente ativada). Ex: ifconfig eth1 192.168.1.100 netmask 255.255.255.0 | ||
+ | #Para desativar uma interface. Ex: ifconfig eth1 down | ||
+ | #Para ativar uma interface desativada. Ex: ifconfig eth1 up | ||
+ | #Ao se configurar uma interface de rede, cria-se uma rota automática para a subrede diretamente acessível via aquela interface. Isto se chama roteamento mínimo ou entrega direta. Para verificar as rotas ativas: route -n ou netstat -rn. | ||
+ | #Configurando o roteador padrão (default gateway). Ex: route add -net default gw 192.168.1.1 | ||
+ | #Todo sistema operacional possui alguma forma de configurar suas interfaces de rede, para que sejam automaticamente ativadas no boot com seus endereços IP. Por exemplo, em sistemas Linux Ubuntu. A configuração de rede se concentra no arquivo /etc/network/interfaces. Um exemplo desse arquivo: | ||
+ | <code> | ||
+ | # This file describes the network interfaces available on your system | ||
+ | # and how to activate them. For more information, see interfaces(5). | ||
− | # | + | # The loopback network interface |
− | + | auto lo eth1 | |
− | + | iface lo inet loopback | |
− | + | address 127.0.0.1 | |
+ | netmask 255.0.0.0 | ||
− | # | + | # a interface ethernet eth0 |
− | + | iface eth0 inet static | |
− | + | address 192.168.1.100 | |
− | + | netmask 255.255.255.0 | |
− | + | gateway 192.168.1.1 | |
− | + | dns-nameservers 200.135.37.65 | |
− | + | </syntaxhighlight> | |
− | + | #Esses arquivo é lido pelos scripts ifup e ifdown. Esses scripts servem para ativar ou parar interfaces específicas, fazendo todas as operações necessárias para isto. Ex: ifup eth1; ifdown eth1 | |
− | + | #Para ativar, desativar ou recarregar as configurações de todas as interfaces de rede: | |
− | + | ##desativa todas as interfaces de rede: sudo /etc/init.d/networking stop ou service networking stop | |
− | + | ##ativa todas as interfaces de rede: sudo /etc/init.d/networking start ou service networking start | |
− | + | ##recarrega as configurações de todas as interfaces de rede: sudo /etc/init.d/networking restart ou service networking restart | |
− | + | ||
− | + | ==Experimento de acesso a servidor virtual== | |
− | + | ||
− | + | *[https://www.dropbox.com/s/ogmkj043r6z1jkd/LaboratorioServidoresVirtuais_AberturaPortasRoteador5.pdf Laboratório Servidor Virtual] | |
− | + | ||
− | + | ||
− | + | ||
− | + | {{collapse bottom}} | |
− | # | + | |
− | + | ||
− | # | + | |
− | # | + | {{collapse top | Semestre 2019-1 - Prof. Tiago Semprebom e Eraldo Silveira e Silva}} |
− | + | ||
− | # | + | =Professor= |
− | # | + | |
− | + | :*Prof. [[Tiago Semprebom]] | |
− | # | + | :*email: tisemp@ifsc.edu.br |
− | + | :*sala: Sala de II de Professores da Área de Telecomunicações (primeira sala lado da Biblioteca - direção esquerda) | |
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | = | + | =12/03/2019= |
− | + | ==Objetivos== | |
− | === | + | ===Parte 1=== |
+ | *Apresentar os professores e o coordenador; | ||
+ | *Apresentar o IFSC: estrutura, câmpus e serviços | ||
+ | *Apresentar o curso: perfil do egresso, competências gerais, áreas de atuação do egresso e conteúdos previstos | ||
+ | *Apresentar o Cronograma Tentativa | ||
+ | *Apresentar metodologia e forma de avaliação | ||
− | + | ===Parte 2=== | |
− | + | *Conceitos de Hardware, Software e Firmware | |
− | + | *Arquiteturas de processadores | |
− | + | *Classificação de softwares | |
− | + | *Conceitos de Sistemas Operacionais e exemplos | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ===Parte 3=== | |
− | |||
− | + | *Histórico do Linux | |
+ | *Linux e GNU/Linux | ||
+ | *Arquitetura do Linux | ||
+ | *Distribuições | ||
+ | *Distribuições usadas no IFSC/SJ | ||
+ | *Ligando e Desligando o Sistema | ||
+ | *Primeiros contatos. | ||
− | = | + | ==Professores do FIC Linux Edição 2019-1== |
+ | *Prof. [[Tiago Semprebom]] (Introdução ao Linux) | ||
+ | *Prof. [[Eraldo Silveira e Silva]] (Redes com Linux) | ||
− | == | + | ==Apresentação do IFSC== |
+ | *[http://www.ifsc.edu.br/estrutura-organizacional-inicio Página do IFSC] | ||
+ | *[https://www.sj.ifsc.edu.br/index.php Página do Câmpus] | ||
− | + | ==Apresentação do Curso== | |
− | + | *[[ISL-FicLinux_(Plano_de_Ensino) | Introdução ao Linux]] | |
+ | *[[PRL-FicLinux (página) | Projeto de Rede Residencial com o Linux]] | ||
+ | *[[Curso_de_Formação_Continuada_de_Configuração_de_Redes_de_Computadores_Linux | PPC do Curso e Outras Regulamentações]] | ||
− | + | ==Cronograma Tentativa== | |
− | + | Horários: 19h às 22h. | |
− | + | {| class="wikitable"| | |
− | + | | AULA || DATA || Professor || Conteúdo | |
− | + | |- | |
− | + | | 1 || 12/03/2019 || TIAGO || Programa da Disciplina.Forma de Avaliação. O computador: hardware e software. SO Linux: histórico e distribuições. Ligando/Logando/Desligando a Máquina. Conceitos básico de Sistema de Arquivos e Processos. | |
− | + | |- | |
− | + | | 2 || 14/03/2019 || TIAGO || Gerenciamento de Arquivos I: Operações sobre arquivos e diretórios usando o terminale o Nautilus. | |
− | + | |- | |
− | + | | 3 || 21/03/2019 || TIAGO || Gerenciamento de Arquivos II: continuação Operações sobre arquivos e diretórios. Links Simbólicos, Criação de Arquivo com vi e outros editores. | |
− | + | |- | |
− | + | | 4 || 26/03/2019 || TIAGO || Interfaces Gráficas: X11, Gnome. KDE e outras. Instalação de Programas via Gerenciador de Pacotes. | |
− | + | |- | |
− | + | | 5 || 28/03/2019 || TIAGO || Administração de contas de usuários I | |
− | + | |- | |
− | + | | 6 || 02/04/2019 || TIAGO || Administração de contas de usuários II | |
− | + | |- | |
− | + | | 7 || 04/04/2019 || TIAGO || Permissionamento de Arquivos | |
+ | |- | ||
+ | | 8 || 09/04/2019 || TIAGO || Gerenciamento de Processos | ||
+ | |- | ||
+ | | 9 || 11/04/2019 || TIAGO || Introdução ao Shell Script | ||
+ | |- | ||
+ | | 10 || 16/04/2019 || TIAGO || Avaliação 1 - Introdução ao Sistema Operacional Linux | ||
+ | |- | ||
+ | | 11 || 09/10/2019 || ERALDO || Introdução a Redes. Conceito de Protocolos. Ferramentas de Rede. | ||
+ | |- | ||
+ | | 12 || 11/10/2019 || ERALDO || Protocolos de Aplicação: exemplo http | ||
+ | |- | ||
+ | | 13 || 16/10/2019 || ERALDO || O DNS como protocolo de Aplicação; Camada de Transporte: protocolo UDP | ||
+ | |- | ||
+ | | 14 || 18/10/2019 || ERALDO || Protocolo TCP. Diferenças dos protocolos de Transporte TCP/UDP. Camada IP e aspectos da configuração da mesma sob o Linux | ||
+ | |- | ||
+ | | 15 || 23/10/2017 || ERALDO || Camada de Enlace/Física. Hubs X Switches. O Papel do Protocolo ARP. Outros serviços/protocolos: Serviço DHCP e NAT | ||
+ | |- | ||
+ | | 16 || 25/10/2017 || ERALDO (TIAGO) || Segmentação Redes IP. Cálculo de subredes. | ||
+ | |- | ||
+ | | 17 || 30/10/2017 || ERALDO || Introdução ao IPV6. Introdução ao Access Point TPLINK N750: configuração da LAN e WAN | ||
+ | |- | ||
+ | | 18 || 01/11/2017 || ERALDO || Serviço SSH no Linux. Acesso a rede WIFI. Conceitos básicos de redes sem fio. | ||
+ | |- | ||
+ | | 19 || 06/11/2007 || ERALDO || Tópicos Adicionais sobre redes no Linux: Configuração Manual X NetworkManager. Relatório Avaliativo 1. | ||
+ | |- | ||
+ | | 20 || 08/11/2017 || ERALDO || Relatório Avaliativo 2 | ||
+ | |} | ||
− | + | ==Metodologia, Avaliação e Critérios de Aprovação== | |
− | + | ||
− | + | *Aaulas expositivas e aulas práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais. | |
− | + | *Avaliações individuais: Listas de exercícios com aproveitamento e entregues no prazo. | |
− | + | *Critérios para aprovação: Serão considerados aprovados os alunos que obtiverem conceito final 6 ou superior em cada componente curricular. ATENÇÂO: Possuir no mínimo 75% de presença | |
− | |||
− | |||
− | |||
− | + | ==Bibliografia== | |
− | |||
− | |||
− | |||
− | + | #Odilson Tadeu Valle | |
− | + | ##Administração de redes com Linux: fundamentos e práticas | |
+ | ##Editora IFSC, 2010 | ||
+ | #Gleydson Mazioli da Silva | ||
+ | ##Guia Foca Linux | ||
+ | ##http://www.guiafoca.org/ | ||
+ | #Luiz Carlos Lobato Lobo de Medeiros e Wendel Soares | ||
+ | ##Formação de suporte técnico PROINFO | ||
+ | ##https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo | ||
+ | #Ari Frazão Jr e Marcelo Braga | ||
+ | ##Administração de Sistemas Linux | ||
+ | ##https://pt.scribd.com/doc/128912228/Administracao-de-Sistemas-Linux | ||
− | + | ==Conceitos de Hardware, Software e Firmware== | |
− | + | ||
− | + | *Em informática, o hardware consiste nos equipamentos | |
− | + | **Ex: Computador, teclado, mouse, monitor | |
− | + | *Software é um aplicativo, desenvolvido em uma linguagem de programação | |
− | + | **Ex: Windows, Linux, Mozilla Firefox, Google Chrome | |
− | + | *Firmware é um conjunto de instruções básicas e específicas para um hardware | |
+ | **Ex: BIOS nos computadores, sistemas de controle das máquinas de lavar, etc. | ||
− | + | ==Estrutura de um Computador e Arquitetura de Processadores== | |
− | + | *Bits, [https://pt.wikipedia.org/wiki/Byte Bytes] e tamanho de memória; | |
+ | *Representação de Caracteres: [https://pt.wikipedia.org/wiki/ASCII Tabela ASCII]; | ||
+ | *O [https://pt.wikipedia.org/wiki/Microprocessador microprocessador], barramentos e memórias semicondutoras: RAM,ROM, E2PROM, FLASH; | ||
+ | *Memórias cache e memórias secundárias; | ||
+ | *[https://pt.wikipedia.org/wiki/Mem%C3%B3ria_virtual Memória Virtual] e Swapping; | ||
+ | *Registradores de 32bits ou 64bits | ||
+ | *Arquitetura [https://pt.wikipedia.org/wiki/X86 x86] / [https://pt.wikipedia.org/wiki/AMD64 x86-64] – presente nos computadores pessoais | ||
+ | *Arquitetura ARM – presente em sistemas embarcados e dispositivos móveis | ||
+ | *Múltiplos núcleos (core) | ||
+ | *Máquinas Virtuas: VirtualBox, UML (User Mode Linux). | ||
− | + | ==O papel do Sistema Operacional== | |
− | |||
− | + | *O [https://pt.wikipedia.org/wiki/Sistema_operativo SO] é um programa (software) que controla a máquina e a torna utilizável para o usuário; | |
− | + | *Abstrações do Sistema: arquivos e processos; | |
− | + | *Pode ser multitarefa e multiusuário; | |
+ | *[https://en.wikipedia.org/wiki/Device_driver Driver] de dispositivo | ||
+ | *[https://pt.wikipedia.org/wiki/Multi_boot Múltiplos OS instalados] em um computador. É possível?? | ||
+ | |||
+ | ==Sistema de Arquivos== | ||
+ | |||
+ | *Forma como estão estruturados/organizados os arquivos/dados em uma determinada mídia [https://pt.wikipedia.org/wiki/Sistema_de_ficheiros]; | ||
+ | *Um sistema operacional deve saber como acessar e operar sobre este sistema; | ||
+ | *Tipos de sistemas: ext4, NTFS, VFAT32 | ||
+ | |||
+ | ==Exemplos de SO== | ||
− | + | *Unix | |
− | + | *Microsoft DOS | |
− | + | *IBM | |
− | + | *Microsoft Windows | |
− | + | *netBSD, freeBSD, openBSD | |
− | + | *Linux | |
− | + | *macOS | |
− | + | *Android | |
− | + | *iOS | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==Histórico do Linux== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | *O início de tudo: UNIX; |
+ | *Surgiu em 1991 quando Linus Torvalds, um estudante finlandês, resolveu desenvolver um sistema operacional compatível com a POSIX, por em que pudesse ser executado em arquitetura x86; | ||
+ | *Linux está sob uma licença de software livre e diversas pessoas e empresas contribuem para o desenvolvimento do mesmo. | ||
+ | *E o que é [https://pt.wikipedia.org/wiki/POSIX POSIX]? Define padrões para a interface de programação de aplicações (API) de um OS de forma a manter compatibilidade com o UNIX; | ||
+ | |||
+ | ==Arquitetura do Linux== | ||
− | + | *Ver pg.16 a 19 de [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo] | |
− | |||
− | de | ||
− | === | + | ==Distribuições== |
− | |||
− | + | Uma distribuição Linux consiste de um kernel Linux e uma coleção de software utilitários e aplicativos de usuário (baseado slides Prof. Emerson) | |
− | + | **Redhat | |
− | + | **Slackware | |
− | + | **Debian | |
− | + | **Ubuntu | |
− | + | **OpenSuse | |
− | + | **Fedora | |
− | + | **CentOS | |
− | * | + | **Kali |
− | * | ||
− | * | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Algumas distribuições podem ser executadas diretamente no CD/pendrive | |
− | + | sem a necessidade de fazer sua instalação no disco rígido do computador | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | ==Distribuições aqui no IFSC SJ== | ||
− | + | *Ubuntu | |
+ | *Ubuntu Mate (fork do Ubuntu) | ||
+ | *Debian | ||
− | + | ==Ligando e Desligando o Sistema Linux== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | *Cuidado ao desligar um OS como o Linux!!! Dados podem ser perdidos. | |
+ | *Ver [https://pt.wikibooks.org/wiki/Guia_do_Linux/Iniciante%2BIntermedi%C3%A1rio/Introdu%C3%A7%C3%A3o/Ligando_o_computador] | ||
− | + | ==O Desktop do Ubuntu - Primeiras Considerações== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | *O Desktop no Ubuntu ver[https://help.ubuntu.com/stable/ubuntu-help/shell-overview.html] | |
− | + | =AULA 2 - Dia 14/03/2019= | |
− | == | + | ==Objetivos== |
− | + | ===PARTE 1=== | |
− | |||
− | |||
− | |||
− | + | *Revisão da aula passada; | |
+ | *repassar itens não mencionados na aula passada; | ||
+ | **Paginação e Memória [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo pg.19] | ||
+ | **Estrutura do Linux [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo pg.18] | ||
− | == | + | ===PARTE 2=== |
− | + | *Operações com arquivos e diretórios usando o terminal; | |
− | + | *formato de um comando básico; | |
− | + | *quase tudo no Linux é arquivo: tipos de arquivos, diretórios, arquivos ordinários; | |
− | + | *conceito de sistema de arquivos; | |
− | + | *conceito de referência absoluta e relativa; | |
− | + | *conceito de diretório de entrada, diretório de trabalho; | |
− | + | *mudando de diretório com cd; | |
− | + | *listando diretórios e arquivos com ls; | |
− | + | *vendo o significado de um comando com man; | |
+ | *criando diretórios com mkdir; | ||
+ | *removendo diretórios e arquivos com rmdir e rm; | ||
+ | *referência com . .. - ~ | ||
+ | *criando arquivos ordinários com touch; | ||
+ | *arquivos e diretórios escondidos; | ||
+ | *copiando arquivos; | ||
+ | *movendo e renomeando arquivos; | ||
+ | *vendo a história de comandos com history; | ||
− | + | ==Conceito de sistemas de arquivos, arquivos e diretórios== | |
− | |||
− | |||
− | |||
− | |||
− | + | * [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo Sistemas de Arquivos pg.18] | |
+ | * [Estrutura básica de diretórios do Sistema Linux] | ||
− | == | + | ==Comandos no Linux== |
− | + | * [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo Comandos e Interpretador de Comandos no Linux pg.18] | |
− | + | ==Tipos de Arquivos== | |
− | |||
− | + | * [https://pt.scribd.com/doc/128912228/Administracao-de-Sistemas-Linux Tipos de Arquivos 12,13 e 14 ] | |
− | + | ==Os comandos de operação sobre arquivos e diretórios== | |
− | + | *[https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo Interpretador de comandos - Comandos Básicos - pg.20 e 21] | |
+ | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_2_FICLinux.pdf Ver lista de exercícios da Aula 2] | ||
+ | <!-- *[https://www.dropbox.com/s/g3xr3wimffde2zm/Aula2_Linux_OperacoesComArquivos_2.pdf Ver lista de exercícios da Aula 3] --> | ||
− | + | =AULA 3 - Dia 21/03/2019 (aula com Prof. Eraldo)= | |
− | == | + | ==Objetivos== |
− | + | ===PARTE 1=== | |
− | + | *Rever comandos básicos de operações sobre arquivos; | |
+ | *Usar coringas | ||
+ | *usar opções do comando ls | ||
− | + | ===PARTE 2=== | |
− | |||
− | |||
− | |||
− | |||
− | + | *uso do editor gedit para criar arquivos texto; | |
− | * | + | *usar comandos cat, more e less para visualizar conteúdos de arquivos. |
− | |||
− | * | ||
+ | ===PARTE 3=== | ||
− | + | *Criar Links simbólicos | |
− | + | ===Parte 4=== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | *Redirecionamento de entradas e saídas; | ||
+ | *Pipes | ||
− | + | ==Exercícios para esta aula== | |
− | * | + | '''Créditos e agradecimentos ao Prof. Eraldo pelo desenvolvimento das listas utilizadas''': |
− | * | + | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_3_FICLinux.pdf Mais operações Sobre Arquivos e Diretórios] |
− | * | + | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_4_FICLinux.pdf Editor Gedit, Link Simbólico] |
− | * | + | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_5_FICLinux.pdf Editor vi] |
+ | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_6_FICLinux.pdf Entradas e Saídas] | ||
− | + | =AULA 4 - Dia 26/03/2019= | |
− | + | ==Objetivos== | |
− | |||
− | |||
− | + | ===PARTE 1=== | |
− | + | ||
− | + | *Revisão geral | |
− | |||
− | |||
− | == | + | ===PARTE 2=== |
− | + | *Redirecionamento de entradas e saídas: continuação; | |
+ | *Pipes | ||
− | + | ===PARTE 3=== | |
− | + | *Permissão no acesso a arquivos; | |
+ | *Owner, grupo e outros | ||
+ | ==Exercícios para esta aula== | ||
− | + | =Referências= | |
+ | [http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_7_FICLinux.pdf Permissão de Acesso a Arquivos: parte 1] | ||
− | + | [http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_8_FICLinux.pdf Permissão de Acesso a Arquivos: parte 2] | |
− | |||
− | |||
− | |||
− | |||
− | |||
+ | =AULA 5 - Dia 28/03/2019= | ||
− | + | ==Objetivos== | |
− | |||
− | |||
− | |||
− | + | *Revisão e preparação para teste; | |
− | + | *introdução ao gerenciamento de processos; | |
+ | **conceito de processo | ||
+ | **escalonamento de processos | ||
+ | **PID e PPID | ||
+ | **fork/exec | ||
+ | **espaço de endereçamento de um processo; | ||
+ | **estados de um processo: Running, Stopped, Sleeping, Zombie | ||
− | + | https://www.tecmint.com/linux-process-management/ | |
− | |||
− | |||
− | |||
+ | ==Referências== | ||
− | + | [http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_9_FICLinux.pdf Gerenciamento De Processos Parte 1] | |
− | + | [http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_10_FICLinux.pdf Gerenciamento De Processos Parte 2] | |
− | + | [https://www.dropbox.com/s/gm1sv856ailny2e/Aula5_TreinamentoTeste.pdf Treinamento Teste 1] | |
− | 6 | + | =AULA 6 - Dia 02/04/2019= |
− | == | + | ==Objetivos== |
− | + | *Comandos adicionais de gerenciamento de processos; | |
− | + | *Mudança de prioridade com nice e renice; | |
+ | *Agendamento de processos com crontab | ||
+ | *Aplicações do crontab: conectividade de rede e backup | ||
+ | *Ferramentas de compactação; | ||
+ | *Execução de comandos inseridos em outros comandos; | ||
+ | |||
+ | ==Material de Referência== | ||
− | + | *[https://www.dropbox.com/s/z1d0itcz9ommhrm/Aula6_Aval1.pdf Avaliação 1] | |
− | + | =AULA 7 - Dia 04/04/2019= | |
− | == | + | ==Objetivos== |
− | + | *Comandos adicionais de manipulação de arquivos: | |
+ | **comando grep; | ||
+ | **comando find; | ||
+ | *Gerenciamento de usuários: | ||
+ | **adição e remoção de usuários e grupos | ||
+ | **arquivo sudoers | ||
− | |||
− | + | ==Exercícios== | |
− | + | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_11_FICLinux.pdf Comandos Adicionais] | |
+ | <!--*[https://www.dropbox.com/s/h0v122is4aj9ogr/Aula7_GerenciamentoDeUsuarios_Parte1.pdf Aula 7 - Parte 2]--> | ||
− | + | =AULA 8 - Dia 09/04/2019= | |
− | |||
− | |||
− | |||
− | == | + | ==Objetivos== |
− | + | *Introdução ao Shell script | |
+ | *variáveis | ||
+ | *Comando if | ||
− | + | ==Referências== | |
− | + | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_14_FICLinux.pdf Outros comando gerenciamento de processos] | |
+ | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_12_FICLinux.pdf Shell Parte 1] | ||
− | + | {{collapse top | script DESAFIO (a)}} | |
− | + | <syntaxhighlight lang=c> | |
− | + | #!/bin/bash | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | FILE="$1" | |
− | # | + | |
+ | if [ ! $# -eq 1 ]; then | ||
+ | echo opa! Algo errado... | ||
+ | echo uso: script parametro | ||
+ | exit | ||
+ | fi | ||
− | |||
− | |||
+ | if [ -h $FILE ]; then | ||
+ | echo $FILE é um link simbólico | ||
+ | else | ||
+ | echo $FILE não é um link simbólico | ||
+ | fi | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | {{collapse bottom}} | ||
+ | {{collapse top | script DESAFIO (b)}} | ||
+ | <syntaxhighlight lang=c> | ||
− | + | #!/bin/bash | |
− | + | FILE="$1" | |
− | + | ||
− | + | if [ ! $# -eq 1 ]; then | |
− | + | echo opa! Algo errado... | |
− | + | echo uso: script parametro | |
+ | exit | ||
+ | fi | ||
− | |||
− | |||
− | |||
− | |||
− | + | if [[ -w $FILE && -O $FILE ]]; then | |
− | + | echo Possui permissao de escrita de $FILE | |
+ | else | ||
+ | echo Colocando permissão de escrita para $FILE | ||
+ | chmod u+w $FILE | ||
+ | echo permissoes adicionadas com sucesso para $FILE ver abaixo | ||
+ | ls -l $FILE | ||
+ | |||
+ | fi | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | {{collapse bottom}} | ||
− | + | {{collapse top | script DESAFIO (c)}} | |
+ | <syntaxhighlight lang=c> | ||
+ | #!/bin/bash | ||
− | + | FILE1="$1" | |
− | + | FILE2="$2" | |
− | |||
− | |||
− | + | if [ ! $# -eq 2 ]; then | |
+ | echo opa! Algo errado... | ||
+ | echo uso: script parametro | ||
+ | exit | ||
+ | fi | ||
+ | |||
+ | if [[ -f $FILE1 && -r $FILE1 ]]; then | ||
+ | echo $1 É regular e possui permissao de leitura | ||
+ | mv $FILE1 $FILE2 | ||
+ | echo Mudei o nome de $FILE1 para $FILE2 | ||
+ | else | ||
+ | echo $FILE1 não tem permissao... | ||
+ | fi | ||
+ | </syntaxhighlight> | ||
+ | {{collapse bottom}} | ||
+ | |||
+ | =AULA 9 - Dia 11/04/2019= | ||
− | + | ==Objetivos== | |
− | + | *ainda shell script | |
+ | *comando for | ||
+ | *comando while | ||
− | + | ==Referências== | |
− | + | *[http://tele.sj.ifsc.edu.br/~tisemp/FIC-Linux/listas/Aula_13_FICLinux.pdf Shell Parte 2] | |
− | + | =AULA 10 - Dia 16/04/2019= | |
+ | *Avaliação da disciplina | ||
− | =ATIVIDADE DE | + | =Tópicos extras= |
+ | |||
+ | ==Objetivos== | ||
+ | |||
+ | *mais alguns tópicos sobre criação de usuários; | ||
+ | *servidores de janelas: X11, | ||
+ | *gerenciadores de janelas e desktops: Gnome, KDE | ||
+ | *instalação de pacotes; | ||
+ | *o Linux e o Software Livre | ||
+ | *avaliação | ||
+ | |||
+ | ==Servidores de Janelas== | ||
+ | |||
+ | [https://pt.wikipedia.org/wiki/X_Window_System X Windows System] | ||
+ | |||
+ | [https://en.wikipedia.org/wiki/X_Window_System_protocols_and_architecture Arquitetura do X] | ||
+ | |||
+ | ==Desktops e Geneciadores de Janelas== | ||
+ | |||
+ | [https://pt.wikipedia.org/wiki/Interface_gr%C3%A1fica_do_utilizador Interfaces Gráficas] | ||
+ | |||
+ | ==Instalando pacotes== | ||
+ | |||
+ | [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo Ver pg.43 do Formacao-de-Suporte-Tecnico-Proinfo] | ||
+ | |||
+ | [http://www.hardware.com.br/tutoriais/tutorial-completo-apt-get/ uso do apt-get] | ||
+ | |||
+ | Exercício: instalar e executar um servidor ssh: | ||
+ | |||
+ | sudo apt-get update | ||
+ | sudo apt-get install openssh-server | ||
+ | sudo service start ssh | ||
+ | |||
+ | Acessar o ssh de outra máquina | ||
+ | ssh usuario@numero_ip | ||
+ | |||
+ | Exportar o display e executar o comando remoto: | ||
+ | export DISPLAY=IP_cliente_ssh:0.0 | ||
+ | firefox & | ||
+ | |||
+ | Conferir se o firefox realmente está se executando (use o ps) | ||
+ | |||
+ | Remover o pacote ssh server: | ||
+ | |||
+ | sudo apt-get remove openssh-server | ||
+ | |||
+ | ==Linux = Software Livre== | ||
+ | |||
+ | [https://pt.wikipedia.org/wiki/Software_livre] | ||
+ | |||
+ | |||
+ | |||
+ | [https://www.novell.com/coolsolutions/feature/1532.html] | ||
+ | |||
+ | ==Onde baixar o Ubuntu== | ||
+ | |||
+ | [https://www.ubuntu.com/download/desktop Baixar Ubuntu daqui] | ||
+ | |||
+ | ==Sobre o Boot== | ||
+ | |||
+ | [http://www.rodsbooks.com/linux-uefi/ by Roderick W. Smith] | ||
+ | |||
+ | [https://www.happyassassin.net/2014/01/25/uefi-boot-how-does-that-actually-work-then/ AdamW on Linux and more] | ||
+ | |||
+ | ==Sobre o Desktop Environment e o Desktop Shell== | ||
+ | |||
+ | [https://ittutorials.net/linux/ubuntu/desktop-guide/ /desktop-guide] | ||
+ | |||
+ | ==Instalar Ubuntu no Virtual Box== | ||
+ | |||
+ | [http://www.edivaldobrito.com.br/virtualbox-no-linux/ Instalar VirtualBox no Linux] | ||
+ | |||
+ | [http://www.bosontreinamentos.com.br/virtualizacao/como-instalar-o-virtualbox-no-windows-para-criacao-de-maquinas-virtuais/ Instalar VirtualBox no Windows] | ||
+ | |||
+ | [http://www.techtudo.com.br/dicas-e-tutoriais/noticia/2016/04/como-instalar-o-ubuntu-com-o-virtualbox.html Instalar Linux no VirtualBox] | ||
+ | |||
+ | =AULA 11 - Dia 23/04/2019= | ||
+ | |||
+ | *Introdução a Redes de Computadores | ||
+ | **Conceito Básicos em Redes e Protocolos | ||
+ | **Ferramentas de Redes | ||
+ | **Exemplo de Protocolo de Aplicação: http | ||
+ | **O processo de encapsulamento | ||
+ | |||
+ | ==Plano de Ensino== | ||
+ | |||
+ | *[https://wiki.sj.ifsc.edu.br/index.php/PRL-FicLinux_(Plano_de_Ensino) Plano de Ensino] | ||
+ | |||
+ | |||
+ | ==Laboratório 1 - Ferramentas de Rede e Conceitos Básicos== | ||
+ | |||
+ | *Familiarização com a infraestrutura dos laboratórios de redes | ||
+ | *Familiarização com ferramentas de rede: ifconfig, ping, traceroute; | ||
+ | *Desenvolver a noção de endereçamentos de rede IP e de endereço de hardware (MAC) | ||
+ | *Desenvolver a noção de rotas em redes IP | ||
+ | *Testar a conectividade IP com ping | ||
+ | |||
+ | *Ver [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)] | ||
+ | |||
+ | ==Laboratório 2 - Wireshark e encapsulamento== | ||
+ | |||
+ | *Familiarização com o sniffer de rede WireShark | ||
+ | *Observar o comportamento do ping e se familiarizar com o processo de encapsulamento; | ||
+ | |||
+ | **Ver [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)] | ||
+ | |||
+ | ==Conceituando Protocolos e Aplicações de Rede== | ||
+ | |||
+ | [http://docente.ifsc.edu.br/odilson/RCO60803/Conceituando%20protocolos.pdf Conceituando protocolos] | ||
+ | |||
+ | =AULA 12 - Dia 25/04/2019= | ||
+ | |||
+ | ==Objetivos== | ||
+ | |||
+ | *Protocolos de aplicação: exemplo http | ||
+ | |||
+ | ==Laboratório 4 - Desvendando o HTTP com Wireshark - BÁSICO== | ||
+ | |||
+ | Ver [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)#Parte_1:_Observando_interfaces_do_sistema_com_ifconfig] | ||
+ | |||
+ | =AULA 13 - Dia 30/04/2019= | ||
+ | |||
+ | *Revisão do Conceito de Protocolo ([-] Laboratório 3 - Conceituando protocolos ) | ||
+ | *O DNS como protocolo de Aplicação; | ||
+ | *Camada de Transporte: protocolo UDP | ||
+ | |||
+ | ==Revisão dos Conceitos de Protocolo== | ||
+ | |||
+ | Laboratório 3 - Conceituando protocolos [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)#Parte_1:_Observando_interfaces_do_sistema_com_ifconfig] | ||
+ | |||
+ | ==O DNS como protocolo de Aplicação== | ||
+ | |||
+ | Laboratório 7 - Serviço de Nomes (DNS) [https://wiki.sj.ifsc.edu.br/index.php/Curso_T%C3%A9cnico_Integrado_de_Telecomunica%C3%A7%C3%B5es_-_Redes_de_Computadores_(RCO)#Parte_1:_Observando_interfaces_do_sistema_com_ifconfig] | ||
+ | |||
+ | ==O Protocolo UDP== | ||
+ | |||
+ | Laboratório 8 - Desvendando o UDP - Básico | ||
+ | |||
+ | =AULA 14 - Dia 02/05/2019= | ||
+ | |||
+ | ==Objetivos== | ||
+ | |||
+ | *Explorar o papel e diferenças dos protocolos de Transporte TCP/UDP | ||
+ | *Explorar a Camada IP e aspectos da configuração da mesma sob o Linux | ||
+ | |||
+ | |||
+ | ===TCP e UDP=== | ||
+ | |||
+ | *[docente.ifsc.edu.br/odilson/RCO60803/TCP%20controle%20de%20erros.pdf] | ||
+ | *[docente.ifsc.edu.br/odilson/RCO60803/UDP%20Basico.pdf[ | ||
+ | |||
+ | ==Camada IP no Linux: Configuração das Interfaces usando ifconfig e ip addr== | ||
+ | |||
+ | Usando a ferramenta Netkit2, que permite construir redes virtuais com o Linux vamos construir DUAS redes locais interligadas por um roteador. Em cada rede colocaremos dois PCs. As interfaces estarão completamente desconfiguradas: | ||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | Construir um arquivo texto de nome rede.conf usando o editor de texto gedit. | ||
+ | <code>gedit rede.conf &</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Criar a seguinte topologia: | ||
+ | <code> | ||
+ | #Descrição das Máquinas e Roteadores | ||
+ | r1[type]=generic | ||
+ | |||
+ | pc1[type]=generic | ||
+ | pc2[type]=generic | ||
+ | |||
+ | pc3[type]=generic | ||
+ | pc4[type]=generic | ||
+ | |||
+ | #Definição da Topologia da Rede | ||
+ | |||
+ | pc1[eth0]=lan0 | ||
+ | pc2[eth0]=lan0 | ||
+ | |||
+ | pc3[eth0]=lan1 | ||
+ | pc4[eth0]=lan1 | ||
+ | |||
+ | r1[eth0]=lan0 | ||
+ | r1[eth1]=lan1 | ||
+ | </syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Executar netkit fazendo (atualize se necessário - pergunte para o professor como fazer): | ||
+ | Aplicativos >> Educativo >> Netkit2 | ||
+ | </li> | ||
+ | <li> | ||
+ | Carregar o arquivo lab.conf a partir do Netkit2: | ||
+ | <code>File >> Load Only</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Visualizar a rede a ser implementada: | ||
+ | <code>File >> Graph</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Executar a configuração: | ||
+ | <code>Network >> Start</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Verificar o estado de todas interfaces (se UP ou DOWN) com: | ||
+ | <code>ifconfig -a</syntaxhighlight> | ||
+ | <code>ip addr</syntaxhighlight> | ||
+ | Note que nas últimas versões do Linux o comando ip vem sendo recomendado (embora o ifconfig ainda esteja disponível). | ||
+ | </li> | ||
+ | <li> | ||
+ | Vamos configurar as interfaces. Para tanto vamos assumir que teremos duas sub-redes: | ||
+ | <code>lan0 - endereço da rede 10.10.10.0/24</syntaxhighlight> | ||
+ | <code>lan1 - endereço da rede 20.20.20.0/24</syntaxhighlight> | ||
+ | A interface eth0 de PC1 receberá o endereço 10.10.10.1/24 e a interface eth0 de PC2 recebera 10.10.10.2/24. A interface do roteador NA lan0 também deve receber um endereço: 10.10.10.254/24: | ||
+ | |||
+ | No PC1: | ||
+ | <code>ifconfig eth0 10.10.10.1/24</syntaxhighlight> | ||
+ | No PC2: | ||
+ | <code>ifconfig eth0 10.10.10.2/24</syntaxhighlight> | ||
+ | No R1: | ||
+ | <code>ifconfig eth0 10.10.10.254/24</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Seguindo a mesma lógica configure as máquinas e o roteador na lan1 | ||
+ | </li> | ||
+ | <li> Um ponto importante a ser lembrado é que quando uma interface é configurada com um número IP, a tabela de roteamento do sistema é alimentada com o número correspondente da rede associada ao número. Isto pode ser observado em TODAS as máquinas, inclusive no roteador: | ||
+ | <code> route -n </syntaxhighlight> | ||
+ | ou | ||
+ | <code> ip route </syntaxhighlight> | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | ==Camada IP no Linux: verificando e configurando rotas - configuração da rota default == | ||
+ | |||
+ | <ol> | ||
+ | <li> Um ponto importante a ser lembrado é que quando uma interface é configurada com um número IP, a tabela de roteamento do sistema é alimentada com o número correspondente da rede associada ao número. Isto pode ser observado em TODAS as máquinas, inclusive no roteador: | ||
+ | <code> route -n </syntaxhighlight> | ||
+ | ou | ||
+ | <code> ip route </syntaxhighlight> | ||
+ | Esta informação é importante pois define a entrega DIRETA de pacotes na rede, ou seja, se PC1 quiser enviar um pacote para PC2, esta linha na tabela de roteamento garante que o pacote IP seja despachado diretamente para o PC2 através de um frame ETHERNET endereçado para o MAC do PC1. | ||
+ | </li> | ||
+ | <li> Confira os endereços MAC e IP das interfaces dos PC1 e PC2 e anote. Faça um ping no PC1 em direção a PC2. | ||
+ | <code>root@pc1:~# ping 10.10.10.2</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> Use um capturador de pacotes em modo texto para observar o tráfego na eth0 do PC2. Observe os endereços MAC do Frame Ethernet e os endereços IP do pacote IP. | ||
+ | <code>root@pc2:~# tcpdump -i eth0 -e</syntaxhighlight> | ||
+ | ENTÃO? O que se pode concluir? É uma entrega direta ou indireta? | ||
+ | </li> | ||
+ | <li> Uma curiosidade. Tente observar o tráfego na interface eth0 do Roteador R1. É possível observar algo? O que se pode concluir? Pare agora o ping e os tcpdumps executados. | ||
+ | </li> | ||
+ | <li> Qualquer máquina IP acaba tomando uma decisão de roteamento. O PC1, ao observar que PC2 está na sua própria rede 10.10.10.0/24, entrega diretamente o pacote. E se PC1 tentar entregar para PC3? Faça um ping e observe o que acontece: | ||
+ | <code>root@pc1:~#ping 20.20.20.1</syntaxhighlight> | ||
+ | Não deve ter funcionado :-( | ||
+ | Um primeiro problema é que simplesmente a camada IP observa que o endereço não é entrega DIRETA mas não tem informação (linha) na tabela de roteamento dizendo para quem deve ser entregue o pacote. | ||
+ | </li> | ||
+ | <li> Vamos acrescentar uma linha na tabela de PC1 dizendo como fazer esta entrega INDIRETA. Usaremos o conceito de gateway default. Ou seja, se não tiver para quem entregar explicitamente, o pacote será entregue para o gateway default: | ||
+ | <code>root@pc1:~# route add default gateway 10.10.10.254</syntaxhighlight> | ||
+ | confira o estabelocimento da rota: | ||
+ | <code>root@pc1:~# route -n</syntaxhighlight> | ||
+ | tente o ping novamente escutando com o tcpdump na interface eth0 de R1. Ainda não funcionou mas o R1 já recebe os pacotes. Confira o MAC de destino do pacote. Deve ser o MAC do roteador. | ||
+ | </li> | ||
+ | <li> | ||
+ | POR QUE NÃO FUNCIONOU: será que R1 não sabe como entregar o pacote para PC3? Confira se o pacote sai de R1 na rede lan1: | ||
+ | <code>root@r1:~# tcpdump -i eth2 -e</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Temos um problema ainda que o nosso roteador Linux NÃO está habilitado a ser roteador. Isto pode ser feito com: | ||
+ | <code>echo 1 > /proc/sys/net/ipv4/ip_forward</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> Tente novamente o ping de PC1 para PC3. Ainda não funcionará mas escute a interface eth1 de R1 e a interface eth0 de PC3 e verá que os pacotes do ICMP REQUEST estão chegando. Confira inclusive os MACs envolvidos... | ||
+ | </li> | ||
+ | <li> | ||
+ | O que estaria faltando ainda para que PC3 responda aos ECHO REQUEST? O problema é de entrega indireta. O PC3 não sabe como entregar pacotes "externos". Acrescente um gateway default. | ||
+ | </li> | ||
+ | <li> | ||
+ | Exercício adicional com 2 roteadores. Ver manual: | ||
+ | * [http://linux-ip.net/html Guia de Administração da Camada IP no Linux | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | ==Exercício: acrescentando uma lan2 com com 2 PCs no roteador== | ||
+ | |||
+ | Acrescente uma rede 30.30.30.0/24 (lan2) no roteador R1. Acrescente 2 PCs e configure o sistema. | ||
+ | Teste a conectividade entre todos os PCs. | ||
+ | |||
+ | <code> | ||
+ | #Descrição das Máquinas e Roteadores | ||
+ | r1[type]=gateway | ||
+ | r2[type]=gateway | ||
+ | |||
+ | pc1[type]=generic | ||
+ | pc2[type]=generic | ||
+ | |||
+ | pc3[type]=generic | ||
+ | pc4[type]=generic | ||
+ | |||
+ | pc5[type]=generic | ||
+ | pc6[type]=generic | ||
+ | |||
+ | pc7[type]=generic | ||
+ | pc8[type]=generic | ||
+ | |||
+ | |||
+ | #Definição da Topologia da Rede | ||
+ | |||
+ | pc1[eth0]=lan0:ip=10.10.10.1/24 | ||
+ | pc1[default_gateway]=10.10.10.254 | ||
+ | |||
+ | pc2[eth0]=lan0:ip=10.10.10.2/24 | ||
+ | pc2[default_gateway]=10.10.10.254 | ||
+ | |||
+ | pc3[eth0]=lan1:ip=20.20.20.1/24 | ||
+ | pc3[default_gateway]=20.20.20.254 | ||
+ | |||
+ | pc4[eth0]=lan1:ip=20.20.20.2/24 | ||
+ | pc4[default_gateway]=20.20.20.254 | ||
+ | |||
+ | pc5[eth0]=lan2:ip=30.30.30.1/24 | ||
+ | pc5[default_gateway]=30.30.30.254 | ||
+ | |||
+ | pc6[eth0]=lan2:ip=30.30.30.2/24 | ||
+ | pc6[default_gateway]=30.30.30.254 | ||
+ | |||
+ | pc7[eth0]=lan4:ip=40.40.40.1/24 | ||
+ | pc7[default_gateway]=40.40.40.254 | ||
+ | |||
+ | pc8[eth0]=lan3:ip=50.50.50.1/24 | ||
+ | pc8[default_gateway]=40.40.40.254 | ||
+ | |||
+ | |||
+ | r1[eth0]=lan0:ip=10.10.10.254/24 | ||
+ | r1[eth1]=lan1:ip=20.20.20.254/24 | ||
+ | r1[eth2]=lan2:ip=30.30.30.254/24 | ||
+ | r1[eth3]=lan3:ip=50.50.50.253/24 | ||
+ | r2[eth1]=lan3:ip=50.50.50.254/24 | ||
+ | r2[eth0]=lan4:ip=40.40.40.254/24 | ||
+ | |||
+ | r2[route]=10.10.10.0/24:gateway=50.50.50.253 | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |||
+ | =AULA 15 - Dia 7/05/2019= | ||
+ | |||
+ | *Hubs X Switches. O Papel do Protocolo ARP | ||
+ | |||
+ | |||
+ | *Serviço DHCP e NAT | ||
+ | [-] Laboratório 16 - Sub-redes e Roteamento Estático em Redes | ||
+ | |||
+ | ==Hubs, Switches. Protocolo ARP== | ||
+ | |||
+ | [Laboratório 17 - Tecnologia de Enlace Ethernet] | ||
+ | |||
+ | ==Serviço DHCP== | ||
+ | |||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/IP_DHCP_NAT.pdf DHCP e NAT] | ||
+ | |||
+ | Construir uma rede simular a aula anterior mas deixar PC1 e PC2 desconfigurados. Criar uma máquina para atuar como servidor DHCP. | ||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | Editar o arquivo de configuração do dhcp server: | ||
+ | |||
+ | <code> | ||
+ | #Descrição das Máquinas e Roteadores | ||
+ | r1[type]=gateway #já habilitado para forward | ||
+ | |||
+ | pc1[type]=generic | ||
+ | pc2[type]=generic | ||
+ | |||
+ | pc3[type]=generic | ||
+ | pc4[type]=generic | ||
+ | |||
+ | pcdhcp[type]=generic | ||
+ | |||
+ | |||
+ | #Definição da Topologia da Rede | ||
+ | |||
+ | pc1[eth0]=lan0 #desconfigurada... | ||
+ | |||
+ | pc2[eth0]=lan0:ip=10.10.10.2/24 | ||
+ | pc2[default_gateway]=10.10.10.254 | ||
+ | |||
+ | pcdhcp[eth0]=lan0:ip=10.10.10.3/24 | ||
+ | pcdhcp[default_gateway]=10.10.10.254 | ||
+ | |||
+ | pc3[eth0]=lan1:ip=20.20.20.1/24 | ||
+ | pc3[default_gateway]=20.20.20.254 | ||
+ | |||
+ | pc4[eth0]=lan1:ip=20.20.20.2/24 | ||
+ | pc4[default_gateway]=20.20.20.254 | ||
+ | |||
+ | |||
+ | r1[eth0]=lan0:ip=10.10.10.254/24 | ||
+ | r1[eth1]=lan1:ip=20.20.20.254/24 | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | </li> | ||
+ | <li> No server estabelecer a configuração desejada: | ||
+ | |||
+ | nano /etc/dhcp/dhcpd.conf | ||
+ | |||
+ | com: | ||
+ | |||
+ | <code> | ||
+ | |||
+ | subnet 10.10.10.0 netmask 255.255.255.0 { | ||
+ | range 10.10.10.10 10.10.10.50; | ||
+ | option routers 10.10.10.254; | ||
+ | option broadcast-address 10.10.10.255; | ||
+ | default-lease-time 600; | ||
+ | max-lease-time 7200; | ||
+ | } | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |||
+ | </li> | ||
+ | <li> | ||
+ | Rodar o servidor DHCP na máquina pc_dhcp: | ||
+ | <code> | ||
+ | /usr/sbin/dhcpd -q -4 -pf /run/dhcp-server/dhcpd.pid -cf /etc/dhcp/dhcpd.conf eth0 | ||
+ | </syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | No cliente (PC1) fazer: | ||
+ | <code> | ||
+ | dhclient -v eth0 | ||
+ | </syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Usando o ifconfig e route confira se o PC1 está completamente configurado. Faça teste com o ping | ||
+ | </li> | ||
+ | <li> Rode o tcpdump na eth0 de r1 para "verificar" os pacotes DHCP: | ||
+ | <code> | ||
+ | tcpdump -i eth0 | ||
+ | </syntaxhighlight> | ||
+ | </li> | ||
+ | <li> Repetir a operação no PC2. Baixe a interface antes: | ||
+ | <code> | ||
+ | ifconfig eth0 down | ||
+ | dhclient -v eth0 | ||
+ | </syntaxhighlight> | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | ==O NAT== | ||
+ | |||
+ | Vamos tentar elaborar um laboratório usando o NAT MASQUERADE | ||
+ | https://www.karlrupp.net/en/computer/nat_tutorial | ||
+ | |||
+ | Construir uma rede com 3 LANs e 2 roteadores como na aula passada. Executar o APACHE em uma máquina da lan3 (exemplo PC4). Não colocar rotas para lan0 em r2. Desta forma PC1 não deve pingar em PC4. | ||
+ | |||
+ | <code> | ||
+ | LAN0 <-R1-> LAN1 <-R2 -> LAN3 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | <code> | ||
+ | #Descrição das Máquinas e Roteadores | ||
+ | r1[type]=gateway | ||
+ | r2[type]=gateway | ||
+ | |||
+ | pc1[type]=generic | ||
+ | apache[type]=generic | ||
+ | |||
+ | |||
+ | pc1[eth0]=lan0:ip=10.10.10.1/24 | ||
+ | pc1[default_gateway]=10.10.10.254 | ||
+ | |||
+ | |||
+ | r1[eth0]=lan0:ip=10.10.10.254/24 | ||
+ | r1[eth1]=lan1:ip=20.20.20.254/24 | ||
+ | r1[route]=30.30.30.0/24:gateway=20.20.20.253 | ||
+ | |||
+ | r2[eth0]=lan1:ip=20.20.20.253/24 | ||
+ | r2[eth1]=lan2:ip=30.30.30.254/24 | ||
+ | |||
+ | apache[eth0]=lan2:ip=30.30.30.1/24 | ||
+ | apache[default_gateway]=30.30.30.254 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | <ol> | ||
+ | <li> Rodar o apache em PC4: | ||
+ | <code> /etc/init.d/apache2 start </syntaxhighlight> | ||
+ | </li> | ||
+ | <li> Testar se o Apache é acessível a partir de PC3 | ||
+ | <code>lynx END_PC3 </syntaxhighlight> | ||
+ | <li> | ||
+ | Em R1 fazer: | ||
+ | <code>iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> Monitorar os pacotes que chegam e saem da eth0 de PC4. | ||
+ | </li> | ||
+ | <li> Fazer em PC1: | ||
+ | lynx END_PC4 #endereço de PC4. | ||
+ | O que se pode concluir? | ||
+ | </li> | ||
+ | |||
+ | </ol> | ||
+ | |||
+ | =AULA 16 - Dia 09/05/2019= | ||
+ | *Endereçamento IPv4. | ||
+ | *Exercícios segmentação Redes. | ||
+ | |||
+ | ===Objetivos=== | ||
+ | *Compreender endereçamento IPv4. | ||
+ | *Compreender o processo de alocação de faixas de IPs. | ||
+ | *Compreender e manipular os números IPs. | ||
+ | *Compreender e manipular as máscaras de rede. | ||
+ | *Proporcionar ao aluno uma visão prática de roteamento IP. | ||
+ | |||
+ | ===Fonte Básica=== | ||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/IP_DHCP_NAT.pdf DHCP e NAT] | ||
+ | *[http://www.davidc.net/sites/default/subnets/subnets.html Cálculo de sub-redes] | ||
+ | |||
+ | ===Roteiro=== | ||
+ | |||
+ | #Baseado no arquivo exemplo abaixo, crie um arquivo de configuração para o NetKit que implemente sua proposta. O arquivo deve contemplar todas as configurações necessárias para o perfeito funcionamento da rede, ou seja, ao carregar o arquivo todos os hosts deverão ser capazes de "pingar" uma ao outro. | ||
+ | ##Faça testes de conectividade entre os hosts. | ||
+ | ##Demonstre para o professor o perfeito funcionamento de sua rede. | ||
+ | *O arquivo de configuração do Netkit abaixo, é a definição para o funcionamento da simulação da rede apresentada na Figura 2. Falta adicionar as rotas. | ||
+ | |||
+ | [[Arquivo:DynamicRoutingTriangle.png |thumb | 400px| Figura 2 - Rede exemplo]] | ||
+ | |||
+ | <code> | ||
+ | # Hosts definitions | ||
+ | pc1[type]=generic | ||
+ | pc2[type]=generic | ||
+ | pc3[type]=generic | ||
+ | |||
+ | # Hosts' interfaces to local routers | ||
+ | pc1[eth0]=link0:ip=192.168.0.1/24 | ||
+ | pc2[eth0]=link1:ip=192.168.1.1/24 | ||
+ | pc3[eth0]=link2:ip=192.168.2.1/24 | ||
+ | |||
+ | # Default gateways definitions | ||
+ | pc1[default_gateway]=192.168.0.254 | ||
+ | pc2[default_gateway]=192.168.1.254 | ||
+ | pc3[default_gateway]=192.168.2.254 | ||
+ | |||
+ | # Routers definitions | ||
+ | r1[type]=gateway | ||
+ | r2[type]=gateway | ||
+ | r3[type]=gateway | ||
+ | |||
+ | # Routers' interfaces to local networks | ||
+ | r1[eth0]=link0:ip=192.168.0.254/24 | ||
+ | r2[eth0]=link1:ip=192.168.1.254/24 | ||
+ | r3[eth0]=link2:ip=192.168.2.254/24 | ||
+ | |||
+ | # Network "backbone" links | ||
+ | r1[eth1]=backbone0:ip=10.0.0.1/30 | ||
+ | r1[eth2]=backbone1:ip=10.0.1.1/30 | ||
+ | |||
+ | r2[eth1]=backbone0:ip=10.0.0.2/30 | ||
+ | r2[eth2]=backbone2:ip=10.0.2.1/30 | ||
+ | |||
+ | r3[eth1]=backbone1:ip=10.0.1.2/30 | ||
+ | r3[eth2]=backbone2:ip=10.0.2.2/30 | ||
+ | |||
+ | # Routes definition | ||
+ | r1[route]=192.168.2.0/24:gateway=10.0.1.2 | ||
+ | r1[route]=192.168.1.0/24:gateway=10.0.0.2 | ||
+ | r1[route]=10.0.2.0/30:gateway=10.0.0.2 | ||
+ | |||
+ | r2[route]=192.168.0.0/24:gateway=10.0.0.1 | ||
+ | r2[route]=192.168.2.0/24:gateway=10.0.2.2 | ||
+ | r2[route]=10.0.1.0/30:gateway=10.0.2.2 | ||
+ | |||
+ | r3[route]=192.168.0.0/24:gateway=10.0.1.1 | ||
+ | r3[route]=192.168.1.0/24:gateway=10.0.2.1 | ||
+ | r3[route]=10.0.0.0/30:gateway=10.0.2.1 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | ===Exercícios Extras (resolvidos)=== | ||
+ | *[[Arquivo:exercicios_CIDR.pdf]] | ||
+ | |||
+ | ===Referencia=== | ||
+ | *[http://www.davidc.net/sites/default/subnets/subnets.html Link Calculador Online de Subnets] | ||
+ | |||
+ | =AULA 17 - Dia 14/05/2019= | ||
+ | |||
+ | *Finalização do Laboratório do NAT | ||
+ | *Laboratório de Introdução ao IPV6 | ||
+ | *Introdução ao Access Point TPLINK N750: configuração da LAN e WAN | ||
+ | |||
+ | ==LAboratório de Introdução ao IPv6== | ||
+ | |||
+ | ===Material de REferência=== | ||
+ | |||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/IPv6.pdf IPv6] | ||
+ | |||
+ | ===Roteiro de atividades sobre o IPv6=== | ||
+ | |||
+ | A figura abaixo apresenta o diagrama esquemático da rede a ser montada/analisada. Observe que todos os IPv6 ''Global Unicast'' já estão definidos na mesma, são esses IPs que utilizaremos em nosso experimento. | ||
+ | |||
+ | [[Arquivo:Diagrama_rede_IPv6.jpg]] | ||
+ | |||
+ | #Crie em seu computador um arquivo com nome '''/home/aluno/IPv6.conf''', com o seguinte conteúdo: <syntaxhighlight lang=bash> | ||
+ | #Ligacao das maquinas nos dominios de colisao | ||
+ | #Duas pequenas redes interligadas pelo backbone | ||
+ | |||
+ | # Hosts definitions | ||
+ | pc1[type]=generic | ||
+ | pc2[type]=generic | ||
+ | pc3[type]=generic | ||
+ | pc4[type]=generic | ||
+ | |||
+ | # Hosts' interfaces to local routers | ||
+ | pc1[eth0]=link0:ipv6=2001:bcc:faca:1::101/64 | ||
+ | pc2[eth0]=link1:ipv6=2001:bcc:cafe:1::102/64 | ||
+ | pc3[eth0]=HUB1:ipv6=2001:bcc:1f0:1::103/64 | ||
+ | pc4[eth0]=HUB1 | ||
+ | |||
+ | #Default Gateways definitions | ||
+ | pc1[route]=default6:gateway=2001:bcc:faca:1::1 | ||
+ | pc2[route]=default6:gateway=2001:bcc:cafe:1::1 | ||
+ | pc3[route]=default6:gateway=2001:bcc:1f0:1::1 | ||
+ | |||
+ | # Routers definitions | ||
+ | r1[type]=gateway | ||
+ | r2[type]=gateway | ||
+ | |||
+ | #Routers interfaces definitions | ||
+ | r1[eth0]=backbone0:ipv6=2001:db8:dead:1::1/64 | ||
+ | r1[eth1]=link0:ipv6=2001:bcc:faca:1::1/64 | ||
+ | r1[eth2]=link1:ipv6=2001:bcc:cafe:1::1/64 | ||
+ | |||
+ | r2[eth0]=backbone0:ipv6=2001:db8:dead:1::2/64 | ||
+ | r2[eth1]=HUB1:ipv6=2001:bcc:1f0:1::1/64 | ||
+ | |||
+ | #Routers definitions | ||
+ | r1[route]=2001:bcc:1f0:1::0/64:gateway=2001:db8:dead:1::2 | ||
+ | r2[route]=2001:bcc:faca:1::0/64:gateway=2001:db8:dead:1::1 | ||
+ | r2[route]=2001:bcc:cafe:1::0/64:gateway=2001:db8:dead:1::1 | ||
+ | </syntaxhighlight> | ||
+ | #Tenha certeza que o Netkit2 estja atualizado: General >> Update. | ||
+ | #Rode o NetKit em seu computador. Em um terminal digite: <syntaxhighlight lang=bash> | ||
+ | netkit2 & </syntaxhighlight> | ||
+ | #No menu '''File''' - '''Load and Run''', procure o arquivo '''/home/aluno/IPv6.conf''' e clique em OK. Abrirá uma janela com 6 abas, onde cada uma delas é um terminal de configuração do respectivo equipamento: '''pc1-4''' ou '''r1-2'''. | ||
+ | #Observe que o '''pc4''' não está com sua interface configurada. | ||
+ | #Ao clicar no menu '''File''' - '''Graph''', pode-se ter uma visão da rede a ser simulada e conferir se é equivalente ao diagrama proposto. | ||
+ | #Faça um '''ping6''' entre o '''pc1''' ao '''pc3''': <syntaxhighlight lang=bash> | ||
+ | ping6 -c4 2001:bcc:1f0:1::103 </syntaxhighlight> | ||
+ | #Faça um '''ping6''' entre o '''pc1''' e '''pc2'''. | ||
+ | #No '''pc4''' use o seguinte comando para adicionar o endereço IPv6 à interface de rede: <syntaxhighlight lang=bash> | ||
+ | ip addr add 2001:bcc:1f0:1::104/64 dev eth0 </syntaxhighlight> | ||
+ | #No '''pc4''', acrescente o ''default gateway'' com o seguinte comando: <syntaxhighlight lang=bash> | ||
+ | ip -6 route add default via 2001:bcc:1f0:1::1 dev eth0 </syntaxhighlight> | ||
+ | #No '''pc1''' use o seguinte comando para verificar como ficou a configuração dos endereços da interface de rede. O resultado é similar ao apresentado pelo comando '''ifconfig''': <syntaxhighlight lang=bash> | ||
+ | ip addr show dev eth0 </syntaxhighlight> | ||
+ | #Todo o roteamento está pronto, mas caso desejássemos poderíamos acrescentar rotas com comando similares aos já utilizados. Por exemplo, no '''r1''', para adicionar uma rota estática para a rede dos '''pc3''' e '''pc4''' utilizaríamos o seguinte comando: <syntaxhighlight lang=bash> | ||
+ | ip -6 route add 2001:bcc:1f0:1::/64 via 2001:db8:dead:1::2 dev eth0 </syntaxhighlight> | ||
+ | #Confira as rotas estabelecidas em todos os ''hosts'' com o comando abaixo. | ||
+ | ##São coerentes com os dados apresentados no diagrama acima?<syntaxhighlight lang=bash> | ||
+ | ip -6 route show </syntaxhighlight> | ||
+ | #No '''pc1''' use os seguintes comandos para ver a rota para alguns vizinhos: <syntaxhighlight lang=bash> | ||
+ | traceroute6 2001:bcc:1f0:1::103 | ||
+ | traceroute6 2001:bcc:1f0:1::104 </syntaxhighlight> | ||
+ | #*Anote as rotas. | ||
+ | #Deixe um '''ping6''' entre o '''pc1''' ao '''pc3''' rodando: <syntaxhighlight lang=bash> | ||
+ | ping6 2001:bcc:1f0:1::103 </syntaxhighlight> | ||
+ | |||
+ | ==Introdução ao Roteador-AP da TP-Link== | ||
+ | |||
+ | Ver manual https://www.tp-link.com/us/support/download/tl-wdr4300/ | ||
+ | |||
+ | ===Configuração Básica=== | ||
+ | |||
+ | Seguir as instruções do professor para a seguinte configuração: | ||
+ | |||
+ | #Retirar o plugue cabo ethernet que liga o PC do Lab a rede do IFSC. Conectar o PC a uma das portas LAN do AP; | ||
+ | #Conectar a WAN do AP ao Lab. do IFSC; | ||
+ | #Em um terminal do PC aplique o comando: | ||
+ | sudo dhclient eth0 | ||
+ | #No browser do PC acesse o AP colocando o endereço: | ||
+ | http://tplinklogin.net | ||
+ | #Entrar com user admin e senha admin | ||
+ | #Configurar a WAN para DHCP (IP dinâmico) | ||
+ | #Configurar a LAN para DHCP na faixa 192.168.0.10 a 192.168.0.100 | ||
+ | #Usar uma máquina virtual para testar a aquisição do IP: | ||
+ | pc1[type]=generic | ||
+ | pc1[eth0]=uplink:bridge=eth0 | ||
+ | |||
+ | DESAFIO 1: Elabore um experimento para mostrar que a LAN do AP funciona como um switch. | ||
+ | Sugestão: Use uma máquina adicional colocada em uma porta do AP. | ||
+ | |||
+ | DESAFIO 2: Elabore um experimento para mostrar como o NAT funciona no AP. Se inspire no experimento realizado sobre o NAT. | ||
+ | |||
+ | =AULA 18 - Dia 16/05/2019= | ||
+ | |||
+ | ==Objetivos== | ||
+ | |||
+ | |||
+ | PARTE 0 - Exercício de Revisão | ||
+ | |||
+ | PARTE 1 - Serviços de rede sobre o Linux | ||
+ | |||
+ | *serviço SSH no Linux | ||
+ | |||
+ | PARTE 2 - Acesso a rede WIFI | ||
+ | |||
+ | *conceitos básicos de redes sem fio: pg.103 de [https://pt.scribd.com/document/48655010/Formacao-de-Suporte-Tecnico-Proinfo] | ||
+ | *configuração da WIFI no Access Point e Acesso via Linux | ||
+ | |||
+ | ===PARTE 0=== | ||
+ | |||
+ | Considere a rede abaixo definida pelo arquivo do netkit. Configure as redes com os seguintes prefixos: | ||
+ | |||
+ | *lan0: 50.50.50.0/24 | ||
+ | *lan1: 60.60.60.0/24 | ||
+ | *lan2: 70.70.70.0/24 | ||
+ | |||
+ | O pc2dhcp deve ser configurado como servidor DHCP e deverá liberar IPs na faixa de 50.50.50.100/24 a 50.50.50.200/24. Todos os PCs receberão IP estáticos com exceção do PC1 que deverá receber dinamicamente o endereço. Toda a configuração deve ser realizada manualmente. | ||
+ | |||
+ | Teste a conectividade entre todos os PCs. Usando o tcpdump demonstre que quando PC2 faz um ping em PC4 a entrega será indireta. Demonstre usando o MAC address das máquinas como apoio. Chame o professor para demonstrar. | ||
+ | |||
+ | ALGUNS COMANDOS NOTÁVEIS: | ||
+ | |||
+ | ifconfig | ||
+ | ifconfig eth0 10.10.10.1/24 | ||
+ | route -n | ||
+ | route add default gw 200.10.1.254 | ||
+ | route del -net 200.10.1.0/24 gw 200.10.2.1 | ||
+ | route add -net 200.10.1.0/24 gw 200.10.2.1 | ||
+ | |||
+ | tcpdump -i eth1 -n -e | ||
+ | |||
+ | <code> | ||
+ | # Hosts definitions | ||
+ | pc1[type]=generic | ||
+ | pc2dhcp[type]=generic | ||
+ | |||
+ | pc3[type]=generic | ||
+ | pc4[type]=generic | ||
+ | |||
+ | # Routers definitions | ||
+ | r1[type]=gateway | ||
+ | r2[type]=gateway | ||
+ | |||
+ | # Hosts' interfaces to local routers | ||
+ | pc1[eth0]=lan0 | ||
+ | pc2dhcp[eth0]=lan0 | ||
+ | |||
+ | pc3[eth0]=lan1 | ||
+ | |||
+ | pc4[eth0]=lan2 | ||
+ | |||
+ | r1[eth0]=lan0 | ||
+ | r1[eth1]=lan1 | ||
+ | |||
+ | r2[eth0]=lan1 | ||
+ | r2[eth1]=lan2 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Solução: | ||
+ | R1: | ||
+ | ifconfig eth0 50.50.50.254/24 | ||
+ | ifconfig eth1 60.60.60.254/24 | ||
+ | route add -net 70.70.70.0/254 gw 60.60.60.253 | ||
+ | R2: | ||
+ | ifconfig eth1 70.70.70.254/24 | ||
+ | ifconfig eth0 60.60.60.253/24 | ||
+ | route add -net 50.50.50.0/24 gw 60.60.60.254 | ||
+ | PC2DHCP: | ||
+ | ifconfig eth0 50.50.50.2/24 | ||
+ | route add default gateway 50.50.50.254 | ||
+ | configurar server: nano /etc/dhcp/dhcpd.conf | ||
+ | # A slightly different configuration for an internal subnet. | ||
+ | subnet 50.50.50.0 netmask 255.255.255.0 { | ||
+ | range 50.50.50.100 50.50.50.200; | ||
+ | # option domain-name-servers ns1.internal.example.org; | ||
+ | # option domain-name "internal.example.org"; | ||
+ | option routers 50.50.50.254; | ||
+ | option broadcast-address 50.50.50.255; | ||
+ | default-lease-time 600; | ||
+ | max-lease-time 7200; | ||
+ | } | ||
+ | |||
+ | /usr/sbin/dhcpd -q -4 -pf /run/dhcp-server/dhcpd.pid -cf /etc/dhcp/dhcpd.conf eth0 | ||
+ | PC3: | ||
+ | ifconfig eth0 60.60.60.1/24 | ||
+ | route add default gw 60.60.60.254 #note que poderia ser para o outro roteador (R2) | ||
+ | PC4: | ||
+ | ifconfig eth0 70.70.70.1/24 | ||
+ | route add default gw 70.70.70.254 | ||
+ | PC1: | ||
+ | dhclient eth0 -v | ||
+ | |||
+ | ==Serviço SSH== | ||
+ | |||
+ | O Serviço SSH se utiliza do modelo cliente-servidor. Deve-se executar um servidora ssh na máquina que permitirá o acesso remoto. | ||
+ | Um cliente a partir de uma outra máquina poderá logar remotamente usando um cliente ssh ou poderá fazer outras operações, tipo cópia remota | ||
+ | de arquivos. | ||
+ | |||
+ | ===ETAPA 1 - Rodando o servidor SSH=== | ||
+ | *Baseado no Material do Prof.Odilson Valle | ||
+ | |||
+ | No Ubuntu server: | ||
+ | <ol> | ||
+ | <li> | ||
+ | <code>sudo su</syntaxhighlight> | ||
+ | <code>apt-get update</syntaxhighlight> | ||
+ | <code>apt-get install ssh</syntaxhighlight> O SSH já estará funcionando normalmente. | ||
+ | Para configurações extras deve-se editar o arquivo /etc/ssh/sshd_config e acrescentar, por exemplo: | ||
+ | *X11Forwarding yes (no) ### habilita/desabilita acesso com ambiente gráfico remoto | ||
+ | *AllowUsers Fred Wilma ### Libera o acesso somente para os usuários Fred e Wilma | ||
+ | *DenyUsers Dino Pebbles ### Bloqueia o acesso aos usuários Dino e Pebbles e libera para os demais usuários | ||
+ | *AllowGroups admin ### Libera o acesso somente para o grupo admin. | ||
+ | </li> | ||
+ | <li> | ||
+ | Após modificar o arquivo de configuração deve-se reiniciar o serviço: <code>service ssh restart</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Criar um usuário na máquina servidora: | ||
+ | <code>adduser alien</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Logar como alien: | ||
+ | <code>su alien</syntaxhighlight> | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | ===ETAPA 2 - Logando remotamente=== | ||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | Para acessar o servidor basta digitar em um terminal: | ||
+ | <code>ssh alien@ip_do_servidor. </syntaxhighlight> Será solicitado a senha. | ||
+ | </li> | ||
+ | <li> | ||
+ | Confira que está "dentro" da máquina remota:<code>hostname</syntaxhighlight> | ||
+ | </li> | ||
+ | <li> | ||
+ | Confira os arquivos do diretório corrente:<code>ls -l</syntaxhighlight> | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | |||
+ | ===ETAPA 3 - Cópia Remota de aquivos=== | ||
+ | |||
+ | #Na máquina hospedeira/cliente, EM OUTRO TERMINAL, criar um arquivo qualquer usando um editor de texto:<code>gedit teste.txt &</syntaxhighlight> | ||
+ | #Envie o arquivo para a máquina servidora: <code>scp teste.txt alien@IP_MAQUINA_SERVIDORA:./</syntaxhighlight> | ||
+ | #No terminal onde está logado remotamente confira se o arquivo está copiado: <code>ls -l</syntaxhighlight> | ||
+ | #Mude o nome do arquivo: <code>mv teste.txt alfat.txt</syntaxhighlight> | ||
+ | #No terminal da máquina cliente traga novamente o arquivo: <code>scp alien@IP_MAQUINA_SERVIDORA:./alfa.txt .</syntaxhighlight> | ||
+ | #Confira se o arquivo foi copiado corretamente: <code>ls -l</syntaxhighlight> | ||
+ | |||
+ | ==PARTE 2 - Configuração do Access Point na rede de 2.4Ghz== | ||
+ | |||
+ | #Entrar na configuração do AP conforme aula anterior. | ||
+ | #Conectara a WAN do AP na rede do laboratório e o PC em uma porta da LAN do AP. | ||
+ | #Configurar a WAN para IP dinâmico. | ||
+ | #Configurar a rede WIreless 2.4 Ghz: | ||
+ | ##Nome SSID: nome FIC-NomeAluno | ||
+ | ##Configurar canal AUTO e channel width para AUTO | ||
+ | ##Habilite o broadcast da rede. | ||
+ | #Configurar segurança (Wireless Security) para WPA versão Automática, Criptografia AES e password ABCDEF | ||
+ | #Configurar o DHCP na LAN para distribuir endereços entre 192.168.0.100 e 192.168.0.200 | ||
+ | #Salve as configurações | ||
+ | #Reboote o roteador | ||
+ | |||
+ | ==Acessando a rede de dispostivo Celular== | ||
+ | |||
+ | #Teste o acesso a rede a partir de um celular. No Androi ligue e desligue o wifi. Deve aparecer a lista de dispositivos. | ||
+ | |||
+ | ==Habilitando Filtros por MAC== | ||
+ | |||
+ | *Na configuração da WLAN entre em Wireless MAC Filtering | ||
+ | *Em Filtering Rules coloque Deny (negar) | ||
+ | *Adicione um terminal que deseja bloquear o acesso. Utilize o MAC do seu celular (veja em configurações do telefone ou anote na opção Wireless Statistics) | ||
+ | *Habilite o Filtro e tente se conectar | ||
+ | |||
+ | OBS: Este filtro é interessante para ter maior segurança na rede, garantindo que somente dispositivos gabilitados possam acessá-la. | ||
+ | |||
+ | ==Coloque no ar a rede 5Ghz== | ||
+ | |||
+ | Repita o procedimento da rede de 2.4Ghz e coloque-a no ar. | ||
+ | |||
+ | Teste a conectividade com o celular. | ||
+ | |||
+ | |||
+ | |||
+ | =AULA 19 - Dia 21/05/2019= | ||
+ | |||
+ | ==Objetivos== | ||
+ | |||
+ | *Tópicos Adicionais sobre redes no Linux: Configuração Manual X NetworkManager | ||
+ | **Opções de Acesso a Internet: ADSL, Cabo | ||
+ | **Sistema de Arquivos em Rede: Samba Server | ||
+ | *Relatório de Avaliação 1 | ||
+ | *Opções de Extensão da Rede Wireless | ||
+ | |||
+ | ==Tópicos Adicionais sobre redes no Linux== | ||
+ | |||
+ | ===Configuração da Rede no Linux - o NetworkManager=== | ||
+ | |||
+ | Ao longo do curso estudamos vários comandos para ver e modificar parâmetros de rede. Entretanto, em uma instalação padrão de um sistema Linux Ubuntu vamos verificar que existe um serviço de suporte a estas configurações que permite configurar interfaces graficamente e reconectar/escolher uma rede. Trata-se do NetworkManager. Ver alguns detalhes aqui [https://www.hardware.com.br/dicas/entendendo-networkmanager.html] e aqui[https://wiki.debian.org/pt_BR/NetworkManager]. Este serviço tenta fornecer a melhor conectividade possível usando as interfaces disponíveis. O serviço é composto por: | ||
+ | |||
+ | *um processo do sistema (roda como serviço) monitorando constantemente as interfaces; | ||
+ | *uma applet para interação com o usuário (canto direito da interface); | ||
+ | |||
+ | O NetworkManager vai ignorar as configurações das interfaces realizadas em /etc/network/interfaces | ||
+ | |||
+ | Teste o uso do NetworkManager. Clique no topo do desktop a direita e inspecione as interfaces disponíveis. | ||
+ | |||
+ | Em algumas situações pode ser desejável desabilitar o NetworkManager. Na linha de comando pode ser executado: | ||
+ | |||
+ | sudo service network-manager stop | ||
+ | |||
+ | ===Configurando interfaces de forma manual === | ||
+ | |||
+ | TEXTO baseado nas anotações do Prog.Marcelo Sobral: | ||
+ | |||
+ | O arquivo ''/etc/network/interfaces'' contém declarações para configurar as interfaces de rede. Um exemplo de configuração básica contida nesse arquivo pode ser vista a seguir: | ||
+ | |||
+ | <syntaxhighlight lang=text> | ||
+ | auto lo eth0 | ||
+ | iface lo inet loopback | ||
+ | iface eth0 inet dhcp | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Esse exemplo pode ser interpretado assim: | ||
+ | * ''Linha 1'': declara que as interfaces ''lo'' e ''eth0'' devem ser ativadas automaticamente no boot. Se uma interface não aparecer em uma declaração como esta, então ela não será ativada. OBS: interface ativadas desta forma NÃO são controladas pelo ''NetworkManager''. | ||
+ | * ''Linha 2'': configura a interface ''lo'' como sendo do tiupo ''loopback''. Essa é uma interface especial criada puramente em software (uma interface de rede virtual), usada para comunicação entre processos de um mesmo computador. | ||
+ | * ''Linha 3'': configura a interface ''eth0'' de forma dinâmica usando [[GER-2010-1#DHCP|DHCP]]. A configuração de rede é solicitada usando a própria rede. Ness ecaso, deve existir algum equipamento ou computador nessa rede que seja um servidor DHCP, capaz de responder com uma mensagem contendo a configuração de rede a ser utilizada. | ||
+ | |||
+ | |||
+ | O exemplo anterior é bastante simplificado, uma vez que a configuração de rede de fato é obtida dinamicamente com DHCP. Isso pode ser suficiente para computadores usados somente para acesso a Internet, mas não para computadores que sejam servidores. Nesse caso, é melhor definir uma configuração de rede estática, como mostrado a seguir: | ||
+ | |||
+ | <syntaxhighlight lang=text> | ||
+ | auto lo eth0 | ||
+ | iface lo inet loopback | ||
+ | iface eth0 inet static | ||
+ | address 172.18.80.251 | ||
+ | netmask 255.255.128.0 | ||
+ | gateway 172.18.0.254 | ||
+ | dns-nameservers 191.36.8.2 191.36.8.3 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | A diferença em relação ao caso anterior está na declaração da interface ''eth0''. Ao invés de configurá-la com ''DHCP'', declararam-se todas as informações de rede. Assim, essa interface sempre será ativada com essas informações configuradas. No exemplo apresentado, as configurações de rede são: | ||
+ | * ''address 172.18.80.251'': endereço IP da interface | ||
+ | * ''netmask 255.255.128.0'': máscara de rede | ||
+ | * ''gateway 172.18.0.254'': endereço do gateway (ou roteador ''default'') | ||
+ | * ''dns-nameservers 191.36.8.2 191.36.8.3'': servidores DNS a serem utilizados (podem-se especificar um ou mais endereços IP) | ||
+ | |||
+ | O [http://manpages.ubuntu.com/manpages/trusty/en/man5/interfaces.5.html manual do arquivo /etc/network/interfaces] apresenta muitos outros detalhes sobre possíveis configurações de rede. | ||
+ | |||
+ | Antes da alteração de configuração de uma interface é interessante desativá-la: | ||
+ | ifdown eth0 | ||
+ | Alterar o arquivo /etc/network/interfaces | ||
+ | |||
+ | E na sequência ativá-la novamente: | ||
+ | ifup eth0 | ||
+ | ou | ||
+ | sudo /etc/init.d/networking restart | ||
+ | |||
+ | O comando ifup vai consultar o arquivo e alterar as configurações. Indiretamente, o script networking também usa o ifup para ativar as configurações (e todas demais que forem realizadas). | ||
+ | |||
+ | ==Relatório Avaliativo 1== | ||
+ | |||
+ | Criar um arquivo no OpenOffice nomeando-o SeuNomeSemEspaco-FICLinux-2019-A1 | ||
+ | |||
+ | Copiar e responder as questões abaixo: | ||
+ | |||
+ | 1.Faça um ifconfig na interface eth0. Cole um recorte da tela no espaço abaixo e faça um texto indicando qual o endereço de hardware associado a esta interface, qual o endereço IPv4 e qual a máscara de subrede. | ||
+ | |||
+ | |||
+ | 2.Faça um experimento usando o ping e o wireshark mostrando como o DNS atua para resolver o nome que está sendo "pingando". Informe em texto abaixo qual o IP do servidor DNS local e qual o IP do site que está sendo "pingado". | ||
+ | |||
+ | |||
+ | 3,Execute o laboratório do Netkit da forma e cole abaixo a figura da rede fornecida pelo netkit: | ||
+ | <code> | ||
+ | # Hosts definitions | ||
+ | pc1[type]=generic | ||
+ | pc2[type]=generic | ||
+ | pc3[type]=generic | ||
+ | |||
+ | |||
+ | # Routers definitions | ||
+ | r1[type]=gateway | ||
+ | |||
+ | # Hosts' interfaces to local routers | ||
+ | |||
+ | r1[eth0]=lan0 | ||
+ | r1[eth1]=lan1 | ||
+ | |||
+ | pc1[eth0]=lan0 | ||
+ | pc2[eth0]=lan0 | ||
+ | pc3[eth0]=lan1 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | 4.Configure todas as interfaces dos PC usando para lan0 o prefixo 50.50.50.0/24 e para lan1 use no lugar de 50 o dia de seu nascimento. | ||
+ | Cole uma tela mostrando PC1 pingando PC3. | ||
+ | |||
+ | 5.Informe abaixo o MAC da eth0 do roteador. | ||
+ | |||
+ | 6.Usando o tcpdump na eth0 do roteador mostre que a entrega é indireta. | ||
+ | |||
+ | ==Estendendo a rede através da LAN usando segundo AP e WAN== | ||
+ | |||
+ | Conecte um segundo AP (WAN do segundo AP a LAN do primeiro AP). Teste a conectividade colocando uma máquina Linux na LAN do segundo AP. | ||
+ | Esta configuração deve funcionar mas impõe um overhead adicional devido ao NAT realizado duas vezes... | ||
+ | |||
+ | DESAFIO: mostrar que o NAT está sendo duplicado. | ||
+ | |||
+ | [[Arquivo:WLAN-2PAs-viaWAN.png]] | ||
+ | |||
+ | ==Estendendo a rede através da LAN usando segundo AP e LAN== | ||
+ | |||
+ | Discuta com o colega ao lado e pense como poderia conectar o segundo AP via LAN. Uma configuração adicional será necessária. | ||
+ | |||
+ | ==Estendendo a rede através do Wireless (WDS)== | ||
+ | |||
+ | Estude no manual como poderia estender a rede Sem Fio usando conexão via WDS. | ||
+ | |||
+ | =AULA 20 - Dia 18/04/2019= | ||
+ | |||
+ | *Tópicos Adicionais sobre redes no Linux: | ||
+ | **Opções de Acesso a Internet: ADSL, Cabo | ||
+ | **Sistema de Arquivos em Rede: Samba Server (http://www.guiafoca.org/cgs/guia/avancado/ch-s-samba.html) | ||
+ | *Relatório Avaliativo 2 | ||
+ | |||
+ | ==Relatório Avaliativo== | ||
+ | |||
+ | ===PARTE 1=== | ||
+ | |||
+ | Usando a configuração abaixo do netkit2 e uma máquina Virtualbox devidamente configurada implementar a configuração abaixo: | ||
+ | |||
+ | ATENÇÂO: Vamos substituir a VirtualBox por uma máquina Netkit executada em OUTRO PC com a configuração: | ||
+ | |||
+ | INSTRUÇÔES para virtual box: | ||
+ | *colocar rede como bridge | ||
+ | *desabilitar o network manager | ||
+ | sudo service network-manager stop | ||
+ | *baixar a interface | ||
+ | sudo ifconfig enp0s3 down | ||
+ | *reconfigurar a interface (usar o endereço do seu grupo) | ||
+ | sudo ifconfig enp0s3 50.50.50.11/24 | ||
+ | *colocar a rota direta (que se perdeu) (usar o endereço do seu grupo) | ||
+ | sudo route add -net 50.50.50.0/24 dev enp0s3 | ||
+ | *colocar gateway default (usar o endereço do seu grupo) | ||
+ | sudo route add default gateway 50.50.50.1 | ||
+ | |||
+ | <code> | ||
+ | #Descrição das Máquinas e Roteadores | ||
+ | |||
+ | pc1[type]=generic | ||
+ | pc1[eth0]=uplink:bridge=eth0:ip=dhcp | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | [[Arquivo:Aval2-Parte1-FICLinux2019-2.png]] | ||
+ | |||
+ | <code> | ||
+ | #Descrição das Máquinas e Roteadores | ||
+ | r1[type]=gateway | ||
+ | r2[type]=gateway | ||
+ | pc1[type]=generic | ||
+ | |||
+ | pc1[eth0]=lan1 | ||
+ | |||
+ | r1[eth0]=uplink:bridge=eth0:ip=VER COM PROFESSOR | ||
+ | r1[eth1]=lan2 | ||
+ | |||
+ | r2[eth0]=lan1 | ||
+ | r2[eth1]=lan2 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Construir um doc conforme aula anterior com as seguintes informações: | ||
+ | |||
+ | #Coloque a tela de um píng funcionando de R1 para PC1 | ||
+ | #Cole a tela da tabela de roteamento de R2 | ||
+ | #Cole a tela de um ping de uma máquina VirtualBox (netkit) no R1 (uplink) | ||
+ | #Cole a tela de um ping funcionando uma máquina VirtualBox (netkit) no PC1 | ||
+ | |||
+ | Note que o gateway default da máquina virtual deverá ser reconfigurado para PC1. | ||
+ | |||
+ | ADENDO: Coloque em R1 rotas para as redes dos PC1 dos demais grupos. | ||
+ | |||
+ | ===PARTE 2=== | ||
+ | |||
+ | Acrescente na sua rede um AP configurado como indicado abaixo: | ||
+ | |||
+ | OBS: Para este exercício configuramos estaticamente todos os endereços para o lado do backbone (Laboratório). Usamos 50.50.50.0/24 | ||
+ | |||
+ | [[Arquivo:Aval2-Parte2-FICLinux2019-2.png]] | ||
+ | |||
+ | |||
+ | =ATIVIDADE DE RECUPERAÇÃO 1= | ||
+ | |||
+ | Refazer o relatório Avaliativo 1 proposto anteriormente. Enviar doc para o SIGA A | ||
+ | |||
+ | =ATIVIDADE DE RECUPERAÇÃO 2= | ||
+ | |||
+ | Registre em um DOC e faça um post no SIGA A colando a imagem das telas das saídas de cada comando! | ||
+ | |||
+ | ===Roteiro de atividades sobre o IPv6=== | ||
+ | |||
+ | A figura abaixo apresenta o diagrama esquemático da rede a ser montada/analisada. Observe que todos os IPv6 ''Global Unicast'' já estão definidos na mesma, são esses IPs que utilizaremos em nosso experimento. | ||
+ | |||
+ | [[Arquivo:Diagrama_rede_IPv6.jpg]] | ||
+ | |||
+ | #Crie em seu computador um arquivo com nome '''/home/aluno/IPv6.conf''', com o seguinte conteúdo: <syntaxhighlight lang=bash> | ||
+ | #Ligacao das maquinas nos dominios de colisao | ||
+ | #Duas pequenas redes interligadas pelo backbone | ||
+ | |||
+ | # Hosts definitions | ||
+ | pc1[type]=generic | ||
+ | pc2[type]=generic | ||
+ | pc3[type]=generic | ||
+ | pc4[type]=generic | ||
+ | |||
+ | # Hosts' interfaces to local routers | ||
+ | pc1[eth0]=link0:ipv6=2001:bcc:faca:1::101/64 | ||
+ | pc2[eth0]=link1:ipv6=2001:bcc:cafe:1::102/64 | ||
+ | pc3[eth0]=HUB1:ipv6=2001:bcc:1f0:1::103/64 | ||
+ | pc4[eth0]=HUB1 | ||
+ | |||
+ | #Default Gateways definitions | ||
+ | pc1[route]=default6:gateway=2001:bcc:faca:1::1 | ||
+ | pc2[route]=default6:gateway=2001:bcc:cafe:1::1 | ||
+ | pc3[route]=default6:gateway=2001:bcc:1f0:1::1 | ||
+ | |||
+ | # Routers definitions | ||
+ | r1[type]=gateway | ||
+ | r2[type]=gateway | ||
+ | |||
+ | #Routers interfaces definitions | ||
+ | r1[eth0]=backbone0:ipv6=2001:db8:dead:1::1/64 | ||
+ | r1[eth1]=link0:ipv6=2001:bcc:faca:1::1/64 | ||
+ | r1[eth2]=link1:ipv6=2001:bcc:cafe:1::1/64 | ||
+ | |||
+ | r2[eth0]=backbone0:ipv6=2001:db8:dead:1::2/64 | ||
+ | r2[eth1]=HUB1:ipv6=2001:bcc:1f0:1::1/64 | ||
+ | |||
+ | #Routers definitions | ||
+ | r1[route]=2001:bcc:1f0:1::0/64:gateway=2001:db8:dead:1::2 | ||
+ | r2[route]=2001:bcc:faca:1::0/64:gateway=2001:db8:dead:1::1 | ||
+ | r2[route]=2001:bcc:cafe:1::0/64:gateway=2001:db8:dead:1::1 | ||
+ | </syntaxhighlight> | ||
+ | #Tenha certeza que o Netkit2 estja atualizado: General >> Update. | ||
+ | #Rode o NetKit em seu computador. Em um terminal digite: <syntaxhighlight lang=bash> | ||
+ | netkit2 & </syntaxhighlight> | ||
+ | #No menu '''File''' - '''Load and Run''', procure o arquivo '''/home/aluno/IPv6.conf''' e clique em OK. Abrirá uma janela com 6 abas, onde cada uma delas é um terminal de configuração do respectivo equipamento: '''pc1-4''' ou '''r1-2'''. | ||
+ | #Observe que o '''pc4''' não está com sua interface configurada. | ||
+ | #Ao clicar no menu '''File''' - '''Graph''', pode-se ter uma visão da rede a ser simulada e conferir se é equivalente ao diagrama proposto. | ||
+ | #Faça um '''ping6''' entre o '''pc1''' ao '''pc3''': <syntaxhighlight lang=bash> | ||
+ | ping6 -c4 2001:bcc:1f0:1::103 </syntaxhighlight> | ||
+ | #Faça um '''ping6''' entre o '''pc1''' e '''pc2'''. | ||
+ | #No '''pc4''' use o seguinte comando para adicionar o endereço IPv6 à interface de rede: <syntaxhighlight lang=bash> | ||
+ | ip addr add 2001:bcc:1f0:1::104/64 dev eth0 </syntaxhighlight> | ||
+ | #No '''pc4''', acrescente o ''default gateway'' com o seguinte comando: <syntaxhighlight lang=bash> | ||
+ | ip -6 route add default via 2001:bcc:1f0:1::1 dev eth0 </syntaxhighlight> | ||
+ | #No '''pc1''' use o seguinte comando para verificar como ficou a configuração dos endereços da interface de rede. O resultado é similar ao apresentado pelo comando '''ifconfig''': <syntaxhighlight lang=bash> | ||
+ | ip addr show dev eth0 </syntaxhighlight> | ||
+ | #Todo o roteamento está pronto, mas caso desejássemos poderíamos acrescentar rotas com comando similares aos já utilizados. Por exemplo, no '''r1''', para adicionar uma rota estática para a rede dos '''pc3''' e '''pc4''' utilizaríamos o seguinte comando: <syntaxhighlight lang=bash> | ||
+ | ip -6 route add 2001:bcc:1f0:1::/64 via 2001:db8:dead:1::2 dev eth0 </syntaxhighlight> | ||
+ | #Confira as rotas estabelecidas em todos os ''hosts'' com o comando abaixo. | ||
+ | ##São coerentes com os dados apresentados no diagrama acima?<syntaxhighlight lang=bash> | ||
+ | ip -6 route show </syntaxhighlight> | ||
+ | #No '''pc1''' use os seguintes comandos para ver a rota para alguns vizinhos: <syntaxhighlight lang=bash> | ||
+ | traceroute6 2001:bcc:1f0:1::103 | ||
+ | traceroute6 2001:bcc:1f0:1::104 </syntaxhighlight> | ||
+ | #*Anote as rotas. | ||
+ | #Deixe um '''ping6''' entre o '''pc1''' ao '''pc3''' rodando: <syntaxhighlight lang=bash> | ||
+ | ping6 2001:bcc:1f0:1::103 </syntaxhighlight> | ||
+ | |||
+ | =ATIVIDADE DE RECUPERAÇÃO 3= | ||
+ | |||
+ | Registre em um DOC e faça um post no SIGA A colando a imagem das telas das saídas de cada comando! Coloque também a resposta as perguntas. | ||
+ | |||
+ | ===Objetivos=== | ||
− | + | *Familiarizar-se com o UDP | |
+ | *Entender a estrutura do pacote UDP | ||
+ | *Entender o conceito de portas | ||
− | + | ===Fonte Base=== | |
− | * | + | *[http://docente.ifsc.edu.br/odilson/RCO60803/UDP%20Basico.pdf Introdução a camada de transporte e UDP básico] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ===Parte 1 - Fluxo único UDP=== | |
− | # | + | #Combinar equipes com dois computadores para execução do experimento. |
− | + | #*Uma equipe escutará na porta 5000 e a outra equipe transmitirá uma mensagem nessa porta. Os processos de transmissão e recepção podem ocorrer simultaneamente, em terminais distintos. | |
− | # | + | #*Cada equipe deve identificar os IPs ('''IP_DEST''') das máquinas de seus pares. |
− | # | + | #Cada equipe deve abrir uma Janela de terminal. |
− | # | + | #Cada equipe deve preparar o '''Wireshark''', interfaces '''any''', para escuta das portas no protocolo UDP usando um filtro:<syntaxhighlight lang=bash> |
+ | udp.port==5000</syntaxhighlight> | ||
+ | #A equipe da escuta na porta 5000 executa no terminal: <syntaxhighlight lang=bash> | ||
+ | netcat -u -l -p 5000 </syntaxhighlight> | ||
+ | #A equipe que irá transmitir para a porta 5000 executa no terminal: <syntaxhighlight lang=bash> | ||
+ | netcat -u IP_DEST 5000 </syntaxhighlight> | ||
+ | #*Em seguida escreve no terminal uma mensagem de até 20 caracteres, ao teclar <Enter> a mensagem será enviada. | ||
+ | #*O wireshark deve ter capturado os pacotes UDP | ||
+ | #Identifique e anote os seguintes dados na captura do wireshark: | ||
+ | #*IP FONTE e DESTINO | ||
+ | #*PORTAS FONTE E DESTINO para ambas comunicações | ||
+ | #*Campo de protocolo no pacote IP | ||
+ | #*Campo de tamanho (anote o tamanho) e ''checksum'' no pacote (datagrama) UDP | ||
+ | #*O campo de dados no pacote UDP | ||
+ | #Troquem os papéis das equipes: quem houvia agora transmite mensagens. | ||
+ | #Cada equipe pode transmitir sequencialmente várias mensagens, devendo identificar múltiplos datagramas UDP. | ||
+ | #PERGUNTAS baseadas na captura: | ||
+ | ##Qual o tamanho de cada campo do cabeçalho do pacote UDP? | ||
+ | ##Qual o tamanho máximo do número de porta? | ||
+ | ##Qual o tamanho máximo da área de dados (payload) do pacote? | ||
+ | ##Qual o número identificador de protocolo UDP no pacote IP? | ||
+ | ##Em algum momento foi identificado algum procedimento para estabelecimento de conexão? | ||
+ | ##Em algum campo do UDP existe numeração de mensagens? | ||
=AULA 20 - Dia 18/04/2019= | =AULA 20 - Dia 18/04/2019= |
Edição atual tal como às 19h58min de 31 de outubro de 2019
Introdução ao Sistema Operacional Linux / Redes com Linux
- Encontros: Terças e Quintas das 19:00 às 22:00.
- Local: Laboratório de Redes de Computadores (Redes 1).
Curso FIC Linux 2019
Semestre 2019-2 - Prof. Eraldo Silveira e Silva | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pontos para nova edição:
Cronograma TentativaHorários: 19h às 22h.
Curso FIC Linux 2019-2Professor
27/08/2019ObjetivosParte 1
Parte 2
Parte 3
Professores do FIC Linux Edição 2019-2
Apresentação do IFSCApresentação do CursoCronograma TentativaHorários: 19h às 22h. VER SIGA A [1] Metodologia, Avaliação e Critérios de Aprovação
Bibliografia
Conceitos de Hardware, Software e Firmware
Estrutura de um Computador e Arquitetura de Processadores
Outros Links Interessantes
O papel do Sistema Operacional
Sistema de Arquivos
Exemplos de SO
Histórico do Linux
Arquitetura do LinuxMaterial de Referência
DistribuiçõesUma distribuição Linux consiste de um kernel Linux e uma coleção de software utilitários e aplicativos de usuário (baseado slides Prof. Emerson)
Algumas distribuições podem ser executadas diretamente no CD/pendrive sem a necessidade de fazer sua instalação no disco rígido do computador Distribuições aqui no IFSC SJ
Instalando o Linux
Ligando e Desligando o Sistema Linux
O Desktop do Ubuntu - Primeiras Considerações
AULA 2 - Dia 29/08/2019ObjetivosPARTE 1
PARTE 2
SlidesConceito de sistemas de arquivos, arquivos e diretórios
Comandos no LinuxTipos de ArquivosOs comandos de operação sobre arquivos e diretóriosAULA 3 - Dia 03/09/2019Mirros do Ubuntu Download e OutrosComo verificar se o arquivo está correto?Instalar e Preparar 3 transparências no Oppenoffice
AULA 4 - Dia 03/09/2019Objetivos
Material de ReferênciaAULA 5 - Dia 10/09/2019Objetivos
Material de ReferênciaAULA 6 - Dia 12/09/2019Objetivos
Comand wgetPara fazer o downloiad do Linux Ubuntu via linha de comando: wget http://mirror.pop-sc.rnp.br/mirror/ubuntu-releases/18.04.3/ubuntu-18.04.3-desktop-amd64.iso Material de ReferênciaAULA 7 - Dia 12/09/2019Objetivos
InstalaçãoConsidere a estrutura de sistemas de arquivos abaixo. Montar um sistema de arquivos da forma abaixo considerando que sb1 seria um segundo hd máquina virtual. Logar no sistema e usando o terminal verificar as configurações estabelecidas. df -h cd /home ls spock Usar o comando gparted para criar uma partição adicional no segundo disco. sudo apt-get install gparted sudo gparted Redimensionar a partição original para poder criar uma adicional. Material de ReferênciaAULA 8 - Dia 12/09/2019Objetivos
Desafio FinalNa máquina instalada na aula anterior fazer as seguintes operações:
Continuando o o permissionamento de Grupos e OutrosVer material de referência Material de ReferênciaAULA 9 - Dia 24/09/2019Objetivos
Material de Referência
AULA 10 - Dia 26/09/2019Objetivos
Material de ReferênciaAULA 11 - Dia 1/10/2019Introdução a Redes de Computadores
Plano de Ensino
Laboratório 1 - Ferramentas de Rede e Conceitos Básicos
Laboratório 2 - Wireshark e encapsulamento
Conceituando Protocolos e Aplicações de Rede
AULA 12 - Dia 03/10/2019Objetivos
Exercício de revisão 2.1
Laboratório 3 - Conceituando protocoloVer [10] Laboratório 4 - Desvendando o HTTP com Wireshark - BÁSICOVer [11] Laboratório 7 - O DNSVer [12] AULA 13 - Dia 8/10/2019Objetivos
TCP e UDPCamada IP no Linux: Configuração das Interfaces usando ifconfig e ip addrUsando a ferramenta Netkit2, que permite construir redes virtuais com o Linux vamos construir DUAS redes locais interligadas por um roteador. Em cada rede colocaremos dois PCs. As interfaces estarão completamente desconfiguradas:
|
Semestre 2019-1 - Prof. Tiago Semprebom e Eraldo Silveira e Silva | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Professor
12/03/2019ObjetivosParte 1
Parte 2
Parte 3
Professores do FIC Linux Edição 2019-1
Apresentação do IFSCApresentação do CursoCronograma TentativaHorários: 19h às 22h.
Metodologia, Avaliação e Critérios de Aprovação
Bibliografia
Conceitos de Hardware, Software e Firmware
Estrutura de um Computador e Arquitetura de Processadores
O papel do Sistema Operacional
Sistema de Arquivos
Exemplos de SO
Histórico do Linux
Arquitetura do Linux
DistribuiçõesUma distribuição Linux consiste de um kernel Linux e uma coleção de software utilitários e aplicativos de usuário (baseado slides Prof. Emerson)
Algumas distribuições podem ser executadas diretamente no CD/pendrive sem a necessidade de fazer sua instalação no disco rígido do computador Distribuições aqui no IFSC SJ
Ligando e Desligando o Sistema Linux
O Desktop do Ubuntu - Primeiras Considerações
AULA 2 - Dia 14/03/2019ObjetivosPARTE 1
PARTE 2
Conceito de sistemas de arquivos, arquivos e diretórios
Comandos no LinuxTipos de ArquivosOs comandos de operação sobre arquivos e diretóriosAULA 3 - Dia 21/03/2019 (aula com Prof. Eraldo)ObjetivosPARTE 1
PARTE 2
PARTE 3
Parte 4
Exercícios para esta aulaCréditos e agradecimentos ao Prof. Eraldo pelo desenvolvimento das listas utilizadas: AULA 4 - Dia 26/03/2019ObjetivosPARTE 1
PARTE 2
PARTE 3
Exercícios para esta aulaReferênciasPermissão de Acesso a Arquivos: parte 1 Permissão de Acesso a Arquivos: parte 2 AULA 5 - Dia 28/03/2019Objetivos
https://www.tecmint.com/linux-process-management/ ReferênciasGerenciamento De Processos Parte 1 Gerenciamento De Processos Parte 2 AULA 6 - Dia 02/04/2019Objetivos
Material de ReferênciaAULA 7 - Dia 04/04/2019Objetivos
ExercíciosAULA 8 - Dia 09/04/2019Objetivos
Referências
AULA 9 - Dia 11/04/2019Objetivos
ReferênciasAULA 10 - Dia 16/04/2019
Tópicos extrasObjetivos
Servidores de JanelasDesktops e Geneciadores de JanelasInstalando pacotesVer pg.43 do Formacao-de-Suporte-Tecnico-Proinfo Exercício: instalar e executar um servidor ssh: sudo apt-get update sudo apt-get install openssh-server sudo service start ssh Acessar o ssh de outra máquina ssh usuario@numero_ip Exportar o display e executar o comando remoto: export DISPLAY=IP_cliente_ssh:0.0 firefox & Conferir se o firefox realmente está se executando (use o ps) Remover o pacote ssh server: sudo apt-get remove openssh-server Linux = Software Livre
Onde baixar o UbuntuSobre o BootSobre o Desktop Environment e o Desktop ShellInstalar Ubuntu no Virtual BoxInstalar VirtualBox no Windows AULA 11 - Dia 23/04/2019
Plano de Ensino
Laboratório 1 - Ferramentas de Rede e Conceitos Básicos
Laboratório 2 - Wireshark e encapsulamento
Conceituando Protocolos e Aplicações de RedeAULA 12 - Dia 25/04/2019Objetivos
Laboratório 4 - Desvendando o HTTP com Wireshark - BÁSICOVer [24] AULA 13 - Dia 30/04/2019
Revisão dos Conceitos de ProtocoloLaboratório 3 - Conceituando protocolos [25] O DNS como protocolo de AplicaçãoLaboratório 7 - Serviço de Nomes (DNS) [26] O Protocolo UDPLaboratório 8 - Desvendando o UDP - Básico AULA 14 - Dia 02/05/2019Objetivos
TCP e UDP
Camada IP no Linux: Configuração das Interfaces usando ifconfig e ip addrUsando a ferramenta Netkit2, que permite construir redes virtuais com o Linux vamos construir DUAS redes locais interligadas por um roteador. Em cada rede colocaremos dois PCs. As interfaces estarão completamente desconfiguradas:
|
Curso FIC Linux 2018
Semestre 2018-2 - Prof. André D'Amato |
---|
Introdução ao Sistema Operacional Linux10/09/18: Aula01 Apresentação da Disciplina, Introdução a Informática e Memória e Armazenamento Aula 01 |
Curso FIC Linux 2016
Semestre 2016-2 - Prof. Luciano Barreto |
---|
Introdução ao Sistema Operacional Linux04/10/16: Aula01 Apresentação da Disciplina, Introdução a Informática e Memória e Armazenamento Aula 01 06/10/16: Aula 02 Introdução ao Linux, Sistema de Arquivos e Conhecendo o Terminal Aula 02 11/10/2016: Aula 03 Continuação Comandos no Terminal Aula 03 13/10/2016: Aula 04 Continuação Comandos no Terminal 18/10/2016: Aula 05 Lista de Exercícios Aula 05 - Lista de Exercícios 20/10/2016: Aula 06 Introdução ao Gerenciamento de Processos Aula 06 - Gerenciamento de Processos 25/10/2016: Aula 07 Gerenciamento de Usuários Aula 07 - Gerenciamento de Usuários Permissionamento Aula 07 - Permissionamento 27/10/2016: Aula 08 Continuação Permissionamento Instalação Linux Aula 08 - Instalação Linux 01/11/2016: Aula 09 Continuação Instalação Linux Instalação de Pacotes via Apt Aula 09 - Instalação Pacotes 03/11/2016: Aula 10 Continuação Lista Exercícios (47 - 60) AULA 11 - Dia 18/04/2019AULA 12 - Dia 18/04/2019AULA 13 - Dia 18/04/2019AULA 14 - Dia 18/04/2019AULA 15 - Dia 18/04/2019AULA 16 - Dia 18/04/2019AULA 17 - Dia 18/04/2019AULA 18 - Dia 18/04/2019AULA 19 - Dia 18/04/2019AULA 20 - Dia 18/04/2019 |
Semestre 2016-1 - Prof. Luciano Barreto |
---|
Diário de Aulas 2016 - 129/03/16: Apresentação do cursoApresentação do curso, Visão geral de funções, responsabilidades e estruturas de um SO. 31/03/16: Introdução a Sistema de Arquivos e TerminalEstrutura do Sistema de Arquivos Linux, Introdução a comandos no Terminal. 04/04/16: Continuação TerminalContinuação de comandos no terminal, redirecionamento de saída e caracteres coringa. 07/04/16: Introdução a Processos e UsuáriosConhecendo Processos e Gerenciamento de usuários 12/04/16: Lista de Exercícios de Comandos no TerminalEmulador de Terminal no navegador (demora um pouquinho pra abrir) 14/04/16: Usuários, Grupos e PermissõesAdministração de usuários, grupos e adicionando permissões a arquivos. 19/04/16: Instalação do LinuxInstalação do Sistema Linux em modo texto, gráfico e dualboot. 26/04/16: Introdução ao Shell ScriptIntrodução ao Shell Script 28/04/16: Continuação ao Shell ScriptIntrodução ao Shell Script 03/05/16: Lista de ExercíciosLista de Exercícios até a aula de 28/04/16 |
Semestre 2015-2 | |
---|---|
Introdução ao Sistema Operacional Linux
Diário de Aulas 201513/10Parte 1:
Slides da aula:
Arquivo:Introducao.pdf
Parte 2:
Slides da Aula:
Arquivo:LinuxModoTexto.pdf
15/10Parte 3: Slides da Aula: Arquivo:Parte3.pdf 20/10Parte 4: Slides caracteres coringas: Arquivo:Coringas.pdf Exercícios caracteres coringas: Arquivo:Exercício CB03 Pokemon.pdf Parte 5: Sildes Redirecionamento: Arquivo:Redirecionamento.pdf Exercícios redirecionamento e pipe: Arquivo:Ex pipe.pdf 22/10Parte 6: Slides Processos: Arquivo:FICLinux Processos.pdf 27/10Parte 7:'
Slides Usuários e Grupos: Arquivo:UserGroup.pdf
29/10Parte 8: Slides Introducao a Redes: Arquivo:FICLinux Introducao Redes.pdf 03/11Parte 9:
Slides permissionamento: Arquivo:Permissionamento.odp 05/11Parte 10:
Slides Redes - Broadcast: Arquivo:FICLinux Introducao Redes Broadcast 01.pdf 10/11Parte 11:
Slides Script: Arquivo:Scripts do Linux.odp
12/11Parte 12: Introdução para comandos em Bash: Arquivo:Introdução ao Shell 2015 1.pdf |