Настройка роутера WL500g Premium
Введение
[править]Все, что написано здесь, подходит и к другим моделям роутеров фирмы ASUS, таким, как WL300g/WL500g/WL500g Deluxe/WL500b/WL500bv2/WLHDD/WL550gE/WL500W
В корпусе Asus WL500G сосредоточены практически все функции, которые могут пригодиться при развертывании небольшой компьютерной сети, вплоть до организации на базе WL-500g Premium центра сетевых закачек, принт-сервера или публичного ftp-сервера. Но самое главное это то что этот роутер работает под управлением операционной системы Linux и по сути является небольшим компьютером, что позволяет практически неограничено (ограничения только в возможностях железа) расширять выполняемые им функции.
Технические характеристики
[править]Более подробное техническое описание можно посмотреть по адресу http://www.overclockers.ru/lab/23627.shtml
Изменение прошивки на альтернативную
[править]Обоснование необходимости смены прошивки
[править]Обновление прошивки роутера на самую последнюю неофициальную, которая намного лучше, нужно по причинам:
- выпускаются пользователем этого роутера, который знает, что нужно, а не программистами которые далеки от народа как декабристы (азиаты и европейцы часто имеют разные предпочтения)
- есть оперативная поддержка - создатель прошивки поддерживает обратную связь, программисты обычно не заинтересованы в поддержке как только проект сдан и обновления идут редко (когда производитель чипа хочет его продвинуть)
- убраны ограничения которые вставляет в продукты маркетинговый отдел
Можно перешивать с любой версии официальной прошивки и обратно - ограничений нет. Лучше перешить роутер в любом случае - пока он на гарантии проверить, что флэш не битая.
На странице Upgrade пишется имя Вашего устройства, смотрите внимательно! Не пытайтесь прошить чужую прошивку!
Взять самые последние версии можно отсюда [1]
Всегда берите самую последнюю и не перепутайте с прошивкой от других устройств.
Для обычного WL500g (c LPT и USB 1.1) прошивки имеют имя wl500g-...
Для WL500b (c LPT и USB 1.1) прошивки имеют имя wl500b-...
Для обычного WL500g v2 (c WiFi Ralink) (c LPT и USB 1.1) прошивки имеют имя wl500bv2-...
Для WL-HDD: wlhdd-
Для WL500g Deluxe (wl500gd/wl500gx): wl500gx-...
Для WL550g Encore: wl550gE-...
Для WL500g Premium: wl500gp-...
Обратите внимание, что wl520g на азиатских рынках продаётся как WL500g-X, что не тоже самое, что wl500gx.
Сама прошивка представляет собой файл с расширением .trx, поэтому если Вы скачали прошивку в виде zip файла, то предварительно распакуйте его.
До перешивки рекомендуется проверить, что роутер функционирует нормально - все порты, лампочки и USB разъемы работают. Под ножкой роутера есть пломба из тонкого пластика, поэтому перед тем как влезать внутрь роутера, убедитесь, что он работает и все пломбы целы.
В будущем, когда будете обновлять неофициальные прошивки на более новые, Вам нужно будет сохранить настройки. В веб-интерфейсе зайдите в System Setup-> Flashfs Management->HERE. Они сохранятся в виде файла WL500g.Deluxe.tar.gz.
После обновления прошивки на новую нужно будет этот файл залить (кнопка Upload) из того же меню.
Есть еще настройки веб-интерфейса System Setup->Setting Management->HERE, но они не сбрасываются при обновлении прошивок. Их можно сохранить разве что на всякий случай.
Дополнительные возможности, которые появляются после перепрошивки
[править]- Доступ к роутеру по telnet. Возможность настроить доступ по SSH
- Поддержка ext3 (upd: Имеется в стандартной прошивке)
- При использовании дополнительного репозитария можно поставить много самых разных программ.
- Можно одновременно работать в интернете по VPN и локальной сети.
- Со стандартной прошивкой у многих провайдеров просто не удается подключиться к интернету.
- Существует возможность выполнения пользовательских программ в определённые моменты времени. Такие программы можно написать на языке встроенного shell (ash), но будет работать и ELF исполняемый код (например, откомпилированная Си программа).
- Поддерживается программное изменение nvram (например, есть программная возможность сменить mac адрес - чего нельзя сделать со стандартной прошивкой) (upd: Смена MAC-адреса доступна и в стандартной прошивке)
Первый метод перепрошивки
[править]- Отключите сетевой шнур от WAN, чтобы возможные сетевые атаки не повлияли на процесс, выньте из USB портов шнуры всех устройств.
- Перегрузите роутер. Это можно сделать командой reboot через телнет или веб-оболочку (При использовании стандартной прошивки для этого необходимо в браузере открыть страницу Main_AdmStatus_Content.asp, вбить Вашу команду и нажать на кнопку Refresh так же можно попробовать нажать просто Enter, но это не работает в некоторых прошивках. В родных прошивках Вы получите обратно содержимое стандартного вывода, но сообщений об ошибках Вы не получите. В альтернативной прошивке все это оставлено, но дополнительно добавлен редирект и для ошибок). Несколько секунд после перегрузки или включения питания НЕЛЬЗЯ выключать питание роутера - в первую секунду после подачи питания он пишет в nvram. По этой же причине вставлять шнур питания нужно быстро и чётко, а не втыкая-вытыкая его. Если nvram будет поврежден, то роутер может не загрузиться. Также нельзя выключать питание роутера, если вы дали команды на запись nvram явно: заливаете firmware, или дали команду "nvram commit".
- Зайдите на страницу администрирования Sytem Setup -> Firmware Upgrade. Нажмите кнопку Browse , выберите файл с прошивкой (имеет расширение trx). Нажмите кнопу Upload. При этом не ошибитесь страничкой, поскольку есть еще страница загрузки файла настроек. Через какое-то время роутер перегрузится - обычно через 2 минуты. Если в момент перешивки выключилось питание или перешивка не удалась - ничего страшного - прошивку можно залить программой от ASUS rescuer.exe даже если загрузился только бутлоадер.
- После перешивки роутер перегрузится. Если вы меняете версии прошивки, например, 1.8 на 1.9, то Вам нужно сбросить в настройки по умолчанию нажав на его корпусе кнопку RESET и удерживая ее 10 секунд. Если переходите внутри версии, например с 1.9.6 на 1.9.7, то это не нужно. Кнопку RESET надо жать ТОЛЬКО после того как роутер полностью загрузится – для этого надо подождать хотя бы минуту после перезагрузки.
Второй метод перепрошивки (с использованием утилиты восстановления ASUS-a)
[править]Его отличия от первого метода
[править]- Прошивка через веб очищает область памяти с настройками, если в этот момент выключить роутер или перегрузить, то будет проблема. Утилита восстановления шьёт только прошивку и делает это в 3 раза быстрее, поэтому получить проблемы если вдруг во время перешивки выключится питание менее вероятно.
- Для работы утилиты восстановления нужно назначить компьютеру с которого перешивать только один адрес по умолчанию 192.168.1.222 и нажимать кнопку RESET до включения питания - неудобство, если руки дрожат или адрес менять лень.
Перепрошивка загрузчика
[править]Внимание! Обязательно проверьте, нужно ли Вам эт6о |
Бутлоадер (загрузчик, CFE) – это программа которая грузит прошивку и при смене прошивок не меняется. Новая версия загрузчика выпускалась ТОЛЬКО для wl500g deluxe. Если в момент перешивки бутлоадера отключится питание, устройство можно нести в ремонт. Сейчас роутеры поставляются с новым загрузчиком и маловероятно, что вы купите со старым загрузчиком. Устройства со старым загрузчиком в wl500g deluxe имели проблему: распознавали только 16Мб из 32Мб установленной памяти и при перегрузке роутер несколько секунд работал как свитч. Ссылка на инструкцию по перешивке бутлоадера [2] вкратце:
- Проверить, что нужно перешивать. Можно зайти telnetом на роутер - имя admin пароль - какой установлен в веб-оболочке. Дать команду
nvram get hardware_version должен выдать WL500gx-01-01-01-33 - надо перешивать, память не распознается WL500gx-01-03-01-33 - можно перешить WL500gd-01-04-01-50 - перешивать не нужно, бутлоадер новый Если нужно перешивать, то серийный номер роутера должен начинаться на 49, 4A, 4B, 4C, 51, 52, 53 - на них есть проблемы и перешивка проверялась.
- скачайте программы для обновления с этого адреса [3]
- подсоедините роутер только к компьютеру, на компьютере запретить все сетевые интерфейсы и оставить только один IP-адрес 192.168.1.2/255.255.255.0 Убедиться, что роутер виден с компьютера.
- включите питание роутера, нажав кнопку на роутере и удерживая ее в нажатом состоянии . Когда лампочка на роутере начнет мигать, тогда можно отпустить кнопку. Роутер останется в режиме восстановления.
- запустите программу burnboot.exe и нажмите единственную кнопку в окошке этой программы, появится окно с выбором файла - выберите pmon.bin и нажмите Save
- кнопка в окне поменяется, нажмите на нее. В этот момент начнется перешивка лоадера, питание не выключать. Примерно через 7 секунд роутер пойдет на перезагрузку и лампочка на нем перестанет мигать. Программа выдаст сообщение Pass. После этого закройте окно программы.
- Бутлоадер перешит, но MAC-адрес неверен, его надо поменять. Нужно снова выключить питание роутера, потом нажмите кнопку на роутере и удерживая ее в нажатом состоянии включите питание роутера. Лампочка на роутере начнет мигать, тогда можно отпустить кнопку. Роутер останется в режиме восстановления.
- Запустите программу burnmac.exe В поле ввода вставьте MAC адрес, который написан на корпусе роутера. Причем вводить нужно без двоеточий. Например, 0011D8A94455 вместо 00:11:D8:A9:44:55. Может состоять только из чисел и английских букв ABCDEF, буквы "O" быть не может, только нуль. Если ввести неверный адрес, например все нули, то придется либо возиться с консольным кабелем, либо идти в сервис.
- Нажмите в окне программы кнопу OK. Надпись на кнопке поменяется на Writing. После успешного обновления появится сообщение Pass и роутер перегрузится. Закройте окно программы.
- Зайдите на страницу администрировнаия, чтобы убедиться, что роутер успешно загрузился. После этого нажмите на роутере кнопку Reset и удерживайте ее пока лампочка не начнет мигать - примерно 10 секунд. Роутер будет сброшен в настройки по умолчанию -все это нужно, чтобы избежать глюков.
Помните, что нажатие кнопки RESET на роутере всего лишь дает сигнал прошивке сбросить настройки и не более. Если прошивка не загрузилась нормально (кривая, не к этой модели), то кнопка RESET ничего не делает. Еще - если нажать ее до включения питания, она дает сигнал бутлоадеру не грузить прошивку, а перейти в rescue режим
Настройка роутера
[править]Есть два варианта настройки роутера – с использование веб интерфейса и с использованием telnet-a (потом можно настроить доступ по ssh). Ряд настроек можно сделать только через telnet (ssh)
Получение доступа к роутеру с использованием веб-интерфейса
[править]Для получения доступа введите следующий адрес в ваш интернет браузер: http://192.168.1.1
По умолчанию имя пользователя и пароль: admin.
После входа вы увидите домашнюю страницу маршрутизатора.
Для начала рекомендуется сразу же сменить имя пользователя и пароль. Для этого зайдите в пункт System Setup . Там есть два пункта: пункт Change Name - в нем Вы должны дважды ввести свое новое имя и нажать кнопку save. пункт Change Password – аналогично два раза вводите новый пароль и нажимаете кнопку save. Перезагрузите роутер.
Получение доступа к роутеру через Telnet
[править]При работе в операционных системах семейства Windows вы можете поставить программу PuTTY
Или в cmd.exe (для компьютера с операционной системой Mac OS X нужно вызвать Terminal) (для компьютера с операционной системой Windows Vista нужно установить telnet http://windowshelp.microsoft.com/Windows/ru-RU/help/81b6d4b7-905e-4d70-8379-7934913fedb01049.mspx) набрать:
telnet 192.168.1.1
либо
telnet 192.168.1.1 23
где 192.168.1.1 - адрес роутера, 23 - порт telnet (по-умолчанию)
Начальные настройки
[править]Для корректной работы с русским языком в версиях до 1.9.2.7-8.8 введите:
nvram set usb_vfat_options=codepage=866,iocharset=cp1251 nvram set usb_ntfs_options=iocharset=cp1251 nvram set usb_smbcpage_x=866 nvram set usb_smbcset_x=1251 nvram commit
Для отключения STP (чтобы не засорять сеть лишними данными) введите:
nvram set lan_stp=0 nvram commit
Создание автоматически запускаемых при загрузке файлов (последующие скрипты добавляют строчки в них):
mkdir -p /usr/local/sbin/ echo "#!/bin/sh" > /usr/local/sbin/post-boot echo "#!/bin/sh" > /usr/local/sbin/post-mount echo "#!/bin/sh" > /usr/local/sbin/post-firewall echo "#!/bin/sh" > /usr/local/sbin/pre-shutdown echo "#!/bin/sh" > /usr/local/sbin/pre-boot chmod +x /usr/local/sbin/p* flashfs save && flashfs commit && flashfs enable
Автоматический переход на зимнее/летнее время
[править]По умолчанию железяка не хочет понимать наших проблем с переводом часов на летнее/зимнее время. Это проблема uclibc, там таймзоны кривые. Что же, поправляем.
[ ! -e /usr/local/sbin/pre-boot ] && echo "#!/bin/sh" >> /usr/local/sbin/pre-boot && chmod +x /usr/local/sbin/pre-boot echo 'TZ="MST-3MDT,M3.5.0/2,M10.5.0/3" echo "$TZ" > /etc/TZ nvram set time_zone="$TZ"' >> /usr/local/sbin/pre-boot flashfs save && flashfs commit && flashfs enable
Не забудьте подставить правильные параметры тайм-зоны. Значение можно взять из списка ниже:
Ashgabat/Ashkhabad TMT-5 Baku AZT-4AZST,M3.5.0/4,M10.5.0/5 Bishkek KGT-6 Irkutsk IRKT-8IRKST,M3.5.0,M10.5.0/3 Kaliningrad EET-2EEST,M3.5.0,M10.5.0/3 Kamchatka PETT-12PETST,M3.5.0,M10.5.0/3 Krasnoyarsk KRAT-7KRAST,M3.5.0,M10.5.0/3 Kyiv EET-2EEST,M3.5.0/3,M10.5.0/4 Magadan MAGT-11MAGST,M3.5.0,M10.5.0/3 Minsk EET-2EEST,M3.5.0,M10.5.0/3 EET-3EEST (с 2011 года часы больше не переводят, FET - роутер не знает) Moscow MSK-3MSD,M3.5.0,M10.5.0/3 Novosibirsk NOVT-6NOVST,M3.5.0,M10.5.0/3 Omsk OMST-6OMSST,M3.5.0,M10.5.0/3 Riga EET-2EEST,M3.5.0/3,M10.5.0/4 Sakhalin SAKT-10SAKST,M3.5.0,M10.5.0/3 Samarkand UZT-5 St.Petersburg MST-3MDT,M3.5.0/2,M10.5.0/3 Tallinn EET-2EEST-3,M3.5.0/03:00:00,M10.5.0/04:00:00 Tashkent UZT-5 Tbilisi GET-4 Tel_Aviv IDDT Ulan_Bator ULAT-8 Vladivostok VLAT-10VLAST,M3.5.0,M10.5.0/3 Yakutsk YAKT-9YAKST,M3.5.0,M10.5.0/3 Yekaterinburg YEKT-5YEKST,M3.5.0,M10.5.0/3 Yerevan AMT-4AMST,M3.5.0,M10.5.0/3
Настройка работы с флеш-памятью и переносным жёстким диском
[править]Форматирование
[править]Сначала смотрим что и куда примонтировано с помощью mount
:
/dev/root on / type squashfs (ro1) none on /dev type devfs (rw) proc on /proc type proc (rw) ramfs on /tmp type ramfs (rw) usbfs on /proc/bus/usb type usbfs (rw) /dev/discs/disc0/part1 on /tmp/mnt/disc0_1 type xxx (rw,noatime)
Демонтируем:
umount /tmp/mnt/disc0_1
Затем форматируем:
mke2fs -j /dev/discs/disc0/part1
Монтируем, для нормальной работы инсталлируемых приложений требуется монтирование к /opt:
mount -o noatime,rw /dev/discs/disc0/part1 /opt
Обслуживание
[править]Проверка файловой системы:
e2fsck /dev/discs/disc0/part1
Если роутер перестает отвечать, скорее всего повреждена файловая система.
проверка диска: посмотреть что смонтировано командой mount, демонтировать диск, если не демонтируется убить процессы stupid-ftp smbd nmbd и дать команду
e2fsck -f -y -v /dev/discs/disc0/part1
-f заставит проверить структуру файловой системы диска
-y ответит на все вопросы утвердительно
-v выдаст больше информации
Чтобы не выдавалось сообщений, что нужно проверить раздел ext3 можно выполнив tune2fs ( нужно установить e2fsprogs ):
tune2fs -c 0 -i 0 /dev/discs/disc0/part1
раздел перед этим должен быть смонтирован.
Настройка файла подкачки
[править]#инициализация dd if=/dev/zero of=/opt/swapfile bs=1024 count=65536 #создаем 64Mb файл mkswap /opt/swapfile #включаем своп echo "swapon /opt/swapfile" >> /usr/local/sbin/post-mount swapon /opt/swapfile
Настройка беспроводной сети
[править]ПРОИЗВОДИТСЯ В МЕНЮ WIRELESS В нем настраивается Wi-Fi. Если вы его использовать не будете рекомендую сразу же отключить его. Для этого надо войти в пункты Status & Log --- Wireless – и нажать кнопку Disable. Если потом захочется его включить нажмите кнопку Enable.
Все настройки вводятся в веб-интерфейсе. Интерфейс прост. Помните о нескольких моментах:
- Operation Mode обычно Home Gateway - будет работать как NAT.
- Wireless->Interface: выбрать канал подальше от тех, которые слышны поблизости. Помните, что спектр сигнала Wi-Fi занимает несколько соседних каналов. Для минимизации интерференции следует использовать 1, 6 или 11 канал. Диапазон каналов с 4 по 8 сильно зашумлён, так-как многие Wi-Fi устройства используют канал 6 "по умолчанию".
- Для шифрования лучший выбор - WPA-PSK и TKIP, шифрование None - ввести только WPA Pre-Shared Key, остальные поля по умолчанию (если ставить TKIP+AES или еще WEP, то карта авторизуется но трафик не пройдет). *Пароль можно вводить ASCII или HEX - преобразование стандартизовано. Второй вариант - взломоопасный Shared key+WEP128bit при этом вводить нужно WEP Key 1 в 16-ричном виде, можно еще и Passphrase так как у ASUSа нестандартное преобразование (преобразование общепринято, хотя нестандартизовано).
- Wireless->Access Control можно добавить MAC-адреса тех беспроводных карт которым позволено подключаться. В Advanced поставить Hide SSID=Yes, Set AP Isolated=No
- IP Config->Route: если домашняя сеть сегментирована, можно ввести маршруты, но если маршрутов много или есть особенности (default gateway типа ADSL-модема во внутренней сети: домашняя сеть для файлов, модем для интернета), то лучше в этом окне не вводить, а ввести в файле post-boot (о нем ниже).
- IP Config->Miscellaneous: Enable UPnP=Yes, NTP Server =pool.ntp.org, NTP synchronization interval (hours)=24
- USB Application->FTP Server: Enable FTP Server=Yes, Allow Anonymous User to Login=No (иначе дыра в безопасности - по умолчанию ftp доступен из WAN), Allow Super User to Login=Yes, Login Timeout in Seconds=120 и добавить пользователя с именем anonymous паролем * (значок звездочка) Rights=read only. Если отключить ftp, то автомонтирования дисков не будет.
- Enable Samba Demo mode=Yes, Enable hidden read-write share=Yes (если только не выставлять порт самбы вовне, по умолчанию он закрыт)
- НЕ отключайте базовый firewall (Internet Firewall->Basic config).
После введения всех настроек на любой странице нажать Finish - роутер запишет в nvram параметры и перегрузится.
Если всё верно настроили, а беспроводной клиент не цепляется к роутеру, то его надо выключить и включить из розетки. Из-за того, что при изменении настроек беспроводной сети (например, список разрешенных MAC адресов) беспроводная часть без выключения питания не применяет настройки. Помните, что выключать питание роутера надо когда он полностью загрузится.
Иногда бывает глюк (это для продвинутых пользователей со специальными требованиями к маршрутизации): веб-интерфейс криво ставит маршруты, поэтому можно посмотерть их через telnet командой route -n и убедиться, что все маршруты верны. Если не верно, то маршруты можно выставить в файле post-boot.
Информация может пригодиться владельцам роутеров Asus с загрузчиком,
не настроенным на европейский рынок (т.е. доступны только 11 каналов),
либо отъезжающим в Японию (доступны 14 каналов, а не 13, как в Европе).
Итак, чтобы разрешить все 14 каналов (All World), необходимо выполнить либо
в telnet, либо через скрытую web-страницу (System Setup -> System Command) :
http://my.router/Main_AdmStatus_Content.asp
nvram set regulation_domain=0X00ALL nvram commit
А для того, чтобы использовать европейские нормы (13 каналов) :
nvram set regulation_domain=0X30DE nvram commit
После этого устройство нужно перезагрузить.
Чтобы посмотреть, какой регион стоит сейчас :
nvram get regulation_domain
Внимание: Использование 14-го канала в России крайне не
приветствуется "Государственным радиочастотным центром",
поэтому Вы берёте на себя полную ответственность за это. © Oleg
http://wl500g.info/showpost.php?p=17721&postcount=10&langid=3
Частоты каналов Wi-Fi (GHz)
- 1 - 2,4125
- 2 - 2,4175
- 3 - 2,4225
- 4 - 2,4275
- 5 - 2,4325
- 6 - 2,4375
- 7 - 2,4425
- 8 - 2,4475
- 9 - 2,4525
- 10 - 2,4575
- 11 - 2,4625
- 12 - 2,4675
- 13 - 2,4725
- 14 - 2,4700
Совет: Нужно выбрать канал подальше от тех, которые слышны вблизи.
Помните, что спектр сигнала Wi-Fi занимает несколько соседних каналов.
Для минимизации интерференции - следует использовать 1, 6 или 11 канал.
Диапазон каналов с 4 по 8 сильно зашумлён, т.к. многие Wi-Fi устройства
используют канал 6 "по умолчанию", если стоит выбор канала в "Auto". © @
http://forum.netbynet.ru/index.php?showtopic=95021&view=findpost&p=1131844
Настройка ПО
[править]Установка
[править]Для устанавливаемых программ нужен раздел ext3 (он желателен из-за поддержки прав доступа к файлам и возможности создания симлинков.).
Внимание! Теоретически можно пытаться использовать FAT --- но это крайне не рекомендуется. Не надейтесь, что удастся использовать NTFS --- она поддерживается в режиме только для чтения. |
- Отключите ftp server (usb application -> ftp server -> enable ftp server = no).
- перезагрузить роутер (finish, save&restart)
- заходим на роутер телнетом
Флешка должна быть примонтирована в /opt ( и желательно отформатирована в ext3 как указано выше ), если этого еще не сделали можно сделать так:
mkdir /tmp/mnt/disc0_1/opt mount --obind /tmp/mnt/disc0_1/opt /opt #смонтирует имеющуюся поддиректорию с флешкой в /opt (/tmp/harddisk/opt в старых моделях роутера)
Введите:
ipkg.sh update ipkg.sh install ipkg-opt ipkg update
Теперь можно устанавливать программы. Установка простая:
ipkg install имя_сборки
Чтобы посмотреть весь список доступных програм введите:
ipkg list
Список установленных программ:
ipkg list_installed
Если установка пакетов повредит предыдущие, можно переустановить поврежденный пакет командой
ipkg install -force-reinstall имя_сборки
Установка SSH-сервера
[править]Если нужно, то можно установить SSH-сервер. Он полезен для доступа к роутеру не из дома, дома проще пользоваться телнетом. Зайдите при помощи telnet-а на роутер (описано выше) и введите команды:
mkdir -p /usr/local/etc/dropbear dropbearkey -t dss -f /usr/local/etc/dropbear/dropbear_dss_host_key dropbearkey -t rsa -f /usr/local/etc/dropbear/dropbear_rsa_host_key mkdir -p /usr/local/sbin/ echo "#!/bin/sh" >> /usr/local/sbin/post-boot chmod +x /usr/local/sbin/post-boot echo "dropbear" >> /usr/local/sbin/post-boot dropbear flashfs save && flashfs commit && flashfs enable
Теперь можно будет заходить по SSH с клиентов типа putty (в параметрах putty Windows->Translation можно выставить кодировку Win1251)
Настройка SAMBA
[править]Настройка рутера как Workgroup Master
[править]Для начала отключаем через вэб-интерфейс поддержку samba, ибо подымать ее будем ручками. Затем настраиваем конфигурационный файл:
echo \ "[global] local master = yes domain master = no preferred master = yes interfaces = br0 bind interfaces only = yes workgroup = workgroup server string = asus guest account = nobody security = user browseable = yes dns proxy = no guest only = no guest ok = yes log level = 1 max log size = 100 encrypt passwords = yes preserve case = yes short preserve case = yes client code page = 866 character set = 1251 wins support = yes time server = yes os level = 255 hosts allow = 192.168.1. [share$] path = / comment = share guest ok = no writable = yes force user = admin browseable = no valid users = admin " > /usr/local/etc/smb.conf echo ln -s /usr/local/etc/smb.conf /etc/smb.conf >> /usr/local/sbin/post-boot ln -s /usr/local/etc/smb.conf /etc/smb.conf echo ln -s /usr/local/etc/smbpasswd /etc/smbpasswd >> /usr/local/sbin/post-boot ln -s /usr/local/etc/smbpasswd /etc/smbpasswd #автозагрузка echo nmbd -D -s /usr/local/etc/smb.conf >> /usr/local/sbin/post-boot echo smbd -D -s /usr/local/etc/smb.conf >> /usr/local/sbin/post-boot chmod +x /usr/local/sbin/post-boot #сохраняем flashfs save && flashfs commit && flashfs enable && reboot
Это позволит корректно отображать русские символы, позволит обращаться компам из подсети 192.168.1.0 и создаст скрытый каталог share$ - в котором будут видны все файлы на рутере.
Настройка роутера как Domain Controller
[править]Настройка пользователей
[править]Добавлять можно только тех юзверей, которые есть в passwd. Добавляем admin:
smbpasswd -a admin
Добавляем нового пользователя:
adduser -h /opt -s /sbin/nologin -G root -H new_user smbpasswd -a new_user
Заменяем стандартный syslogd на syslog-ng
[править]первым делом устанавливаем syslog-ng
ipkg update ipkg install syslog-ng
после установки заменяем или исправляем файл запуска /opt/etc/init.d/S01syslog-ng на следущее:
#!/bin/sh # # Startup script for syslog-ng # # Stop syslogd if running if [ -n "`pidof syslogd`" ]; then killall syslogd 2>/dev/null sleep 1 fi if [ -n "`pidof klogd`" ]; then killall klogd 2>/dev/null sleep 1 # copy content of original syslogd to new syslog. cat /tmp/syslog.log >> /opt/var/log/syslog-ng.log # remove old syslog.log rm /tmp/syslog.log ln -s /opt/var/log/syslog-ng.log /tmp/syslog.log fi # Stop itself if running if [ -n "`pidof syslog-ng`" ]; then killall syslog-ng 2>/dev/null sleep 2 fi /opt/sbin/syslog-ng
скрипт при запуске убивает стандартный логгер, перекидывает лог на внешний носитель. созданный симлинк позволяет видеть лог через веб
заменяем файл конфигурации /opt/etc/syslog-ng/syslog-ng.conf на следующее:
################################################################################ # Syslog-ng configuration # /opt/etc/syslog-ng/syslog-ng.conf # ############################################################################### # tiwag's active filters and logs # options { long_hostnames(off); sync(0); }; source src { file("/proc/kmsg");unix-stream("/dev/log"); internal(); }; source net { udp(); }; destination mysyslog { file("/opt/var/log/syslog-ng.log" owner("root") group("root") perm(0640) template("$HOUR:$MIN:$SEC $DAY-$MONTH-$YEAR ($PRIORITY|$FACILITY|$PROGRAM) $MESSAGE\n") ); }; destination authwarnlog { file("/opt/var/log/authwarn.log" owner("root") group("root") perm(0640) template("$HOUR:$MIN:$SEC $DAY-$MONTH-$YEAR ($PRIORITY|$FACILITY|$PROGRAM) $MESSAGE\n") ); }; destination vsftpdlog { file("/opt/var/log/vsftpd.log" template("$HOUR:$MIN:$SEC $DAY-$MONTH-$YEAR ($PRIORITY|$FACILITY|$PROGRAM) $MESSAGE\n") ); }; destination dropbearlog { file("/opt/var/log/dropbear.log" template("$HOUR:$MIN:$SEC $DAY-$MONTH-$YEAR ($PRIORITY|$FACILITY|$PROGRAM) $MESSAGE\n") ); }; destination cronlog { file("/opt/var/log/cron.log" template("$HOUR:$MIN:$SEC $DAY-$MONTH-$YEAR ($PRIORITY|$FACILITY|$PROGRAM) $MESSAGE\n") ); }; filter f_ni_syslog-ng { not ( level(info) and program(syslog-ng) ); }; filter f_ni_thttpd { not ( level(info) and program(thttpd) ); }; filter f_ni_vsftpd { not ( level(info) and program(vsftpd) ); }; filter f_ni_cron { not ( (level(notice) and program(cron) ) or ( level(info) and facility(cron) ) ); }; filter f_vsftpd { ( program(vsftpd) ); }; filter f_dropbear { ( program(dropbear) ); }; filter f_cron { ( level(notice) and program(cron) ); }; filter f_authwarn { ( ( ( level(info) or level(warning) ) and program(dropbear) ) or ( ( level(warning) ) and program(vsftpd) ) ); }; ############################################################################### # active logs # log { source(src); filter(f_ni_vsftpd); filter(f_ni_thttpd); filter(f_ni_syslog-ng); filter(f_ni_cron); destination(mysyslog); }; log { source(src); filter(f_vsftpd); destination(vsftpdlog); }; log { source(src); filter(f_dropbear); destination(dropbearlog); }; log { source(src); filter(f_authwarn); destination(authwarnlog); }; log { source(src); filter(f_cron); destination(cronlog); };
после перезагрузок лог сохраняется.
Соответственно системный лог находится в /opt/var/log/syslog-ng.log,
ошибки авторизации /opt/var/log/authwarn.log
подключения по ftp /opt/var/log/vsftpd.log
подключения по ssh /opt/var/log/dropbear.log
логи cronа /opt/var/log/cron.log
для приведения логов CRONа в порядок, заменяем скрипт /opt/bin/run-parts на следущее:
#!/bin/sh # # runparts.sh by macsat@macsat.com # intended for use with cron # # based on rc.unslung by unslung guys :-) # if [ -z "$1" ] then echo "Usage : $0 " fi RUNDIR=$1"/*" for i in $RUNDIR ;do # Ignore dangling symlinks (if any). [ ! -f "$i" ] && continue case "$i" in *.sh) # Source shell script for speed. ( logger -t "$i" "running" trap - INT QUIT TSTP set start . $i ) ;; *) # No sh extension, so fork subprocess. logger -t "$i" "running" $i start ;; esac done
Для того чтоб логи сильно не раздувались, написал скрипт для автоматического архивирования любых логов, находящихся в папке логов. Скрипт помещаем в папку ежечасного запуска CRONa /opt/etc/cron.hourly/archivelog.sh
#!/bin/sh log_dir="/opt/var/log" archive_dir="/opt/var/log/archive" log_max_size=100 #Kb sleep 1 for i in $log_dir/* ;do # Ignore dangling symlinks (if any). [ ! -f "$i" ] && continue if (expr $(du $i | sed 's/\/.*//') \> $log_max_size > /dev/null 2>&1) then { archive_file=`echo "0" $i | sed 's:^.*/\(.*\):\1:g'` archive_file=`date +%Y%m%d%H-$archive_file` archive_file="$archive_dir/$archive_file" cp "$i" "$archive_file" printf "Contents of this file are placed in archive $archive_file.gz\n" > $i gzip "$archive_file" sleep 1 prg=`echo "0" $0 | sed 's:^.*/\(.*\):\1:g'` logger -t "$prg" "$i compressed to $archive_file.gz" } fi done
скрипт проверяет директорию с логами, если находит лог размером более указанного, то архивирует его в указанную папку.
ЗЫ: я у себя перенастроил все программы, чтоб логи писались в папку /opt/var/log/
Не забываем сделать скрипты исполняемыми:
chmod +x /opt/etc/init.d/S01syslog-ng chmod +x /opt/etc/cron.hourly/archivelog.sh
и создать директорию для архивов
mkdir -p /opt/var/log/archive/
ну и чтоб все это начало работать:
reboot
arpwatch
[править]- Установить arpwatch, esmptd и syslog-ng и настроить их по минимуму.
- Создать для arpwatch'a файл с базой /opt/arpwatch/arp.dat
- Добавить arpwatch -N -i vlan1 в автозагрузку
- Создать обработчик логов /opt/bin/syslog-ng-arpwatch, будет писать письма:
#!/bin/sh sign='\n\n--\nRegards,\nAsus WL500gp' sender='Asus WL500gp<mail@from.ru>' subj='Probable ARP Spoofing' rcpt='from@from.ru' while read line do mac="$(echo $line | grep 'changed ethernet address' | awk '{print $10}')" [ -z "$mac" ] && continue (echo -e "From: $sender\nTo: $rcpt \nSubject: $subj \n\n$line $sign" | sendmail $rcpt) done
- Добавить в конфиг syslog-ng:
destination dp_arpspoofing { program("/opt/bin/syslog-ng-arpwatch"); file("/opt/var/log/arpspoof.log"); }; destination df_arpwatch { file("/opt/var/log/arpwatch.log"); }; filter f_arpwatch { program("arpwatch"); }; filter f_arpspoofing { program("arpwatch") and match ("(changed ethernet address|mismatch) нужный-для-слежки-ip"); }; log { source(src); filter (f_arpwatch); destination(df_arpwatch); }; log { source(src); filter (f_arpspoofing); destination(dp_arpspoofing); };
Работа с NVRAM
[править]Учетные записи HTTP
[править]Узнаем текущие login/password:
nvram get http_username nvram get http_passwd
Меняем на новые:
nvram set http_username=newname nvram set http_passwd=newpassword
Руссификация самбы в версиях до 1.9.2.7-8.8
[править]nvram set usb_vfat_options=codepage=866,iocharset=cp1251 nvram set usb_ntfs_options=iocharset=cp1251 nvram set usb_smbcpage_x=866 nvram set usb_smbcset_x=1251
Сброс настроек UPnP
[править]UPnP не подчищает за собой port mappings и оставляет записи в nvram. Посмотреть эти записи можно так:
nvram show | grep "forward_port" forward_port0=9999-9999>192.168.1.1:9999-9999,udp,on,Azureus UPnP 9999 UDP forward_port1=9999-9999>192.168.1.1:9999-9999,tcp,on,Azureus UPnP 9999 TCP forward_port2=49001-49001>192.168.1.1:49001-49001,udp,on,Azureus UPnP 49001 UDP forward_port3=3000-3000>192.168.1.1:3000-3000,tcp,on,EiskaltDC++ 3000 (TCP) forward_port4=3031-3031>192.168.1.1:3031-3031,tcp,on,EiskaltDC++ 3031 (TCP) forward_port5=3000-3000>192.168.1.1:3000-3000,udp,on,EiskaltDC++ 3000 (UDP)
После перезагрузки эти записи попадают в iptables и могут портить настройки NAT.
iptables -t nat -L -nv
Удалить записи из nvram можно командой "nvram unset XXX"
Очистить все записи можно скриптом:
for a in `nvram show | grep "forward_port" | sed "s/=.*//"` ; do nvram unset $a ; done
Настройка нескольких WAN
[править]Создание
[править]Нужно тем, у кого несколько провайдеров или если хочется разделить порты и раздавать интернет независимо. В роутере используется свитч с поддержкой vlan.
Порты нумеруются USB-1-2-3-4-0, где 0-WAN.
Чтобы сделать например 1 порт независимым нужно дать команды:
robocfg vlan 2 ports "1 5t" vlan 0 ports "2 3 4 5t" vconfig add eth0 2
После этого появится полноценный интерфейс vlan2. Посмотреть список интерфейсов командой:
ifconfig -a
Посмотреть конфигурацию портов свитча:
robocfg show
Новому интерфейсу можно назначить свой MAC адрес командой:
ifconfig vlan2 hw ether 00:11:32:23:32:23
Запустить интерфейс:
ifconfig vlan2 192.168.2.1 broadcast 192.168.2.255 netmask 255.255.255.0 up
Пошаговая настройка роутера для работы двух провайдеров:
[править]Что необходимо: получить интернет и локальные ресурсы от П1 и получить локальные ресурсы от П2.
Что дано: 2 провайдера, по 1 кабелю от каждого.
1-й провайдер, назовем его "П1", второй, соответственно, "П2"
П1 подключен к основному wan порту, у него автоматическая раздача настроек (DHCP).
Подразумевается, что интернет от П1 уже настроен, прописаны необходимые маршруты и т.д.
У П2 настройки производятся вручную (DHCP нет).
Из особенностей, диапазон внутренней сети пересекается: у обоих сеть вида 10.0.0.0/255.0.0.0
Для необходимого диапазона адресов просто настроим маршрутизацию.
Вопрос решается двумя способами:
- только через редактирование и добавление строк в файлы post-boot и post-firewall
- настройка второго wan производится уже не через post-boot. А маршрутизация все также в post-firewall (второй вариант лучше, т.к. интерфейс wan2 при перезагрузке уже работает, а в первом - он поднимается только с загрузкой файла post-boot, т.е. до момента загрузки файла роутер может отправлять не правильные пакеты в сеть П2).
1-й вариант:
Нужно добавить следующие строки в файл post-boot:
#!/bin/sh
robocfg vlan 2 ports "1 5t" vlan 0 ports "2 3 4 5t" #строка создает из интерфейса lan1 второй wan
vconfig add eth0 2 #задает название второму интерфейсу
ifconfig vlan2 hw ether 00:00:00:00:00:00 #строка присваивает второму интерфейсу wan определенный мак-адрес, нужно, если провайдер осуществляет привязку по мак'у (вместо 00:00:00:00:00:00 вводим свой мак-адрес)
ifconfig vlan2 10.xx.xx.xx broadcast 10.10.255.255 netmask 255.255.0.0 up #строка запускает, определяет диапазон сети для второго интерфейса. 10.xx.xx.xx - ВАШ IP адрес, заданный провайдером! 10.10.3.10, например
Нужно добавить следующие строки в файл post-firewall:
#!/bin/sh
route add -net 75.75.75.20 netmask 255.255.0.0 gw 10.yy.yy.yy dev vlan2 #задаем необходимые адреса П2, которые нужны для доступа к его ресурсам, вместо 10.yy.yy.yy пишем шлюз П2
route add -net 10.12.0.0 netmask 255.255.0.0 gw 10.yy.yy.yy dev vlan2
route add -net 95.75.75.20 netmask 255.255.0.0 gw 10.yy.yy.yy dev vlan2
iptables -A INPUT -i vlan2 -m state --state NEW -j SECURITY #защита от DoS (не обязательно)
iptables -A FORWARD -i vlan2 -m state --state NEW -j SECURITY #защита от DoS (не обязательно)
iptables -t nat -A POSTROUTING -o vlan2 ! -s 10.xx.xx.xx -j MASQUERADE #вместо 10.xx.xx.xx прописываем IP, который задан на втором WAN, он же IP, который ВАМ выдал П2)
iptables -A FORWARD -i ! br0 -o ! br0 -j DROP #чтобы роутером не пользовались как халявным прокси
iptables -t nat -A PREROUTING -d 10.xx.xx.xx -j VSERVER #чтобы проброс портов из веб-интерфейса работал для второй сети, вместо 10.xx.xx.xx - ВАШ IP адрес, заданный провайдером
После введения строк в файлы post-boot и post-firewall, необходимо сохранить изменения и выполнить перезагрузку роутера:
flashfs save && flashfs commit && flashfs enable && reboot
2-й вариант:
в консоли пишем следующие строки:
robocfg vlan 2 ports "1 5t" vlan 0 ports "2 3 4 5t"
vconfig add eth0 2
ifconfig vlan2 hw ether 00:00:00:00:00:00
ifconfig vlan2 10.xx.xx.xx broadcast 10.10.255.255 netmask 255.255.0.0 up
Опять таки, вместо 00:00:00:00:00:00 указываем необходимый мак-адрес. Вместо 10.xx.xx.xx указываем IP адрес, заданный провайдером.
Обязательно после настройки сохранить результат командой:
nvram commit
Переходим к заполнению файла post-firewall, здесь все тоже самое из первого варианта настройки.
Сохраняем настройки и перезагружаемся:
flashfs save && flashfs commit && flashfs enable && reboot
Балансировка трафика
[править]Создание PPTP соединения вручную
[править]Сброс к первоначальным настройкам
[править]Настройка программ для работы через роутер
[править]Настройка работы DC++ в активном режиме
[править]Действие первое: настраиваем DC++ без роутера! Чтобы быть уверенным что все вообще работает.
Действие второе: подключаем роутер, настраиваем DC++ снова.
Для примера привожу настройки клиента StrongDC++ (в других программах аналогично)
(X) Firewall With manual Port Forwarding
Ports TCP 16002 (для 192.168.1.2, чтобы потом не запутаться, для 192.168.1.123 будет 16123 и т.д.)
Ports UDP 16002
External\WAN IP : Внешний IP моего роутера
(X) Don't Allow HUB\UPNP to override
(_)Auto update IP on startup
Правка 28.04.2009: - еще пример настроек клиента FlylinkDC-r382-build-1685 для провайдера, который дает динамические реальные IP.
Заходим в Файл - настройки - настройки соединения.Там пишем:
Сетевой интерфейс для всех соединений - 0.0.0.0
Настройки входящих соединений - Брандмауэр с ручным перенаправлением портов.
Обновить IP при старте - ставим галку (у ряда провайдеров с динамическими IP автоматическое обновление IP при старте не происходит, тогда нужно вручную при каждой смене сессии РРоЕ и старте клиента Flylink, нажимать кнопку "Найти IP адреса").
настройки исходящих соединений - Прямое соединение.
Порты TCP и UDP - ставим любые удобные, но больше 1048. Главное, чтобы именно они были затем прописаны в роутере. Упомянутый выше 16002 - подходит.
Действие третье: настраиваем роутер.
Router:
Правка 28.04.2009:- Аналогичные правила нужно создать для протоколов TCP и UDP.
NAT Settings -> Virtual Server
Enable Virtual Server: (X) Yes
PortRange 16002
Local IP 192.168.1.2
Protocol BOTH ИМЕННО BOTH!
LocalPort 16002
Protocol No. (Пусто)
Теперь сохраняемся, перегружаемся и проверяем ДЦ.
Должно работать все кроме поиска (Правка 28.04.2009:- включая поиск). Если не работает, дальше не переходим, а смотрим где ошибка в предыдущих действиях.
Для Активных работает. К сожалению, не имею возможности проверить на пассивных, ибо локалка и все активы. Но вроде должно.
В принципе если пользователей мало, то на этом можно закончить. Если пользователей в ДЦ много, больше 100, едем дальше!
Данные о найденных файлах в ДЦ приходят в виде UDP-пакетов. По умолчанию роутер принимает только 5 UDP-пакетов в секунду, остальные - отшибает навсегда. о есть если вам придет 100 результатов поиска за 1 секунду(что реально для локальных сетей), вы увидите только 5 из них. Чтобы это победить надо сделать:
Записать в автозапуск строку
iptables -I SECURITY -p udp --dport 16002:16254 -j RETURN .
Как это сделать, если сами не знаете, описывается далее. Если знаете то дальше читать не надо
Шарящих просьба вдумываться в написанное и делать поправку на свою ситуацию.
Для прошивки Олега (в асусовской у вас будет глючить поиск, будет мало результатов):
Зайдите на роутер, на вкладку System Setup / Services
Запомните значение параметра Enable telnet access:. Теперь меняем:
Enable telnet access: YES - включили доступ на роутер через telnet.
Нажимаем Finish, потом Save and Restart.
Ждем полной загрузки роутера + еще 30 секунд.
Пуск-Выполнить-"telnet 192.168.1.1"-ОК - 192.168.1.1 - IP роутера
Далее следуют два варианта: файл post-firewall есть, либо его нет
Видим filimonic.local.zelan login:
Вводим логин роутера (поумолчанию admin) и жмем
Видим Password:
Вводим пароль роутера (по умолчанию admin) и жмем
Видим приглашение командной строки роутера
[ххх@filimonic root]$
Пишем следующие команды
Код:
cd /usr/local
mkdir -p /usr/local/sbin/
cd sbin
ls <ENTER>
Вариант когда есть, роутер выдаст (среди строк присутствует post-firewall, могут быть и другие файлы):
[ххх@filimonic sbin]$ ls
Вариант когда нет, роутер выдаст (среди строк НЕТ post-firewall, но могут быть другие файлы, КОТОРЫЕ НАС НЕ ИНТЕРЕСУЮТ:
post-firewall
[ххх@filimonic sbin]$ ls
[ххх@filimonic sbin]$
Если нет, делаем это:
Цитата:
touch ./post-firewall
(знак >> НЕ ПЕРЕЗАПИСЫВАЕТ ФАЙЛ, а добавляет строку в конец)
chmod +x ./post-firewall
echo '#!/bin/sh' > ./post-firewall ( знак > перезаписывает файл и добавляет туда строку)
echo iptables -I SECURITY -p udp --dport 16002:16254 -j RETURN >> ./post-firewall
Если есть, делаем так:
cat post-firewall
Если первая строка выглядит так: #!/bin/sh, делаем
chmod +x ./post-firewall
echo iptables -I SECURITY -p udp --dport 16002:16254 -j RETURN >> ./post-firewall
Если первая строка выглядит НЕ так: #!/bin/sh, делаем
chmod +x ./post-firewall
echo '#!/bin/sh' > ./post-firewall ( знак > перезаписывает файл и добавляет туда строку)
echo iptables -I SECURITY -p udp --dport 16002:16254 -j RETURN >> ./post-firewall
Теперь пишем (в любом случае, независимо от предыдущих "если")
flashfs save
Заходим на роутер, в System Setup -> Services и ставим Enable Telnet Access в прежнее значение
Save, Finish and Restart.
flashfs commit
flashfs enable
reboot
Настройка работы торрент клиентов
[править]Взято с http://wl500g.info/showpost.php?p=112888&postcount=1232 ADOS & MySql & Curl— Замена Download Master
Эта система работает с 3 типами баз данных. В данной статье я хочу показать как работать с MySql. Также, в качестве модуля закачек система может работать тоже с тремя типами, я выбрала Curl. По материалам http://wl500g.info/showthread.php?t=10012 , http://vectormm.net/routery-asus/6-ustanovka-ados.html Для устройства WL500g Premium v.1, прошивка 1.9.2.7-10а
1. Устанавливаем нужные вспомогательные пакеты:
ipkg update ipkg install lighttpd mod-fastcgi php-fcgi php-mysql php-mbstring libcurl mysql sqlite cron mc
2. Установка ADOS Создаем директорию где у нас будет ADOS Код:
mkdir -p /opt/share/www/ados
переходим в директорию Код:
cd /opt/share/www/ados
Скачиваем сам дистрибутив Код:
wget http://download.dini.su/ados/stable
Распаковываем Код:
tar zxvf ./*
3. редактируем /opt/etc/lighttpd/lighttpd.conf
mcedit /opt/etc/lighttpd/lighttpd.conf
(Используйте F10 или Esc 0 для выхода. Вам возможно надо запускать mcedit с опциями "mcedit -xc" (то есть xterm color ). Для обучения клавиатуре наберите Esc 9 o k Enter F1 Tab Enter F2 ... и так все клавиши. Не забудьте сохранить конфигурацию).
Устанавливаем правильный обработчик:
server.event-handler = "poll"
- иначе буде ругатся: lighttpd (server.c.1105) fdevent_init failed
Раскомментируем (удаляем в начале строки #) строки:
"mod_fastcgi"
Раскомментируем (удаляем в начале строки #) строки:
dir-listing.activate = "enable"
- это чтобы можно было листать директории, не содержащие index.* и т.п. Т.е. таким образом можно будет элементарно скачивать файлы с роутера по http. Необходимо для торрента transmission.
4. Редактируем /opt/etc/crontab. Он должен выглядеть следующим образом:
SHELL=/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/sbin:/usr/local/sbin:/opt/bin:/usr/local/bin MAILTO="" HOME=/ */1 * * * * admin run-parts /opt/etc/cron.1min */5 * * * * admin run-parts /opt/etc/cron.5mins 01 * * * * admin run-parts /opt/etc/cron.hourly 02 4 * * * admin run-parts /opt/etc/cron.daily 22 4 * * 0 admin run-parts /opt/etc/cron.weekly 42 4 1 * * admin run-parts /opt/etc/cron.monthly
Создаем нужные директории:
mkdir -p /opt/etc/cron.1min /opt/etc/cron.5mins /opt/etc/cron.hourly /opt/etc/cron.daily /opt/etc/cron.weekly /opt/etc/cron.weekly /opt/etc/cron.monthly
Создаем директорию для скачивания: (эту директорию потом следует указать при инсталяции ADOS в вебе)
mkdir /opt/share/www/ados/files
5.Установка и настройка Mysql Код:
ipkg install mysql php-mysql
Устанавливаем стандартную БД, меняем пароль root’a mysql (На все вопросы Y/N нажимаем Enter)
mysql_secure_installation
Прописываем нового пользователя в mysql
mysql -p -u root CREATE DATABASE ados; use mysql; insert into user values ('localhost','ados','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','','0','0','0'); insert into user values ('%','ados','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','','0','0','0'); exit flashfs save && flashfs commit && flashfs enable && reboot
6. Последний штрих Код:
http://ваш_роутер:8081/ados например http://192.168.1.1:8081/ados или http://192.168.10.1:8081/ados
Далее следуем инструкциям. И не забываем, у нас система оптимизирована на работу с БД mysql и довлоадером Curl.
5. пункт надо переделать. У вновь создаваемого пользователя права идентичны root. Желательно их ограничить до уровня базы ADOS.
UPDATE спасибо - denis-on
Редактируем /opt/etc/php.ini
nano /opt/etc/php.ini
Ищем строки с перечислением extension, и добавляем туда:
extension=pdo.so extension=pdo_sqlite.so extension=sqlite.so
Настройка eMule
[править]настройка eMule Установить eMule. Открыть eMule. Нажать Options. Выбрать пункт Connections. В блоке Client port указать номер порта для TCP, например 4662 . А для UDP, например, 4672 Внимание, компьютер должен иметь статический ip адрес.
Зайти в web-интерфейс роутера. Нажмите NAT Settings в появившемся меню выбрать Virtual Server. Если он не включен, включить Virtual Server. В "Well-Known Applications" выбрать "User defined". Ниже Virtual Server List, в поле "Local IP" поместить IP адрес вашего компьютера (статический). В поле "Port Range" поместить порт, указанный в eMule, в нашем случае – 4662. В поле Protocol установить TCP . Поле"Protocol Nº." не трогать, в поле "description" указать, например, Emule Rule 1. Нажать ADD. Аналогичные действия понадобятся для добавления второго правила. Только порт указать 4672, Protocol указать UDP, название дать, например, Emule Rule 2. Нажать ADD. Потом нажать Apply . Для high id необходимо указать именно два порта по отдельности, не использовать вариант both.
Источник - настройка роутера