domingo, 4 de outubro de 2020

NextCloud no FreeNAS

Oi pessoal,

Depois da surra que tomei com o PiHole (veja a atualização aqui, no final do post), deixei-o de lado por enquanto e vou instalar o NextCloud!

Bom, a instalação é tranquila mas demora bastante, uns 20 minutos pelo menos.

Vá em Plugins --> NextCloud e clique instalar. Pronto. Quase que só isso.

O ideal seria você colocar o ip desejado antecipadamente ou deixar o DHCP resolver isso para você. Para mim, o NAT aparecia marcado e só funcionou como ele marcado, senão dava erro lá no final da instação.

Depois de instalado, parei o Jail do NC, fui em Edit e mudei o IP para o que eu escolhi. Deu um pau, fácil de resolver. A mensagem era que o domínio não era confiável e era necessário corrigir o arquivo "config.php". Mas onde está este maldito arquivo?



O manual do NC não especifica onde está isso. Dando um pesquisada, achei um post que falava onde estava:


Ótimo! Só que não. No meu NC, pelo menos na versão que estou usando, não tem essa pasta "pbi"...

Bom, fui no Shell do FreeNAS e dei os comandos:

    jls #(para listar os jails e ver qual o número do jail do NC)

    jexec 12 csh #(para entrar como root no shell do NC - que no meu caso está no jail 12)

    ls #(para ver as pastas e ter uma ideia do que fazer)

Aí apareceu "/usr"; entrei nela e vi "local"; entrei e vi "www"; entrei e vi "nextcloud"; entrei e vi "config"; entrei e vi o "config.php" (ou seja: /usr/local/www/nextcloud/config).

    vi config.php #(para editar o arquivo)

Fui até "Trusted domains" e estava troquei o IP que a instalação definiu pelo que eu queria.

Para lembrança futura: no VI, para editar a gente aperta "i", vai até onde que editar e escreve por cima; se errar, tem que sair com "ESC", apertar "x" que apaga a letra errada. Para sair, dê um :wq (grava e sai do VI). Resumindo: um saco!

Depois, parei e reiniciei o jail do NC, abri o navegador e digitei o IP! Tudo funcionando.

Quando abrir a primeira vez, você pode ir em Plugins, clicar no plugin instalado do NC, seta para baixo e clique em "Post Install Notes". Os nomes de usuário e senha do NC estão aí. Copie e inicie o NC!

Pronto! Agora a gente entra e coloca esse username (administrador) e a senha e entra no NC. Mude a senha do adm e crie um usuário e experimente para ver se a nova senha e o novo usuário estão ok.

Agora precisamos terminar de configurar o NC.

Vá no Shell do FreeNAS e entre no shell do NC. Navegue até /usr/local/etc/nginx/conf.d e digite:

    vi nextcloud.conf

Agora, no primeiro "Server", edite para ficar assim:

 server {
listen 80; server_name _; return 301 https://$server_name:443$request_uri; }

Isso faz o NC reponder pelo ip que escolhemos para ele e direciona alguma requisição pela porta 80 (http, sem segurança) para a porta 443 (https, com segurança).

Crie outro "server" abaixo e coloque:

server { listen 443 ssl http2; server_name _l; ssl_certificate /usr/local/etc/ssl/mycert.crt; ssl_certificate_key /usr/local/etc/ssl/mycert.key;
}

Agora a gente vai usar as dicas deste site aqui para criar o certificado ssl através do "openssl".

Vá para a pasta "/usr/local/etc/ssl". Esta é a pasta onde ficará o certificado ssl.

Dê um:

    openssl req -newkey rsa:4096 -x509  -sha256 -days 1825 -nodes -out mycert.crt -keyout mycert.key

Aqui ele criou o certificado SSL! E vamos reiniciar o servidor com:

    service nginx start

Pronto! Serviço reiniciado e, se tentarmos acessar com o "http://<seu_ip>" vamos ter esse erro aqui:


Isso é exatamente o que a gente quer: forçar o serviço a ser acessível via "https" com certificado SSL!

Quando você digitar usando o https, pode ser que dê o mesmo erro. Neste caso, como você criou o certificado, o navegador pode não confiar e pedir para que você autorize. Se for seu caso, vá em "ver o certificado" e veja se as informações batem com o que você criou. Se estiver tudo certo, vá "visitar este site", autorize e siga em frente.

Pronto! Quase tudo feito!

Se você tiver um equipamento com iOS/Android/Windows/Mac, baixe os aplicativos para acesso remoto.

Outra coisa é acessar remotamente, de fora da rede local. Até aqui, tudo está pela rede local. A gente até tem como acessar isso pela rede. Mas, pra mim, paro por aqui. Neste post aqui mostrei como criar uma VPN com o PiVPN e deixar ela rodando no Raspberry Pi (dá até para colocar no FreeNAS, porque ele tem um plugin do OpenVPN). Assim, se precisar acessar remotamente, de fora da minha rede local, conecto o equipamento na internet, abro a VPN e acesso o NC, pelo aplicativo ou pelo site. Muito, muito mais seguro!

Este site tem boas dicas de como configurar seu NextCloud.

E aqui e aqui têm dois bons vídeos, bem passo a passo!

Outra opção, não utilizando o FreeNAS, é utilizar o Docker para instalar o NextCloud, usando o OpenMediaVault. Veja como aquiaqui. Este vídeo aqui ensina a instalar o Ubuntu Server rapidinho, a base para usar o OMV e o NextCloud.

Até mais, pessoal!

Nenhum comentário:

Postar um comentário