Прошивка роутера альтернативной прошивкой OpenWRT и установка HTTP файлового сервера на примере роутера TP-Link TL-WR1043ND

Начало статьи:

Делаем загрузку OpenWRT с внешнего USB носителя, подключаем раздел для данных и подкачки Swap

Создаем папку для файлов на внешнем USB носителе

Создадим на внешнем присоединенном USB носителе папку, в которой будут храниться файлы (в моем случае это файлы баз).

Открываем программу WinSCP, подключаемся к нашему «Подопытному» роутеру. Заходим на присоединенный внешний USB диск для файлов (в моем случае это папка Server_Baz) и нажимаем в любом свободном месте правую клавишу. В появившемся меню выбираем «New», «Directory…» (Создать папку) или же просто нажмем F7.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_01.png

В появившемся окне зададим название папки «www» и права доступа, установив недостающие галочки как на рисунке ниже (дадим права всем на чтение, запись и редактирование), для создания папки нажимаем «ОК».

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_02.png

После нажатия кнопки «ОК» появится наша созданная пака www.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_03.png

Далее, в папке www, аналогично, создадим еще одну папку для наших файлов. Так как у меня там будут базы — я назвал свою паку mirror (Зеркало).

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_04.png

В завершении, в папку mirror в программе WinSCP скопируем, для проверки нашего будущего файлового сервера, допустим, музыкальный альбом.

Важно. Дабы избежать некоторых проблем в будущем, копируем названия папок и файлов только на латинице, кириллицу программа WinSCP и роутер не понимают!

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_05.png

Примечание. Не знаю, почему такая низкая скорость записи на USB Flash в программе WinSCP, но факт остается фактом, причем, загрузка процессора «Подопытного» роутера всего 27%…

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_06.png

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_07.png

При чтении с USB Flash в программе WinSCP скорость немного повыше, так там и загрузка микропроцессора роутера на 100% – но тоже не айс…

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_08.png

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_09.png

Установка сервера lighttpd

Устанавливать мы с вами будем легкий и быстрый сервер lighttpd, причем настройка будет в простейшем его виде.

Примечание. Так как я не гуру в устанавливаемых пакетах, я приведу пример того, что необходимо установить, что бы заработал наш файловый сервер — об излишестве пакетов судить Вам. Будет приведен пример списка пакетов для установки, с которыми у меня все прекрасно заработало, а так же настройка необходимых файлов конфигурации сервера. Все это взято с одного уважаемого сайта.

Итак, заходим «Система», «Программное обеспечение» и обновляем список пакетов (интернет на «Подопытном» роутере уже должен быть настроен и подключен).

Копируем и вставляем в окно «Загрузить и установить пакет» следующее строки по порядку, т.е. копируем и вставляем строку, а затем нажимаем «ОК» для установки, ждем завершения установки пакетов и так повторяем 3 раза для каждой строки:

lighttpd lighttpd-mod-cgi lighttpd-mod-access lighttpd-mod-redirect zoneinfo-core
zoneinfo-europe libsqlite3 php5-cgi php5-mod-pdo php5-mod-sqlite php5-mod-sqlite3
php5-mod-gd php5-mod-session php5-mod-json php5-mod-xml php5-mod-dom

Примечание. Можно было вставить и все содержимое строк сразу как будто это всего одна строка, но это уже Вам решать, как Вы будите устанавливать пакеты, по мне так проще построчно. Мало того, если что то при установке пакетов пойдет не так, то сразу станет видно, на каком этапе это произошло.

После установки первой строки увидим следующее содержимое

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_10.png

После установки второй строки и автоматического обновления экрана картина будет такая

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_12.png

Ну и после установки третьей строки пакетов и обновления экрана увидим это

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_12.png

Настройка файла конфигурации сервера lighttpd.conf

Сконфигурируем файл lighttpd.conf нашего файлового сервера – укажем необходимые настройки.
Файл lighttpd.conf находится по пути /etc/lighttpd/lighttpd.conf.
Открывать lighttpd.conf необходимо через программу WinSCP.

Примечание. Если программа WinSCP у Вас была открыта до установки пакетов сервера lighttpd, то ее необходимо закрыть и сделать новое подключение что бы в ней обновились папки.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_13.png

Итак, щелкаем по файлу lighttpd.conf 2 раза, перед нами откроется подобие блокнота в Windows.

Примечание. Раскомментируем – имеется ввиду, где надо, уберем впереди строки запрещающую выполнение скрипта решетку (будет выделено зеленым). А так же поправим текст необходимых строк.

Делаем необходимые настройки файла lighttpd.conf нашего простейшего файлового сервера по порядку сверху вниз (скриншоты будут сразу после описания части настроек):

1. Удалим решетку в строке server.modules = (
2. Добавим строку без решетки «mod_access»,
3. Удалим решетку в строке «mod_redirect»,
4. Удалим решетку в строке «mod_cgi»,
5. Удалим решетку перед закрывающей скобкой )

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_14.png

Должно получиться так, как на рисунке ниже.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_15.png

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

6. Меняем место расположения файлов сервера lighttpd с /www/ на /Server_Baz/www/. У Вас, конечно же, будет другой путь, куда Вы смонтировали внешний USB диск для файлов и создали папки для сервера. Ну, а замена адреса сервера необходима для того, что по первому адресу у нас работает веб-морда прошивки OpenWRT. Обратите внимание, путь к папке должен быть обязательно в кавычках.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_16.png

7. Включим логирование сервера убрав решетку перед строкой server.errorlog = «/var/log/lighttpd/error.log».

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_17.png

8. Добавим поддержку php на сервер, добавив в строку index-file.names = после запятой следующее выражение

«index.php»

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_18.png

9. Укажем порт, который будет слушать наш файловый сервер. Все дало в том, что стандартный 80 порт слушает сервер веб-морды нашего «Подопытного» роутера с прошивкой OpenWRT. Поэтому, тут 2 варианта, либо сменить стандартный порт веб интерфейса прошивки роутера, либо просто изменить порт нашего будущего файлового сервера – что мы и сделаем. На примере я выбрал порт 2221. Уберем решетку и впишем необходимый порт в строке server.port =.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_19.png
10. Включим листинг для всех каталогов убрав решетку перед строкой.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_20.png

11. Добавим веб-серверу поддержку php-cgi. Для этого перед строкой cgi.assign = уберем решетку и добавим после запятой следующее содержимое

«.php» => «/usr/bin/php-cgi»

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_21.png

12. После изменения этих строк сохраняем настройки файла lighttpd.conf нажав кнопку «Сохранить» и закрываем файл lighttpd.conf.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_22.png

Настройка файла конфигурации php.ini

Сконфигурируем файл php.ini нашего файлового сервера – укажем необходимые настройки.
Файл php.ini находится по пути /etc/php.ini.
Открывать php.ini необходимо через программу WinSCP.

1. Укажем путь к папке сервера, изменив содержимое строки doc_root = (строка находится примерно в середине всего текста файла php.ini). В моем случае это будет папка по пути /Server_Baz/www.

Повторюсь, путь к папке должен быть в «Кавычках».

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_23.png

2. Далее, чуть ниже по тексту файла php.ini после редактирования пути к серверу, раскомментируем строки, убрав точку с запятой перед строкой в следующих строках:

extension=gd.so
extension=mysql.so
extension=pdo.so
extension=session.so
extension=sqlite.so
extension=sqlite3.so

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_24.png

3. Сохраним настройки файла php.ini нашего файлового сервера нажав кнопку «Save» (Сохранить).

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_25.png
На этом, настройка нашего файлового сервера закончена.

Включим наш файловый сервер и проверим его работу

Заходим в OpenWRT во вкладку по пути «Система», «Загрузки» и щелкаем левой клавишей мышки в строке lighttpd по кнопке «Отключено».

001 07 26

Скрипт lighttpd включится.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_27.png

Сохраним настройки и перезагрузим «Подопытный» роутер любым способом.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_28.png

Итак, в браузере введем ip адрес роутера и укажем порт. У меня ip адрес роутера 192.168.0.150, а порт как Вы помните, я задал 2221. После перехода по ссылке 192.168.0.150:2221 мы увидим подключение к серверу.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_29.png

Нажмем каталог DJ Vint и выберем любую песню. В появившемся окне нажмем открыть.

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_30.png

Ву-а-ля все работает – песня поет…

b_200_200_16777215_00_images_kartinki_dlia_saita_001_001_07_001_07_31.png

Для проверки нашего сервера через сеть интернет воспользуемся услугой сервиса NO-IP, но об этом я расскажу в следующей статье…

Продолжение статьи:

Создаем свой постоянный ip адрес

По теме
Устанавливаем Samba

Прошивка роутера альтернативной прошивкой OpenWRT и установка HTTP файлового сервера на примере роутера TP-Link TL-WR1043ND Начало статьи: Создаем свой постоянный Read more

Создаем свой постоянный ip адрес

Прошивка роутера альтернативной прошивкой OpenWRT и установка HTTP файлового сервера на примере роутера TP-Link TL-WR1043ND Начало статьи: Устанавливаем файловый сервер Read more

Делаем загрузку OpenWRT с внешнего USB носителя, подключаем раздел для данных и подкачки Swap

Прошивка роутера альтернативной прошивкой OpenWRT и установка HTTP файлового сервера на примере роутера TP-Link TL-WR1043ND Начало статьи: Подготавливаем внешний USB Read more

Подготавливаем внешний USB носитель

Прошивка роутера альтернативной прошивкой OpenWRT и установка HTTP файлового сервера на примере роутера TP-Link TL-WR1043ND Начало статьи: Первоначальная настройка прошивки Read more

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *