понедельник, 5 марта 2012 г.

Организация WEB сервера на базе NAS D-LINK DNS-343/325/323/320


В данном же материале, мы рассмотрим, как обеспечить на D-Link NAS сервере поддержку функции WEB сервера, для организации на нем WEB сайта. Как обычно, мы будем работать в работать в консоли, и пользоваться наработками некого ULI.

Итак, первое, что нам необходимо, это установить пакет FFP, процесс чего описан в материале Установка FFP или торрент клиент Transmission на D-LINK DNS-343/325/323/320, только с тем дополнением, что необходимо установить все пакеты, предоставляемые его разработчиками. Кроме этого, работать рекомендуется через SSH (активация которого описана в материале Активация доступа по SSH для NAS серверов D-LINK), так как, вроде, пользователь root отключен в telnet по-умолчанию. Делать это можно вручную, но благо разработчики обеспечили нас скриптом, который выполняет это автоматически, да впридачу обновляет все пакеты каждый раз, при перезагрузке устройства. Для этого необходимо выполнить следующие команды:

mkdir -p /ffp/pkg/
cd /ffp/pkg/
wget http://wolf-u.li/u/173/ -O /ffp/pkg/updater.sh
chmod a+x /ffp/pkg/updater.sh
sh /ffp/pkg/updater.sh

Результатом выполнения данных команд, является установка множества пакетов, адаптированных под NAS-серверы данного производителя. Но в первую очередь, в рамках данного материала, нас интересует lighttpd - демон, представляющий собой легкий WEB сервер, отвечающий на HTTP запросы клиентов, и предоставляющий им HTML странички, расположенные на хранилище. То есть результатом данного материала, будет возможность размещения на своем хранилище простого WEB сайта, на основе статических HTML страничек. Но не будем сейчас вникать в тонкости Интернет технологий, касательно создания сайтов, ибо речь не об этом.

Как уже отмечалось в материале Установка FFP или торрент клиент Transmission на D-LINK DNS-343/325/323/320, WEB сервер Lighttpd устанавливается по-умолчанию в составе пакета FFP. Можно его просто обновить выполнив команду:

funpkg -u /ffp/pkg/additional/*/lighttpd-*.tgz

Итак, для работы WEB сервера Lighttpd, ему необходимо создать директории для лог файлов, для временных файлов, и непосредственно для HTML страниц, из которых будет состоять сайт. Поэтому подготовим данные директории для него (не забываем нажимать ENTER в конце каждой строки):

mkdir -p /ffp/opt/srv/mysql
ln -s /ffp/opt/srv/ /srv

Так как в предыдущей строке, мы создаем символическую ссылку на каталог, она будет утеряна при перезагрузке хранилища, поэтому добавим в конец файла /ffp/etc/fun_plug.init строку:
ln -s /ffp/opt/srv/ /srv

Зделать это можно прямо в файл-менеджере Midnight Commander (установка которого описана в материале Установка Optware IPKG), просто нажав F4 для редактирования данного файла, а затем F2 - для сохранения изменений в нем. После этого, создаем дерево каталогов для WEB-сервера:

mkdir -p /srv/www/pages
mkdir -p /srv/www/logs
mkdir -p /srv/tmp

Директория /srv/www/pages предназначена для расположения в ней HTML страниц, а /srv/www/logs - для записи логов. Теперь добавляем lighttpd в автозагрузку:

chmod a+x /ffp/start/lighttpd.sh

Ввиду того, что в заводской прошивке данных NAS-серверов уже имеется некий WEB-сервер, так называемый webs по-умолчанию висящий на 80 порту (на котором собственно работает WEB интерфейс), необходимо перенаправить его на порт 81. Для всех моделей хранилищ D-LINK это делает следующая команда:

chmod a+x /ffp/start/kickwebs.sh

Для моделей DNS-320, DNS-325, у которых несколько иная организация сервисов, необходимо выполнить:

chmod a+x /ffp/start/kickwebs_dns320.sh

Результатом выполнения данных команд, является отключение стандартного WEB сервера webs, и назначение 80-го порта для lighttpd сервера. Все-же webs позже перезапустится, но так как 80-й порт уже будет занят, займет порт 81.

Теперь все готового к работе, кроме того, что серверу lighttpd не хватает файла конфигурации, поэтому добавим его:

cp /ffp/etc/examples/lighttpd.conf /ffp/etc/

Следует отметить, что ввиду того, что поддержка сервера lighttpd для моделей NAS-серверов DNS-320 и DNS-325 реализована, только вместе с поддержкой PHP, без поднятия оного, lighttpd на данных моделях к сожалению работать не будут. К счастью это не относится к остальным моделям, так что перезагружаем устройство. Конечно же, для организации сайта, сперва необходимо закинуть в папку /srv/www/pages, html-файл с именем index.html. Вот теперь уже можно зайти на хранилище по его IP адресу, и нам откроется первая страница нашего сайта.

Следует учитывать, что на 80 порту хранилища теперь по-умолчанию расположен WEB сервер. Для того, чтобы зайти на WEB интерфейс хранилища, необходимо обращаться на 81 порт. Собственно теперь можно организовывать сайт на базе статических html страничек, и выставлять его наружу, для доступа из Интернета. Конечно же соответствующим образом необходимо пробросить порты. Почитать про это можно в материале: Удаленный доступ к NAS серверу.

Что же касается организации WEB сервера для моделей NAS серверов DNS-320 и DNS-325, реализация его будет изложена в следующем материале, вместе с изложением поднятия PHP на данных хранилищах.

Источник: NAS-TWEAKER

13 комментариев:

  1. Привет!
    Покажите листинг kickwebs_dns320.sh у меня такого файла нет.

    ОтветитьУдалить
  2. Здравствуйте!

    Очень полезные статьи! Огромное спасибо за них!
    Но когда можно будет прочитать про установку PHP на D-Link DNS-320?

    WBR!

    ОтветитьУдалить
    Ответы
    1. Анонимный5 мая 2013 г., 18:40

      так по D-Link DNS-320 будет описание???

      Удалить
    2. Анонимный2 мая 2014 г., 13:19

      Друг, я как раз сейчас занимаюсь этой темой. Недавно купил DNS-320.
      Побегав с бубном пару дней, поставил ffp v0.7, поднял Transmission, Twonky.
      Поставил Optware и lighttpd, прикрутил PHP, MySQL + phpMyAdmin. Все заработало.
      Но появились проблемы с переносом баз, т.к. MySQL поставил слишком старый. Нужно было поставить MySQL5. Начал ставить и как-то накосячил видно где-то. Вобщем все стало совсем плохо. Плюнул и решил все заново поставить с нуля. Так что запилю потом наверное мануал. Ссылку сюда закину если что.

      Удалить
    3. Анонимный3 мая 2014 г., 12:57

      Это опять я, бегающий с бубном вокруг DNS-320 :)
      Вобщем с работой Lighttpd какая-то фигня получается из-за конфликта с уже имеющимся в прошивке сервером для веб-морды NAS'a (он тоже Lighttpd).
      В итоге плюнул на Lighttpd и решил поднять Nginx. Поставил его в optware через ipkg. Пришлось опять бегать с бубном и пить пиво, но в конце-концов удалось прикрутить PHP. Теперь если после перезагрузки ничего не слетит, буду прикручивать MySQL и потом phpMyAdmin.
      О результатах напишу.

      Удалить
    4. Анонимный7 мая 2014 г., 21:29

      Вобщем поставил на свой DNS-320 связку Nginx+PHP+MySQL+phpMyAdmin
      Все ОК, полет нормальный. Мануал написать уже наверное не смогу, т.к.
      не смогу вспомнить что делал. Приходилось многое переделывать и откатывать назад.

      Удалить
    5. очередность установки такая как в сообщении выше?

      Удалить
  3. И где описание установки на 320 c php ? :-(((

    ОтветитьУдалить
  4. Анонимный16 июня 2013 г., 1:11

    Здравствуйте !
    Завтра приедет DNS-325 , задача сделать из него хранилище файлов для сайта + работа с скриптами PHP , очень нужна статья - Что же касается организации WEB сервера для моделей NAS серверов DNS-320 и DNS-325, реализация его будет изложена в следующем материале, вместе с изложением поднятия PHP на данных хранилищах.

    ОтветитьУдалить
  5. Господа!
    Все ваши инструкции написаны через **** на косяк!
    Читаешь инструкцию, а оказывается что в середине её, ссылка на другую инструкцию, которую надо бы сделать перед тем как делать эту.
    А про то, что DNS-320 не поддерживает работу сервера без поднятия PHP написано ТОЛЬКО в самом конце, и в то же время в заголовке написано:
    "Организация WEB сервера на базе NAS D-LINK DNS-343/325/323/320"
    Минус, большой и жирный.

    ОтветитьУдалить
  6. у меня веб интерфейс на 325 не переезжает на 81 порт, делал все по инструкции что можете подсказать по этому вопросу?

    ОтветитьУдалить
  7. А как для DNS-320 вернуть после этих танцев старую WEB-морду обратно, а то ни там ни там нет. И вообще , то правда писать надо, что не для всего оборудования применимо. Не все же ярые Linuxoid-ы , просто людям это надо и они , веря Вам , повторяют.

    ОтветитьУдалить
  8. Разобрался сам, но все таки будьте повнимательней пожалуйста.
    chmod -x /ffp/start/kickwebs.sh
    chmod -x /ffp/start/kickwebs_dns320.sh

    ОтветитьУдалить