Nextcloud проброс портов на роутере

Nextcloud community

Loading

  • Печать

Страницы: [1] 2  Все   Вниз

Тема: Удалённое подключение к nextcloud.  (Прочитано 6335 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
Vladimir1977

Приветствую всех! Собрал простенький комп, установил Ubuntu 20.04. Поставил nextcloud. По ip всё подкдючается.Ha no ip настроил хост. В роутере пробросил пор 80. Настроил переадресацию. Не могу подключиться удалённо. Подскажите куда копать?

« Последнее редактирование: 17 Февраля 2022, 22:10:34 от Vladimir1977 »


Оффлайн
c47

0) не 20.4, а 20.04 (или какую-то другую, например 21.04? Как и nextcloEd, это свидетельствует о пофигизме в переводе мыслей в текст, тем более предназначенный для чтения другим людям)

Ha no ip настроил хост

это я так подозреваю https://www.noip.com/ верно?
2) какой ip роутера? может он локальный, сейчас подавляющее большинство провайдеров предоставляют локальные ip, если это какая-то тайна — проверь командой whois или на сайте типа этого
upd 3) ну и неплохо бы скинуть ссылку на инструкцию, по которой настраивал, вдруг она древнющаяя

« Последнее редактирование: 17 Февраля 2022, 20:55:11 от c47 »


Оффлайн
Vladimir1977

Прошу прощения за опечатку. IP роутера белый! Я проверил. Роутер подключился к хосту, судя по надписи — состояние подключения: успешно. Хост действительно на noip.com.Какую именно инструкцию кинуть? По настройке чего? Роутера или nextcloud ?


Оффлайн
kac

если удаленно по по ssh нужно проверить 22 порт
если закрыт то нужно смотреть парвила фаервола + открыть на роутере 22 порт если нужно доступ с наружы
для безопасноти fail2ban и  использовать для подключения ключи безопасности

или настроить впн с ссл сертификатами для для подключения к локальной сети из вне

если по 80порту то тоже нужно проверить фаервол
а внутри сети по ір открывается?

« Последнее редактирование: 18 Февраля 2022, 03:56:31 от kac »


Оффлайн
c47

Роутер подключился к хосту, судя по надписи — состояние подключения: успешно

это не роутер подключается к хосту, роутер и есть хост. На noip.com лишь раздают имена для этих хостов.
схема такая должна быть в идеале:

  • роутер получает от провайдера белый IP
  • на роутере (для теста) включить DMZ до nextcloud. когда заработает — сделаешь проброс нужных портов (22, 80 и 443), а DMZ откывает всё настежь зеркально
    1<->1
    2<->2

    65356<->65536
  • желательно ссылку на используемый тобой мануал настройки nextcloud, может ты его на виртуалке поднял внутри ubuntu, или в докере, чем чёрт не шутит?
  • на роутере сделай статическую связку DHCP IP<->MAC для nextcloud
  • когда всё заработает — настрой защиту себе, как советует kac, ну и надёжные пароли на ВСЁ, от ssh и telnet, до собственно самого nextcloud

как подключаешься удалённо? сейчас браузеры частенько автоматом редиректят на https, а у тебя скорее всего сертификата такого нет, к тому же там 443, а не 80 порт.
на сайте ping.eu есть различные сервисы, проверь ping и dnslookup оттуда до своего доменного имени и до ip-адреса.
также проверь, совпадает ли твой белый IP с «Your IP is xxx.xxx.xxx.xxx» на ping.eu
Для чистоты эксперимента на телефоне включи 3/4G и попробуй из приложения подключиться сначала к доменному имени, если не получится — к внешнему IP роутера


* под «доменным именем» я имею в виду полученный от noip.com адрес типа example.ddns.net или как ты там настроил


Оффлайн
Usermaster

Подскажите куда копать?

Для начала копать нужно в сторону config.php
Там добавляются варианты по которым можно ходить на сервер.
Вот кусок моего конфига для примера(только адреса изменены).
………….
  array (
    0 => ‘92.352.67.232:4480’,
    1 => ‘10.7.7.9:4480’,
    2 => ‘nextcloud.vasyapupkin.ru:4480’,
    3 => ‘nextcloud.vasyapupkin.ru’,
  ),
…………..

В данном примере можно ходить по http из интернет через белый ip на порт 4480, из локалки на этот же порт, так же можно ходить на доменное имя на порт 4480 http, ну и ещё добавлен https, для этого 4 строчка, а сам https в другом месте настраивается.


Оффлайн
Vladimir1977

Внутри сети всё работает.
Ставил аот так.

cd /var/www/
sudo wget https://download.nextcloud.com/..............tar.bz2
sudo tar -xvf .........tar.bz2
sudo mkdir -p /var/www/nextcloud/data
sudo chown -R www-data:www-data /var/www/nextcloud/
sudo chmod 750 /var/www/nextcloud/data
sudo nano /etc/apache2/sites-available/nextcloud.conf

Alias /nextcloud "/var/www/nextcloud/"

<Directory /var/www/nextcloud/>
  Require all granted
  AllowOverride All
  Options FollowSymLinks MultiViews

  <IfModule mod_dav.c>
    Dav off
  </IfModule>

</Directory>

sudo a2ensite nextcloud.conf
sudo systemctl reload apache2

sudo mkdir -p /etc/apache2/ssl
sudo openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
sudo nano /etc/apache2/sites-available/default-ssl.conf
#Изменить:

SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
#На

SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key

sudo a2ensite default-ssl.conf
sudo service apache2 restart
sudo nano /etc/apache2/sites-available/000-default.conf

#Все удаляем и пишем

<VirtualHost *:80>
   ServerAdmin example@example
   RewriteEngine On
   RewriteCond %{HTTPS} off
   RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
</VirtualHost>

sudo a2enmod rewrite
sudo service apache2 restart

Я с линуксом на ВЫ. Поэтому буду рад любой помощи.

« Последнее редактирование: 18 Февраля 2022, 10:03:50 от Vladimir1977 »


Оффлайн
c47

sudo nano /etc/apache2/sites-available/nextcloud.conf

после редактирования nextcloud.conf необходимо ещё сделать символическую ссылку файла в соседнюю директорию sites-enable

Я делал по этой инструкции, сейчас нашёл эту, вторая по идее больше подойдёт — меньше консоли, да и сам digital ocean мне симпатизирует своими подробными и актуальными мануалами


Оффлайн
Usermaster

Покажите
sudo cat /var/www/nextcloud/config/config.php
Я так понимаю здесь у вас конфиг лежит.

Если в локалке всё работает, смысла нет  пока показывать конфиги apache.


Пользователь добавил сообщение 18 Февраля 2022, 10:21:30:


ссылку файла в соседнюю директорию sites-enable

+1


Оффлайн
Vladimir1977

Вот config.php


Пользователь добавил сообщение 18 Февраля 2022, 16:26:16:


Я так понимаю что должно быть так:
 array (
    0 => ‘192.168.0.109:80’,
Правильно?

« Последнее редактирование: 18 Февраля 2022, 16:26:16 от Vladimir1977 »


Оффлайн
Usermaster

Так то оно так, но эта строчка разрешает вход только из локальной сети.
Для проброшенного порта с марштутизатора должна быть ещё строчка с белым айпишником маршрутизатора для того чтоы netxcloud разрешил вход из интернет.
Ну или строчкка с доменным именем привязанным к этому айпишнику.
Ну или обе строчки чтоб можно было ходить и так и так. Это уже по желанию.
Хотя если есть доменное имя от noip то лучше отставить только доменное имя.

Вот мой рабочий конфиг, заменены на xxxxxxxxx или искажены пароли, секретные ключи, ip адреса и доменные имена.

« Последнее редактирование: 19 Февраля 2022, 19:11:45 от Usermaster »


Оффлайн
Vladimir1977

Спасибо! Ща полезу править!


Оффлайн
Vladimir1977

Всё заработало! Спасибо! Прописал в конфиге адрес хоста. Я думал Что работает по другому. Запрос на адрес хоста преобразуется роутером а IP сервера. И адрес хоста на сервере ни как не проявляется.


Оффлайн
Usermaster


Оффлайн
acclaim

Доброй ночи. Я вот тоже столкнулся с такой же проблемой. У меня куплен домен на reg.ru Привязан к ip адресу. До установки nextcloud на другом ПК был поднят iis всё работало. Установил nextcloud перенаправил проброс портов пк nextcloud но так и не пускает. Вернее у меня с внешки вообще ничего не отображается. Пишет слишком долгий ответ от сервера. Внутри сети всё работает. Подскажите как вы решили данную проблему. Уже 3 день голову ломаю. Роутер Keenetic на os 3.7.4


  • Печать

Страницы: [1] 2  Все   Вверх

Месяц назад я рассказывал о препарировании старенького Mac mini 2007 года. Моя цель — сделать собственный сервер и отказаться от облачных хранилищ, вроде iCloud, Google Drive, Dropbox и прочих.

После пропайки нового разъема с резистором нагрузки Mac mini исправно работает. За последний месяц он ни разу не выключался, выполняя роль домашнего FTP-сервера с внешним доступом.

В этой статье я расскажу, как поднять аналогичное хранилище у себя дома. В качестве компьютера не обязательно останавливаться на Mac mini.

Подойдет любой старенький системник, уставший ноутбук или неттоп. Можно заморочиться и с одноплатным Raspberry, но там немного другая специфика настройки и, скорее тема отдельного материала.

Что ж, приступим к созданию собственного сервера.

Предварительная подготовка

Накатываем Linux

Так случилось, что мой Mac mini был с нерабочим DVD-Rom. После безуспешных попыток запустить систему и часов, потраченных на форматирование загрузочных флешек, мне удалось выяснить кое-что интересное.

Не все Mac mini и старые Mac поддерживают установку с флешки.

У меня как раз такой случай.

Установить DVD-Rom от старенького ноутбука HP не удалось — разъемы не совпадают. Искать донора или аналогичный привод не было желания.

Решение было следующим. Я достал 2,5» винт Mac mini, установил его в ноутбук на базе Windows. Загрузил дистрибутив Linux Debian (можно сделать это вот здесь), развернул образ на флешку и установил на HDD от Mac mini.

Потом HDD с уже накатанной Linux поставил обратно в Mac mini, включил и все заработало.

Linux неприхотлива к железу. Wi-Fi, Ethernet, графика — все заработало после первого запуска.

Все, теперь у Mac mini есть работающая операционка и можно приступать к дальнейшей настройке.

Покупаем «белый» IP

Без этого никак. Вам понадобится так называемый «белый» IP-адрес. То есть такой айпишник, который будет закреплен конкретно за вашим роутером.

Чтобы его получить, звоним провайдеру и просим активировать «белый статический IP-адрес». Обычно стоимость месяца такого IP не более 100 – 150 рублей.

Увы, бесплатно держать свой сервер не выйдет. Зато вы можете наращивать емкость собственного хранилища, но при этом не платить заоблачные цены за гигабайты в облаке.

Время активации зависит от провайдера. У меня был белый IP уже через 30 минут после звонка провайдеру.

Пробрасываем порты

Для того, чтобы вы могли получить доступ к вашему серверу из любой точки мира, необходимо выполнить так называемый проброс портов. Суть его вот в чем.

Вы находитесь далеко от дома, пользуетесь, например интернетом от оператора сотовой связи.

Указываете домашний IP-адрес. На него поступает запрос, а дальше он должен связаться с вашим домашним сервером, «постучав» на конкретный сетевой порт.

Данная настройка зависит конкретно от вашей модели роутера. Логичнее будет почитать про проброс портов конкретно на ваш роутер отдельно. У меня этот пункт настроек выглядит так:

Я просто активировал DMZ (доступ к общедоступным сервисами) и прописал IP-адрес Mac mini в локальной сети.

Его, к слову, можно посмотреть как в сетевых настройках Linux, либо в веб-интерфейсе роутера в разделе подключенных устройств.

Настраиваем сервер на базе Nextcloud

Поскольку я изначально поставил перед собой цель сделать полноценную замену популярным облачным сервисам, ограничиваться банальным FTP не буду.

Хочется получить нормальный мобильный клиент, автоматическую синхронизацию и красивую оболочку.

Лучший вариант для всего этого — решением от Nextcloud.

Nextcloud — это как раз-таки специально разработанный комплекс для создания серверов с регулируемыми уровнями доступа для разных клиентов в рамках корпоративной сети. Но он позиционируется и как удобный инструмент для создания домашнего сервера.

Что ж, приступим к установке Nextcloud на наш Mac mini.

Шаг 1. Запускаем терминал в Linux Debian на Mac mini. Можно вводить все команды как на самом будущем сервере, так и воспользовавшись SSH из Терминала вашего MacBook или другого рабочего компьютера.

Для подключения по SSH необходимо ввести следующую строчку:

ssh ВАШ-БЕЛЫЙ-IP-АДРЕС

Затем указать пароль администратора в системе Linux (на нашем сервер).

Вводим следующую команду:

su apt update

Затем устанавливаем сервер MariaDB:

su apt install mariadb-server -y

Дожидаемся загрузки и установки всех пакетов.

Теперь проверим статус установленного сервера:

sudo systemctl status mariadb

Видим статус active, значит все в порядке.

Чтобы выйти нажимаем Q. Продолжаем настройку.

Шаг 2. Проверяем версию MySQL, указав следующую команду:

mysql -V

Теперь настроим систему управления базами данных MySQL под работу сервера Nextcloud. Вводим:

mysql -u root -p

На запрос пароля введите либо ваш пароль администратора, либо просто нажмите Enter.

Шаг 3. Теперь нам предстоит прописать серию команд для создания базы данных под Nextcloud. Вводим:

CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

Нажимаем Enter и получаем ответ: Query OK, 1 row affected (0.00 sec). Продолжаем ввод команд:

GRANT ALL ON nextcloud.* TO ‘nextclouduser’@’localhost’ IDENTIFIED BY ‘ПРИДУМАТЬ_ПАРОЛЬ’;

Enter. Дальше:

FLUSH PRIVILEGES;

Enter. Дальше:

EXIT;

Готово. База данных MySQL создана.

Шаг 4. Время установить PHP. Вводим следующую команду.

su apt install software-properties-common жмем еnter

su add-apt-repository ppa:ondrej/php

Жмем еще раз Enter после выполнения последней команды. Дожидаемся окончания установки.

Ставим Apache. Вводим такую строчку:

su apt install apache2 php7.1 php7.1-gd php7.1-json php7.1-mysql php7.1-curl php7.1-mbstring php7.1-intl php7.1-mcrypt php7.1-imagick php7.1-xml php7.1-zip libapache2-mod-php7.1

Подтверждаем действие, нажав Y и Enter. Дожидаемся установки всех пакетов.

Настроим Firewall. Вводим:

su ufw allow ‘Apache Full’

Теперь приступаем к загрузке Nextcloud. Меняем директорию:

cd /tmp нажимаем Enter

wget https://download.nextcloud.com/server/releases/nextcloud-14.0.0.tar.bz2

Жмем Enter. Ждем окончания загрузки. Вводим:

tar xf nextcloud-14.0.0.tar.bz2

Раскрываем список файлов:

ls

Перемещаем Nextcloud в «правильную» папку:

su mv /tmp/nextcloud /var/www

Все, Nexctloud перемещен в корневую директорию нашего HTTP-сервера. Вводим еще одну команду:

su chown -R www-data: /var/www/nextcloud

И редактируем файл конфига Apache:

su nan /etc/apache2/conf-available/nextcloud.conf

Содержимое данного фала должно быть следующим:

Alias /nextcloud «/var/www/nexctloud/»

<Directory /var/www/nextcloud/>

Options +FollowSymlinks

AllowOverride All

<IfModule mod_dav.c>

Dav off

</IfModule>

SetEnv HOME /var/www/nexctloud

SetEnv HTTP_HOME /var/www/nextcloud

</Directory>

Если подобного текста нет — копируем и вставляем его в файл конфига и нажимаем CTRL + O для сохранения. Жмем Enter.

Остается включить несколько конфигурационных файлов. Ниже серия команд, которые следует вводить поочередно. Нажимаем Enter после каждой команды и дожидаемся выполнения.

su a2enconf rewrite

su systemctl reload apache2 (вводим пароль)

su a2enmod rewrite

su a2enmod headers

su a2enmod env

su a2enmod dir

su a2enmod mime

su systemctl reload apache2

Готово. Настройка Nextcloud окончена.

Краткая настройка Nexctloud

Открываем браузер и вводим адрес нашего белого IP, дописав /nextcloud. То есть во так:

80.23.23.223/nextcloud указываете ваш IP вместо предложенного

И видим окно, показанное на скриншоте выше.

Задаем пароль для пользователя Admin. Попадаем в веб-интерфейс нашего сервера.

Рассказать о всех тонкостях настройки серверного решения Nextcloud в одном материале невозможно. Главное, что следует сделать — скачать мобильный клиент для Android или iOS.

Авторизоваться в нем можно, указав ваш IP-адрес сервера и добавив /nextcloud. Вводите созданное имя пользователя и пароль.

А дальше останется выбрать папки, которые вы хотите автоматически синхронизировать с вашим облачным сервером, установить настройки синхронизации, создать учетные записи для всех членов семьи.

Nexctloud позволяет полностью отказаться от облачных решений вроде Dropbox и iCloud. И главное, вы знаете, что ваши файлы всегда доступны только вам и вашим близким.

Хорошего пользования;)

1 Звезд2 Звезды3 Звезды4 Звезды5 Звезд (53 голосов, общий рейтинг: 3.58 из 5)

🤓 Хочешь больше? Подпишись на наш Telegram.

undefined

iPhones.ru


Запасаемся попкорном и готовимся к борьбе за облачную независимость.

  • инструкции,
  • От редакции,
  • Сервисы

Владимир Кузин avatar

Владимир Кузин

@xakerbox

DIY-техноман. Уверен, что все можно сделать своими руками. Коллайдер не в счет.

Search code, repositories, users, issues, pull requests…

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up


0

2

Есть домашний Nextcloud, на который хожу и по домашнему WiFi, и из внешки. Внезапно провайдер для физических лиц прикрыл все порты для доступа из интернета, не только 25, 80, 443, а вообще все.

Набросал пока такое быстрое решение:

1. Настроил SSH-туннель между домашним сервером и VPS
ssh -N -R 80:localhost:80 -R 443:localhost:443 root@vps

Да, пока туннель от рута, потому что пробрасываются порты <1024 (но можно добавить socat).

2. Поправил DNS запись, домен теперь указывает на айпишник VPS

На удивление все работает, все веб-сервисы доступны. Даже скорость не изменилась.

Вот только перфекционизм не дает покоя, и думается мне, что можно воспользоваться какими-то специальными инструментами (OpenVPN, WireGuard, tinc) для решения такой проблемы, а не использовать SSH.

Или для небольшой нагрузки это вполне себе ок?

  • N450 wi fi роутер модель tl wr940n открыть порты
  • Netis wf2411e настройка роутера пароль
  • Netsniper что это в роутере
  • Netgear aircard 782s ac782s 3g 4g wifi роутер
  • N450 wi fi роутер модель tl wr940n настройка