Доступ к локальному серверу Ubuntu (SSH, Samba и т.д.) заблокирован после установки контейнеров Docker или deb-версии Plex Media Server.

Вопрос или проблема

Я начинающий. Я настроил серверы Ubuntu у себя дома для развлечения всего 3 раза. Это установка домашней лаборатории, предназначенная для совместного использования файлов Samba, медиа-сервера Plex и, в конечном итоге, Nextcloud.

Аппаратная конфигурация:

Я использую последнюю LTS версию Ubuntu 24.04.1 server на мини-ПК с процессором Intel N95 x4, 8 ГБ ОЗУ, 4 ТБ M.2 NVME SSD, и он напрямую подключен к моему роутеру ASUS-RT-AX86U, который управляет моей локальной сетью. Между мини-ПК и роутером есть неуправляемый коммутатор Netgear. Я настроил сервер мини-ПК на использование статического локального IP в настройках роутера.

Мой ПК, который я использовал для SSH на сервер, является настольным компьютером с Fedora 36, также подключенным по проводам непосредственно к роутеру.

Проблема:

Я настроил SSH и совместное использование файлов Samba без проблем и мог управлять обоими с моего ПК с Fedora. Все работает идеально, пока я не пытаюсь установить службу/приложение на сервер, например, Plex. Независимо от того, устанавливаю ли я его с помощью Docker или непосредственно на сервер, используя deb-пакет, как только Plex запускается и работает, я теряю возможность подключаться к серверу через SSH или Samba с моего ПК с Fedora.

Если я удалю Plex, проблема остается, и мне нужно ждать 24-48 часов. После этого я снова могу подключаться к SSH и Samba. Если я пытаюсь установить Plex по-другому, возникает та же проблема. Я не могу найти ссылки на эту проблему или объяснение, почему мне нужно ждать определенное количество часов для возобновления работы после установки приложения, такого как Plex.

Я подозреваю, что приложение/служба рекламирует себя в локальной сети и как-то подавляет соединение до такой степени, что я не могу подключиться к IP-адресу сервера, используя другой порт. Но опять же, я не могу найти ссылки на эту проблему.

Ошибка, которую я получаю из терминала при попытке SSH:

ssh: connect to host 192.168.50.248 port 22: No route to host

Ошибка, которую я получаю, пытаясь получить доступ к общему файлу Samba из файлового менеджера моего ПК:

Unhandled error message: Failed to mount Windows share: No route to host

Поиск и устранение неисправностей, которые я попробовал:

  • Я попытался настроить параметры порта в ufw и даже полностью отключил ufw, чтобы проверить, является ли это причиной.
  • Я пытался перезапустить службы ssh и sshd, Samba, ufw и многократно перезагружал оба компьютера.
  • Когда я отказался от версии Plex на Docker, я удалил Docker, чтобы исключить этот фактор. Затем я установил Plex непосредственно, используя deb-пакет, но это не изменило проблему. (Сторонняя заметка: Plex наконец работает хотя бы таким методом! У меня были ошибки с версиями Docker.)

Ответ или решение

Проблемы с доступом к локальному серверу Ubuntu после установки Docker-контейнеров или Plex Media Server могут показаться загадочными, но они решаемы. Давайте разберемся в возможных причинах и решениях этой ситуации, учитывая, что ваша конфигурация включает услуги SSH и Samba, а также соседство различных сетевых компонентов. Ситуация, когда доступ восстанавливается через некоторое время, указывает на возможную сеть или конфигурацию брандмауэра, а также наличие конфликтов портов или IP-адресов.

Потенциальные причины проблемы

  1. Конфликты портов. Plex Media Server и Docker могут использовать те же порты, что и SSH или Samba. Проверьте конфигурацию использования портов в вашем сервере на предмет конфликтов.

  2. Изменения в сети или IP-адресах. Даже при наличии статического IP, могут происходить проблемы на уровне сетевого маршрутизатора или коммутатора. Убедитесь, что статический IP действительно привязывается, и что DHCP-сервер маршрутизатора не вмешивается в этот процесс.

  3. Брандмауэр UFW. Вы уже пробовали отключать UFW, но стоит проверить и другие уровни фильтрации, такие как фильтрация на уровне маршрутизатора или конфигурации Docker, которые тоже могут влиять на сетевые подключения.

  4. Блокировка MAC-адресов. Проверьте, нет ли фильтрации на основе MAC-адресов на маршрутизаторе или коммутаторе, что может препятствовать соединению с конкретными устройствами.

Рекомендации по устранению проблемы

  1. Диагностика сети. Используйте команды типа ping и traceroute на вашем Fedora ПК, чтобы выявить, нет ли каких-либо отклонений в маршрутизации сети. Это поможет понять, идет ли блокировка на уровне маршрутизатора или коммутатора.

  2. Проверка портов. Используйте команду netstat -tuln на сервере Ubuntu, чтобы убедиться, что службы SSH и Samba слушают на правильных портах. Особенно это актуально, если Plex или Docker подобрал порт, используемый другим сервисом.

  3. Логирование и мониторинг. Просмотрите системные логи (/var/log/syslog) и логи SSH (/var/log/auth.log), чтобы выявить ошибки, возникающие после установки Plex. Это может выявить возможные причины блокировок.

  4. Расширенные настройки сети. Проверьте использование сетевых интерфейсов в Docker. Иногда контейнеры могут смешиваться с основными сетевыми интерфейсами, что приводит к проблемам.

  5. Конфликты с Docker. В случае с Docker, проверьте настройки сети контейнера. Вы можете задать Docker использовать разные сети или мосты, чтобы избежать конфликта с основной сетью сервера.

  6. Обновление прошивки сетевых устройств. Убедитесь, что маршрутизатор ASUS-RT-AX86U и коммутатор Netgear имеют последнюю версию прошивки. Это может снизить вероятность конфликтов на уровне устройства.

Заключение

Вашей целью должно быть систематическое устранение причин, влекущих за собой сбои в соединении после установки новых приложений. Это требует терпения и тщательного анализа, но, следуя приведенным рекомендациям, вы сможете восстановить нормальную работу сетевых служб на вашем сервере. Если проблема сохранится, рассмотрите возможность более подробного мониторинга сети с помощью специализированного ПО или консолидации всех логов для анализа.

Оцените материал
Добавить комментарий

Капча загружается...