Configuração de servidores Linux

Documentos relacionados
Laboratório de Redes Prof. Dinailton

5/7/2010. Apresentação. Introdução. Ponto de vista do usuário. Curso Tecnologia em Telemática. Disciplina Administração de Sistemas Linux

Instalação e Configuração de Servidores Web Server Apache. Prof. Alex Furtunato

Prof. Samuel Henrique Bucke Brito

TECNOLOGIA EM REDES DE COMPUTADORES - 3º PERÍODO ADS - ADMINISTRAÇÃO DE SERVIDORES Grupo: Alexandre - Leonel - Mateus - Ricardo

O GUIA RÁPIDO SOBRE SERVIDOR WEB 4 PASSOS PARA CONFIGURAÇÃO DO SEU PRÓPRIO SERVIDOR WEB COM APACHE

FACULDADE DE TECNOLOGIA SENAC GESTÃO DA TECNOLOGIA DA INFORMAÇÃO LABORATORIO DE REDE

SERVIDOR WEB - APACHE SERVIDOR WEB - APACHE SERVIDOR WEB - APACHE 27/02/2012

Como Instalar Nagios 4 E Monitorar Seus Servidores no Ubuntu 14 Introdução

Estas instruções de trabalho com a plataforma Linode. Se você não tiver um Linode ainda, se inscrever para um VPS Linux e comece hoje mesmo.

Responsáveis: Bruno Silva, André Coelho, Wellington Silva, Marcelo Hirano. Atualizado em: 08/09/2017 CONFIGURAÇÃO DE BACKUP DE ORIGEM LINUX

Segurança em Aplicações Web com GNU/Linux

Instalação Apache + MySQL + PHPMyAdmin CentOS

Configuração do Servidor Gateway Firewall e DHCP

Instalando servidor Apache

Torne-se um Sysadmin Linux. Prof. Juliano Ramos

Principais características:

Configuração. Ubuntu Server Sistemas Distribuídos Engenharia da Computação

Inscrições em Eventos

Manual Instalação e-cidade-transparência no Ubuntu Server

Instalação e Configuração do Servidor HTTPD Apache

Aula 11 - Enjaulamento de SO

Informática. Linux. Professor Márcio Hunecke.

Guião para a instalação do Ubuntu (Versão 1.1 em 30 Set 07)

9.2 MySQL A instalação do MySQL trata-se de um procedimento relativamente fácil, já que iremos realizá-lo utilizando so repositórios do Linux.

Guia de instalação para ambiente de Desenvolvimento LINUX

Administração dos serviços de redes utilizando linux

Configurando VPS Proxy e SSH

LINUX. Uma visão geral

Histórico e conceitos básicos. GSO I Gestão de Sistemas Operacionais

Criando um site com LAMP e Joomla em 30 minutos

MANUAL DE INSTALAÇÃO

Interface gráfica do linux

Manual do Usuário. Instalação via Terminal. SIGA-ADM versão 12.06

Linux Para Servidores Plano de Aula - 32 Aulas (Aulas de 1 hora).

Sistemas Operacionais Livres. Servidor Web Apache

Laboratório de Redes de Computadores INSTALANDO SERVIDOR APACHE NOS CENTOS 6.5

Atividade Proposta da Disciplina: Laboratório de Rede de Computadores

PRÁTICA APACHE. Prof. Claudio Silva

Linux - Servidor de Redes

Aula 14 Serviços Internet (Servidor Web Apache)

Manual de Instalação do TelEduc 4.4

Tutorial Balanceamento de carga em servidores com HAProxy

GUIA DE INSTALAÇÃO DO DO NAGIOS LINUX JORDAN ROMANO

Guia de configuração do servidor Apache nos PCs pessoais

Tutorial para Instalação do dotproject

EAC SOFTWARE GERÊNCIA DE SERVIÇOS E COORDENAÇÃO DE TREINAMENTOS. Autoinstalação SACI. Revisão: 03 (19/09/2013)

PROJETO LÓGICO DE REDE

monsta Manual de Instalação

SISTEMAS DE ARQUIVOS E DIRETÓRIOS DO LINUX. Prof. Gleison Batista de Sousa

Administração Central Cetec Capacitações Capacitação Sistema Operacional Linux Semana III

Instalação e Configuração

Segurança Informática e nas Organizações. Guiões das Aulas Práticas

NFAS. Node.js Full Application Server. Versão 0.1 de Alain Mouette,

Administração de Sistemas Operacionais Não-Proprietários II

Instalador e Operador de Sistemas de Telefonia e Comunicação de Dados

MANUAL DE INSTALAÇÃO

Redes de Computadores Serviço PROXY

Administração de sistemas Linux. Gerenciamento de serviços

Você pode testar se está tudo OK, abrindo um navegador no Debian Linux e acessando qualquer site.

Tutorial para Instalação do Debian 6.04 (servidor)

MANDRIVA CONECTIVA LINUX - ADMINISTRAÇÃO DE SISTEMAS E REDES

Gerência de Redes de Computadores Zabbix Instalação. Prof. Alex Furtunato

Database and Applications. Como instalar e configurar o WampServer -PHP / MySQL e Apache

Projeto e Instalação de Servidores Introdução a Servidores

CONHECIMENTOS ESPECÍFICOS TÉCNICO DE LABORATÓRIO / ÁREA INFORMÁTICA

Laboratório FTP. Francisco Edigleison da Silva Barbosa Professor: Kelvin Lopes Dias

CST em Redes de Computadores

Servidor Proxy/Cache

Instalação do serviço de FTP com o Proftpd

Administração de Sistemas Operacionais

MANUAL DE INSTALAÇÃO SISTEMA DE GERÊNCIA CONSCIUS

CONTEÚDO PROGRAMÁTICO

WE TEACH CURSO CORPORATE PRÁTICAS DE MERCADO 30 MÓDULOS DE AULAS EMISSÃO DE CERTIFICADO

Redes de Computadores

1. Abra o terminal e instale o Git, para que assim você possa obter o código fonte do programa e suas atualizações.

Carlos Eduardo. Resumo. Experiência. Gerente de TI na DMarkInfo

Administração de sistemas Linux. Estrutura de diretórios Linux

INSTALAÇÃO PRINTERTUX. Tutorial

Sistemas Operacionais. Prof. MSc André Y. Kusumoto

Instalação Wiser. Sistema Operacional Linux Red Hat

MagnusBilling Documentation

# apt-get install libapache2-mod-perl2 libdbd-mysql-perl. libtimedate-perl libnet-dns-perl libnet-ldap-perl libiosocket-ssl-perl

8 o Projecto: Autenticação com S/Key

REDES ASA. Prova 1o Bimestre. Obs: Questões RASURADAS são consideradas como ERRADAS GABARITO

Gestão de Desenvolvimento de Sistemas por Controle de Versão Utilizando SVN. Software para Controle de Versão SVN/Subversion

GLPI Gestão total e gratuita do seu parque informático

Transcrição:

Configuração de servidores Linux Jonathan de Matos https://jonathandematos.wordpress.com/

Conteúdo Seleção do servidor Instalando o Linux Gerência de usuários Configurando firewall Instalando e configurando Apache HTTP Instalando e configurando PHP Instalando MySQL Instalando e configurando FTP

Tipo de servidor Servidor Web Web + PHP (Apache HTTP) Web + Perl (Apache HTTP) Web + Java (Apache Tomcat) Web para conteúdo estático (Nginx, lighttpd) Web de alta demanda (Varnish) Servidor de DHCP (udhcpd, isc-dhcp,...) Servidor de DNS (bind, unbound) Servidor de Log (Syslog, rsyslog, logstash, elasticsearch) Servidor de gerência de redes (Nagios, Zabbix, cacti, nfsen,...)

Tipo de servidor Servidor de arquivos NFS Samba (SMB Windows) Servidor de autenticação (LDAP, NIS,...) Servidor de E-mail (postfix) Servidor de Banco de Dados MySQL, Postgres, Sybase, Mongo, HSQL Servidor FTP (proftp, pureftp,...) Servidor de Impressão (cups)

Distribuição Debian Slackware Ubuntu (server) Fedora Red Hat CentOS SUSE OpenSUSE

Instalação Conhecer a rede Conhecer o armazenamento Saber qual tipo de servidor você precisa Entender as mídias de instalação DVD CD Pendrive (recomendado) Ferramenta dd

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Instalação

Verificação da instalação e gerência de usuários Com o término da instalação o sistema irá reiniciar e estar pronto para a configuração Depois do login como root é adequado verificar o estado do armazenamento Ferramenta mount e df É importante também verificar a conectividade Ferramentas como ping, traceroute, ifconfig Alterar as senhas utilizadas na instalação para senhas mais seguras e remover usuários inúteis

Gerência de usuários A alteração de senha é realizada utilizando o utilitário passwd A gerência de usuários (adição, remoção e modificação) pode ser realizada com os utilitários adduser, userdel e usermod As ferramentas em linha de comando do Linux possuem help e páginas de manual O help geralmente é acessível com a opção -h Os manuais pela ferramenta man

Gerência de usuários Não é recomendável utilizar o sistema como superusuário (root) Para isso existe a ferramenta sudo e su Os usuários que deverão ter nível de permissão mais alto devem ser colocados no grupo sudo Para colocar permissões especiais para algum usuário pode ser utilizada a ferramenta visudo para editar indiretamente o arquivo sudoers

Diretórios Os diretórios mais importantes do Linux são: / raiz do sistema /home diretórios dos usuários (dentro deste diretório haverá um diretório para cada usuário) /etc arquivos de configuração /bin e /usr/bin executáveis /var arquivos de trabalho (logs, páginas, spool, ) /tmp arquivos temporários e que serão apagados a qualquer momento Diretórios podem ser comuns ou então pontos de montagem, sendo essa diferença não perceptível para o usuário ou programas

Conectividade O primeiro programa que em geral deve ser instalado em um servidor de qualquer tipo é o servidor do protocolo SSH Isso possibilita que o servidor vá para um rack ou então que você não precise mais de um console virtual Em seguida deve-se tomar mais uma medida de segurança, ativando o firewall O firewall é implementado no kernel e pode ser configurado com a ferramenta iptables

Firewall

Firewall Em um servidor com endereço exposto na Internet, podem haver várias tentativas diárias de conexões não autorizadas Dependendo do tipo do servidor que será instalado, as portas que serão mantidas abertas são diferentes HTTP 80 SSH 22 FTP 21 Postgres 5432 MySQL 3306

Firewall O bloqueio pode ser feito com DROP ou REJECT com o iptables iptables -P INPUT DROP iptables -P INPUT REJECT iptables -A INPUT -s 200.200.200.200 -j DROP A abertura de uma porta pode ser realizada com ACCEPT iptables -A INPUT -p tcp dport 22 -j ACCEPT As regras podem ser listadas com -L

Apache HTTP Server O Apache HTTP Server é um programa que basicamente permanece ouvindo por padrão a porta 80 (padrão do protocolo HTTP definido pela IANA) ou 443 (HTTPS) Ele é conhecido popularmente como Apache apenas, porém existem várias outras ferramentas do grupo Apache O Apache é um dos web servers mais conhecidos e bem sucedidos no seu meio devido a sua robustez, porém ele tem alguns problemas

Apache HTTP Server Ele permite a execução de scripts em diversas linguagens através de uma ideia básica chamada CGI A execução de scripts externos podem ser realizadas usando FastCGI ou módulos no Apache Além do CGI, o Apache também possui estrutura multi-processos, chamada prefork ou worker

Apache HTTP Server Um dos principais problemas do Apache é o alto consumo de memória com muitas conexões Para isso existem estruturas de clusters, proxy reversos, caches e outros servidores web O Apache também é bom para atendimento de requisições web dinâmicas, porém consome muitos recursos para requisições estáticas

Apache (configuração) Na nova estrutura de configuração, os sites são configurados em arquivos separados no diretório /etc/apache2/sites-available Uma vez criado o arquivo de configuração do seu novo site no diretório citado, deve-se criar um link simbólico no diretório /etc/apache2/sites-enable para o mesmo Os nomes dos arquivos são livres, mas recomenda-se usar nomes significativos

Apache (configuração) Se os arquivos de configuração não estiverem neste local, pode ser que o Apache não foi instalado No Debian, a instalação de programas mais comuns deve ser realizada pelo apt. apt-get install apache2 Não é recomendável a instalação de nenhum programa em um servidor Debian que não esteja disponível nos repositórios comuns

Apache (configuração) Existem configurações do apache nos arquivos /etc/apache2/apache2.conf e /etc/apache2/ports.conf O Apache também permite o uso de módulos extras, como SSL, autenticação, cache, dav, proxy, ftp, entre outros Os módulos disponíveis podem ser encontrados, juntamente com sua configuração, no diretório /etc/apache2/modsavailable

Apache (configuração) Um dos módulos muito utilizados atualmente é o que possibilita a execução de scripts PHP Para ativar um módulo, deve ser criado um link simbólico para o seu arquivo de configuração no diretório /etc/apache2/mods-enabled No caso do PHP, pode ser que o módulo não esteja disponível, pois são necessários alguns pacotes Uma das formas de descobrir qual o nome exato do pacote para a instalação é usando a ferramenta apt-cache apt-cache search [nome aproximado do pacote]

Apache (configuração) Para encontrar o nome do pacote PHP e o módulo para o Apache você pode usar: apt-cache search php grep apache O módulo é o libapache2-mod-php5 Obviamente o pacote do PHP 5 também será instalado graças as dependências dos pacotes do Debian Os links para a ativação serão criados automaticamente, porém existe uma ferramenta para facilitar isso também a2enmod a2ensite a2enconf Criação de usuários no Apache htpasswd -c /etc/apache2/basic.auth teste

Apache (configuração de site) <VirtualHost *:8080> ServerAdmin webmaster@localhost DocumentRoot /var/www/html/teste ErrorLog ${APACHE_LOG_DIR}/error_teste.log CustomLog ${APACHE_LOG_DIR}/access_teste.log combined <Location /> Options +Indexes AllowOverride All AuthType basic AuthName "Basic" AuthUserFile /etc/apache2/basic.auth Require valid-user </Location> php_admin_value display_errors on Alias /downloads /home/apache/downloads <Directory /home/apache/downloads> Allow from 127.0.0.1 Deny from all Order deny,allow </Directory> </VirtualHost>

Apache (permissões) Geralmente o Apache executa usando o usuário www-data e o grupo www-data Todos os arquivos dos sites devem ter permissão de leitura para este usuário e grupo Diretórios onde o Apache escreverá arquivos também devem ter permissão para este usuário e grupo escreverem chown [-R] [usuario.grupo] [nome do arquivo] chmod [-R] [ugo+rwx] ou [777] [nome_do_arquivo_ou diretorio] find./ -type d -exec [cmd] {} \; ls -lah Cuidado com diretórios onde os usuários fazem upload de arquivos e diretórios via FTP

MySQL Novamente, o mais correto no Debian é a instalação usando pacotes do repositório oficial apt-get install mysql-server-5.5 Durante a instalação será pedida a nova senha de superusuário do MySQL Importante, não esqueça esta senha Por padrão o MySQL só ouvirá no endereço de localhost é o suficiente no caso de um servidor múltiplo, além de mais seguro Para mudar configurações, por exemplo o endereço de conexão, basta editar o arquivo /etc/mysql/my.cnf

MySQL e PHP O PHP pode acessar o MySQL através de uma biblioteca de conexão Esta biblioteca pertence PHP e deve ser instalada usando o comando apt apt-get install php5-mysql Existem diversas outras bibliotecas para o PHP, sejam para conexão com outros bancos, criação de imagens, envio de e-mail, etc Uma maneira bem simples de saber quais bibliotecas estão disponíveis é usando a função phpinfo();

FTP O acesso usando FTP é uma das maneiras mais comuns de disponibilizar acesso para os clientes aos seus sites Um bom servidor FTP para o Debian é o Pure- FTPd Uma das vantagens é a possibilidade de usar virtual chroot Permite diversos tipos de autenticação A instalação deve ser realizada também pelo apt apt-get install pute-ftpd

FTP O modo mais rápido e não flexível de autenticação é usando as senhas do próprio sistema Desabilita-se a autenticação PAM Habilita-se a autenticação UNIX Cuidar com o login shell do usuário e com o diretório de login Prestar atenção nos grupos dos usuários e na flag setguid do sistema de arquivos Utilizar o VirtualChroot no arquivo /etc/defaults/pure-ftpd e yes no arquivo /etc/pureftpd/conf/chrooteveryone

Conclusão Esta é uma configuração muito básica de um servidor web O mais adequado é não utilizar o mesmo servidor como servidor web e de banco de dados no mesmo servidor, mas Deve-se tomar muito cuidado com um servidor web, pois ele é um atrativo muito grande para invasores e uma ótima vitrine