Jump to content
  • 0

Настройка Nextcloud в связке с KeenDNS


Gvadik

Question

Имею статический IP адрес, зарегистрировал доменное имя в KeenDNS (server.keenetic.pro), режим работы выбрал "Прямой доступ".

Для Nextcloud создал доменное имя 4го уровня (web.server.keenetic.pro), в конфиге nextcloud добавил соответствующий доверенный домен. Не могу достучаться до web.server.keenetic.pro. Видимо не правильно выставляю порт в KeenDNS (TCP 80/443) и не верная настройка NGINX. Помогите пожалуйста разобраться.

Настройки NGINX начинаются так:

upstream php-handler {
    #server 127.0.0.1:9000;
    server unix:/var/run/php/php8.0-fpm.sock;
}

# Set the `immutable` cache control options only for assets with a cache busting `v` argument
map $arg_v $asset_immutable {
    "" "";
    default "immutable";
}


server {
    listen 80;
    listen [::]:80;
    server_name web.server.keenetic.pro;

    # Prevent nginx HTTP Server Detection
    server_tokens off;

    # Enforce HTTPS
    return 301 https://$server_name$request_uri;
}

server {
    listen 443      ssl http2;
   listen [::]:443 ssl http2;
    server_name web.server.keenetic.pro;

    # Path to the root of your installation
    root /var/www/nextcloud;

    # Use Mozilla's guidelines for SSL/TLS settings
    # https://mozilla.github.io/server-side-tls/ssl-config-generator/
    ssl_trusted_certificate /etc/webmin/letsencrypt-ca.pem;
    ssl_certificate     /etc/webmin/letsencrypt-cert.pem;
    ssl_certificate_key /etc/webmin/letsencrypt-key.pem;

    # Prevent nginx HTTP Server Detection
    server_tokens off;

Link to comment
Share on other sites

Recommended Posts

  • 1
9 часов назад, Gvadik сказал:

Не ждать сегодня?

Ну вот так пока...возможно что-то лишнее.

Апач вообще не трогал после установки

В кинетике зарегистрировал домен 4 уровня xxxx.yyyy.keenetic.pro  и  ---> 443----> 192.168.1.253:80

nextcloud на 80 порту 192.168.1.253 

Снимок.PNG

Edited by MDP
  • Thanks 1
Link to comment
Share on other sites

  • 0
27 минут назад, Gvadik сказал:

Имею статический IP адрес, зарегистрировал доменное имя в KeenDNS (server.keenetic.pro), режим работы выбрал "Прямой доступ".

Для Nextcloud создал доменное имя 4го уровня (web.server.keenetic.pro), в конфиге nextcloud добавил соответствующий доверенный домен. Не могу достучаться до web.server.keenetic.pro. Видимо не правильно выставляю порт в KeenDNS (TCP 80/443) и не верная настройка NGINX. Помогите пожалуйста разобраться.

Настройки NGINX начинаются так:

upstream php-handler {
    #server 127.0.0.1:9000;
    server unix:/var/run/php/php8.0-fpm.sock;
}

# Set the `immutable` cache control options only for assets with a cache busting `v` argument
map $arg_v $asset_immutable {
    "" "";
    default "immutable";
}


server {
    listen 80;
    listen [::]:80;
    server_name web.server.keenetic.pro;

    # Prevent nginx HTTP Server Detection
    server_tokens off;

    # Enforce HTTPS
    return 301 https://$server_name$request_uri;
}

server {
    listen 443      ssl http2;
   listen [::]:443 ssl http2;
    server_name web.server.keenetic.pro;

    # Path to the root of your installation
    root /var/www/nextcloud;

    # Use Mozilla's guidelines for SSL/TLS settings
    # https://mozilla.github.io/server-side-tls/ssl-config-generator/
    ssl_trusted_certificate /etc/webmin/letsencrypt-ca.pem;
    ssl_certificate     /etc/webmin/letsencrypt-cert.pem;
    ssl_certificate_key /etc/webmin/letsencrypt-key.pem;

    # Prevent nginx HTTP Server Detection
    server_tokens off;

Зачем заморочки с ssl в nginx, который для nextcloud?

Настройте nextcloud так, чтобы он работал из локалки по http, на каком-нибудь порту.

И в настройках keendns укажите апстримом локальный ip и порт.

Кинетик сам будет получать и обновлять сертификаты, оборачивать в ssl, и редиректить http запросы на https.

 

Link to comment
Share on other sites

  • 0
1 минуту назад, Pop70 сказал:

Зачем заморочки с ssl в nginx, который для nextcloud?

Настройте nextcloud так, чтобы он работал из локалки по http, на каком-нибудь порту.

И в настройках keendns укажите апстримом локальный ip и порт.

Кинетик сам будет получать и обновлять сертификаты, оборачивать в ssl, и редиректить http запросы на https.

 

Тогда помогите пожалуйста привести конфиг NGINX в соответствие с вашим вариантом, то что я удалял раздел SSL в конфиге - результата не принесло...

Link to comment
Share on other sites

  • 0
1 минуту назад, Gvadik сказал:

на отдельном компе с внутренним адресом 192.168.1.2

По http://192.168.1.2 доступен из локальной сети?

Нужно сделать так, чтобы был доступен.

Что-то вроде:

server {
    listen 80;

root /var/www/nextcloud;

}

Link to comment
Share on other sites

  • 0

По http://192.168.1.2 вывод (см.вложение). Хотя узлы явно указал в config.php

'trusted_domains' => 
  array (
    0 => '192.168.1.2:20000',
    1 => 'web.server.keenetic.pro:20000',
  ),

Снимок экрана от 2022-07-08 14-24-25.png

Link to comment
Share on other sites

  • 0
1 час назад, Gvadik сказал:

0 => '192.168.1.2:20000',

Нафига в домене указывать порт?

0 => '192.168.1.2'

1 => 'web.server.keennetic.pro'

На каком порту слушает сервер?

Link to comment
Share on other sites

  • 0

Вторая строчка нафиг не нужна.

В кинетике апстримом укажете http://192.168.2.1 Если сервер на 80 порту, то больше ничего не надо.

 

Link to comment
Share on other sites

  • 0
1 час назад, Gvadik сказал:

Сделал как советовали, всё равно ругается на недоверенный домен

Заставьте работать по http://192.168.1.2 из локальной сети. Как? Я не знаю - это скорее на форум по nextcloud.

Link to comment
Share on other sites

  • 0
В 08.07.2022 в 16:05, Gvadik сказал:

Сделал как советовали, всё равно ругается на недоверенный домен

Надо указать обратный прокси.

в config.php

'overwritehost' => 'web.server.keennetic.pro',

'overwriteprotocol' => 'https',

'trusted_proxies' =>

array (

0 => 'IP Keenetic',

),

 

Edited by MDP
Link to comment
Share on other sites

  • 0

У меня попутно другой вопрос....я находил здесь на форуме команду в кинетике, но сейчас найти не могу.

Суть: 

Я из интернета спокойно подключаюсь к nextcloud, но как только я подключаюсь к роутеру, то nextcloud становится недоступен по https://xxx.yyy.keenetic.pro/nextcloud

по http://IP-address-local/nextcloud естественно доступен, но каждый раз руками переключать как-то бездуховно...

Подскажите, что в роутере прописать надо?

У меня зарегин домен 4 уровня  xxx.yyy.keenetic.pro сертификат сформирован, запросы по https перенаправляются на http

 

разобрался

Edited by MDP
Link to comment
Share on other sites

  • 0
1 час назад, Gvadik сказал:

Сейчас у меня 504 Gateway Time-out nginx/1.18.0 (Ubuntu)...
Если не сложно, скиньте пожалуйста Ваши настройки nginx + config.php

У меня Апач ... конфиг скину вечером

Link to comment
Share on other sites

  • 0
15 часов назад, MDP сказал:

overwritehost' => 'web.server.keennetic.pro',

'overwriteprotocol' => 'https',

Это лишнее.

А вот 

15 часов назад, MDP сказал:

trusted_proxies

Скорее всего ага.

 

Link to comment
Share on other sites

  • 0

Спасибо большое! Получилось! Если выставить в настройках кинетика как вы написали, то у меня 504 time-out, а если выставить xxxx.yyyy.keenetic.pro  и  --->80 HTTP---> 192.168.1.2, то всё работает замечательно. И ещё. В общих настройках nextcloud присутствуют замечания:

Предупреждения о текущей конфигурации.
Заголовки обратного прокси настроены неправильно, либо подключение к серверу Nextcloud осуществляется через доверенный прокси. Если Nextcloud открыт не через доверенный прокси, то это проблема безопасности, которая может позволить атакующему подделать IP-адрес, определяемый сервером Nextcloud. Дополнительная информация представлена в документации ↗.

Заголовок HTTP «Strict-Transport-Security» должен быть настроен как минимум на «15552000» секунд. Для улучшения безопасности рекомендуется включить HSTS согласно нашим подсказкам по безопасности ↗.


Веб-сервер не настроен должным образом для разрешения «/.well-known/webfinger». Дополнительная информация представлена в документации ↗.


Веб-сервер не настроен должным образом для разрешения «/.well-known/nodeinfo». Дополнительная информация представлена в документации ↗.


Заголовок HTTP «Referrer-Policy» не содержит значения «no-referrer», «no-referrer-when-downgrade», «strict-origin» или «strict-origin-when-cross-origin», что может привести к утечке информации об адресе источника перехода по ссылке. Для получения более подробной информации обратитесь к рекомендациии W3C ↗.

 

Было ли у вас такое и как исправляли?

Link to comment
Share on other sites

  • 0
1 минуту назад, Gvadik сказал:

 И ещё. В общих настройках nextcloud присутствуют замечания:

Предупреждения о текущей конфигурации.
Заголовки обратного прокси настроены неправильно, либо подключение к серверу Nextcloud осуществляется через доверенный прокси. Если Nextcloud открыт не через доверенный прокси, то это проблема безопасности, которая может позволить атакующему подделать IP-адрес, определяемый сервером Nextcloud. Дополнительная информация представлена в документации ↗.

Заголовок HTTP «Strict-Transport-Security» должен быть настроен как минимум на «15552000» секунд. Для улучшения безопасности рекомендуется включить HSTS согласно нашим подсказкам по безопасности ↗.


Веб-сервер не настроен должным образом для разрешения «/.well-known/webfinger». Дополнительная информация представлена в документации ↗.


Веб-сервер не настроен должным образом для разрешения «/.well-known/nodeinfo». Дополнительная информация представлена в документации ↗.


Заголовок HTTP «Referrer-Policy» не содержит значения «no-referrer», «no-referrer-when-downgrade», «strict-origin» или «strict-origin-when-cross-origin», что может привести к утечке информации об адресе источника перехода по ссылке. Для получения более подробной информации обратитесь к рекомендациии W3C ↗.

 

Было ли у вас такое и как исправляли?

Эти ошибки гуглением исправлять ))))  Тут заругают за непрофильный топик. 

Link to comment
Share on other sites

  • 0
В 12.07.2022 в 07:09, MDP сказал:

Ну вот так пока...возможно что-то лишнее.

Апач вообще не трогал после установки

В кинетике зарегистрировал домен 4 уровня xxxx.yyyy.keenetic.pro  и  ---> 443----> 192.168.1.253:80

nextcloud на 80 порту 192.168.1.253 

Снимок.PNG

Не могли бы вы продублировать настройки. Картинка больше не доступна.

Link to comment
Share on other sites

  • 0
2 часа назад, obezyanoid сказал:

Не могли бы вы продублировать настройки. Картинка больше не доступна.

Эх... я некстлаудом поигрался и удалил... играюсь с другим уже.

Link to comment
Share on other sites

  • 0
В 08.07.2022 в 15:47, Pop70 сказал:

0 => '192.168.1.2'

Скажите пожалуйста, а как Вы настраиваете безопасность?

В Вашем кинетике пробрасываются HTTP-заголовки?

 

У меня на kn-1810 не пробрасываются заголовки:

HTTP_CLIENT_IP =
HTTP_X_REAL_IP =
HTTP_X_FORWARDED_FOR =
REMOTE_ADDR =192.168.8.1

Соответственно прописывая в trusted_domains IP роутера сразу отключаешь защиту от брутфорса для всех.

Ну и в логах Nextcloud также везде IP роутера и не понять кто откуда пришел.

Link to comment
Share on other sites

  • 0
В 27.03.2023 в 14:38, panivan сказал:

Скажите пожалуйста, а как Вы настраиваете безопасность?

В Вашем кинетике пробрасываются HTTP-заголовки?

 

У меня на kn-1810 не пробрасываются заголовки:

HTTP_CLIENT_IP =
HTTP_X_REAL_IP =
HTTP_X_FORWARDED_FOR =
REMOTE_ADDR =192.168.8.1

Соответственно прописывая в trusted_domains IP роутера сразу отключаешь защиту от брутфорса для всех.

Ну и в логах Nextcloud также везде IP роутера и не понять кто откуда пришел.

Через CLI в кинетике настраивается проброс заголовков.

Link to comment
Share on other sites

  • 0

Друзья, кому удалось настроить внешний доступ к nextcloud через keendns, скажите как удалось это сделать и покажите свой config.php

Edited by Олег Осипов
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...