[CORRIGIDO] Nextcloud: Host X.X.X.X was not connected to because it violates local access rules

Um usuário de minha instalação do Nextcloud reclamou que não conseguia ver seus arquivos. Um teste com a conta do usuário, notei que aparecia um popup informando que ele não tinha permissão de acessar aquela pasta, mas … não era permissão no storage.

Depois de me certificar que as permissões do volume de dados estavam corretas, meu palpite passou a ser que por algum motivo o NC tivesse perdido o sincronismo dos arquivos então usando o occ pedi para fazer um scan nos arquivos.

O problema não era exatamente esse, mas deu a dica que precisava para resolver o caso. Curiosamente, com todos os usuários que testei o scan correu normalmente, como nos dois exemplos abaixo.

# occ files:scan USUARIO1
Starting scan for user 1 out of 1 (USUARIO1)
+---------+-------+--------------+
| Folders | Files | Elapsed time |
+---------+-------+--------------+
| 2       | 0     | 00:00:01     |
+---------+-------+--------------+

# occ files:scan USUARIO2
Starting scan for user 1 out of 1 (USUARIO2)

+---------+--------+--------------+
| Folders | Files  | Elapsed time |
+---------+--------+--------------+
| 20155   | 231168 | 00:15:28     |
+---------+--------+--------------+

Porém com o usuário que havia reclamado, o resultado foi uma mensagem de erro gigante

occ files:scan USUARIO3
Starting scan for user 1 out of 1 (USUARIO3)
Exception during scan: Host violates local access rules
#0 /var/www/html/lib/private/Http/Client/DnsPinMiddleware.php(136): OC\Http\Client\LocalAddressChecker->ThrowIfLocalIp('10.10.10.90')
#1 /var/www/html/3rdparty/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php(35): OC\Http\Client\DnsPinMiddleware->OC\Http\Client\{closure}(Object(GuzzleHttp\Psr7\Request), Array)
[...]
#26 /var/www/html/console.php(99): OC\Console\Application->run()
#27 /var/www/html/occ(11): require_once('/var/www/html/c...')
#28 {main}

A “exception” apresentada ajudou a encontrar uma configuração no Nextcloud que não precisava antes. A chave “allow_local_remote_servers”.

Segundo li em alguns sites, bastaria adicionar esta chave dentro do arquivo config.php com o valor “true”, então para que tudo corresse de forma segura usei o próprio “occ” para fazer a alteração como segue:

occ config:system:set --type bool --value true -- allow_local_remote_servers

Feito isso, o “occ files:scan” foi concluído com sucesso para o usuário USUARIO3 e também os seus arquivos voltaram a aparecer sem qualquer indício de outros problemas.

Não sei dizer em que momento isso ocorreu. O usuário em questão quase nunca acessa o ambiente então ele não sabia dizer a partir de quando isso começou a ocorrer, mas meu palpite é que isso passou a ocorrer quando eu saltei da versão 20.X para a 22.X, mas isso é só um palpite.

Referência
Violates local access rules in Talk 9 – https://help.nextcloud.com/t/violates-local-access-rules-in-talk-9/84471/2
Nextcloud Collectives – https://collectivecloud.gitlab.io/collectives/development/
Unable to connect onlyoffice to nextcloud – https://forum.yunohost.org/t/unable-to-connect-onlyoffice-to-nextcloud/18333

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.