O OpenLiteSpeed é um Web Server Open Source moderno com recursos de alto desempenho e segurança de alto nível.
O servidor entende as regras de reescrita do Apache e possui recursos de aceleração de cache inteligente que permitem implementar o cache mais rápido em seu servidor.
Possui Suporte Múltiplo PHP embutido e também a LSAPI para aplicativos externos 2x mais rápidos; Além de tudo isso é possível habilitar vários processadores PHP para diferentes sites.
Principais recursos do OpenLiteSpeed
- Compatibilidade com as regras de reescrita do Apache.
- Painel de Administração Web.
- Arquitetura orientada a eventos.
- Suporte a HTTP/3 & HTTP/2.
- Suporte a múltiplas versões PHP.
- Módulo Multi-Thread.
- LiteSpeed Cache.
- WAF(mod_security 3), Anti-DDoS, e Limite de largura de banda.
Neste post vamos abordar
- Configuração do Firewall UFW
- Instalação do OpenLiteSpeed
- Instalação do PHP 7.4 e extensões
- Instalação do MariaDB 10.4
- Correta configuração de vhost no OpenLiteSpeed para hospedar nosso primeiro domínio
- Instalação e configuração de SSL com Let´s Encrypt em seu domínio no OpenLiteSpeed
- Instalação do WordPress
Observação: Para melhor segurança e excelente desempenho, o SSL irá utilizar o novo TLS 1.3 e http a nova versão http/3.
Configuração do Firewall UFW
Vamos utilizar o Firewall padrão do Ubuntu 20.04. Vamos abrir as seguintes portas:
Porta: 80 tcp, 443 tcp/udp, 7080/tcp, 22/ssh
O UFW como padrão está inativo.
Por default o UFW está configurado para negar todas as conexões de entrada e permite apenas as conexões de saída, ou seja, ninguém externo conseguiria acessar seu servidor mas seus aplicativos conseguiriam acessar a rede externa.
Para evitar problemas vamos primeiro criar nossas regras, abrindo as portas que vamos utilizar.
Agora vamos habilitar o UFW. Digite y na pergunta
Feito! agora temos o UFW ativo e filtrando as portas que informamos.
Instalação do OpenLiteSpeed
Vamos instalar o OpenLiteSpeed através do Repositório
Atualize a lista de repositório e instale o OpenLiteSpeed
Após a instalação vamos modificar a senha. Existem duas formas de fazer isso.
A primeira é utilizar o painel do OpenLiteSpeed e com o usuário e senha padrã(usuario: admin senha: 123456) alterar sua senha.
A Segunda é a que eu recomendo pelo menos conhecer. Este método é muito útil se um dia perder a senha do admin. Através do shell siga os passos abaixo
Em
User name [admin]: deixe em branco apenas dê enter
a seguir informe duas vezes a senha que deseja utilizar .
Este método é muito útil se um dia perder a senha da administração.
Para Acessar a administração do OpenLiteSpeed utilize: https://ipdoseuservidor:7080
Instalação do PHP 7.4 e extensões
Como padrão, o OpenLiteSpeed instala o PHP 7.3.
Para efeitos didáticos e melhorias, vamos instalar o PHP 7.4 e configurá-lo como padrão no OpenLiteSpeed.
Instale o PHP 7.4 e extensões
Instalação do MariaDB 10.4
Instalação do repositório do MariaDB 10.4
Instalação do MariaDB 10.4
Execute o script para segurança do MariaDB
Habilitar e iniciar o MariaDB
Configuração de vhost no OpenLiteSpeed para hospedar nosso primeiro domínio
Neste passo, precisamos de um domínio que iremos apontá-lo para o IP de nosso servidor. Em nosso exemplo estamos utilizando um domínio “helpsysadmin.ml” que utiliza os serviços do cloudflare.
Em seu provedor de DNS crie uma entrada tipo A do nome do seu domínio para o IP de seu servidor OpenLiteSpeed e outra entrada CNAME www para o nome de seu domínio.
Criando Virtual Host no OpenLiteSpeed
Acesse a administração do OpenLiteSpeed https://ipdoseuservidor:7080 e a seguir Virtual Hosts, clique no ícone Add
Adicione a configuração abaixo
Variáveis | Valor |
Virtual Host Name | helpsysadmin.ml |
Virtual Host Root | $SERVER_ROOT/helpsysadmin.ml/ |
Config File | $SERVER_ROOT/conf/vhosts/$VH_NAME/helpsysadmin.ml.conf |
Follow Symbolic Link | Yes |
Enable Scripts/ExtApps | Yes |
Restrained | Yes |
ExtApp Set UID Mode | Server UID |
No topo da página clique em save. Você verá uma mensagem informando que o arquivo .conf não existe. Abaixo haverá a opção para criar o arquivo .conf onde deverá clicar “CLICK TO CREATE” a seguir irá conseguir salvar esta parte.
Quando clicamos em “CLICK TO CREATE” Openlitespeed cria um arquivo de configuração de host virtual que nos permite salvar as configurações
Uma vez que nosso virtual host foi criado, vá novamente em Virtual Hosts –> clique no Virtual Host (helpsysadmin.ml) –> selecione a aba General e modifique as configurações como mostrado abaixo.
Variáveis | Valor |
Document Root | $VH_ROOT/html/ |
Domain Name | helpsysadmin.ml |
Enable Compression | Yes |
Salve as alterações
Novamente vá em Virtual Hosts > clique em seu Virtual Host (helpsysadmin.ml) –> General e edite Index Files
Variáveis | Valor |
Use Server Index Files | No |
Index Files | index.html, index.php |
Auto Index | No |
Auto Index URI |
Novamente vá em Virtual Hosts > clique em seu Virtual Host (helpsysadmin.ml) –> Log e edite Virtual Host Log
Variáveis | Valor |
Use Server’s Log | Yes |
File Name | $VH_ROOT/logs/error.log |
Log Level | ERROR |
Rolling Size (bytes) | 10M |
Novamente vá em Virtual Hosts > clique em seu Virtual Host (helpsysadmin.ml) –> Log e edite Access Log
Variáveis | Valor |
Log Control | Own Log File |
Piped Logger | |
Log Format | |
Log Headers | |
Rolling Size (bytes) | 10M |
Keep Days | 30 |
Bytes log | |
Compress Archive | Yes |
Após criarmos um Virtual Host para nosso domínio, precisamos mapeá-lo para que possamos acessa-lo ao final.
Para fazer isso, vá em Listeners, vamos criar dois registro, um será responsável em configurar nosso domínio na porta 80 , o outro na porta segura 443.
Localize o menu “Listener List” e a direita clique no sinal de “+” para adicionarmos nosso primeiro Listerner.
Preencha os campos conforme a tabela
Variável | Valor |
Listener Name | Porta80 |
IP Address | ANY |
Port | 80 |
Binding | |
Secure | No |
Notes |
Agora adicione um novo Listener para a porta 443 conforme abaixo
Variável | Valor |
Listener Name | Porta443 |
IP Address | ANY |
Port | 443 |
Binding | |
Secure | Yes |
Notes |
Neste ponto temos os Listerners para a porta 80 e 443. Clique no nome de um dos Listernes que você criou, a seguir em “Virtual Host Mappings” clique no sinal “+“.
Na próxima tela em Virtual Host * selecione o nome do seu domínio e abaixo em Domains digite novamente o nome do seu domínio sem www ou http
Execute os mesmos passos com o Listener Porta443 que você criou anteriormente.
Criando pastas para logs e site
Acesse o SSH do seu servidor e digite(substitua o domínio informado pelo que configurou no OpenLiteSpeed)
Antes de prosseguirmos vamos reiniciar o OpenLiteSpeed e instalar um certificado SSL Let´s Encrypt para o domínio.
É importante que seu domínio esteja apontando para o IP do seu servidor como informamos no princípio deste post
Acesse o painel e reinicie o OLS
Acesse o SSH do seu servidor e instale o certbot
Execute o certbot e responda as perguntas conforme abaixo adaptando para seu domínio
Se tudo deu certo, você verá uma mensagem informando que Certificado e a Key foram criados, guarde estas informações. Vamos utilizá-las a seguir
Volte ao painel do OpenLiteSpeed em Virtual Hosts >> helpsysadmin.ml e selecione a aba SSL.
Edite SSL Private Key & Certificate
Private Key File é o segundo resultado quando solicitou o certificado
Certificate File é o primeiro resultado quando solicitou o certificado
Após salvar as alterações continue na aba SSL, vamos fazer algumas alterações e melhorias
Edite SSL Protocol
Variável | Valor |
Protocol Version | TLS v1.2 TLS v1.3 |
Ciphers | |
Enable ECDH Exchange | |
Enable DH Key Exchange | |
DH Parameter |
Edite Security
Variável | Valor |
SSL Renegotiation ProtectionHTTP/2SSL Renegotiation Protection | Yes |
Enable Session Cache | Yes |
Enable Session Tickets | Yes |
Enable SPDY/HTTP2/HTTP3 | HTTP/3 |
Enable QUIC | Yes |
Como este é o primeiro domínio com certificado SSL precisaremos repetir estes passos em Listeners, a seguir, clique em Porta443 e acesse a aba SSL.
Preencha os campos exatamente como fez em Virtual Hosts anteriormente. Ao final salve e dê um restart no OpenLiteSpeed pelo painel.
Nota: Nos próximos domínios que hospedar, será necessário informar as configurações de SSL apenas no Virtual Host referente ao domínio.
Neste ponto se acessarmos nosso domínio com https veremos uma página 404 pois não enviamos nenhum arquivo a nossa conta.
Nós poderíamos a partir deste ponto abordar como instalar o WordPress, pois como informei no princípio, o OpenLiteSpeed instala como padrão o php 7.3 com algumas extensões.
Já instalamos o php 7.4 com extensões importantes para o WordPress, agora vamos configurá-lo no OpenLiteSpeed.
Acesse o painel do OpenLiteSpeed >> Server Configuration ,
selecione External App e em External Applications clique no simbolo de “+” a seguir em Type Selecione LiteSpeed SAPI App
A seguir clique no ícone Próximo
Preencha os campos conforme a tabela abaixo:
Variável | Valor |
Name * | lsphp74 |
Address * | uds://tmp/lshttpd/lsphp74.sock |
Notes | |
Max Connections * | 10 |
Environment | PHP_LSAPI_CHILDREN=10 LSAPI_AVOID_FORK=200M |
Initial Request Timeout (secs) * | 60 |
Retry Timeout (secs) * | 0 |
Persistent Connection | Yes |
Connection Keep-Alive Timeout | |
Response Buffering * | No |
Start By Server * | Yes (Through CGI Daemon) |
Command | lsphp74/bin/lsphp |
Back Log | 100 |
Instances | 1 |
Run As User | |
Run As Group | |
umask | |
Run On Start Up | |
Max Idle Time | |
Priority | 0 |
Memory Soft Limit (bytes) | 2047M |
Memory Hard Limit (bytes) | 2047M |
Process Soft Limit | 1400 |
Process Hard Limit | 1400 |
Salve as alterações e clique na aba “Script Handler” . Nesta aba atualmente está configurado para roda o php 7.3. Vamos fazer modificações para que nossas aplicações utilizem a partir de agora o php 7.4 que acabamos de configurar.
Na coluna Actions, localize e clique no ícone “Edit”
Em “Handler Name *” modifique para lsphp74 e a seguir clique em “Save” e restart o OpenLiteSpeed para que as configurações sejam ativadas.
O próximo passo é o WordPress. Antes de sairmos do OpenLiteSpeed , vamos ativar o suporte a .htacess que será muito importante no WordPress.
Em Server Configuration > General
Localize e edite Rewrite Control
Altere Auto Load from .htaccess para Yes e salve a alteração.
Agora, no menu Virtual Host, selecione o registro referente a seu domínio.
Localize a aba “Rewrite” e edite “Rewrite Control“
Variável | Valor |
Enable Rewrite | Yes |
Auto Load from .htaccess | Yes |
Log Level |
Salve as alterações, reinicie o OpenLiteSpeed.
Instalando o WordPress e o Plugin Litespeed LS CACHE
Acesse o ssh como root no seu servidor e a seguir o diretório onde ficarão os arquivos do seu site. Salve os arquivos do wordpress
Criando banco de dados e usuário para o WordPress com MariaDB
Acesse o MariaDB com o usuário root e senha que você definiu quando instalou o MariaDB acima
Crie o banco de dados
A seguir vamos criar um usuário (wordpress_user) com todas as permissões neste banco de dados e definir a senha. Sugiro utilizar um nome de usuário e senha seguro. Guarde estas informações, iremos utiliza-las mais a frente.
Temos um banco de dados e um usuário com acesso total a este banco para utilizarmos no WordPress. Agora precisamos executar o comando a seguir para recarregar as tabelas e para que a instância atual do MariaDB saiba sobre as alterações que você fez:
Agora, vamos sair do MariaDB.
Volte ao diretório onde estão os arquivos do WordPress, crie o arquivo .htaccess, altere o usuário e grupo dos arquivos para nobody e nogroup. Como padrão o OpenLiteSpeed executa como “user(nobody) : group(nogroup)”, para que não tenhamos problemas de permissões estas alterações são necessárias
Acesse em seu navegador web o domínio que configurou.
Exemplo: https://helpsysadmin.ml
Você verá uma página explicando o que virá a seguir na configuração do WordPress. Clique em “Vamos lá“
Na página a seguir preencha o nome do banco de dados que criou, usuário e senha. Clique em próximo.
Será exibido uma mensagem informando que não foi possível criar o arquivo wp-config.php e no quadro abaixo o conteúdo que deverá ter este arquivo. Copie o conteúdo, volte para o local de seus arquivos, crie o wp-config.php e cole o conteúdo anterior.. Salve as alterações e volte a configuração do seu domínio em seu browser
Nesta parte você deverá informar o nome do usuário admin, senha e e-mail, clique em prosseguir!
Pronto seu WordPress está instalado.
Agora gostaria de abordar de forma breve um plug-in poderoso para usuários Openlitespeed e Litespeed. Ele é um excelente plugin com recursos básicos e avançados. Sugiro passar um tempo descobrindo o que funciona ou não para seu site. Localize o plug-in LiteSpeed Cache.
Este foi um longo post, mas achei necessário ser assim para abordar estes assuntos com qualidade e não apenas mais um na Web. Espero que tenham gostado e deixe comentários abaixo.