Esse post é como se fosse uma continuação dos dois últimos posts aonde mostro como instalar o Wordpress e o proFTPd, porém, se você seguir apenas os dois, ficará apenas com seu usuário padrão funcionando, aqui vamos adicionar um novo usuário e configurar as permissões para que seja possível a manipulação do WP como instalação de temas e plugins via a própria ferramenta com suporte ao FTP nativo.
A primeira coisa que precisamos saber é que para faze a instalação dos temas e plugins precisamos ter acesso a pasta do wp-content, que esta dentro da instalação do WP.
Não repetirei aqui como configurar o arquivo do proFTPd aqui, se for preciso veja esses dois posts antes.
como-instalar-o-proftpd-e-configurar
instalando-o-wordpress-no-ubuntu-server
Com tudo instalado criaremos uma pasta para o usuário dentro do www com o comando abaixo
sudo mkdir /var/www/html/seuusuario
Copiamos a instalação do wordpress para dentro da pasta do usuário.
sudo cp -R /usr/share/wordpress /var/www/html/seuusuario/
Vamos criar um novo usuário para o WP com acesso a pasta da instalação presumindo que você esta utilizando as pastas padrões do apache. Coloquei aqui uma opção para que esse usuário não tenha privilégios para acessar o sistema, e sim apenas FTP, como explicado no post anterior.
sudo useradd seuusuario -p $(perl -e 'print crypt($ARGV[0], "password")' "suasenha") -d /var/www/html/wordpress -s /bin/false -g 2121 -M
Agora vamos dar a permissão certa na a pasta do usuário para que a ferramenta consiga criar as pastas necessárias.
sudo chown -R seuusuario /var/www/html/seuusuario
sudo chmod -R 0755 /var/www/html/seuusuario/
Se tudo rodou como o esperado nesse momento seu wordpress já esta instalando os plugins e temas
de uma forma amigável, porém ainda toda a vez é necessário adicionar o usuário e a senha do FTP.
Para que o Wordpress não solicite o usuário e a senha toda a vez basta editar o arquivo wp-config.php que fica na raiz da pasta do wordpress.
define('FS_METHOD', 'direct');
define('FTP_USER', 'seuusuario');
define('FTP_PASS', 'suasenha');
define('FTP_HOST', 'ftp.seudominio');
Conforme a popularidade deste post, mostro como utilzar com FTPs (SSL).
Existe algumas formas mais automatizadas de fazer essa configuração como por exemplo com o CPanel mas isso é assunto para outro post.
Obrigado e até a próxima
.