Правила межсетевого экрана UFW для transmission-daemon на Ubuntu 20.XX

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

У меня установлен Transmission на VPS с Ubuntu 20.XX, и я могу войти в веб-интерфейс с помощью MYIP:9091/ для управления файлами.

Я использую брандмауэр ufw. Я добавил следующие правила для открытия этих портов:

  • 22/tcp (OpenSSH) ALLOW IN Anywhere
  • 20/tcp ALLOW IN Anywhere
  • 21/tcp ALLOW IN Anywhere
  • 40000:50000/tcp ALLOW IN Anywhere
  • 990/tcp ALLOW IN Anywhere
  • 6688/tcp ALLOW IN Anywhere
  • 28967/tcp ALLOW IN Anywhere
  • 9091 ALLOW IN Anywhere
  • 5432 on eth1 ALLOW IN Anywhere
  • 9091/tcp ALLOW IN Anywhere
  • 22/tcp ALLOW IN Anywhere
  • 2222 ALLOW IN Anywhere
  • 80/tcp ALLOW IN Anywhere
  • 80 ALLOW IN Anywhere
  • 443/tcp ALLOW IN Anywhere
  • 443 ALLOW IN Anywhere
  • 6000:6003/tcp ALLOW IN Anywhere
  • 6000:6003/udp ALLOW IN Anywhere
  • 49152:65535/udp ALLOW IN Anywhere
  • 49152:65535/tcp ALLOW IN Anywhere
  • 9091/udp ALLOW IN Anywhere
  • 22/tcp (OpenSSH (v6)) ALLOW IN Anywhere (v6)
  • 20/tcp (v6) ALLOW IN Anywhere (v6)
  • 21/tcp (v6) ALLOW IN Anywhere (v6)
  • 40000:50000/tcp (v6) ALLOW IN Anywhere (v6)
  • 990/tcp (v6) ALLOW IN Anywhere (v6)
  • 6688/tcp (v6) ALLOW IN Anywhere (v6)
  • 28967/tcp (v6) ALLOW IN Anywhere (v6)
  • 9091 (v6) ALLOW IN Anywhere (v6)
  • 5432 (v6) on eth1 ALLOW IN Anywhere (v6)
  • 9091/tcp (v6) ALLOW IN Anywhere (v6)
  • 22/tcp (v6) ALLOW IN Anywhere (v6)
  • 2222 (v6) ALLOW IN Anywhere (v6)
  • 80/tcp (v6) ALLOW IN Anywhere (v6)
  • 80 (v6) ALLOW IN Anywhere (v6)
  • 443/tcp (v6) ALLOW IN Anywhere (v6)
  • 443 (v6) ALLOW IN Anywhere (v6)
  • 6000:6003/tcp (v6) ALLOW IN Anywhere (v6)
  • 6000:6003/udp (v6) ALLOW IN Anywhere (v6)
  • 49152:65535/udp (v6) ALLOW IN Anywhere (v6)
  • 49152:65535/tcp (v6) ALLOW IN Anywhere (v6)
  • 9091/udp (v6) ALLOW IN Anywhere (v6)

Когда я ввожу sudo ufw enable, веб-интерфейс Transmission перестает быть доступным. Но когда я ввожу sudo ufw disable, он снова работает, так что это проблема с ufw.

Есть идеи, какие порты я упустил или что неправильно настроено?

Похоже, вы разрешили все, возможно, стоит проверить, не настроено ли для Transmission AppArmor и разрешен ли порт 9091?

Если у вас есть HTTP-демон (Apache/Nginx), вы можете его настроить и проксировать порт Transmission, это должно сработать, так как HTTP-демон использует AppArmor.

Когда вы включаете брандмауэр, доступен ли порт 22? Возможно, стоит очистить конфигурацию UFW и добавить только 80/443, а затем 9091, это может подсказать, где проблема.

Я выяснил, в чем была проблема: я не добавил прослушивающий порт Transmission, теперь все работает нормально.

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

UFW (Uncomplicated Firewall) — это интерфейс управления брандмауэром на основе iptables, предназначенный для обеспечения безопасности серверов Ubuntu, в том числе версии 20.XX, максимально простым способом. Ваш вопрос касается настройки брандмауэра UFW для работы с Transmission-daemon на вашем VPS, с которым вы сталкиваетесь проблемами при доступе к веб-интерфейсу Transmission через порт 9091.

Теория

UFW позволяет управлять правилами доступа как входящих, так и исходящих соединений. Transmission — это популярный BitTorrent-клиент, работающий как демон, который обычно использует веб-интерфейс управления. Для работы этого веб-интерфейса необходимо открыть соответствующие порты как для управления, так и для передачи данных.

Пример

Перед нами конфигурация брандмауэра, которая выглядит очень открытой, поскольку включает в себя большое количество разрешенных портов. Вы уже открыли порт 9091, который также имеет TCP и UDP правила, но проблема сохраняется, когда UFW включен. Из вашего описания следует, что проблема была в отсутствии открытия «порта прослушивания Transmission», который может быть отличным от упомянутых стандартных.

Применение

Для обеспечения правильной работы Transmission-daemon с UFW необходимо сделать ряд шагов, чтобы идентифицировать и устранить проблему.

  1. Проверка конфигурации Transmission:

    • Откройте файл конфигурации Transmission. Обычно это: /etc/transmission-daemon/settings.json.
    • Найдите параметр "rpc-port", чтобы убедиться, что он установлен на 9091.
    • Найдите параметр "peer-port", чтобы узнать порт, на котором Transmission слушает входящие соединения торрент-клиентов.
  2. Обновление правил UFW:

    • Для начала убедитесь, что порт, использующийся для торрентов (обычно "peer-port": 51413 по умолчанию), также разрешен:
      sudo ufw allow 51413/tcp
      sudo ufw allow 51413/udp
    • Если "peer-port" изменён, используйте актуальное значение.
  3. Очистка и настройка правил:

    • Рекомендуется очистить текущие правила и начать с важных:
      sudo ufw reset
      sudo ufw allow 22/tcp  # SSH для управления сервером
      sudo ufw allow 9091/tcp  # Веб-интерфейс Transmission
      sudo ufw allow 80/tcp  # HTTP (если нужен)
      sudo ufw allow 443/tcp  # HTTPS (если нужен)
    • Теперь добавьте необходимые правила для торрент-трафика:
      sudo ufw allow 51413/tcp
      sudo ufw allow 51413/udp
  4. Проверка и активация UFW:

    • Проверьте примененные правила командой:
      sudo ufw status
    • Активируйте брандмауэр:
      sudo ufw enable
  5. Диагностика:

    • Убедитесь, что проблемы исчезли. Если веб-интерфейс все еще недоступен, убедитесь, что другие службы, например, AppArmor, не блокируют Transmission.
    • Зайдите через sudo в консоль и проверьте логи с помощью:
      sudo journalctl -xe

Заключение

Корректная работа Transmission через UFW требует как правильной настройки самих правил брандмауэра, так и учёта особенностей конфигурации Transmission. Правильная диагностика и поочерёдное разрешение портов, задействованных в работе Transmission, поможет устранить проблемы с доступом и трафиком. Учитывая все варианты конфигурации, вы сможете более надежно защитить ваш сервер без потери функциональности Transmission.

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

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