Baixe o app para aproveitar ainda mais
Prévia do material em texto
Autor: Prof. Michel Bernardo Fernandes da Silva Colaboradores: Prof. Ricardo Sewaybriker Profa. Christiane Mazur Doi Prof. Ivan Pérsio de Arruda Campos Segurança de Sistemas Operacionais (Windows / Linux) Professor conteudista: Michel Bernardo Fernandes da Silva Michel Bernardo Fernandes da Silva É mestre em Engenharia Elétrica, com MBA Executivo, pós-graduado em Finanças e engenheiro elétrico (em Telecomunicações). Atua como coordenador auxiliar e professor de cursos superiores de Tecnologia da UNIP. © Todos os direitos reservados. Nenhuma parte desta obra pode ser reproduzida ou transmitida por qualquer forma e/ou quaisquer meios (eletrônico, incluindo fotocópia e gravação) ou arquivada em qualquer sistema ou banco de dados sem permissão escrita da Universidade Paulista. Dados Internacionais de Catalogação na Publicação (CIP) S586s Silva, Michel Bernardo Fernandes da. Segurança de Sistemas Operacionais (Windows / Linux) / Michel Bernardo Fernandes da Silva. – São Paulo: Editora Sol, 2020. 216 p., il. Nota: este volume está publicado nos Cadernos de Estudos e Pesquisas da UNIP, Série Didática, ISSN 1517-9230. 1. Sistema operacional. 2. Windows Server. 3. Linux. I. Título. CDU 681.3.066 U509.11 – 20 Prof. Dr. João Carlos Di Genio Reitor Prof. Fábio Romeu de Carvalho Vice-Reitor de Planejamento, Administração e Finanças Profa. Melânia Dalla Torre Vice-Reitora de Unidades Universitárias Profa. Dra. Marília Ancona-Lopez Vice-Reitora de Pós-Graduação e Pesquisa Profa. Dra. Marília Ancona-Lopez Vice-Reitora de Graduação Unip Interativa – EaD Profa. Elisabete Brihy Prof. Marcello Vannini Prof. Dr. Luiz Felipe Scabar Prof. Ivan Daliberto Frugoli Material Didático – EaD Comissão editorial: Dra. Angélica L. Carlini (UNIP) Dr. Ivan Dias da Motta (CESUMAR) Dra. Kátia Mosorov Alonso (UFMT) Apoio: Profa. Cláudia Regina Baptista – EaD Profa. Deise Alcantara Carreiro – Comissão de Qualificação e Avaliação de Cursos Projeto gráfico: Prof. Alexandre Ponzetto Revisão: Lucas Ricardi Vitor Andrade Sumário Segurança de Sistemas Operacionais (Windows / Linux) APRESENTAÇÃO ......................................................................................................................................................9 INTRODUÇÃO ...........................................................................................................................................................9 Unidade I 1 INTRODUÇÃO À PROTEÇÃO E À SEGURANÇA EM SISTEMAS OPERACIONAIS ....................... 13 1.1 Sistemas operacionais e suas formas de proteção ................................................................. 13 1.1.1 Finalidades da proteção em um sistema operacional .............................................................. 13 1.1.2 Princípios associados à proteção no projeto de sistemas operacionais ........................... 14 1.1.3 Domínios de proteção ........................................................................................................................... 16 1.2 Segurança ................................................................................................................................................ 18 1.2.1 Exemplos de brechas de segurança ................................................................................................. 19 1.3 Cenário atual de segurança de sistemas operacionais ......................................................... 22 2 INSTALANDO O MICROSOFT WINDOWS SERVER 2012 R2 ............................................................. 24 2.1 Edições do Windows Server 2012 R2 ........................................................................................... 24 2.2 Requisitos mínimos de instalação ................................................................................................. 27 2.3 Tipos de instalação do Microsoft Windows Server 2012 R2 .............................................. 28 2.4 Instalando o Windows Server 2012 R2 com interface gráfica .......................................... 29 2.5 Possibilidade de conversão dos tipos de instalações ............................................................. 40 Unidade II 3 CONFIGURAÇÕES BÁSICAS DO WINDOWS SERVER 2012 R2 ....................................................... 44 3.1 Domínio versus grupos de trabalho .............................................................................................. 44 3.2 Nomeando uma máquina e adicionando-a ao domínio ...................................................... 44 3.3 Ferramenta Server Manager ............................................................................................................ 45 3.4 Dando propósito ao servidor ........................................................................................................... 51 4 CONCEITOS BÁSICOS SOBRE O ACTIVE DIRECTORY .......................................................................... 63 4.1 Active Directory .................................................................................................................................... 63 4.2 Active Directory Domain Services (AD DS) ................................................................................ 65 4.3 Instalando o Active Directory Domain Services (AD DS) e configurando uma nova floresta ........................................................................................................... 66 Unidade III 5 ADMINISTRAÇÃO DO WINDOWS SERVER ............................................................................................. 89 5.1 Criando novos usuários ..................................................................................................................... 89 5.2 Criando grupos ...................................................................................................................................... 94 5.3 Políticas de grupos .............................................................................................................................100 5.3.1 Criando GPOs ..........................................................................................................................................101 5.4 Armazenamento .................................................................................................................................111 5.4.1 Inicializando um disco e criando um novo volume simples ............................................... 112 5.5 Compartilhamento de pastas e arquivos ..................................................................................122 5.5.1 Compartilhando uma pasta e publicando no Active Directory utilizando o Active Directory Users and Computers ...................................... 122 6 PROTEÇÃO CONTRA MALWARES E SUA PROFILAXIA .....................................................................133 6.1 Malwares infecciosos ........................................................................................................................134 6.1.1 Vírus........................................................................................................................................................... 134 6.1.2 Vermes ...................................................................................................................................................... 135 6.1.3 “Vírus” de e-mail e de macro .......................................................................................................... 135 6.2 Malwares não infecciosos ...............................................................................................................136 6.2.1 Cavalos de Troia .................................................................................................................................... 136 6.2.2 Phishing ...................................................................................................................................................137 6.3 Principais tipos de payload ............................................................................................................137 6.3.1 Adwares ................................................................................................................................................... 137 6.3.2 Destruidores de dados ....................................................................................................................... 138 6.3.3 Ramsomwares ....................................................................................................................................... 138 6.3.4 Backdoors ................................................................................................................................................ 138 6.3.5 Rootkits .................................................................................................................................................... 138 6.4 Defesas contra malwares ................................................................................................................139 6.4.1 Backups .................................................................................................................................................... 139 6.4.2 Softwares antimalwares.................................................................................................................... 140 6.4.3 Firewalls ................................................................................................................................................... 140 6.4.4 Benchmarking/logging .......................................................................................................................141 6.4.5 Boas práticas e conscientização .....................................................................................................141 6.5 Observações adicionais ....................................................................................................................142 Unidade IV 7 INTRODUÇÃO AO SISTEMA OPERACIONAL GNU/LINUX ................................................................146 7.1 Projeto GNU e Linux ..........................................................................................................................146 7.1.1 Um breve histórico do Linux ........................................................................................................... 148 7.2 As diversas distribuições do GNU/Linux ....................................................................................149 7.3 Buscando documentação no próprio sistema (on-line) .....................................................151 7.4 Alguns aspectos do modelo de segurança do GNU/Linux .................................................152 7.4.1 Mecanismo de autenticação ........................................................................................................... 152 7.4.2 Controle de acesso .............................................................................................................................. 154 8 INSTALAÇÃO E USO DO SISTEMA OPERACIONAL GNU/LINUX ....................................................157 8.1 Distribuição CentOS ..........................................................................................................................157 8.2 Passos para a instalação da distribuição ..................................................................................158 8.3 Edição de textos no GNU/Linux: o editor de texto Vim ......................................................194 8.3.1 Funcionamento básico do editor Vim ......................................................................................... 195 8.4 Sistemas de arquivos e diretórios ................................................................................................201 8.5 Utilizando o shell ................................................................................................................................203 8.6 Comandos úteis na administração e no uso de máquinas GNU/Linux ........................205 9 APRESENTAÇÃO Este livro aborda a administração de servidores Microsoft Windows e GNU/Linux, com atenção ao quesito da segurança. Há grande quantidade de informação que pode ser coberta sobre o tema, mas buscamos priorizar aspectos fundamentais e apresentar as ferramentas mais comumente utilizadas. Iniciaremos o livro com uma breve revisão sobre os fundamentos de sistemas operacionais e a questão da segurança. Veremos como é feita a instalação do Microsoft Windows Server 2012 R2 e exploraremos diversos aspectos da sua administração, mostrando as principais ferramentas para essa finalidade. Abordaremos várias funções típicas de um servidor e sua configuração, especificamente no que se refere ao servidor de DNS. Analisaremos a questão da segurança na plataforma do Microsoft Windows Server e o impacto dos chamados malwares. Posteriormente, discorreremos sobre a plataforma GNU/Linux. Falaremos um pouco do seu histórico e mostraremos como pode ser feita a instalação de uma distribuição. Discutiremos algumas ferramentas básicas necessárias para a administração de máquinas GNU/Linux, especialmente as ligadas ao uso da linha de comando (terminal). Esperamos que o material auxilie o leitor na sua jornada para conhecer mais sobre administração de servidores e os aspectos de segurança ligados ao tema. Bons estudos! INTRODUÇÃO A administração de sistemas operacionais de rede na atualidade é uma tarefa desafiadora, complexa e estimulante. Com a popularização do uso da tecnologia, especialmente das tecnologias de redes, administrar corretamente uma máquina é mais do que simplesmente uma tarefa adicional em uma empresa, mas um aspecto fundamental do seu funcionamento. Uma analogia bastante interessante que podemos fazer é a seguinte: um sistema operacional é o “grande gestor” do hardware de uma máquina. Ele deve alocar corretamente recursos como memória e processamento entre os diversos processos que executam simultaneamente. Isso significa que um sistema operacional tem impacto fundamental na performance global de um sistema. Mas performance é só um dos muitos problemas com que um administrador de servidores deve se preocupar. Outra questão absolutamente fundamental é a segurança. Neste livro, queremos abordar o uso e a administração de sistemas operacionais de rede do ponto de vista da segurança. Obviamente, isso faz com que nos preocupemos com as características de um sistema operacional. Queremos entender como instalamos um sistema operacional, quais são os requisitos mínimos e como devem ser sua configuração e seu gerenciamento, entre outros itens. 10 O mercado de sistemas operacionais de redes apresenta ampla variedade, possivelmente maior do que a variedade do mercado de desktops. Nesse mercado, tanto o Microsoft Windows quanto o GNU/ Linux concorrem para otimizar o oferecimento de recursos, segurança e desempenho. Além disso, é bastante provável que um administrador de servidores tenha de trabalhar com esses dois sistemas em uma única empresa. Por isso, este livro busca mostrar diversos aspectos da administração de servidores Microsoft Windows (especificamente o Microsoft Windows Server 2012 R2) e GNU/Linux (especificamente a distribuição CentOS). Um dos objetivos do curso é explorar diversas ferramentas que são utilizadas no dia a dia de um administrador de servidores. Uma dessas ferramentas, por exemplo, é o Server Manager, que exploraremos no contexto do Windows Server 2012 R2. Veremos como essa ferramenta pode auxiliar no gerenciamento de um grande número de servidores com diferentes finalidades. Discorreremos, também, sobre o serviço de DNS (Domain Name System) e como pode ser feita a sua instalação no Windows Server. Falaremos sobre o Active Directory, especificando funcionalidades e procedimentos de instalação. O mundo GNU/Linux não pode deixar de ser abordado quando estudamos os conceitosde administração de servidores. Sua estrutura geral e seu funcionamento são diferentes dos sistemas operacionais da Microsoft. Isso ocorre porque o mundo Unix recebeu influências nas fases de projeto e de execução. De certa forma, podemos ver claramente a “filosofia Unix” no design do GNU/Linux. Para algumas pessoas, essa diferença em relação ao mundo do Microsoft Windows pode ser bastante assustadora, mas não precisamos pensar assim. Uma vez compreendidos alguns conceitos básicos, é possível verificarmos que a administração de servidores GNU/Linux envolve o mesmo grau de dificuldade que o de máquinas que usam o Microsoft Windows. De certa forma, os desafios e os objetivos são também muito similares. Tendo em mente esses aspectos, no final deste livro-texto exporemos diversos aspectos da administração de máquinas no mundo GNU/Linux. Veremos um pouco do seu histórico e aprenderemos a fazer a instalação de uma distribuição. No mundo GNU/Linux, assim como no mundo Unix, muitos programas são configurados utilizando arquivos de texto. Isso significa que o administrador de sistemas passa uma quantidade considerável de tempo editando esses arquivos. É fundamental que o administrador conheça bem um editor de texto para que tal processo de edição seja feito da forma mais rápida possível. Nesse sentido, apresentaremos o editor de texto Vim, uma evolução do Vi, que é extremamente comum no mundo GNU/Linux. A administração de máquinas GNU/Linux é feita, principalmente, utilizando-se a linha de comando, ou seja, usando-se o terminal. Isso é outra tradição vinda do mundo Unix. É importante que o administrador de sistemas esteja familiarizado com a utilização de ferramentas que executam apenas no terminal, dada sua ampla disponibilidade e seu largo emprego. 11 Aliás, a utilização de ferramentas via linha de comando permite que seja realizado um item importante para a administração de servidores: a automação de tarefas via scripts. Assim, em vez de digitarmos longas e repetidas sequências de comandos, podemos criar scripts que as executam automaticamente, inclusive em horários determinados. Abordaremos a questão dos malwares e as diversas maneiras como sistemas de segurança são implementados em servidores. Observe que alguns desses aspectos estão relacionados ao projeto do sistema operacional; outros, à sua implementação; e outros, à sua configuração e ao seu uso. Veremos que a questão da segurança envolve muitos fatores, nem todos eles de natureza técnica. Dessa forma, contemplaremos variada gama de situações relacionadas à administração de servidores, com foco na segurança. Esperamos que o conteúdo aqui apresentado ajude o leitor com informações úteis para sua carreira, seja como administrador de servidores Microsoft Windows, seja como administrador de servidores GNU/Linux. 13 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Unidade I 1 INTRODUÇÃO À PROTEÇÃO E À SEGURANÇA EM SISTEMAS OPERACIONAIS Sistemas de arquivos geralmente contêm informações valiosas para seus usuários. Portanto, a proteção dessas informações contra o uso e/ou a divulgação não autorizados é um aspecto estrutural fundamental da maioria dos sistemas de arquivos existentes e dos sistemas operacionais (SOs) contemporâneos que os empregam. Nesse sentido, neste tópico serão apresentados os conceitos de proteção e segurança de SOs e serão abordadas as ameaças às quais estão sujeitos sistemas de computação reais em operação contínua (ou quase contínua) em qualquer lugar do mundo atualmente. 1.1 Sistemas operacionais e suas formas de proteção De modo simplificado, podemos dizer que um processo é um programa em execução. É fundamental que determinado processo que execute no ambiente oferecido a ele por um sistema operacional esteja protegido das atividades de todos os outros processos também em execução no mesmo ambiente. Tal proteção requer o emprego de mecanismos que assegurem que somente processos adequadamente autorizados pelo SO possam realizar operações apenas sobre os arquivos, os trechos de memória e os demais recursos disponíveis. De acordo com Silberschatz, Galvin e Gagne (2015), a proteção diz respeito a um mecanismo destinado ao controle do acesso de programas e ao controle de processos ou de usuários aos recursos definidos por um sistema de computação. Esse mecanismo, naturalmente, deve ser implementado de forma sólida e incontornável. Além disso, tal implementação precisa ser feita de modo que haja uma forma padronizada de solicitar e conceder (ou não) o acesso apenas quando necessário, ou de suspender (ou abortar) o processo solicitante, quando não for possível conceder tal acesso. 1.1.1 Finalidades da proteção em um sistema operacional Existem vários motivos para investirmos na segurança de um sistema operacional. Um deles é proteger o sistema e garantir que ele permaneça operando de forma adequada. Outro aspecto importante nesse contexto é assegurar que o acesso e o uso da informação sejam realizados em conformidade com políticas previamente estabelecidas (SILBERSCHATZ; GALVIN; GAGNE, 2015). Nem sempre a violação de segurança acontece de modo intencional: um usuário com pouco conhecimento a respeito de um sistema computacional pode causar distúrbios se tiver permissões de 14 Unidade I manipular elevada quantidade de dados e fizer isso de maneira equivocada. É importante garantirmos que esse tipo de situação não ocorra. Um sistema orientado à proteção fornece meios para diferenciar o uso autorizado do uso não autorizado. O papel da proteção em um sistema de computação é o de fornecer um mecanismo para a imposição das políticas e das regras que governam o uso de recursos. Essas políticas e regras podem ser estabelecidas de várias maneiras: • pela introdução de itens no projeto do sistema; • pelo gerenciamento do sistema; • pelas atitudes de proteção dos usuários individuais quanto aos seus próprios arquivos e programas. Um sistema de proteção deve ter a flexibilidade necessária para permitir a imposição de uma variedade de políticas, visto que as políticas de uso de recursos podem mudar de acordo com o tempo, as peculiaridades de utilização de determinado processo ou sistema e o tipo de aplicação, por exemplo. Outro aspecto importante que devemos ter em mente, no âmbito da análise deste tópico, é a diferença conceitual existente entre mecanismo e política: • quando pensamos em um mecanismo, estamos interessados em descrever a maneira como algo é feito; • quando pensamos em uma política, estamos interessados em definir o que deve ser feito (e não em estabelecer o modo como algo é feito). Essas duas ideias, política e mecanismo, são complementares, sendo que o objetivo geral de um administrador é a definição de políticas com foco na descrição dos mecanismos, que devem apresentar flexibilidade. 1.1.2 Princípios associados à proteção no projeto de sistemas operacionais Frequentemente, um princípio geral pode ser usado em todo um projeto, e seguir esse princípio simplifica o processo de tomada de decisões e mantém o sistema como um todo consistente e de fácil entendimento. Um princípio geral essencial para a proteção, que já foi testado ao longo do tempo, é conhecido como princípio do privilégio mínimo, o qual determina que programas, usuários e subsistemas recebam apenas os privilégios necessários e suficientes para a execução de suas tarefas (SILBERSCHATZ; GALVIN; GAGNE, 2015). Podemos fazer uma analogia ilustrativa desse princípio com o caso de um faxineiro que limpa a seção de atendimento ao cliente de uma empresa e recebe um cartão de acesso para viabilizar seu trabalho. 15 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) É claro que, se tal cartão permite acesso apenas às dependências cuja limpeza é de responsabilidade desse funcionário, os problemas causados por sua perda, seu roubo ou sua clonagem serão bem menores do que se o acesso for dado à empresa inteira. Um sistema operacional que obedece ao princípiodo privilégio mínimo em sua implementação procura fazer com que qualquer violação de proteção cause as menores consequências possíveis. Um operador que precise montar fitas e fazer backup de arquivos no sistema deve ter acesso apenas aos comandos e aos arquivos necessários para que ele execute especificamente tais tarefas. O gerenciamento de usuários segundo o princípio do privilégio mínimo requer a criação de uma conta separada para cada usuário, que dê apenas os direitos de acesso de que tal usuário precisa. Usualmente, esses direitos e essas restrições são implementadas por meio de listas de controle de acesso, conhecidas como ACLs, acrônimo de Access Control Lists. Uma ACL é uma lista de permissões referentes a dado objeto. Objeto, nesse contexto, representa tanto componentes de hardware (tais como as unidades centrais de processamento, CPUs, também chamadas núcleos de processamento, bem como segmentos de memória, impressoras, discos e drives de fita) quanto entidades de software (tais como arquivos, programas e semáforos). Cada objeto tem um nome exclusivo que o diferencia de todos os demais objetos do sistema. Um objeto pode ser acessado somente por meio de operações bem definidas, sendo que o conjunto de operações possíveis de serem realizadas com cada objeto depende da natureza do objeto (nem todo objeto admite escrita, por exemplo). Uma ACL especifica quais usuários e/ou processos podem acessar dado objeto e define quais operações tal usuário pode fazer com esse objeto. Cada item em uma ACL especifica um usuário (ou um processo) e uma ou mais operações. Por exemplo, se um arquivo chamado JABUTICABA tem uma ACL que contém (maicon: leitura, escrita; mari: escrita), isso significa que apenas Maicon pode escrever nesse arquivo, mas que tanto Maicon quanto Mari podem ler seu conteúdo (sem contar o administrador do sistema, que, em geral, pode tudo). Atualmente, a maioria dos sistemas operacionais em uso corrente implementa nativamente as ACLs. Esses sistemas operacionais contemplam a família Unix, incluindo Linux, BSD, Solaris e MacOS, a família Windows-NT, o OpenVMS e o z-System. Uma alternativa ao uso das ACLs é realizar o controle de acesso baseado em papéis, conhecido como RBAC, acrônimo de role-based access control. Nesse caso, temos as atribuições de permissões aos usuários definidas a partir de operações que tenham significado para a empresa que utiliza o RBAC (por exemplo, reservar, vender ou cancelar uma passagem, abrir, alterar ou fechar uma conta, emitir orçamentos etc.). Vale notar que o SELinux é uma distribuição de Linux que implementa nativamente RBAC. Outro princípio geral empregado quando necessitamos de proteções ainda mais restritivas, também testado pelo tempo, é o princípio de “só saber/poder o necessário”, o qual pode ser usado para complementar o princípio do privilégio mínimo: nesse caso, a cada usuário que tenha as permissões necessárias de segurança é dado acesso apenas aos objetos computacionais estritamente necessários 16 Unidade I para que tal usuário cumpra suas missões e só até que elas sejam cumpridas. Uma das maneiras de se implementar RBAC é pelo uso combinado desses dois princípios gerais. Vale destacar que a criação de trilhas de auditoria (event logs) que registrem todas as atividades de proteção e de segurança do sistema computacional possibilita que o programador, o administrador do sistema ou o auditor legal rastreie tudo o que acontece no sistema, o que serve para comprovar (ou não) sua segurança e sua integridade, apesar de haver consumo de uma pequena parte do desempenho computacional do sistema (fato, hoje em dia, pouco relevante). 1.1.3 Domínios de proteção Um modelo convencional para se analisar a implementação de proteção é aquele conhecido como modelo dos domínios de proteção. Como o próprio nome sugere, a estratégia utilizada envolve fazer com que o processo trabalhe dentro de um domínio de proteção: é esse domínio que determina o que o processo pode fazer e o que o processo não pode fazer. Por exemplo, se o domínio estabelece o que pode ser acessado pelo processo, temos o que chamamos de direito de acesso. A ideia é que o domínio seja o conjunto de direitos de acesso (SILBERSCHATZ; GALVIN; GAGNE, 2015). Suponha o exemplo a seguir, proposto por Silberschatz, Galvin e Gagne (2015), mostrado na figura, em que são representados três domínios: D1, D2 e D3. <O2, {gravação}> <O1, {execução}> <O3, {leitura}> <O3, {leitura, gravação}> <O1, {leitura, gravação}> <O2, {execução}> D3D2 D1 <O4, {impressão}> Figura 1 – Sistema com três domínios de proteção 17 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Na figura, ilustra-se que o direito de acesso {impressão} é compartilhado por D2 e D3. Isso implica que um processo em execução em um desses dois domínios pode imprimir o objeto O4. Podemos observar que um processo deve estar sendo executado no domínio D1 para ler e gravar o objeto O1, enquanto apenas processos no domínio D3 podem executar o objeto O1. A associação entre um processo e um domínio pode ser estática ou dinâmica. Se o conjunto de recursos disponíveis para um processo for fixo durante todo o tempo de vida desse processo, temos uma associação estática. Caso contrário, temos uma associação dinâmica (SILBERSCHATZ; GALVIN; GAGNE, 2015). Como naturalmente esperaríamos, o estabelecimento de domínios de proteção dinâmicos é mais complicado do que o estabelecimento de domínios de proteção estáticos. Se quisermos ater-nos simultaneamente ao princípio de privilégio mínimo e ao princípio de “poder só o necessário” com o uso da associação estática entre processos e domínios, chegaremos a uma situação complicada, pois, se em um primeiro momento o processo precisar ler dado recurso e, em um segundo momento, escrever nele, ele só conseguirá completar seu processamento se o domínio estático em que se encontra contiver direitos para leitura (que ele não necessita no segundo momento) e para escrita (que ele não necessita no primeiro), o que viola o princípio de poder só o necessário. Com associação dinâmica, há um modo de movermos o processo de um domínio para outro, de forma a resolvermos o impasse resultante do emprego da associação estática. De forma alternativa, podemos alterar dinamicamente os direitos do domínio de acordo com as necessidades do processo (SILBERSCHATZ; GALVIN; GAGNE, 2015). Cada procedimento pode ser um domínio, cada processo pode ser um domínio, mas o mais usual atualmente é que cada usuário seja um domínio. Por exemplo, na família Unix (bem como na família Windows NT), os domínios são representados pelos usuários. Assim, a permuta de domínio corresponde à alteração temporária da identificação do usuário. Vamos explorar, a seguir, um exemplo desse mecanismo. Um arquivo executável tem um bit chamado de setuid. Esse bit funciona como uma forma de controlar a mudança de domínio. Se o bit setuid for zero, o sistema funciona “normalmente”, ou seja, o processo originado na execução do arquivo tem o mesmo domínio do usuário que executou esse arquivo. Se o bit setuid contiver o valor 1, o processo disparado vai ter o domínio de execução do proprietário do arquivo, e não do usuário que o executa. Dessa forma, temos uma alteração temporária de domínio como resultado do bit setuid. Saiba mais Para saber mais sobre o bit setuid, acesse: QA STACK. Usando o bit setuid corretamente. [s.d.]. Disponível em: https://qastack.com.br/unix/166817/using-the-setuid-bit-properly. Acesso em: 9 set. 2020. 18 Unidade I 1.2 Segurança A proteção refere-se a um problema estritamente interno, que se resume a como fornecer acesso controlado a programas e a dados armazenados em um sistema de computação. Já a segurança requer não apenas um sistema de proteção adequado, mas também necessita que se considere o ambiente externo no qual o sistema computacional opera. Um sistema de proteção robusto será ineficaz se a autenticação de usuários for comprometida ouse usuários não autorizados conseguirem, de alguma forma, invadir o sistema. Os recursos computacionais devem ser protegidos contra acesso não autorizado, destruição ou alteração maliciosa e introdução acidental de inconsistências. Tais recursos incluem as informações armazenadas no sistema (tanto dados quanto código) e os componentes de hardware das várias máquinas e da rede que as interliga internamente e com o exterior da empresa. Os usuários pertencentes à empresa, terceiros prestadores de serviços e qualquer um que possa ter acesso direto às máquinas podem ser mais críticos do que o sistema de proteção implementado no que tange à segurança. Vale destacar que segurança total é um ideal inatingível, pois sempre pode ocorrer alguma situação imprevisível que a comprometa. No entanto, um parque computacional será seguro desde que ele seja acessado e utilizado sempre de acordo com o planejado. Observação Os serviços de segurança são fornecidos por uma camada de protocolo de comunicação de sistemas abertos e visam garantir a segurança adequada dos sistemas e das operações de transferências de dados (STALLINGS, 2015). Esses serviços objetivam a implementação de políticas de segurança por meio da instalação de mecanismos de segurança e podem ser divididos nas categorias a seguir: • autenticação; • controle de acesso; • confidencialidade dos dados; • integridade dos dados; • irretratabilidade. 19 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) 1.2.1 Exemplos de brechas de segurança A espionagem industrial, a falsificação de identidade, o roubo de saldos em dinheiro e a posse indevida de informações de valor (ou ainda sua possível modificação) são exemplos de ações que podem causar danos, cuja prevenção justifica esforços e investimentos consideráveis por parte de empresas de quaisquer portes. Violações da segurança do sistema ou sua má utilização podem ser classificadas em intencionais (maliciosas) ou acidentais (SILBERSCHATZ; GALVIN; GAGNE, 2015). No entanto, estas últimas são normalmente identificadas e/ou evitadas pelos mecanismos clássicos de proteção presentes em qualquer sistema operacional contemporâneo. Destaca-se que, para falar sobre segurança, usamos os termos descritos a seguir (SILBERSCHATZ; GALVIN; GAGNE, 2015): • Atacante (ou invasor): quem tenta (ou consegue) violar a segurança de um sistema computacional intencionalmente. • Ameaça: possibilidade de uma violação de segurança de um sistema computacional, tal como a descoberta de uma vulnerabilidade. • Ataque: tentativa de violar a segurança de um sistema computacional. Observação A definição de vulnerabilidade relaciona-se aos termos definidos a seguir (STALLINGS, 2015): • Confidencialidade: termo relativo à manutenção das restrições que foram autorizadas sobre o acesso e a divulgação de informações e à privacidade de indivíduos. • Integridade: termo relativo à prevenção contra alterações ou destruições impróprias de informações. • Disponibilidade: termo relativo à garantia do acesso e da utilização da informação de maneira rápida e confiável. Desses conceitos, depreendemos que: • a perda da confidencialidade causa a divulgação não autorizada de informações; 20 Unidade I • a perda da integridade causa a modificação ou a destruição não autorizada de informações; • a perda da confidencialidade causa o impedimento ao acesso ou ao uso de informações. A lista a seguir mostra alguns tipos de violações acidentais e maliciosas da segurança (SILBERSCHATZ; GALVIN; GAGNE, 2015). • Violação de sigilo: trata-se da duplicação não autorizada de informações. Ela é o tipo mais comum de violação e destina-se à obtenção de informações sigilosas, usualmente com finalidades políticas, estratégicas, financeiras ou de competitividade. • Violação de integridade: trata-se de um tipo de violação em que os dados são modificados de forma não intencional e/ou não autorizada. Ela pode ocorrer por meio do sequestro de dados (em que o atacante visa receber um resgate) ou pode ser efetuada apenas para causar dano aos legítimos donos das informações. • Violação de disponibilidade: trata-se de um tipo de violação em que os dados não são modificados, mas, sim, destruídos. Em geral, os invasores que praticam a violação de disponibilidade visam aumentar o status dos invasores perante seus pares, a defender alguma causa ou a demonstrar uma vulnerabilidade (usualmente, pela aplicação de um método ilegal de grande visibilidade). • Furto de serviço: trata-se de um tipo de violação em que o objetivo do invasor é se aproveitar de algum recurso computacional de forma não autorizada. • Recusa de serviço: trata-se de um tipo de violação em que o invasor visa impedir que um sistema continue operando normalmente e oferecendo sua funcionalidade. Um exemplo clássico de recusa de serviço refere-se aos chamados ataques DoS, ou Denial of Service. Outra versão desse mesmo tipo de ataque é chamada de DDoS, ou Distributed Denial of Service. Esse ataque é tipicamente feito por meio de diversas máquinas comprometidas externas ao sistema que se quer bloquear, que súbita e concomitantemente passam a inundar a rede com pedidos de conexão que acabam por impedir o funcionamento normal da máquina. Lembrete O ataque de negação de serviço distribuída – DDoS (distributed denial of service) – ocorre pelo uso excessivo de muitos recursos computacionais. Nesse caso, os computadores são sobrecarregados com solicitações falsas, o que impede seu acesso por usuários legítimos. Esses ataques visam extinguir os recursos e causar indisponibilidades no objeto atacado. Com isso, os usuários que dependem de tais recursos são impactados, visto que não conseguem realizar as operações pretendidas. 21 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Saiba mais Para saber mais sobre o ataque de DDoS, acesse: KASPERSKY. O que são ataques de DDoS? [s.d.]. Disponível em: https://www.kaspersky.com.br/resource-center/threats/ddos-attacks. Acesso em: 9 set. 2020. O mais comum dos ataques a parques computacionais é a personificação, em que um participante de uma comunicação finge ser alguém que não é (outra pessoa ou outra máquina). Por meio da personificação, o agressor viola a autenticação da identidade e pode então obter acesso que, normalmente, não receberia (SILBERSCHATZ; GALVIN; GAGNE, 2015). Um ataque bastante frequente é aquele que envolve a intercepção e a gravação de uma transmissão de dados. Posteriormente, o invasor faz com essa gravação seja executada de novo, com o objetivo de tentar repetir o resultado da transmissão original. Por esse motivo, esse ataque é chamado de reexecução. De modo alternativo, o atacante pode tentar manipular os dados gravados, a fim de alterar o comportamento original (SILBERSCHATZ; GALVIN; GAGNE, 2015). Outra forma de ataque que utiliza as telecomunicações digitais é o chamado ataque do intermediário. Lembremos que, em comunicações, dizemos que o emissor é o dispositivo que envia uma mensagem, enquanto o receptor é o dispositivo que a recebe. Em uma rede de computadores, todos os computadores podem ter esses dois papéis, mas vamos imaginar um cenário simplificado, supondo um retrato da comunicação em dado instante, com uma máquina enviando dados e outra máquina recebendo dados. Na estratégia do ataque do intermediário, o atacante coloca-se “no meio” dessa comunicação, fingindo ser um emissor (para a máquina que está recebendo) e um receptor (para a máquina que está enviando). Nesse caso, o invasor pode, inclusive, modificar a comunicação, normalmente com alguma finalidade maliciosa. De acordo com Silberschatz, Galvin e Gagne (2015), há quatro níveis de medidas necessárias para se assegurar um parque computacional: • medidas de natureza física; • medidas de natureza humana; • medidas do sistema operacional; • medidas da rede. No caso das medidas de natureza física, estamos nos preocupando com a integridade dos equipamentos e dos locaisem que eles estão instalados. Nesse caso, precisamos observar que de nada 22 Unidade I adianta ter um sistema computacional extremamente seguro (do ponto de vista de software) se qualquer pessoa pode acessar fisicamente a máquina na qual o sistema executa. É por isso que os datacenters de grandes empresas devem funcionar em um ambiente cuidadosamente controlado, em que haja apenas a permissão da entrada de pessoas autorizadas. Porém, uma vez superados os aspectos físicos de acesso às máquinas, temos as questões humanas. De um ponto de vista de segurança, queremos que somente os usuários autorizados sejam capazes de utilizar um sistema. Mas o problema é que esses usuários, por motivos psicológicos, por exemplo, podem permitir que outras pessoas utilizem o sistema no seu lugar. Mesmo que um sistema force o usuário a ter uma senha complexa, nada impede que ele escreva essa senha em um papel e deixe-a sobre a sua mesa, em um lugar no qual qualquer pessoa possa vê-la. Usuários podem também ser enganados por pessoas que se façam passar por administradores de sistemas ou por altos executivos. Dessa forma, as questões humanas oferecem uma série de desafios adicionais no quesito da segurança. O sistema operacional também deve ser projetado para ser seguro. Além disso, ele precisa ser implementado de forma segura. Adicionalmente, tanto a manutenção do sistema operacional quanto a instalação de atualizações visam a garantir que, uma vez que vulnerabilidades ou problemas sejam encontrados, eles sejam corrigidos o mais rapidamente possível. Atacantes profissionais especializam-se em buscar vulnerabilidades nos sistemas operacionais mais comuns, tentando explorar potenciais falhas e brechas de segurança. Finalmente, a rede de computadores deve ser segura: muitos problemas de segurança são oriundos de ataques e invasões de redes de computadores. A comunicação via rede também é um problema, especialmente quando pensamos em redes públicas. O uso de algoritmos de criptografia forte na comunicação é feito para assegurar a integridade e o sigilo das comunicações. O monitoramento das redes é fundamental para garantir a segurança de um parque de máquinas. É interessante observar que esses quatro aspectos, ou níveis, são complementares. Falhas na segurança em um desses aspectos afetam todos os demais. Por exemplo, falhas humanas, que ocasionem a permissão do acesso de pessoas não autorizadas, podem burlar completamente o esquema de proteção de uma rede. É vital que seja adotada uma visão integrada para trabalhar com a segurança de computadores. 1.3 Cenário atual de segurança de sistemas operacionais Muitas vezes, podemos pensar que a segurança dos sistemas operacionais está muito maior nos dias de hoje do que foi no passado. Ainda que isso seja parcialmente verdade, dado que houve melhora substancial na complexidade da estrutura de segurança dos sistemas operacionais atuais, não podemos dizer que estamos totalmente seguros. No quadro a seguir, temos os resultados de uma pesquisa feita pelo NIST, o Instituto Nacional de Padrões e Tecnologias dos Estados Unidos, a respeito da quantidade de vulnerabilidades por sistema operacional no período de 1999 a 2019 e no ano de 2019. Podemos observar que a distribuição Debian GNU/Linux aparece em primeiro lugar com relação ao número de vulnerabilidades identificadas, ainda que boa parte delas tenha sido corrigida. A plataforma Android, um dos sistemas operacionais mais 23 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) populares para aparelhos de telefonia celular, aparece em segundo lugar. Evidentemente, apenas o número de vulnerabilidades não é suficiente para dizermos o quão seguro ou inseguro um sistema operacional é, pois também é necessário analisarmos a gravidade da vulnerabilidade e o tempo que ela levou para ser corrigida. Contudo, o tamanho dos números mostra como a questão da segurança de sistemas operacionais ainda é complexa. Quadro 1 – Quantidade de vulnerabilidades por sistema operacional no período de 1999 a 2019 e no ano de 2019 1999-2019 2019 Debian Linux 3,067 Android 414 Android 2,563 Debian Linux 360 Linux kernel 2,357 Windows Server 2016 357 Mac OS X 2,212 Windows 10 357 Ubuntu 2,007 Windows Server 2019 351 Mozilla Firefox 1,873 Adobe Acrobat Reader DC 342 Google Chrome 1,858 Adobe Acrobat DC 342 iPhone iOS 1,655 cPanel 321 Windows Server 2008 1,421 Windows 7 250 Windows 7 1,283 Windows Server 2008 248 Adobe Acrobat Reader DC 1,182 Windows Server 2012 246 Adobe Acrobat DC 1,182 Windows 8.1 242 Windows 10 1,111 Windows RT 8.1 235 Adobe Flash Player 1,078 Ubuntu 190 Windows Server 2012 1,050 Fedora 184 Fonte: Demartini (2020). O problema da segurança de sistemas operacionais é que, em um mundo no qual a tecnologia é cada vez mais presente e essencial, existem incentivos e até facilidades para que as vulnerabilidades sejam exploradas. Quanto mais popular um sistema operacional se torna, mais pessoas buscam identificar potenciais vulnerabilidades e furos de segurança. Outro problema refere-se à própria indústria de software e à natureza do modo como esses projetos são gerenciados. Um sistema operacional não é apenas um único software, mas uma coleção enorme de programas com finalidades específicas. A pressão para a rápida produção de um código e para a introdução de novas funcionalidades pode levar à escrita de um código-fonte que possibilita a existência de vulnerabilidades em um sistema. É improvável que esse cenário venha a mudar em pouco tempo, e, por mais que medidas de segurança sejam tomadas, atacantes vão estar sempre buscando os pontos fracos de um sistema. 24 Unidade I 2 INSTALANDO O MICROSOFT WINDOWS SERVER 2012 R2 Vimos, no tópico anterior, que um sistema operacional é uma peça-chave de uma máquina. Ele é que vai determinar, em grande parte, o desempenho de um servidor, possibilitar seu gerenciamento e prover parte de suas funcionalidades. Sistemas operacionais são criados com finalidades específicas. Por exemplo, a Microsoft possui versões do Windows que são direcionadas ao usuário caseiro ou pessoal, muitas vezes chamadas de Home. Um usuário caseiro vai utilizar o sistema operacional para navegar na internet, comunicar-se com outras pessoas, jogar e ver vídeos, entre outras atividades típicas. Essas atividades requerem o uso intensivo de uma interface gráfica e das capacidades gráficas de uma máquina. Observe que existe grande variedade de tarefas que um usuário executa em uma máquina para uso pessoal. Um servidor, por outro lado, possui finalidades muito mais específicas. Um servidor web, por exemplo, deve prover páginas para milhares ou até milhões de outras máquinas. Idealmente, não deveria ser necessário que ninguém utilizasse o console do servidor, sendo que as suas capacidades gráficas podem ser irrelevantes. Servidores devem ser muito confiáveis e sofrer o mínimo possível de interrupções. O sistema operacional de um servidor deve ser estável e possibilitar que as tarefas administrativas sejam feitas da forma mais prática possível, de preferência de maneira automatizada e remota. Há, ainda, versões voltadas a máquinas de trabalho (workstations). Nesse caso, temos o uso profissional, que pode envolver aplicações gráficas, como ocorre com programas especificamente voltados para a engenharia e a arquitetura, por exemplo. Outros aspectos que diferenciam as versões dos sistemas operacionais (especialmente no caso do Microsoft Windows) são o modo de licenciamento e os preços. Grandes empresas podem fazer assinaturas de grandes volumes de licenças por diversos períodos de tempo. Neste tópico, vamos tratar das versões disponíveis do Microsoft Windows Server 2012 R2, dos tipos de instalação e dos seus requisitos. Posteriormente, entraremos em mais detalhes sobre seu uso e sua administração. 2.1 Edições do Windows Server 2012 R2 Vamos, inicialmente, analisar as diferentes versões disponíveis do Windows Server 2012 R2 lançadaspela Microsoft. Existem, basicamente, quatro versões: • Datacenter. • Standard. 25 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) • Essentials. • Foundation. Em comum entre essas diversas edições está o fato de todas estarem disponíveis apenas para arquiteturas de Intel de 64 bits (x86-64), não havendo mais suporte para a plataforma de 32 bits. Todas as versões suportam CPUs com vários núcleos. Por que existem tantas versões de um mesmo produto? A diferença está nas capacidades inclusas em cada uma das versões. Versões com mais capacidades são mais caras, enquanto versões mais limitadas são mais baratas. A ideia é que a empresa deve analisar a disponibilidade de recursos financeiros e suas necessidades tecnológicas e tentar buscar uma alternativa que maximize a relação custo-benefício. A edição Datacenter do Windows Server 2012 R2 é especialmente pensada para uso em grandes datacenters (por isso, o seu nome) e em máquinas poderosas, com até 64 processadores físicos (ZACKER, 2015). Essa versão está disponível apenas por meio de licenciamento por volume da Microsoft, situação em que ela é fornecida em conjunto com servidores para OEM, ou original equipment manufacturers (fabricantes originais do equipamento, em português). Programas vendidos para OEM não são vendidos diretamente ao consumidor, mas apenas para empresas que normalmente vendem também o hardware (ZACKER, 2015). Já a edição Standard do Windows Server 2012 R2 apresenta limitações com relação ao número de máquinas virtuais, mas ainda fornece essencialmente os mesmos recursos da versão Datacenter (ZACKER, 2015). Por sua vez, a edição Essentials do Windows Server 2012 R2 não disponibiliza alguns recursos, como o Hyper-V e o Active Directory Federation Services. Ela é limitada para determinado número máximo de usuários e a uma única instância do servidor, física ou virtual (ZACKER, 2015). Finalmente, a edição Foundation é ainda mais limitada. Outra característica importante do Windows Server 2012 R2 são as roles, que poderíamos traduzir como papéis ou funções. Um exemplo de papel que um servidor pode ter é ser o controlador de domínio. Vale notar que as funções podem ser instaladas via Gerenciador de Servidor (Server Manager) ou via PowerShell. Devemos estar atentos à disponibilidade ou não de uma função, dependendo da edição utilizada. Com relação à virtualização, as versões Datacenter e Standard incluem suporte ao Hyper-V, sendo que há restrições com relação ao número máximo de máquinas virtuais permitidas para dada licença (ZACKER, 2015). Existem nomenclaturas específicas associadas a essa situação, conforme exposto a seguir (ZACKER, 2015): 26 Unidade I • A instância do sistema operacional que está funcionando como hospedeiro é chamada de Pose, ou physical operating system environment (ambiente de sistema operacional físico, em português). • A instância que roda nas máquinas virtuais é chamada de Vose, ou virtual operating system environment (ambiente de sistema operacional virtual, em português). Vale destacar que as limitações não são uma questão intrínseca do programa em si, mas uma questão de licenciamento, sendo que há custos envolvidos. Existem 19 papéis ou funções disponíveis na versão Standard do Windows 2012 R2, sendo que sua disponibilidade depende da edição que está sendo utilizada (THOMPSON, 2013). Entre essas funções, podemos destacar as elencadas a seguir. • Acesso remoto. • Diversos serviços ligados ao Active Directory. • Hyper-V. • Serviços de acesso e política de rede. • Serviços de arquivo e armazenamento. • Serviços de implantação do Windows. • Serviços de impressão e documentos. • Servidor DHCP. • Servidor DNS. • Servidor web (IIS). • Windows Server Update Service (WSUS). Saiba mais Para saber mais sobre o Windows Server 2012 R2, leia os capítulos 3 e 4 do livro indicado a seguir: BATTISTI, J.; POPOVICI, E. Windows Server 2012 R2 e Active Directory. São Paulo: Instituto Alpha, 2015. 27 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) 2.2 Requisitos mínimos de instalação Todo programa tem requisitos mínimos de instalação, que correspondem às características absolutamente mínimas que uma máquina deve apresentar para ser capaz de executar um software com o mínimo de performance e de qualidade. Na prática, esses requisitos tendem a ser muito baixos, e máquinas reais deveriam exceder bastante essa configuração. Além disso, o uso do programa também vai impor restrições mínimas ao hardware do servidor, sob pena de termos um desempenho inaceitável. Lembrete Vale lembrar que os requisitos mínimos são “verdadeiramente” mínimos: atendê-los é condição necessária para que o sistema seja inicializado. No entanto, nessa condição, certamente haverá problemas de lentidão e de resposta. Para o Windows Server 2012 R2, são listados os requisitos mínimos a seguir (ZACKER, 2015). • Um processador compatível com a plataforma Intel, com clock mínimo de 1,4 GHz (núcleo único) ou de 1,3 GHz para processadores com mais de um núcleo, de 64 bits. • A memória RAM mínima de 2 GB. Vale notar que, na prática, esse é um valor muito baixo (qualquer servidor real deve ter muito mais do que isso). • Um disco com, no mínimo, 160 GB, sendo a partição de sistema de 60 GB. • Monitor com resolução de 1024x768. Vale notar que, na prática, esse é um valor muito baixo (qualquer monitor comum da atualidade costuma ter resoluções maiores do que a citada). • Teclado e mouse. • Acesso à internet. Em resumo, os servidores, em geral, tendem a superar essas configurações. A documentação oficial da Microsoft recomenda um microprocessador de 3,1 GHz (ou mais rápido) e com 16 GB de memória RAM. Um aspecto interessante que devemos ter em mente é que há também valores máximos de configuração: por exemplo, o número máximo de processadores suportado é de 640, e o valor máximo de memória RAM é de 4 TB. 28 Unidade I Saiba mais Para saber mais sobre os requisitos mínimos relativos às diversas versões do Windows Server Essentials, acesse: MICROSOFT. Requisitos do Sistema para o Windows Server Essentials. 2013. Disponível em: https://docs.microsoft.com/pt-br/windows-server- essentials/get-started/system-requirements. Acesso em: 31 ago. 2020. 2.3 Tipos de instalação do Microsoft Windows Server 2012 R2 Quando trabalhamos com o projeto e a instalação de servidores, temos que equilibrar dois aspectos importantes. Por um lado, queremos o máximo de flexibilidade e funcionalidades possíveis, especialmente devido à conveniência. Por outro, quanto mais produtos e serviços estiverem sendo executados em um servidor, mais recursos computacionais (espaço e processamento) são consumidos. Adicionalmente, isso aumenta a necessidade de manutenção (com mais atualizações) e até mesmo a segurança. Para dar opções ao projetista, o Microsoft Windows Server 2012 R2 oferece três tipos de instalação: • a instalação com interface gráfica completa; • a instalação Server Core; • a instalação com interface mínima. Podemos dizer que a instalação com interface gráfica completa corresponde a uma instalação “tradicional”, na qual temos à disposição todas as funcionalidades do Windows Server 2012 R2. É a mais flexível, mas também é a maior. Na instalação com interface mínima, uma série de funcionalidades e de aplicações gráficas são removidas, mas ainda temos algumas ferramentas importantes para a administração do servidor, como a Server Manager, o MMC, o Device Manager e o Windows PowerShell (ZACKER, 2015). A instalação Server Core é a mais enxuta possível, tendo apenas o prompt de comando como interface de utilização. A grande vantagem é que, por não haver a maioria das aplicações gráficas, reduzimos o tamanho da instalação e o impacto que essas aplicações teriam no desempenho da máquina. Essa é a opção padrão de instalação, pois a Microsoft quer estimular a administração remota dos servidores utilizando ferramentas específicas ou o Windows PowerShelle eliminando a necessidade de que o usuário deva empregar diretamente o console do servidor (ZACKER, 2015). 29 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) 2.4 Instalando o Windows Server 2012 R2 com interface gráfica Vamos descrever, a seguir, um roteiro do tipo passo a passo para a instalação do Microsoft Windows 2012 R2, lembrando que essa maneira não é a única possível. Supomos que a máquina atende aos requisitos mínimos de instalação e que a mídia de instalação é um DVD. Uma observação importante sobre a instalação é que ela pode apagar todos os arquivos que tínhamos em uma máquina. Portanto, se o leitor seguir esses passos para aprendizado, o ideal é fazer isso em uma máquina virtual ou em uma máquina sobressalente, e não na sua própria máquina. Passo 1. Nesse passo, ligamos o computador com a mídia de instalação do Windows Server 2012 R2 e aguardamos a sua inicialização. Se já houver um sistema operacional instalado, pode ser necessário configurar a ordem de boot inicial para o DVD antes de usar o disco. Uma vez que boot seja feito pelo DVD, solicita-se que o usuário pressione uma tecla para iniciar o processo de instalação. Passo 2. Nesse passo, selecionamos o idioma e do formato de hora, moeda e teclado. Os teclados brasileiros (os mais comuns, que contêm a tecla ç) são do tipo ABNT2 (veja a figura a seguir). Depois de selecionadas as opções adequadas, pressionamos o botão Next (avançar). Figura 2 – Seleção de idioma para a instalação 30 Unidade I Passo 3. Nesse passo, podemos iniciar o processo de instalação ou de reparação de uma instalação já existente. Isso pode ser útil em caso de problemas com o sistema operacional. No caso, vamos selecionar a opção de fazer a instalação (Install Now, ou Instalar Agora, dependo da versão do instalador), conforme demonstra a figura a seguir: Figura 3 – Tela de instalação do Windows Server 2012 R2 31 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Passo 4. Nesse passo, devemos escolher a edição do Windows Server que vai ser instalada. Observe que o Windows Server pode ser instalado com ou sem a interface gráfica (também chamada de GUI). A instalação sem a interface gráfica é chamada de Server Core. Como mostrado na figura a seguir, selecionamos a edição Windows Server 2012 R2 Standard, com a interface gráfica (Servidor com GUI, para a plataforma x64). Depois, pressionamos o botão Next. Figura 4 – Escolha da edição do Windows Server 2012 R2 a ser instalada 32 Unidade I Passo 5. Nesse passo, devemos ler os termos da licença do sistema operacional que estamos instalando. Isso é algo importante em qualquer circunstância, especialmente em um cenário empresarial. Se estivermos de acordo, devemos selecionar a opção Aceito os termos da licença e, depois, o botão Next (veja a figura a seguir). Figura 5 – Aceite dos termos de licença 33 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Passo 6. Nesse passo, devemos selecionar o tipo de instalação. Na atualização ou upgrade, que pode ser feita quando já existe uma instalação anterior, mantemos os arquivos e outros aspectos da instalação já presentes na máquina. Isso não acontece na instalação personalizada, ou custom, que vai ser a opção selecionada nesse guia (veja a figura a seguir). Figura 6 – Escolha do tipo de instalação 34 Unidade I Passo 7. Nesse passo, devemos fazer a configuração do disco, com a criação das partições para a instalação do servidor. Primeiramente, devemos selecionar a opção New para iniciarmos a configuração do disco; em seguida, devemos definir o espaço alocado para a instalação (veja as duas figuras a seguir). O particionamento é um tema bastante delicado e importante da instalação de um sistema operacional, mas, como estamos somente explorando o âmbito da instalação, vamos apenas nos certificar de que a partição da instalação contenha pelo menos 32 GB. Figura 7 – Disco sem espaço alocado para a instalação 35 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Figura 8 – Definindo o espaço para a instalação Quando criarmos a primeira partição, a instalação cria uma partição adicional de 350 MB para os arquivos do sistema. Uma caixa de diálogo informa a respeito dessa criação (veja a figura a seguir) e, em seguida, devemos pressionar OK. Obtemos como resultado o que se ilustra na figura posterior. Uma vez terminada a configuração das partições, devemos selecionar o botão Aplicar e, depois, o botão Next (ou Next) para iniciarmos a instalação do sistema operacional. 36 Unidade I Figura 9 – Criação de partições para os arquivos do sistema Figura 10 – Resultado da definição da partição 37 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Passo 8. Nesse passo, devemos aguardar o processo de instalação, em que podem ocorrer algumas reinicializações. Na tela, podemos ver o andamento do processo, como mostrado na figura a seguir: Figura 11 – Tela do progresso da instalação 38 Unidade I Passo 9. Nesse passo, podemos configurar a senha para o administrador da máquina. Obviamente, a senha deve ser “forte”, ou seja, deve ser “complicada”, uma vez que esse usuário é o que tem o maior número de privilégios e é o mais visado em termos de ataques. Depois de configurada a senha, selecionamos o botão Concluir (veja a figura a seguir). Figura 12 – Tela para definição da senha do administrador Passo 10. Nesse passo, devemos pressionar, na tela inicial, as teclas Ctrl-Alt-Del para podermos logar no sistema; depois, devemos digitar a senha de administrador (ou administrator, na versão em inglês) que configuramos anteriormente (veja as figuras a seguir). Figura 13 – Tela inicial para entrar no sistema 39 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Figura 14 – Digitando a senha Passo 11. Nesse passo, após termos logado pela primeira vez, veremos, na tela do sistema, uma janela lateral em que será solicitado se o sistema deve procurar por outras máquinas ou impressoras conectadas na rede (veja a figura a seguir). Vamos, inicialmente, dizer Não (No), já que não estamos preocupados com isso no momento. Figura 15 – Tela do sistema após termos logado corretamente pela primeira vez 40 Unidade I Passo 12. Nesse ponto, a instalação simples está pronta. O sistema executa automaticamente o programa Server Manager (veja a figura a seguir), ferramenta que vai ser abordada nos tópicos posteriores. Figura 16 – Programa Server Manager 2.5 Possibilidade de conversão dos tipos de instalações Uma característica interessante do Microsoft Windows 2012 R2 é que podemos converter um tipo de instalação em outro tipo, ou seja, podemos converter uma instalação com interface gráfica para uma instalação Server Core e vice-versa. Para convertermos uma instalação do tipo gráfica para Server Core, basta removermos alguns recursos. Essa remoção pode ser feita por meio do Remove Roles and Features Wizard, ou Assistente de Remoção de Funções e Recursos. Nesse caso, devemos retirar os recursos Graphical Management Tools and Infrastructure, ou Ferramentas de Gerenciamento Gráfico e Infraestrutura, e o Server Graphical Shell. Outra opção é executar o programa e fazer a desinstalação via linha de comando, pelo comando Uninstall-WindowsFeature, especificado a seguir: Uninstall-WindowsFeature Server-Gui-Mgmt-Infra,Server-Gui-Shell -Restart Para fazermos o caminho inverso, ou seja, instalarmos a GUI (em uma instalação Server Core), teremos de utilizar o comando Install-WindowsFeature, especificado a seguir: Install-WindowsFeature Server-Gui-Mgmt-Infra,Server-Gui-Shell -Restart 41 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Observe a semelhança entre os comandos. Além disso, veja como podemos trabalhar diretamente na linha de comando para instalar e remover recursos do Windows. Resumo Nesta unidade, tivemos uma introdução à proteção e à segurança em sistemas operacionais. Vimos o que são sistemas operacionais e quais são suas principais formas de proteção. Estudamos asfinalidades da proteção em um sistema operacional, abordamos os princípios associados à proteção no projeto de sistemas operacionais e analisamos os domínios de proteção. Discutimos exemplos de brecha de segurança e oferecemos uma visão ampla do cenário atual de segurança de sistemas operacionais. Em relação ao Microsoft Windows Server 2012 R2, discorremos a respeito das suas edições e vimos os requisitos mínimos necessários para sua instalação. Por fim, apresentamos o passo a passo da instalação do Windows Server 2012 R2 com interface gráfica e mostramos a possibilidade de conversão dos tipos de instalações. Exercícios Questão 1. Identifique, entre as alternativas a seguir, qual lista pelo menos uma entidade computacional que não pertence ao domínio da proteção: A) Utilização de listas de controle de acesso (ACLs). B) Emprego de firewalls e monitoramento contínuo de desempenho do sistema operacional (SO). C) Treinamento constante e testes surpresa de segurança para toda a equipe. D) Uso de arquivo de senhas salgadas e encriptadas, de acesso fortemente restrito. E) Atualizações de segurança e de software antimalware sempre em dia. Resposta correta: alternativa C. 42 Unidade I Análise da questão O treinamento constante e a realização de testes surpresa, bem como a verificação criteriosa e contínua do histórico de cada colaborador para determinar sua confiabilidade, pertencem ao domínio da segurança (não ao domínio da proteção). Questão 2. Sistemas operacionais (SO) não são desenvolvidos em abstrato: são elaborados por desenvolvedores que têm uma configuração recomendável de hardware em mente (sempre bem além dos chamados requisitos mínimos, que correspondem ao limite mínimo para que o sistema operacional consiga, pelo menos, inicializar-se). No caso específico de SO para servidores, a configuração recomendada pela Microsoft é 16 GB de RAM e um processador (preferencialmente multinúcleo) de, pelo menos 3,1 GHz e, pelo menos, 60 GB na partição de sistema. Por outro lado, uma boa parte dos usos de um servidor envolve servir ou transferir arquivos, de forma que pelo menos uma partição – se possível, em um disco separado – e um RAID (de algo como 1 TB ou mais) são geralmente necessários. Com base no exposto e nos seus conhecimentos, avalie as asserções a seguir: I – A instalação de qualquer uma das edições do MS Windows Server 2012 R2 pode ser realizada de três formas diferentes: (1) com interface gráfica completa, (2) com interface gráfica mínima ou (3) como Server Core, tendo apenas o prompt de comando como interface de utilização. Além disso, a Microsoft fornece mecanismos simples e eficientes para que possamos converter facilmente essas formas de instalação. porque II – A Microsoft (MS) incentiva os administradores a instalarem apenas a interface Server Core, pois interfaces gráficas consomem parte considerável dos recursos da máquina física para seu funcionamento (e interfaces gráficas têm pouco ou nada a ver com as funções específicas de um servidor). Mais do que isso, a MS incentiva a administração remota do servidor, por meio de ferramentas específicas, de forma a se evitar ao máximo trabalhar diretamente no console do servidor, que atualmente costuma ser tão minimalista quanto possível. A respeito dessas asserções, assinale a opção correta: A) As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. B) As asserções I e II são proposições verdadeiras, e a II não é uma justificativa correta da I. C) A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. D) A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. E) As asserções I e II são proposições falsas. Resposta correta: alternativa A. 43 SEGURANÇA DE SISTEMAS OPERACIONAIS (WINDOWS / LINUX) Análise da questão Efetivamente, a asserção I descreve a posição da Microsoft no que tange ao uso de interfaces gráficas em servidores, enquanto a asserção II explica corretamente o porquê de tal posição, ou seja, a asserção II é uma justificativa correta da I.
Compartilhar