Como instalar o Linux, Apache, MySQL, PHP (LAMP) stack no Ubuntu 16.04

Introdução

Uma stack "LAMP" é um grupo de software de código aberto que é normalmente instalado em conjunto para permitir que um servidor para hospedar sites dinâmicos e aplicações web. Este termo é na verdade um acrônimo que representa o sistema operacional linux, com o servidor web apache. O local de dados é armazenado numa base de dados MySQL, e conteúdo dinâmico é processado por PHP.

Neste guia, vamos ter uma stack LAMP instalado em um Ubuntu 16.04 nó. Ubuntu irá cumprir a nossa primeira exigência: um sistema operacional Linux.

Pré-requisitos

Antes de começar com este guia, você deve ter uma conta de usuário separada, não-root com o sudo privilégios estabelecidos no seu servidor. Você pode aprender como fazer isso, completando etapas 1-4 na configuração inicial do servidor para o Ubuntu 16.04 .

Podemos instalar Apache facilmente usando o gerenciador de pacotes do Ubuntu, apt . Um gerenciador de pacotes permite instalar mais dor-livre software a partir de um repositório mantido pelo Ubuntu. Você pode aprender mais sobre como usar o apt aqui.

Para os nossos propósitos, podemos começar digitando os seguintes comandos:

sudo apt-get update

sudo apt-get install apache2

 

Como estamos usando um sudo comando, essas operações são executadas com privilégios de root. Ele irá pedir sua senha de usuário regular para verificar suas intenções.

 

Depois de inserir sua senha, apt irá dizer-lhe quais os pacotes que pretende instalar e quanto espaço em disco extra que vai ocupar. Pressione Y e pressione Enter para continuar, e a instalação continuará.

 

Em seguida, supondo que você seguiu as instruções de configuração do servidor inicial, para permitir o firewall UFW, certifique-se de que seu firewall permite tráfego HTTP e HTTPS. Você pode ter certeza de que UFW tem um perfil de pedido de Apache assim:

sudo ufw app list
Output
Available applications:
  Apache
  Apache Full
  Apache Secure
  OpenSSH

Se você olhar para o Apache Full de perfil, ele deve mostrar que ele permite que o tráfego para portas 80 e 443:

sudo ufw app info "Apache Full"
Output
Profile: Apache Full
Title: Web Server (HTTP,HTTPS)
Description: Apache v2 is the next generation of the omnipresent Apache web
server.

Ports:
  80,443/tcp

Permitir tráfego de entrada para este perfil:

sudo ufw allow in "Apache Full"

Você pode fazer uma verificação no local imediatamente para verificar se tudo correu como planejado, visitando o endereço IP público do seu servidor no seu navegador.

http://your_server_IP_address

Você vai ver o Ubuntu 16.04 página web Apache padrão, que está lá para fins informativos e de teste. Deve ser algo como isto:

 

 

Se você ver esta página, então o seu servidor web está agora instalado corretamente e acessíveis através de seu firewall.

 

Como encontrar o seu Endereço IP do Servidor Público

 

Se você não sabe o endereço IP público do seu servidor, há uma série de maneiras que você pode encontrá-lo. Normalmente, este é o endereço que você usa para se conectar ao seu servidor através de SSH.

 

A partir da linha de comando, você pode encontrar algumas maneiras. Em primeiro lugar, você pode usar os iproute2 ferramentas para obter seu endereço, digitando o seguinte:

ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

Isto lhe dará duas ou três linhas de volta. Eles são todos os endereços corretos, mas o computador só pode ser capaz de usar um deles, então sinta-se livre para tentar cada um.

Um método alternativo é usar a curl de utilidade que entra em contato com uma parte externa para lhe dizer como ele vê o seu servidor. Você pode fazer isso por pedir um servidor específico que o seu endereço IP é:

sudo apt-get install curl

curl http://icanhazip.com

Independentemente do método que você usa para obter o seu endereço IP, você pode digitá-lo na barra de endereços do seu navegador para chegar ao seu servidor.

Passo 2: Instalar MySQL

Agora que temos o nosso servidor web esta funcionando, é hora de instalar o MySQL. O MySQL é um sistema de gerenciamento de banco de dados. Basicamente, ele irá organizar e proporcionar o acesso a bases de dados em que o nosso site pode armazenar informações.

Mais uma vez, podemos usar apt para adquirir e instalar o nosso software. Desta vez, vamos também instalar alguns outros pacotes "auxiliar" que vai nos ajudar na obtenção de nossos componentes para se comunicar uns com os outros:

sudo apt-get install mysql-server

Nota: Neste caso, você não tem que colocar sudo apt-get update antes do comando. Isto é porque nós colocamos recentemente nos comandos acima para instalar Apache. O índice de pacotes em nosso computador já deve estar up-to-date.

 

Mais uma vez, será mostrada uma lista dos pacotes que serão instalados, juntamente com a quantidade de espaço em disco eles ocupam. Digite Y para continuar.

 

Durante a instalação, o servidor irá pedir-lhe para selecionar e confirmar uma senha para o usuário MySQL "root". Esta é uma conta administrativa no MySQL que aumentou privilégios. Pense nisso como sendo semelhante à conta root para o próprio servidor (o que você está configurando agora é uma conta específica do MySQL) No entanto certifique-se esta é uma senha forte, única, e não deixá-la em branco.

 

Quando a instalação estiver completa, queremos executar um script simples de segurança que irá remover alguns padrões perigosas e bloquear o acesso ao nosso sistema de banco de dados um pouco. Inicie o script interativo executando:

sudo mysql_secure_installation

V ocê será solicitado a digitar a senha que você definiu para a conta root MySQL. Em seguida, você será perguntado se você deseja configurar o VALIDATE PASSWORD PLUGIN .

Aviso: A ativação desse recurso é algo de uma chamada de julgamento. 

Se ativada, as senhas que não correspondem aos critérios especificados será rejeitada pelo MySQL com um erro.

Isto irá causar problemas se você usar uma senha fraca em conjunto com software que configura automaticamente as credenciais do usuário do MySQL, como os pacotes do Ubuntu para phpMyAdmin.

É seguro deixar validação desativada, mas você deve sempre usar senhas fortes e únicas para as credenciais de banco de dados.

Resposta Y para sim, ou qualquer outra coisa para continuar sem habilitação.

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?

Press y|Y for Yes, any other key for No:

 

Você será solicitado para selecionar um nível de validação de senha. Tenha em mente que se você inserir 2, para o nível mais forte, você receberá erros ao tentar definir qualquer senha que não contenha números, letras maiúsculas e minúsculas e caracteres especiais, ou que se baseia em palavras do dicionário comuns.

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary  file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1

Se você ativou a validação de senha, você será mostrado uma força da senha para a senha raiz existente, e perguntou-lhe se você deseja alterar a senha. Se você está feliz com a sua senha atual, digite n para "não" no prompt:

Using existing password for root.

Estimated strength of the password: 100
Change the password for root ? ((Press y|Y for Yes, any other key for No) : n

 

Para o resto das perguntas, você deve pressionar Y e pressione a tecla Enter em cada prompt. Isto irá remover alguns usuários anônimos e o banco de dados de teste, desabilitar logins root remotos, e carregar essas novas regras para que o MySQL respeita imediatamente as mudanças que fizemos.

 

Neste ponto, o sistema de banco de dados está configurado e podemos seguir em frente.

Passo 3: Instalar PHP

PHP é o componente da nossa configuração que irá processar o código para exibir conteúdo dinâmico.Ele pode executar scripts, conectar aos nossos bancos de dados MySQL para obter informações e entregar o conteúdo processado para o nosso servidor web para exibir.

Podemos mais uma vez aproveitar o apt do sistema para instalar nossos componentes. Nós vamos incluir alguns pacotes auxiliares, bem como, para que o código PHP possa ser executado sob o servidor Apache e falar com nosso banco de dados MySQL:

sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql

Isso deve instalar o PHP sem quaisquer problemas. Vamos testar isso em um momento.

Na maioria dos casos, vamos querer modificar a maneira que o Apache serve arquivos quando um diretório é solicitada. Atualmente, se um usuário solicita um diretório do servidor, o Apache procurará primeiro por um arquivo chamado index.html . Nós queremos dizer o nosso servidor web a preferir arquivos PHP, por isso vamos fazer Apache olhar para um index.php arquivo pela primeira vez.

Para fazer isso, digite o seguinte comando para abrir o dir.conf arquivo em um editor de texto com privilégios de root:

sudo nano /etc/apache2/mods-enabled/dir.conf

Ele será parecido com este:

/etc/apache2/mods-enabled/dir.conf
<IfModule mod_dir.c>
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>

Queremos mover o arquivo de índice PHP destacado acima para a primeira posição após a DirectoryIndex especificação, como este:

/etc/apache2/mods-enabled/dir.conf
<IfModule mod_dir.c>
    DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

 

Quando tiver terminado, salve e feche o arquivo pressionando Ctrl-X. Você terá que confirmar a salvar digitando Y e pressione a tecla Enter para confirmar o arquivo local de salvamento.

 

Depois disso, é preciso reiniciar o servidor web Apache para que as nossas mudanças sejam reconhecidas. Você pode fazer isso digitando o seguinte:

sudo systemctl restart apache2

Também pode verificar o status do apache2 serviço usando systemctl :

sudo systemctl status apache2
Sample Output
● apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: active (running) since Wed 2016-04-13 14:28:43 EDT; 45s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 13581 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS)
  Process: 13605 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)
    Tasks: 6 (limit: 512)
   CGroup: /system.slice/apache2.service
           ├─13623 /usr/sbin/apache2 -k start
           ├─13626 /usr/sbin/apache2 -k start
           ├─13627 /usr/sbin/apache2 -k start
           ├─13628 /usr/sbin/apache2 -k start
           ├─13629 /usr/sbin/apache2 -k start
           └─13630 /usr/sbin/apache2 -k start

Apr 13 14:28:42 ubuntu-16-lamp systemd[1]: Stopped LSB: Apache2 web server.
Apr 13 14:28:42 ubuntu-16-lamp systemd[1]: Starting LSB: Apache2 web server...
Apr 13 14:28:42 ubuntu-16-lamp apache2[13605]:  * Starting Apache httpd web server apache2
Apr 13 14:28:42 ubuntu-16-lamp apache2[13605]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerNam
Apr 13 14:28:43 ubuntu-16-lamp apache2[13605]:  *
Apr 13 14:28:43 ubuntu-16-lamp systemd[1]: Started LSB: Apache2 web server.

 

 

Instalar PHP Modules

 

Para melhorar a funcionalidade do PHP, que pode, opcionalmente, instalar alguns módulos adicionais.

 

Para ver as opções disponíveis para os módulos PHP e bibliotecas, você pode canalizar os resultados de apt-cache search para less , um pager que permite percorrer a saída de outros comandos:

 

apt-cache search php- | less

 

Use as setas para rolar para

Esta resposta lhe foi útil?

Artigos Relacionados

Instalando vmware tools no Ubuntu

1. Instalar os requisitos para vmware tools funcionar corretamente apt-get install perl gcc make...

Instalando Apache (WWW)

No terminal execute: sudo apt-get install php5sudo /etc/init.d/apache2 restart  

Instalando Knemo

Abra o terminal e execute: sudo apt-get install knemo  

Instalando Mysql e Phpmyadmin

No terminal execute: sudo apt-get install mysql-server mysql-client php5-mysqlsudo apt-get...

Instalando SSH

No terminal execute: sudo apt-get install rssh