Você está na página 1de 30

Como configurar um servidor

web dedicado
Todos os grandes websites possuem um grande servidor
por trs. Nesse artigo, ser mostrado como configurar um
servidor

web

PHP) usando

dedicado
uma

(com

Apache,

mquina

velha

MySQL,
que

est

encostada em um canto de sua casa e alguns


softwares livres.

1. Viso Geral
Nesse artigo, queremos alcanas vrios objetivos:
Iremos instalar o sistema operacional Ubuntu Server.

Esse sistema usado com frequncia por ser fcil de usar


e administrar. Tambm possui uma comunidade grande e
bastante ativa, o que torna a obteno de suporte mais
fcil.

Iremos instalar um servidor OpenSSH Isso permitir


a administrao do servidor de computadores remotos.

Um conjunto LAMP (Linux, Apache, MySQL, e PHP)


ser instalado. Isso fornecer a espinha dorsal que ir
executar seu website. O Apache o servidor web padro
de mercado em sistemas operacionais baseados no Unix
e o que usaremos.

Iremos

instalar

um

firewall

para

proteger

seu

servidor de acessos no autorizados.


Para poder seguir os passos descritos nesse artigo, sero
necessrios os seguintes itens:

Um computador para ser usado como servidor. No


precisa

ser

muito

poderoso,

desde

que

no

seja

demasiadamente antigo. No utilize o seu PC de trabalho;


o Ubuntu ir apagar completamento seu computador.

Um gravador de CD e um CD em branco. Com esses


itens voc gravar o Ubuntu em um disco para poder
instala-lo no computador..

Tempo.

Srio,

especialmente

quando

processo
surgem

consome

problemas

tempo,
a

serem

resolvidos. Tente separar uma tarde para seguir os


procedimentos descritos aqui.
Voc pode estar se perguntando por que ter seu prprio
servidor. Existem vrias razes, algumas delas sendo:
pode ter sua prpria zona de testes para seus websites;
com poucas modificaes, pode hospedar seu prprio
site; e poder aprender muito sobre Linux/Unix. Dito isso,
vamos comear!

2. Baixar o Ubuntu Server


Em primeiro lugar, precisamos de um CD com o Ubuntu.
Acesse

pelo

seu

navegador

endereo http://www.ubuntu.com/, e clique em Download


no menu esquerda. Voc ser apresentado a uma caixa
com duas abas: Desktop Edition e Server Edition.
Clique em Server Edition, e selecione Ubuntu 8.04
LTS ou a verso mais recente que aparecer. Em seguida,
selecione um local na caixa de listagem. Finalmente,
clique no boto Begin Download.

Agora voc precisa gravar a imagem ISO (o arquivo que


acabou de baixar) em um CD em branco. Se no souber
fazer

isso,

existe

um

excelente

guia

em

https://help.ubuntu.com/community/BurningIsoHowto

3. Instalao do Ubuntu Server


Aps baixar e gravar o ISO em um CD, vamos instalar o
Ubuntu no servidor. Coloque o disco no drive, e faa boot
a partir do CD. Na maioria dos computadores modernos,
isso acontecer por padro se houver um disco no drive
quando voc liga a mquina. Se no acontecer, voc
precisa

pressionar

uma

tecla

quando

voc

liga

computador. Em alguns computadores, essa tecla F2.


Isso depende de seu computador. Voc pode descobrir
essa informao olhando no texto que aparece na tela
quando o computador ligado, durante a BIOS. Voc ver

algo como Press [KEY] to change boot order. Pressione


esa tecla e selecione o drive do CD.
Agora que efetuou boot com o ubuntu, deve visualizar a
seguinte tela:

Selecione o seu idioma e pressione Enter. Voc ver a


seguinte tela:

Selecione Install Ubuntu Server, e a instalao ir


comear. O Instalador ir perguntar agora se voc quer
detectar o layout do teclado. Pessoalmente, eu prefiro
escolher no, porque mais rpido selecionar um teclado
padro americano na lista do que deixar o instalador
detecta-lo. Selecione qualquer uma das opes, apenas
seguindo as instrues selecionadas. Aps fazer isso,
voc ver vrias telas de carregamento informando
coisas como Detecting CD-ROM drives dentre outras.
Essas telas devem passar rapidamente e sem problemas.
Porm, durante essas telas, o instalador ir tentar autoconfigurar as suas configuraes de rede. Na maioria dos
casos, isso funcionar sem problemas. Porm, se no
funcionar com voc, apenas siga as instrues na tela
para fazer funcionar. Depois que tudo isso for feito, ser

pedido a voc um nome para o host. Voc pode informar


qualquer nome para ele.

O sistema pedir a voc para informa o fuso horrio de


seu relgio. Escolhe a opo que mais se aplica ao seu
caso. Agora, o sistema ir detectar mais hardware, e voc
ser solicitado a particionar o disco. Selecione Guided
use entire disk.

Voc

agora

precisa

selecionar

disco

que

quer

particionar. Na maioria das instalaes, apenas um disco


estar

disponvel;

porm,

em

sistemas

mais

especializados, mais opes estaro disponveis aqui.


Escolha a opo que seja adequada ao seu caso.

Ser perguntado se voc quer salvar as alteraes no


disco. Selecione Yes e pressione Enter. O instalador
agor executar a formatao do disco e configurar as
parties. Agora a mgica acontece: o sistema ir
comear a instalao. Enquanto isso acontece, v tomar
um caf. Isso pode levar de 10 minutos a 1 hora,
dependendo de seu sistema. Pode acontecer de parecer
que est travado; no se preocupe, no est. Apenas
deixe a instalao prosseguir. Porm, se ficar preso em
algum item por mais de uma hora, ento sim, est
travado.

Agora que o sistema foi instalado, preciso configurar a


conta que voc usar para efetuar login no sistema.
Primeiro,

fornea

Continue.

seu

nome

completo

selecione

Agora insira um nome de usurio. Normalmente se


informa apenas o primeiro nome, mas isso pode variar.
Um nome que voc no pode usar root.

Ser pedido que voc fornea uma senha. ESSENCIAL


escolher uma senha forte, ou o seu servidor no estar
seguro. recomendvel AO MENOS usar um mistura de
nmeros e letras minusculas e maisculas. Para melhorar
ainda mais a segurana, voc pode usar smbolos, assim
com uma mistura de tudo acima. NO USE uma senha
com menos de 7 caracteres.

Em seguida, re-informe a senha para garantir que voc


digitou

corretamente.

configurar

Package

sistema
Manager

ir

agora

(falaremos

tentar
dele

brevemente). Fornea a informao do proxy, ou deixe


em branco se no usar um, e selecione Continue.

sistema

ir

buscar

em

vrios

atualizaes e ajustes de configurao.

servidores

por

Depois que esse passo for concludo, ser apresentado a


voc vrias opes de software para servidor que podem
ser instaladas. Nesse momento, preste muita ateno.
Selecione OpenSSH e pressione a barra de espao, NO
Enter.

Se

prosseguir

voc
sem

pressionar
instalar

Enter,
servidor

instalador
OpenSSH.

ir
Voc

tambm pode instalar o LAMP Server, mas aqui nesse


artigo seguiremos uma caminho diferente.

O sistema ir instalar o software selecionado por voc,


assim como outros componentes de sistema necessrios.

Finalmente a instalao ser finalizada. Remova o CD e


pressione Enter. O computador ir reiniciar. Se tudo correr
bem, voc ver uma tela que deve ser similar a seguinte:

Parabns! voc acabou de finalizar a parte mais difcil. O


ubuntu est instalado agora, e hora de transformar esse
computador em um servidor web.

4. Atualize seu novo servidor


Antes de seguir em frente, precisamos nos certificar de
que o servidor esteja atualizado. Para fazer isso, voc
precisa efetuar login. Primeiro, digite o nome de usurio
(que foi escolhido antes) e pressione Enter. Em seguida,
digite a sua senha. A medida que digita a senha,
perceber que nada parece estar acontecendo. No se
preocupe, essa forma que o sistema foi projetado para
funcionar. Depois de digitar a senha, pressione Enter, e
sua tela deve se aprecer com a seguinte se tudo correr
bem:

Agora digite:
sudo aptitude
upgrade

update

&&

sudo

aptitude

dist-

Ser pedido a sua senha, e novamente, voc no ver


nada do que estiver digitando. Depois de ter feito
isso,ser perguntado se quer continuar. Digite y e
pressione Enter. Suas tela ir se parecer com o seguinte:

sistema

ir

agora

baixar

instalar

as

ltimas

atualizaes. Isso demor algum tempo dependendo de


sua conexo com a Internet. Depois de finalizar essa
parte, seu computador precisar ser reiniciado. Para fazer
isso, digite:
sudo shutdown -r now
E

deixe

sistema

reiniciar.

Seu

servidor

est

completamente atualizado.
Uma observao rpida sobre o Sudo

Nesse momento, voc deve ter percebido que todos os


comandos que ns digitamos foram precedidos com

sudo.

Isso

se

deve

porque

eles

necessitam

de

privilgios de administrador, e isso que sudo faz. Ele


executa

comando

(ex.:

shutdown)

como

administrador, permitindo que ele seja executado de


forma adequada. Esse tambm o motivo pelo qual a
senha solicitada. Porm, depois de ter digitado sudo e
informado sua senha uma vez, voc no precisar mais
digitar a senha por cinco minutos. Nem todos os
comandos necessitam do sudo, apenas aqueles que
modificaro partes do sistema. Entendeu tudo? timo.

5. Instalao do Apache, MySQL, e PHP


Agora chegou o momento de instalar alguns programas.
Para poder acessar seus arquivos da Internet, iremos
precisar instalar um servidor web (Apache). Alm do
servidor web, tambm queremos um servidor de banco
de dados (MySql) e uma linguagem de script (PHP) de
forma que possamos rodar aplicaes populares como o
WordPress. Assim, vamos fazer isso! Instalar programas
no

Ubuntu

bastante

diferente

da

instalao

de

programas no Windows ou Mac OS X, onde o Ubuntu ir


instalar os programas para voc atravs de um comando
simples. Isso se deve pois o Ubuntu tem algo chamado
Package

Manager,

que

gerencia

quase

todos

os

programas de seu sistema. Tudo que temos que fazer


informar ao gerenciador de pacotes (chamado aptitude)
que queremos instalar o Apache, o MySql e o PHP. Para
fazer isso, digite o seguinte comando:

sudo
aptitude
install
apache2
libapache2-mod-php5 mysql-server

php5-mysql

E pressione Enter. O Aptitude ir baixar e instalar os


programar especificados. Tambm ir baixar e instalar
qualquer dependncia necessria.

Durante o processo de instalao, o MySql ir solicitar a


informao

da

senha

do

super-usurio.

Voc

pode

informar qualquer coisa para essa senha, somente tenha


certeza de que seja uma senha longa e segura. Seja l o
que for fazer, NO deixe essa senha em branco.

Depois que tudo tenha terminado, voc tem nesse


momento um servidor web completamente funcional.
Para testa-lo, primeiro descubra o endereo IP do servidor
atravs do comando:
ifconfig | grep inet

Normalmente ser o primeiro endereo IP retornado. No


exemplo acima, o 192.168.177.129. Agora que voc
sabe o IP, abra seu navegador e digite o endereo IP de

seu servidor. Se voc visualizar It works!, est tudo


funcionando normalmente.

Porm, ainda no fizemos tudo. No queremos que o


Apache ou o PHP divulguem nenhuma informao sobre
eles, pois essa informao no necessria ao usurio e
pode representar um risco de segurana. Primeiro, faa
uma cpia do arquivo de configurao do Apache:
sudo
cp
/etc/apache2/apache2.conf
/etc/apache2/apache2.conf.bak
Agora abra esse arquivo:
sudo nano /etc/apache2/apache2.conf
Role para baixo (seta para baixo) at o ponto onde est
escrito ServerTokens Full e altere para que se leia
ServerTokens Prod

Agora,

role

apra

baixo

um

pouco

mais

altere

ServerSignature On para ServerSignature Off

Finalmente, pressione Ctrl-O seguido por Ctrl-X. Isso


salvar o arquivo e encerrar o editor de texto. Agora,
precisamos fazer o mesmo com o PHP. Primeiro, faa uma
cpia do arquivo de configurao do PHP:
sudo
cp
/etc/php5/apache2/php.ini
/etc/php5/apache2/php.ini.bak

Abra o arquivo de configurao:


sudo nano /etc/php5/apache2/php.ini
Altere a linha expose_php = On para expose_php =
Off

Novamente, pressione Control-O seguido por Control-X.


Agora que os arquivos de configurao esto atualizados,
reinicie o Apache:
sudo /etc/init.d/apache2 restart
Voc terminou de configurar o Apache, o MySql e o PHP.

6. Instalao de um Firewall
Iremos agora trancar nosso servidor um pouco mais
atravs da instalao do Shorewall, uma firewall de linha
de comando. para instala-lo:
sudo aptitude install shorewall

Por padro, o Shorewall instalado com nenhuma regra,


permitindo

acesso

total.

Porm,

esse

no

comportamento que desejamos. Ao invs disso, iremos


bloquear todas as conexes a todas as portas exceto a
porta 80 (HTTP) e a porta 22 (SSH). Primeiro, copie os
arquivos de configurao para o diretrio do Shorewall:
sudo
cp
/usr/share/doc/shorewallcommon/examples/one-interface/* /etc/shorewall/
Agora, abra o arquivos rules:
sudo nano /etc/shorewall/rules
Adicione as seguintes linhas no espao logo acima de
onde est escrito #LAST LINE
HTTP/ACCEPT
SSH/ACCEPT net

net

$FW
$FW

Depois pressione Ctrl-O e Ctrl-X. Seu firewall est agora


configurado para aceitar apenas trfego HTTP e SSH. A
ltima coisa que precisamos fazer dizer ao Shorewall
para ser iniciado durante o boot. Assim, abra o arquivo de
configurao principal do Shorewall:
sudo nano /etc/shorewall/shorewall.conf
Role para baixo at STARTUP_ENABLED=No e altere
para STARTUP_ENABLED=Yes

Pressione Control-O e Control-X. Agora, abra o arquivo de


configurao padro do Shorewall:
sudo nano /etc/default/shorewall
E altere startup=0 para startup=1. Pressione ControlO e Control-X. Finalmente, inicie o firewall:
sudo /etc/init.d/shorewall start

Parabns!

Seu

firewall

est

agora

configurado

protegendo seu servidor.

7. Adicione seu Website ao seu Servidor


Web
Agora que voc configurou tudo, voc ir quere adicionar
um website ao servidor. Por padro, todos os arquivos
que o Apache disponibiliza na Internet esto localizados
em /var/www/. Porm, voc no pode escrever nesse
diretrio. Vamos tornar isso possvel:
sudo usermod -g www-data [YOUR USERNAME]
sudo chown -R www-data:www-data /var/www
sudo chmod -R 775 /var/www
O que acontece aqui que voc adicionou seu usurio ao
grupo www-data, e tornou o diretrio acessvel para
escrita para os membros do grupo www-data. Agora,
voc ir efetuar login em seu servidor usando o SFTP (no
confunda com o FTPS). Alguns clientes que suportam
SFTP
Linux,

so: WinSCP (Windows,


OS

X,

Livre), FileZilla (Windows,

Livre), Cyberduck (OS

X,

Livre),

o Transmit (OS X, $30). Conecte-se ao servidor usando


seu nome e senha e, se seu cliente suportar, o caminho
padro

/var/www

(se

no

suportar,

simplesmente

navegue at o diretrio /var/www aps ter efetuado


login): (A figura abaixo mostra a tela do Transmit)

Voc pode agora adicionar seus arquivos a esse diretrio


(/var/www) e eles sero mostrados em seu servidor
quando voc abre-o com seu navegador. Nesse momento,
voc deve estar se perguntando o por qu de se usar
SFTP ao invs do FTP. O motivo principal porque o SFTP
embutido no OpenSSH (que foi instalado previamente).
Porm, tambm mais seguro que o FTP, e torna difcil
(possivelmente

impossvel)

que

usurios

maliciosos

tenham acesso as suas credenciais de acesso.

8. Tornando seu servidor acessvel na


Internet
Muitas redes domsticas esto atrs de roteadores
nesses dias. Por causa disso,seu servidor web no estar
visvel para a Internet sem um pequeno passo extra.

Como cada roteador disponvel no mercado diferente


um dos outros, podemos apenas dar direes gerais
nessa rea. Existem duas maneiras de disponibilizar seu
servidor na Internet: uma DMZ ou Port Forwarding. A
principal diferena perceptvel entre as duas que com
uma

DMZ,

seu

anteriormente

servidor

para

se

usa

proteger.

firewall
Porm,

instalado
com

Post

Forwarding, o seu servidor estar protegido pelo firewall


do roteador.
Porm, antes de prosseguirmos, queremos dar a nosso
servidor um endereo de rede esttico. Para fazer isso,
faa login no roteador, e procure por algo como Static
IPs ou Static Routing. Aps ter dado ao seu servidor
um endereo de rede esttico, voc pode seguir em
frente. Lembre, o Google seu amigo. Para Port Forward,
existe um excelente website, PortForward.com, embora
de

forma

feia,

procedimentos

pode

ajudar

necessrios

voc

em

quase

executar
todos

os
os

roteadores. As postas que voc quer configurar aqui so a


22 e a 80. Para criar uma DMZ, voc precisa efetuar login
em seu roteador e procurar por algo como DMZ
settings. Uma vez que tiver achado essa opo, adicione
o seu servidor na DMZ, e tudo estar configurado.
Novamente, o Google til em situaes como essa.
Agora, ache seu endereo IP pblico e voil! Voc pode
acessar seu servidor de qualquer lugar desde que seu IP
no mude.

9.
Gerenciando
remotamente

seu

servidor

Alm de permitir que voc transfira arquivos para seu


servidor, o OpenSSH permite que voc faa login em
servidor de qualquer lugar desde que voc saiba seu IP.
No Windows, voc ir precisar de um cliente SSH. Uma
boa opo o Putty. No OS X, o SSH j vem instalado pro
padro. Simplesmente abra o Terminal e digite ssh
you@yourip. No Putty, selecione SSH, e informe seu IP,
nome de usurio e senha quando for solicitado. Voc
perceber que, aps ter feito login, a tela se parecer
exatamente como a que voc veria no servidor:

Voc pode fazer qualquer coisa que faria se estivesse de


fato sentado em frente ao servidor, fisicamente. Para se
desconectar do servidor, simplesmente digite exit e
pressione Enter.

10. E isso tudo!


Voc

tem

agora

um

servidor

web

completamente

funcional. Alm de ser um timo ambiente de teste, pode


ser adequado para hospedar website com um trfego
razoavelmente baixo. Existe obviamente um bocado a se
aprender, mas com isso voc pode obter um pequeno
vislimbre de como um servidor web funciona. Se quiser
ler mais sobre esse assunto, segue alguns outros artigos
para se aprofundar no tema:

Instalando Software

Configurando o Apache, o MySQL, e PHP

Guia de configurao do Shorewall

Como fazer Port Forward

Você também pode gostar