As permissões ideais para o diretório /var/www no seu servidor web

Este assunto pode ser um pouco complexo, mas ele é voltado apenas para quem encontrou algum problema para trabalhar com arquivos no servidor a partir do WordPress ou outro programa de CMS semelhante.
Como sempre, sugiro dar uma olhada nos links, espalhados pelo texto ou nas referências (ao final), caso queira obter mais ajuda sobre o tema.

As permissões precisam ser dadas na medida do necessário. Nada além disso.

Para contextualizar, o post é baseado em um servidor LAMP, com um blog WordPress instalado em uma máquina Debian 9 Stretch. Obtive os mesmos resultados ao testar no Ubuntu 12.04 LTS.
Este tipo de ajuste pode ser necessário após a instalação do WordPress, do Piwigo e outros aplicativos web, que precisam fazer alterações dentro dos subdiretórios em que foram instalados:

  • atualizar automaticamente seus arquivos para novas versões,
  • atualizar ou instalar novos plugins,
  • permitir que você realize o upload de arquivos (imagens, por exemplo) de dentro do próprio aplicativo etc.

Pode haver dificuldades para fazer upload via FTP, a partir do aplicativo, se as permissões do diretório em que ele se encontra instalado (ou o /var/www) no servidor não forem adequadas.

WordPress FTP configuration

Ao tentar instalar um plugin ou fazer a atualização de qualquer elemento do WordPress, ele irá pedir informações da conexão (connection information) FTP, caso as permissões não estejam corretamente ajustadas no servidor.

A que grupos e usuários os arquivos do WordPress devem pertencer?

Em um servidor particular ou doméstico, que apenas você irá usar, é comum transferir todos os arquivos do /var/www para o seu nome de usuário.

Se este não for o caso, a sugestão é transferir todos os arquivos para a posse do www-data (user e group). Em seguida, inscreva o seu usuário no grupo www-data.

Veja como:


adduser nomedousuario www-data
cd /var/www
chown -Rv www-data:www-data /var/www/
chmod -Rv g+rw /var/www/

Os comandos, acima, foram executados como root.

O que foi feito:

  • O comando adduser foi usado para inscrever o usuário ‘nomedousuario’ no grupo www-data.
  • Entrou no diretório /var/www.
  • O comando chown (change owner) atribuiu, recursivamente, os arquivos contidos em /var/www para o usuário e grupo www-data.
  • O comando chmod (change mode) atribuiu permissões de leitura (r) e escrita (w) aos arquivos, para os grupos a que pertencem.

Com isto já será possível fazer alterações no diretório através do WordPress ou outros aplicativos instalados.

Permissões padrão para o WordPress

Se antes, havíamos estabelecido as permissões genéricas, agora, vamos nos concentrar nas que estão relacionadas ao WordPress.

Como já foi abordado, o WordPress não grava apenas informações (de texto) no banco de dados.

O aplicativo também precisa ter permissões de escrita nos subdiretórios em que foi instalado, para poder armazenar diversos tipos de conteúdo, como as imagens.

O único ponto que torna o assunto “permissões de acesso” complexo é a segurança.
Queremos que o aplicativo execute suas funções adequadamente — mas não queremos que pessoas de fora tenham acesso irrestrito aos nossos arquivos.

Como é que se encontra um equilíbrio seguro e funcional para esta questão?

O importante, aqui, é que o www-data tenha permissões rw, ou seja, de leitura (read) e escrita (write) sobre todos os seus arquivos.

Se você tem interesse em saber mais sobre o tema, leia sobre permissões de arquivos no Linux.

Referências

5 motivos para começar o seu blog sobre Linux!

Se você gosta muito do Linux, pode ter vários motivos para escrever sobre o assunto.
Na verdade, só o fato de gostar, já é o suficiente para se escrever sobre algo… mas eu posso listar outros motivos para você começar ainda hoje!

Neste post, vou reunir algumas das minhas dicas iniciais para quem estiver precisando de “um empurrãozinho” para começar a escrever, escrever, escrever… sobre Linux, claro! 😉

Se deseja aprender sobre alguma coisa, coloque no papel!

Uma das formas de fixar o aprendizado é registrá-lo em um caderno. Um blog (ou um vlog!) também podem trazer o mesmo benefício.
Um ponto adicional é o fato de que você pode ajudar outras pessoas com o que acabou de aprender.

Um blog é uma ótima forma de registrar o que você não gostaria de esquecer

Ei, foi assim que eu comecei! 😉

Eu usava papel e lápis para anotar os meus procedimentos. Assim, quando precisasse de novo, não precisaria repetir todo o processo de pesquisar e perguntar a outras pessoas sobre como fazer aquilo. Bastava consultar minhas próprias anotações.

O que acontece é que, no Linux, depois que se faz uma configuração, dificilmente se vai precisar fazê-la de novo. Ou seja, você pode demorar meses ou anos para voltar a precisar daquela anotação novamente.
Guardar um caderno de notas, durante este tempo, pode ser um grande desafio para mim.

Anotar o meu aprendizado em um blog é uma forma de mantê-lo sempre à mão, em qualquer lugar acesso à Internet.

Ajudar outras pessoas é bom para a sua reputação

Durante alguns anos eu ajudava as pessoas em fóruns, internet a fora.
Se você se sente melhor ajudando as pessoas em um fórum, como o Viva o Linux, por exemplo, eu o(a) encorajo fortemente a fazer isso. É também uma ótima forma de construir sua reputação.

Pessoalmente, não gosto de grupos em redes sociais, como o Google Plus ou o Facebook.
Redes sociais, na verdade, são péssimas ferramentas para fazer pesquisas por assunto e as perguntas repetitivas são verdadeiros testes para a sua paciência.

Por um lado, são um excelente meio de se tornar reputável, ajudando os outros, mas… também acho que são fonte de sofrimento (e perda de tempo) desnecessário.
Redes sociais simplesmente não foram projetadas para isso.

Os fóruns, em geral, são orientados às dúvidas de outras pessoas.
Já o seu site é orientado às suas próprias dúvidas e ao que você desejar escrever.
É o melhor lugar para você organizar problemas e soluções para o seu dia a dia, na medida em que vão surgindo.

Já existe muito site sobre Linux…

Não. Não existe.
Na verdade, existe muito site sobre Windows — e ainda não vi ninguém reclamando de “saturação”.
Há muito espaço, portanto, para você começar o seu próprio blog sobre o Linux.
Pode escrever sobre o que quiser.
Um blog sobre Linux, não precisa abrigar apenas artigos técnicos.
Muitos outros assuntos podem ser abordados. Por exemplo:

  • As novidades que surgiram na indústria, relacionadas ao sistema operacional do pinguim.
  • A sua opinião sobre as novidades.
  • Se você leu algum artigo, provavelmente formou alguma opinião sobre o que leu. Pois escreva sobre isso.
  • Se sabe inglês, francês, italiano etc. pode traduzir artigos de autores nestes idiomas para o português. Desta forma, você pode ajudar os seus leitores a obter uma outra perspectiva sobre um assunto.
  • Você pode escrever sobre personalidades (líderes, desenvolvedoras(es) etc.) da comunidade do software livre.
    Pode, até mesmo, entrevistá-los(as) e publicar conteúdo exclusivo de grande relevância.

Viu? Não vai faltar assunto! 😉

Um blog ajuda você a se tornar um profissional melhor

Um blog exige que se organize melhor as ideias e que se escreva de maneira que outras pessoas o entendam.
Se você precisa apresentar relatórios, por escrito ou verbalmente, manter um blog atualizado é um ótimo exercício profissional.
Vai ajudar a sua escrita a se destacar entre outros profissionais que não fazem este exercício.

Escrever sobre o que se está aprendendo é legal. Escrever sobre o que se domina, é melhor ainda!

Não guarde seu conhecimento somente para si.
Compartilhe-o com outras pessoas. Você cresce imensamente ao fazer isto.
Se você sabe usar bem os softwares de edição e manipulação de imagens, como o GIMP, o Darktable etc. escreva sobre eles!
Se há excelentes blogs sobre Linux, há algumas lacunas a serem preenchidas sobre temas específicos.
Escolha um software que você domina e ocupe o espaço que existe para falar sobre ele.
Os fóruns podem ser um ótimo lugar para encontrar temas (dúvidas) a serem desvendados e, eventualmente, responder às pessoas com um link para um artigo seu sobre o assunto da dúvida.

Ganhar dinheiro com o seu blog…

Este ponto é contraditório — eu poderia citá-lo como motivo para não escrever blog nenhum.

Embora eu tenha uma renda vinda do meu site, o dinheiro não foi o motivo pelo qual eu comecei e, até este momento, não é o que me move e me faz ficar horas do meu dia estudando e escrevendo.

É a paixão que me move.
Eu não teria chegado até aqui se não fosse a minha paixão pelo software livre e pelo imenso bem estar que sinto dentro desta comunidade maravilhosa.

Você pode demorar anos para começar a obter algum retorno financeiro pelo seu trabalho no blog.

Ganhar dinheiro com o seu site tem outro lado, de que pouco se fala.
Algumas empresas que trabalham com monetização de espaço publicitário em seu blog irão passar você para trás, te enganar, te roubar etc…
Não é uma regra, mas acontece.
Nem todas são desonestas, mas é uma realidade que você pode vir a enfrentar.
E você não vai ter para quem reclamar, até por que não existe contrato entre você e elas.

Portanto, acredite em mim: se você não gostar do que está fazendo, vai sofrer muito e é bem provável que nunca chegue a sentir que valeu a pena.
Com muito trabalho e esforço, é bem possível que seu blog se torne rentável, com o tempo.
Mas não faça deste o objetivo maior desta jornada.

Conclusão

A expectativa de gerar renda, através de um blog ou de um vlog (no YouTube, por exemplo) é um assunto um pouco mais complexo que talvez eu ajude a desvendar melhor em outro post.
O que você achou dos outros motivos, até agora?
São suficientes para te convencer?! Sinta-se á vontade para comentar ou fazer perguntas abaixo, na sessão de comentários. 😉

Use login e senha mais seguros no seu blog WordPress

Todo mundo sabe que deve usar senhas mais seguras, blá-blá-blá…
Mas, sério, isto é muito importante e, recentemente, vi um blogueiro chamando a atenção de outro, bastante conhecido, justamente por isto: “você está usando uma senha fraca, amigo!”

Usar senhas fortes irão dificultar ataques por força bruta. A diferença entre uma senha forte e outra muito forte é uma questão de dias.
Uma senha boa pode ser quebrada em 3 dias, com 1000 tentativas por segundo.
A outra, com tecnologia média atual, pode impor anos de tentativas a um cracker.

Ao criar um site WordPress, é fornecido um nome padrão para o administrador: ‘admin’.
A documentação recomenda trocar este nome por outro, mas… há várias maneiras de descobrir qual o login do administrador em um site WordPress — de forma que é melhor se concentrar, mesmo, na força da senha e manter o nome padrão.

É a sua senha que é crucialmente importante e você precisa dar um jeito de escolher a mais forte possível:

  1. 10 dicas para criar senhas à prova de invasores.
  2. Crie senhas com o método 8 por 4 — que são mais fáceis de memorizar.

Atualmente, contudo, se recomenda usar senhas em palavras, tipo tensão locker gordo cobra — que são fáceis de memorizar e difíceis de adivinhar (mais ainda) por força bruta.
Pode usar um gerador de palavras aleatórias, por exemplo.

Outra dica é usar a sugestão de senha do próprio WordPress, no momento da criação do novo usuário.
A sugestão ocorre também quando você vai trocar a senha do user no CMS.
O processo de criação desta senha ocorre no backend do programa e gera algo terrivelmente difícil para uma máquina adivinhar.
Sei que será difícil para você memorizar, mas é sempre possível recorrer a um bom programa de gestão de senhas, para ajudar a guardar seus segredos.

Segurança, em primeiro lugar. 😉

O editor QTM foi feito para blogar offline

Poder blogar, escrever seus textos, longe de qualquer conexão à Internet pode dar uma sensação de liberdade imensa.
Ter esta liberdade, permite produzir seu conteúdo nas condições mais adversas ou, pelo contrário, com mais conforto.

qtm editor main screen

Estar desligado da Internet pode ajudar a compôr um ambiente mais criativo e mais produtivo.

O QTM é um editor de textos que permite, ao toque de um botão, conectar e enviar o seu texto para o site em que seu blog está hospedado.
Além disto, como qualquer editor offline, ajuda a organizar localmente toda a sua produção.
Neste artigo, vou apresentar o QTM, disponível nos repositórios de várias distribuições GNU/Linux.

O aplicativo tem suporte a 7 plataformas de CMS e permite cadastrar várias contas.
Se você escreve para blogs diferentes, pode concentrar o seu trabalho em uma única ferramenta.

Meus exemplos, foram executados em uma máquina rodando o Debian 9.
Quem usa distribuições derivadas desta não vai ter problemas para encontrar o aplicativo nos repositórios oficiais.
O editor tem o modo de edição em texto puro (meu preferido) e o modo de edição WYSIWYG (what you see is what you get) — e suporte a Markdown.
Veja como instalar:


sudo apt install qtm

Como configurar o QTM

qtm blogging welcome
O QTM vai pedir algumas configurações iniciais, logo após a instalação.
Esta parte é baseada em 2 estágios.
No primeiro, você pode selecionar como deseja que o editor se comporte, para tornar mais fácil o seu trabalho.
No segundo, são pedidas as informações de conexão, necessárias para “subir” o conteúdo para o seu site.

Vou me ater às configurações principais, necessárias para ter o mínimo de funcionalidade.
As tela iniciais, eu deixei exatamente como estavam.

O mais importante é informar o aplicativo sobre a sua plataforma de CMS (Content Management System ou sistema de gestão de conteúdo) e como se conectar a ela.
O restante dos ajustes, podem ser feitos on the go, ou seja, à medida em que se vai usando o programa.
qtm configuration window
Não importa para quantos blogs você costuma enviar conteúdo. A ferramenta aceita incluir quantas contas você precisar.

  1. Clique em “New account” e informe o “Name” da nova conta de blog.
    Use um nome que seja fácil para você se lembrar.
  2. Na linha “Hosted blog type”, informe uma das plataformas à qual o QTM tem suporte:
    • WordPress.com.
    • WordPress hospedado no seu próprio site.
    • TypePad
    • SquareSpace
    • Movable Type
    • Drupal
    • TextPattern
  3. Em seguida informe A URI completa do seu blog. Este dado será usado para preencher automaticamente o campo “Endpoint”.
  4. Informe o nome de usuário (login name) e a sua senha (password).
  5. Por fim, há uma lista de itens clicáveis para escolher.
    Eu optei por selecionar todos.

Conclusão sobre o QTM

É claro que usei o QTM para escrever este post.
Foi maravilhoso poder escrever no meu canto favorito da casa, aonde a Internet nunca “pega” direito.
Com mais de 1000 posts escritos com o uso da ferramenta de edição nativa do WordPress, nem tudo foi fácil.
Não conheço, com profundidade, outras plataformas de blogging, portanto o WP é a minha única referência para comparações.
Senti falta de 2 coisas:

  1. Uma ferramenta de correção ortográfica — os editores nativos dos blogs que conheço não possuem este tipo de ferramenta, mas a gente sempre usa a do navegador.
    Não chega a ser um problema. Embora eu possa publicar diretamente do QTM, prefiro enviar meus textos como rascunho e, mais tarde, fazer a revisão dentro do editor do WordPress.
  2. Melhor suporte para incluir as imagens no blog — não encontrei possibilidade de incluir as imagens, armazenadas localmente, no texto.

Nada é perfeito e estes inconvenientes podem ser superados com algumas mudanças nos métodos de trabalho, sem perda na produtividade.

Introdução ao wp-cli

O wp-cli é uma ferramenta de linha de comando voltada para usuários avançados realizarem tarefas administrativas relacionadas ao sistema de gestão de conteúdo (CMS) WordPress.
Este post se baseia na documentação original do software. Recomendo consultá-la para obter mais informações e clicar nos outros links, no decorrer do texto, para se aprofundar mais em algum tema.

O WP-CLI é a ferramenta de linha de comando oficial, disponível para interagir com e gerenciar seus sites na plataforma WordPress.

O objetivo do projeto é oferecer uma alternativa completa para adiministradores(as) de sites WordPress.
É equivalente ao painel administrativo de qualquer CMS, só que oferece as mesmas possibilidades na CLI (interface de linha de comando).
Como exemplo preliminar, veja como instalar e ativar um plugin no seu site, na linha de comando do seu servidor:


wp plugin install nome-do-plugin --activate

Grandes provedores de hospedagem, como o DreamHost oferecem a ferramenta.
Para começar a usá-la, basta acessar o servidor via SSH e começar a usar.
Quem usa Linux, também pode instalar a ferramenta na sua máquina de trabalho local.
O programa também está disponível para outras plataformas, como o FreeBSD, MacOS e Windows (neste caso, com algumas limitações).
Para acesso remoto, o WP-CLI local repassa os comandos à cópia instalada no servidor. Funciona de modo semelhante ao comando scp.

Desenvolvido por usuários avançados do WordPress, para atender às necessidades administrativas de outros heavy users.
No longo prazo, mesmo um novato pode descobrir os benefícios da linha de comando: mais eficiência e mais controle.

A sintaxe do wp-cli

Veja a explicação sobre um exemplo prático, abaixo:


wp plugin install

usage: wp plugin install ... [--version=] [--force] [--activate] [--activate-network]

Como o comando não se encontra completo (por que não foi indicado exatamente qual o plugin a ser instalado), ele retorna uma linha de ajuda rápida sobre a sintaxe a ser usada, na execução do wp:

  • wp plugin install — este é o comando em si. Falta indicar parâmetros e opções para que seja executado com sucesso.
  • <plugin|zip|url> — logo após o comando é necessário indicar de onde você pretende instalar o plugin: pelo nome, a partir de um pacote ZIP ou de uma URL na Internet.
  • [--version=<version>] — parâmetros sugeridos entre “[colchetes]” são opcionais. Neste exemplo, o que se quer dizer é que você pode indicar uma versão específica a ser instalada ou não.

Eventualmente, você pode incorrer na seguinte mensagem de erro:

Pass --path=`path/to/wordpress` or run `wp core download`.

Ela quer dizer que você precisa indicar exatamente em que local se encontra o seu site, dentro do provedor.
Lembre-se que, mesmo uma simples conta compartilhada em um provedor de hospedagem pode ter vários sites WordPress instalados.
E instalar coisas erradas em lugares errados pode ser muito ruim.
Segue alguns exemplos de uso do WP-CL.

Como instalar o WordPress pelo WP-CLI

Instalar a mais nova versão do WordPress é uma das coisas que você pode fazer com o aplicativo:


sudo -g www-data -i -- wp core download --path=/var/www/html/novo-blog

Creating directory '/var/www/html/novo-blog/'.
Downloading WordPress 4.8.1 (en_US)...
md5 hash verified: f3dd0e033519aa363eb07e13c6676e3c
Success: WordPress downloaded.

Acima, o comando é apenas “wp core download”. Como executei no meu servidor local (que tem configurações diferentes de provedores de hospedagem (até por que não é um)), precisei dar mais algumas informações ao WP-CLI:

  • sudo -g www-data — pedi para que o comando seja executado com os privilégios do grupo ‘www-data’.
  • --path=/var/www/html/novo-blog indiquei um novo diretório para baixar e instalar a última versão do WordPress.

Se o diretório, indicado no parâmetro ‘–path’ não existir, ele será criado e o WordPress baixado para lá.
Abra o navegador no diretório recém criado e inicie o processo de instalação do novo site.

Como atualizar todos os plugins do seu site WordPress

Você pode atualizar todos os plugins instalados no seu site com um único comando. Veja:


wp plugin update --all --path='meusite.com.br/blog'

Ativando modo de manutenção...
Fazendo download de (https://downloads.wordpress.org/plugin/akismet.3.3.4.zip)...
Descompactando a atualização...
Instalando a versão mais recente...
Removendo a versão antiga do plugin...
Plugin atualizado com sucesso.
Fazendo download de (https://downloads.wordpress.org/plugin/jetpack.5.2.1.zip)...
Descompactando a atualização...
Instalando a versão mais recente...
Removendo a versão antiga do plugin...
Plugin atualizado com sucesso.
Fazendo download de (https://downloads.wordpress.org/plugin/wpforms-lite.zip)...
Descompactando a atualização...
Instalando a versão mais recente...
Removendo a versão antiga do plugin...
Plugin atualizado com sucesso.
Desativando modo de manutenção...
+--------------+-------------+-------------+---------+
| name         | old_version | new_version | status  |
+--------------+-------------+-------------+---------+
| akismet      | 3.3.3       | 3.3.4       | Updated |
| jetpack      | 5.1         | 5.2.1       | Updated |
| wpforms-lite | 1.3.8       | 1.3.9.1     | Updated |
+--------------+-------------+-------------+---------+
Success: Updated 3 of 3 plugins.

Para mim, este processo durou 3 segundos. 😉

Assine este site

Todo dia eu aprendo alguma coisa nova sobre administração de servidores, WordPress, bancos de dados, Android etc.
Desde o começo, este site existe para compartilhar o que sei com outras pessoas.
Se quiser ser avisado(a) quando houver post novo no blog, inscreva-se abaixo!

Referências

https://wp-cli.org/.