Por: Leonardo Vargas Leffa. Sistema Operacional Usado: Ubuntu 10.04.

76
Montando um Servidor de Hospedagem Por: Leonardo Vargas Leffa

Transcript of Por: Leonardo Vargas Leffa. Sistema Operacional Usado: Ubuntu 10.04.

Page 1: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Montando um Servidor de Hospedagem

Por: Leonardo Vargas Leffa

Page 2: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Sistema Operacional Usado: Ubuntu 10.04

Instalação

Page 3: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Processador Core i7 – 860 8gb de memória DDR3 1333mhz 2 Hd’s de 1TB cada Placa mãe Intel DH55TC Fonte de 500w reais da C3Tech Placa de vídeo geforce 7200 Gravador de DVD Gabinete da leadership com Ventilação.

Configuração Utilizada

Page 4: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

A primeira dificuldade já encontrada na instalação foi a compatibilidade do hardware com o sistema operacional.

A Placa intel DH55TC, que é a que foi usada, não oferece suporte para distribuições do linux (ubuntu) menores que a 10.04.

Ele instala perfeitamente mas o hardware de rede não é detectado.

Dificuldade encontrada (1)

Page 5: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Quando quiser montar um servidor verifique sempre a compatibilidade de sistemas e hardware.

Conselho.

Page 6: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Como fazer a instalação do Sistema Operacional.

No exemplo o hostname será server1.exemplo.com

Bom vamos ao que interessa...

Page 7: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Linguagem do servidor

Page 8: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Carregando os Componentes Adicionais do SO.

Page 9: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Configurando o DHCP.

Page 10: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

hostname

Page 11: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

O nome do computador (host) será server1.

Hostname na internet é um nome de domínio atribuído a um host.

O domínio neste exemplo é example.com que será definido mais tarde.

O domínio é definido na instalação quando o sistema não encontra nenhum DHCP. Assim ele pede a configuração manual da rede.

Sobre o hostname

Page 12: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Particionador

Page 13: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Sistemas de arquivos nativos: Ext2, Ext3, Ext4, ReiserFS e Reiser4

Tipo usado: Ext4 Motivo? O ext 4 tem... Melhorias na pré-alocação. Tempo de Alocação estendido. Maior numero de subdiretórios. Undelete. Checagem rápida no Sistema de arquivo.

Um pouco sobre partições linux...

Page 14: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

LVM é um acrônimo para a expressão inglesa Logical Volume Management para designar um padrão de gerenciamento de partições em disco IDE/SCSI/FC.

LVM

Page 15: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Formatando partições.

Page 16: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Nome de usuário do computador

Page 17: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Senha do usuário

Page 18: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Configuração de proxy

Page 19: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Instalação de softwares

Page 20: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

é, simultaneamente, um programa de computador e um protocolo de rede que permite a conexão com outro computador na rede, de forma a executar comandos de uma unidade remota. Possui as mesmas funcionalidades do TELNET, com a vantagem da conexão entre o cliente e o servidor ser criptografada.

SSH

Page 21: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Programa mais usado: Putty

Page 22: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Instalação do GRUB

Page 23: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Depois da instalação do grub ele reinicia o PC e ai sim começam as configurações e instalações principais.

Tempo médio de instalação: 20 min.

Termino da instalação

Page 24: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Apache 2.2 – Servidor HTTP. Bind9 – Servidor de DNS Mysql – Servidor de Banco de Dados. PostGres – Servidor de Banco de dados. Postfix – Agente de Transferência de email

(MTA). Courier – Servidor de Emails. (SMTP,POP3,IMAP) Phpmyadmin – Administrador de banco de

dados mysql. Pgmyadmin – Administrador de banco de dados

postgres

Programas usados no servidor

Page 25: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

PHP – Biblioteca do PHP. FCGI – Protocolo de integração de programas. PureFTPd - Servidor de FTP Quota – Gerenciador de espaço e

transferência de disco. ClamAv – Antivírus. SpamAssassin – responsável pelo Bloqueio

de Spams. Saslauthd – Protocolo de autenticação. Rkhunter – Localizador de RootKits.

Page 26: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Binutils - usados para montar, "linkar" e manipular arquivos binários e arquivos objeto.

Amavisd-new – Email scanner. PEAR - é uma plataforma e um sistema de distribuição para a

codificação de componentes em PHP. Mcrypt – biblioteca de algoritmos. suExec – Modulo do apache para descrever o PHP como CGI Vlogger – Gerador de Logs do apache Webalizer – Gerador de Log das paginas do apache Jailkit – Limitador de usuarios. Fail2Ban – Analiza os logs de erros e bloqueia os ips que

tiveram muitas falhas. SquirrelMail – WebMail. ISPconfig3 – Painel de Controle Open source.

Page 27: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Segunda dificuldade é referente ao servidor de DNS. Para quem não sabe o servidor de DNS atua

resolvendo o nome do domínio de um host qualquer para seu endereço IP correspondente, ou por exemplo:

O domínio www.google.com.br corresponde ao IP:173.194.34.104.

Bem a dificuldade encontrada na configuração do DNS é referente ao registro do domínio (seudominio.com.br) para efetuar um registro é preciso um DNS primário e secundário, ou seja 2 ips validos.

Dificuldade encontrada (2)

Page 28: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Para os custos de internet mensais não serem muito grandes, ao invés de ter mais um endereço de IP a solução é o aluguel de DNS.

A empresa que foi solicitado o uso do DNS é a empresa SuperDNS, que é uma empresa especializada em DNS.

Mas vou seguir como se tivesse um servidor de DNS próprio e ao final mostro como implantar a solução.

Solução DNS

Page 29: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Primeiro temos que definir um IP fixo para o computador.

Editamos o arquivo interfaces

Dentro da pasta /etc/network

Configurando o servidor

Page 30: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Exemplo

Page 31: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Agora devemos reiniciar a interface de rede

/etc/init.d/networking restart

E editar o arquivo de hosts

vi /etc/hosts

Page 32: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Exemplo

Page 33: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

echo server1.exemplo.com > /etc/hostname/etc/init.d/hostname restart

Para ver se esta tudo certo

hostnamehostname –f

Resultado nos 2 comandos: Server1.exemplo.com

Hostname

Page 34: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Para Alterar o shell padrão digite:

dpkg-reconfigure dash

Trocar o Shell padrão

Page 35: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

PrintScreen

Page 36: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Apparmor é uma extensão de segurança que deveria fornecer segurança estendida. Na minha opinião, você não precisa dele para configurar um sistema seguro, e que normalmente causa mais problemas do que vantagens. Principalmente com o ISPConfig rodando.

Para desabilitar digite:

/etc/init.d/apparmor stopupdate-rc.d -f apparmor removeaptitude remove apparmor apparmor-utils

apparmor

Page 37: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Atualização dos Pacotes do linux

Aptitude Update

Aptitude safe-upgrade

Atualizar Source.list

Page 38: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

NTP - network time protocol

Protocolo de horário na internet

aptitude install ntp ntpdate

Atualizar horario

Page 39: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

aptitude install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils maildrop

Instalar Postfix, Courier, Saslauthd, MySQL, rkhunter, binutils

Page 40: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Após rodar o comando anterior ele vai pedir a configuração do MYSQL:

New password for the MySQL "root" user: yourrootsqlpassword

Repeat password for the MySQL "root" user: yourrootsqlpassword

Create directories for web-based administration? No

General type of mail configuration: Internet Site

System mail name: server1.exemplo.com

SSL certificate required Ok

Page 41: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

vi /etc/mysql/my.cnf

Você deve comentar a linha:

bind-address = 127.0.0.1

Comentários são assim: #bind-address = 127.0.0.1

Comentamos essa linha para obter acesso ao Mysql se qualquer outro computador.

Depois reinicie o mysql: /etc/init.d/mysql restart

My.cnf – Arquivo de configuração

Page 42: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Resultado: root@server1:~# netstat -tap | grep mysql

tcp        0      0 *:mysql                 *:*                     LISTEN      9732/mysqldroot@server1:~#

Para testar se esta tudo Ok:

netstat -tap | grep mysql

Page 43: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Durante a instalação o courier cria certificados SSL do IMAP e do POP3, para o localhost mas não é o que prescisamos.

Temos que alterar estes certificados para o nosso hostname.

Configuração servidor email

Page 44: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Primeiro deletamos os certificados: cd /etc/courier

rm -f /etc/courier/imapd.pemrm -f /etc/courier/pop3d.pem

Alteramos os arquivos: vi /etc/courier/imapd.cnf vi /etc/courier/pop3d.cnf

As linhas: [...] CN=server1.exemplo.com [...]

Page 45: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Criamos os novos certificados: mkimapdcert

mkpop3dcert

E reiniciamos o courier: /etc/init.d/courier-imap-ssl restart

/etc/init.d/courier-pop-ssl restart

Page 46: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

aptitude install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl

Instalar Amavisd-new, SpamAssassin e o Clamav

Page 47: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

aptitude install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libopenssl-ruby

Instalar Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear e o mcrypt

Page 48: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Depois de rodar o comando anterior:

Web server to reconfigure automatically: apache2

Configure database for phpmyadmin with dbconfig-common?

No

Page 49: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

a2enmod suexec rewrite ssl actions include

Reiniciar o apache:

/etc/init.d/apache2 restart

Habilitar alguns módulos do apache

Page 50: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

aptitude install pure-ftpd-common pure-ftpd-mysql quota quotatool

Editar este arquivo: vi /etc/default/pure-ftpd-common

Deve ficar assim as linhas: [...] STANDALONE_OR_INETD=standalone [...] VIRTUALCHROOT=true [...]

No arquivo 'inetd.conf‘ comente a seguinte linha:

ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper

Depois é só reiniciar o ftp: /etc/init.d/pure-ftpd-mysql restart

Instalar PureFTPd E Quota

Page 51: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Você deve adicionar junto a linha do ponto de montagem / os seguintes comandos:

,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0

Esta linha mostra quais os arquivos de quota que devem ser gerados assim:

touch /aquota.user /aquota.groupchmod 600 /aquota.*mount -o remount /

Para ver se esta tudo certo:

quotacheck –avugm - examina os sistemas de arquivo habilitados com quotas

quotaon –avug – Habilita a quota

Comando vi /etc/fstab

Page 52: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

PrintScreen

Page 53: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

aptitude install bind9 dnsutils

O Painel de controle Gerencia o bind automaticamente.

Instalar BIND9 (DNS)

Page 54: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

aptitude install vlogger webalizer

aptitude install build-essential autoconf automake1.9 libtool flex bison debhelper

cd /tmpwget http://olivier.sessink.nl/jailkit/jailkit-2.11.tar.gztar xvfz jailkit-2.11.tar.gzcd jailkit-2.11./debian/rules binarycd ..dpkg -i jailkit_2.11-1_*.debrm -rf jailkit-2.11*

aptitude install fail2ban

Instalar Vlogger, Webalizer, Jailkit e o fail2ban

Page 55: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

aptitude install squirrelmail

Criar um link Simbólico: ln -s /usr/share/squirrelmail/

/var/www/webmail

E para configurar o web mail digite: squirrelmail-configure

Instalar squirrelmail

Page 56: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Configuração do Squirrelmail

Page 57: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Na configuração do Web mail você deve indicar qual o servidor de email que a maquina tem.

No exemplo : courier.

Digitando squirrelmail-configure

Você vai ver um menu: Escolha a opção D Digite courier e de um enter Depois S para salvar E Q para sair.

Pronto, configurado.

Page 58: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Testando

Page 59: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

cd /tmp

wget http://downloads.sourceforge.net/ispconfig/ISPConfig-3.0.2.1.tar.gz

tar xvfz ISPConfig-3.0.2.1.tar.gz

cd ispconfig3_install/install/

ISPconfig3

Page 60: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Instalar: php -q install.php

Select language (en,de) [en]: <-- ENTER

Installation mode (standard,expert) [standard]: <-- ENTER

Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [server1.exemplo.com]: <-- ENTER

MySQL server hostname [localhost]: <-- ENTER

MySQL root username [root]: <-- ENTER

MySQL root password []: <-- yourrootsqlpassword

MySQL database to create [dbispconfig]: <-- ENTER

MySQL charset [utf8]: <-- ENTER

Page 61: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Country Name (2 letter code) [AU]: <-- ENTERState or Province Name (full name) [Some-State]: <-- ENTERLocality Name (eg, city) []: <-- ENTEROrganization Name (eg, company) [Internet Widgits Pty Ltd]: <-- ENTEROrganizational Unit Name (eg, section) []: <-- ENTERCommon Name (eg, YOUR name) []: <-- ENTEREmail Address []: <-- ENTER

Segunda parte.

Page 62: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

http://server1.exemplo.com/ ou http://192.168.0.100/

Senha e usuários padrão do sistema: admin

O Postgres e o Pgmyadmin podem ser instalados pelo próprio ISPconfig.

No site http://www.ispconfig.org tem mais instruções.

testando

Page 63: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Prints

Page 64: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.
Page 65: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

No site do painel de controle você encontra diversos tutoriais de como utilizar o painel.

A versão usada aqui é o ISPConfig 3. Mas o aconselhável ainda é usar a versão mais instável que é a ISPConfig 2.

Trabalhando no Painel de Controle

Page 66: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Programas Utilizados: No-IP DNS do Site SuperDNS

Devemos criar uma conta nos dois sites e apontar o DNS para o host criado do no-ip, colocando as subpastas no root do apache.

Exemplo:

www.servidor.com.br -> http://seunoip.no-ip.org/subpastaapache

Explicando o modo de configuração com DNS alugado.

Page 67: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Site NO-IP

Page 68: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Configuração NO-IP

Page 69: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Site SuperDNS

Page 70: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Configuração Super DNS

Page 71: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

E devemos instalar o no-ip no servidor.

Aptitude install noip2

E para configurar devemos digitar:

Noip2 –C –c /etc/no-ip.conf

Digite o seu email, sua senha, escolha os hosts para se atualizarem e pronto.

Page 72: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Com este tutorial, você pode acessa-lo via FTP , podendo usar um programa chamado WinSCP.

Que é um programa de FTP open source.

SCP significa Secure Copy. É um meio seguro para transferência de arquivos para um host, ultilizando o protocolo de SSH.

Acessando o linux no windows xp

Page 73: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Tela WinSCP

Page 74: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Computador: R$ 2.800,00 Custo da Internet (5mb) Mensal: R$ 90,00 /

por linha Custo Registro.br: R$ 30,00 / Anual Custo de Software: R$ 0,00

Custos com DNS próprio

Page 75: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Computador: R$ 2.800,00 Custo da Internet (5mb) Mensal: R$ 90,00 /

mensal Custo Registro.br: R$ 30,00 / Anual Custo SuperDNS: R$ 25,00 / Anual Por cada

Dominio. Custo de Software: R$ 0,00

Custos com DNS alugado

Page 76: Por: Leonardo Vargas Leffa.  Sistema Operacional Usado:  Ubuntu 10.04.

Agradeço a todos pela atenção...

Att.

Leonardo Vargas Leffa

@lleoo8 – Twitter [email protected] –MSN Leonardo Vargas Leffa - Orkut

Fim...