Как автоматически объявить ресурсы сервера Linux клиентам с произвольными ОС?

У меня есть сервер Linux, который должен предлагать некоторые услуги для интрасети. Часто будут пользователи, которые не слишком знакомы с использованием своих ноутбуков в сетевой среде, и поэтому я хотел бы объявить об услугах, которые они могут использовать интуитивно понятным способом. В идеале, когда они подключат свои машины к сети, они увидят сервисы, которые могут использовать, а их ОС будет проинформирована о доступных принтерах и т. Д.

За

  1. общедоступная папка для обмена файлами (на основе Samba, NFS или sshfs)
  2. некоторые веб-инструменты, такие как мониторы состояния
  3. CUPS-управляемые принтеры
  4. сетевые сканеры,

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

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

Для объявления об акциях Samba на компьютеры Apple, здесь уже есть ответ, но я не думаю, что avahi/Bonjour сможет решить все остальное. Кроме того, я не пользователь Windows, но я полагаю, что уже есть какой-то подобный протокол от Microsoft, который лучше работает с клиентами Windows.

3 ответа

Вы можете рекламировать определенные веб-страницы через Bonjour для Mac (Закладки> Bonjour в Safari) и Windows с Bonjour (кнопка Bonjour в IE). Этот ответ дает общий подход, добавить <txt-record> рекламировать страницу ниже корня веб-сервера. Я мог бы рассказать подробнее, если хотите.

Самый простой способ, вероятно, состоит в том, чтобы публиковать DNS и поисковые домены через DHCP и следить за тем, чтобы люди могли попасть на красивую страницу документации, просто набрав helpв их браузер. На этой странице вы можете затем перечислить ваши ресурсы и как получить к ним доступ со своего компьютера.

Тогда вам просто нужно убедиться, что люди знают об этом...

Вы должны изучить различные методы для сетей с нулевой конфигурацией (zeroconf).

В частности, вы получите два основных семейства (которые вы сможете использовать бок о бок):

  • mDNS и DNS-DS, которые, как правило, лучше интегрируются с клиентами Linux и OSX. Один из способов рекламировать свой сервис таким образом - настроить Avahi на своем сервере (см. Ответ, с которым вы уже связаны). Клиенты Windows должны видеть эти устройства, если они установят Bonjour (насколько я знаю, его можно приобрести у Apple и установить с Safari), но Windows не поддерживает это "из коробки".

  • UPnP и SSDP. SSDP более или менее эквивалентен DNS-DS. Это изначально поддерживается на клиентах Windows. Я не уверен, существует ли для него какой-либо де-факто "стандартный" сервер Linux (как, например, Avahi), но он, кажется, интегрирован в ряд приложений, которым это требуется (например, медиа-серверы), поэтому вы можете найти полезные библиотеки реализовать то, что вам нужно оттуда.

Другие вопросы по тегам