Page 1 of 84 1231151 ... LastLast
Results 1 to 15 of 1260

Thread: Инструкция по настройке роутера WL-500gP с нуля

  1. #1

    Post Инструкция по настройке роутера WL-500gP с нуля

    пошаговая настройка свежекупленного роутера на русском языке. Инструкция краткая, если что-то непонятно, не забывайте про поиск в форуме. Есть хорошая инструкция на английском языке http://wl500g.info/showthread.php?t=5909

    1.0) Проверить, что роутер функционирует нормально - все порты, лампочки и USB разъемы работают. Под ножкой роутера есть пломба из тонкого пластика, поэтому перед тем как влезать внутрь роутера нужно убедиться, что железо исправно. Внутрь влезают, чтобы задействовать дополнительные 2 USB-порта, COM-порт, увеличить память с 32Мб до 128Мб, спрятать 2,5" жесткий диск внутрь.
    Перешить роутер после покупки лучше в любом случае - пока он на гарантии проверить, что флэш не битый.

    1.1) скачать свежую прошивку с http://oleg.wl500g.info/ - ссылки в конце страницы. Не перепутайте прошивки от разных устройств. Для WL-500g DELUXE файл называется типа WL500gx-1.9.2.7-10.zip для PREMIUM V.1 как WL500gp-1.9.2.7-10.zip для PREMIUM V.2 как WL500gpv2-1.9.2.7-10.zip

    1.2) разархивировать архив, получится файл с расширением ".trx"

    Эта прошивка доработанная официальная. Можно перешивать с любой официальной и обратно - ограничений нет. Гарантию перешивка не портит, портит только повреждение пломбы. Есть и другие неофициальные прошивки: OpenWRT, DDWRT, но они сильно отличаются от официальной.

    Преимущества предлагаемой прошивки:
    - совместима с официальной, документация и рекомендации одинаковы
    - намного больше возможностей: поддержка любых провайдеров, конфигураций сетей, свой веб-сервер с PHP, торренты, кучи программ
    - доступ к шеллу роутера, возможность попрактиковаться в linux
    - стабильна и без дыр безопасности

    2.0) Обесточить роутер: убедившись, что на роутере горит wlan (то есть он загрузился, можно просто подождать минуту если перегружали роутер) вынуть вилку питания из розетки.

    2.1) пока роутер обесточен, отключите сетевой шнур от WAN, выньте всё из USB портов

    2.2) Три метода безопасной смены прошивки, выбрать любой из них:
    Первый, самый простой:
    a) включить роутер в розетку. Несколько секунд после перегрузки или включения питания НЕЛЬЗЯ выключать питание роутера - в первую секунду после подачи питания он может писать во флэш. По этой же причине вставлять шнур питания нужно быстро и чётко, а не втыкая-вытыкая его. Если nvram будет поврежден, то роутер может не загрузится. Также нельзя выключать питание роутера если вы дали команды на запись nvram явно: заливаете firmware, или дали команду "nvram commit"
    b) зайти на страницу администрирования Sytem Setup -> Firmware Upgrade. Нажать кнопку Browse выбрать файл с прошивкой (расширение trx). Нажать кнопу Upload. Не ошибитесь страничкой, есть еще страницы загрузки настроек settings и flashfs. Через какое-то время роутер перегрузится - обычно через 2 минуты. Если в момент перешивки выключилось питание или перешивка не удалась прошивку можно залить вторым методом.

    Второй метод, для продвинутых:
    через утилиту восстановления асуса (описан в руководстве, программа rescue.exe на CD-ROMе в коробке). Отличия методов:
    - утилита шьёт только прошивку и делает это в 3 раза быстрее, получить проблемы, если выключится питание менее вероятно
    - для работы утилиты нужно назначить компьютеру только один IP-адрес 192.168.1.2 и нажимать кнопку RESET до включения питания. Если не знать, где менять IP-адрес и запрещать интерфейсы, это сложно

    Третий метод:
    аналог второго, описан в http://wl500g.info/showpost.php?p=33445 если меняли IP адрес роутеру, то искать его надо будет на нем, а не на 192.168.1.1

    2.3) после обновления прошивки - очистите кэш браузера, чтобы веб-оболочка не глючила

    В будущем, перед обновлением прошивки на более новую или внесении изменений в конфигурацию не забудьте сохранять настройки. Настройки сохраняются в 2 файлах.
    a) flashfs: В веб-интерфейсе выбрать System Setup-> Flashfs Management->HERE. Сохранятся в виде файла WL500g.Premium.tar.gz После обновления прошивки на новую нужно будет этот файл залить (кнопка Upload) из того же меню. Файл одинаков для всех моделей роутера, у которых схожий процессор Broadcom.
    b) nvram (в формате для заливки через вебинтерфейс): System Setup->Setting Management->HERE. Файл WL500g.Premium.cfg

    2.4) Сбросьте в настройки по умолчанию, выбрав один из способов:
    - выбрав в веб-оболочке System Setup-> Factory Default
    - нажав на его корпусе кнопку RESET на 5 секунд, лампочка PWR начнет мигать в этот момент можно отпустить кнопку
    - для опытных пользователей, которые уже настраивали роутер, команды "erase /dev/mtd/3" и "erase /dev/mtd/4" (нужно убедиться, что на вашей версии прошивки эти устройства указывают на nvram и flashfs)

    Общая информация по работе роутера:
    в роутере обычно 8Мб флэша (у Premium v.2 - 4Мб) и 32Мб оперативной памяти.
    при включении питания считываются первые 256Кб флэша, в них лежит загрузчик (CFE, аналог BIOS), он читает кусок флэша с параметрами (nvram 64Кб). Один из параметров указывает адрес во флэше, в котором лежит прошивка и nvram. Причем, адрес nvram может быть совсем другим, чего в норме быть не должно. Если такое происходит, то сбросить значения в базовом nvram можно только через консоль командой типа "flash -offset=65536 flash0.os flash0.os" или закорачиванием одной из ног микросхемы флэша на землю. Адрес nvram могут менять прошивки типа OpenWRT, если им мало 64Кб, отведенного по умолчанию под nvram. Прошивка (firmware) грузится и тоже считывает из nvram (уже по новому адресу) параметры. В оперативной памяти роутера прошивка создает файловую систему, в которую можно писать. В эту файловую систему копируется прошивка и содержимое части флэша (flashfs содержит архив из файлов и директорий). Вывод: чем больше прошивка+файлов во flashfs+логов, тем меньше памяти для работы линукса. Реально остается около 4Мб и это из 32Мб. Поэтому для хранения файлов лучше использовать USB-флэшку или USB-диск, подключенный к роутеру. Разъем стандарта USB2.0, реальная скорость у Deluxe/Premium не выше 4Мбайт/с.
    После загрузки линукс смонтирует файловые системы флэшек/дисков/картридеров, подключенных к USB-разъемам роутера.

    Кнопки RESET и EZCONFIG на роутере:
    они периодически опрашиваются линуксом прошивки и линукс что-то делает по этому событию (обычно, обнуляет часть параметров, но не весь nvram). Если прошивка не загрузилась нормально (кривая, не к этой модели), то кнопки ничего не сделают.
    Если нажать кнопку RESET ее до включения питания, то загрузчик CFE не будет грузить прошивку, а перейдет в rescue режим (2 и 3 метод прошивки). То есть, если прошивка сбоит ее легко восстановить. Проблема бывает в том, что и CFE и прошивка хорошие, а в nvram часть важных параметров (задающие параметры железа) неправильные, то CFE просто подвиснет. Неправильные параметры могут появиться, если линукс туда запишет мусор. Самостоятьельно роутер пишет в nvram только в моменты загрузки, перепрошивки, нажатия кнопок, изменением параметров или выдачи команд вручную - в эти моменты роутер лучше не трогать.
    Если роутер работает без перезагрузки много месяцев, то перед изменением любых настроек, требующих записи в nvram, лучше его пергрузить передернув питание.
    Last edited by OlegI; 25-05-2009 at 23:28.

  2. #2

    продолжение

    3) Настроить роутер через веб-интерфейс.
    Настраивать по официальному руководству или по теме http://wl500g.info/showthread.php?t=4926
    Несколько моментов:
    Wireless->Interface: выбрать канал подальше от тех, которые заняты точками соседей (посмотреть в списке сетей в Windows). Обычно ставят каналы 1,4,7,11. Если сесть на занятый канал - скорость скачет. Мощность задирать не стоит - ухудшится прием. Для шифрования выбрать WPA-PSK (WPA2-Personal)+TKIP, WEP Encryption=None, ввести ключ сети WPA Pre-Shared Key (в ASCII или HEX, преобразование стандартизовано),Key Rotation Interval=600 секунд. Тип 54G LRS (с защитой от b)
    Для старинных карт взломоопасный Shared key+WEP128bit при этом вводить нужноWEP Key 1 в 16ричном виде, можно еще и Passphrase так как у ASUSа нестандартное преобразование (преобразование общепринято, хотя нестандартизовано).
    Wireless->Access Control можно добавить MAC-адреса тех беспроводных карт которым позволено подключаться.
    IP Config->Route: если районная сеть сегментирована, можно ввести маршруты, но если маршрутов много или есть особенности (default gateway типа ADSL-модема во внутренней сети: домашняя сеть для файлов, модем для интернета), то в этом окне не вводить, а ввести в файле post-firewall (пункт 9).
    IP Config->Miscellaneous: Enable UPnP=No, NTP Server =pool.ntp.org
    FTP: по умолчанию ftp доступен из WAN, Login Timeout in Seconds=120 и добавить пользователя с именем anonymous паролем * (значок звездочка) Rights=read only.
    Samba: Enable hidden read-write share=Yes (если только не выставлять порт самбы вовне, по умолчанию он закрыт)
    Internet Firewall->Basic config: Enable Firewall=YES, DoS=YES
    WAN to LAN Filter: выбрать Packets(WAN to LAN) not specified will be: DROP

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

    Если всё верно настроили, а беспроводной клиент не цепляется к роутеру, то либо его надо выключить и включить из розетки, либо в Windows явно ткнуть на свою сеть. Выключать питание роутера всегда надо, когда он полностью загрузится - загорится лампочка Wlan или подождав минуту после включения в розетку

    веб-интерфейс иногда криво ставит маршруты, нужно будет посмотерть их через telnet командой route -n и убедиться, что все маршруты верны. Если не верно, то маршруты можно выставить в файле post-boot (пункт 9)

    4) Подключиться к шеллу роутера можно по протоколу telnet программой putty (www.putty.nl), имя для входа "admin", пароль если не меняли такой же.
    Проверить настроен ли SSH-сервер:
    cat /usr/local/sbin/post-boot
    если выдаст "dropbear", то перейти к следующему пункту.
    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
    cp /usr/local/sbin/post-boot /usr/local/sbin/post-firewall
    cp /usr/local/sbin/post-boot /usr/local/sbin/post-mount
    cp /usr/local/sbin/post-boot /usr/local/sbin/pre-shutdown
    chmod +x /usr/local/sbin/p*
    echo "dropbear > /dev/null 2>&1" >> /usr/local/sbin/post-boot
    dropbear > /dev/null 2>&1
    flashfs save
    flashfs commit
    flashfs enable

    можно будет заходить по SSH с клиентов типа putty (в параметрах putty Windows->Translation можно выставить кодировку Win1251)

    5) отключить STP (чтобы не флудил в LAN):
    nvram set lan_stp=0
    nvram commit

    для русификации самбы в версиях до 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 set устанавливает переменную
    nvram unset убирает
    "nvram get имя" или "nvram show | grep имя" показывает
    nvram commit - записывает во флэш
    wl curpower выдает параметры wi-fi
    директория /usr/local (софтлинк на /tmp/local) и содержит каталоги, которые можно сохранить во флэше роутера в сжатом виде /tmp/flash.tar.gz, а при загрузке ими воспользоваться.
    Этот файл кладется напрямую в раздел флэша. Размер раздела для wl500g DELUXE - 64Кб, для wl500gP - 2Мб. В логах веб-оболочки можно найти строчку:
    Jan 1 03:00:03 kernel: 0x003e0000-0x007f0000 : "flashfs"

    Эти каталоги сохраняются тремя командами flashfs save, flashfs commit, flashfs enable (вместо послледней можно один раз дать flashfs enabled). При этом не все файлы которые там лежат переписываются в корень, а только некоторые. Например, /usr/local/etc/hosts будет переписан в /etc/hosts, а /etc/passwd нет. Имена тех файлов, которые не переписываются можно включить в файл /usr/local/.files на каждой строчке полный путь к файлу, тогда эти файлы можно редактировать на их же местах.
    Перед flash save можно удалять файл/tmp/local/root/.mc/history и /tmp/local/root/.cedit, чтобы не сохранять мусор

    6) Купить флэшку (не меньше 9Мб) для хранения программ. Лучше с лампочкой, чтобы видеть когда роутер в нее пишет. Раздел диска вместо флэшки нежелателен - вероятность выхода из строя диска выше.
    Вставить флэшку, она автоматически смонтируется.
    Посмотреть куда смонтирована флэшка:
    mount
    Демонтировать флэшку umount /tmp/mnt/disc0_1
    Отформатировать флэшку или раздел диска в файловую систему ext3:
    mke2fs -j /dev/scsi/host0/bus0/target0/lun0/part1
    или
    mke2fs -j /dev/discs/disc0/part1
    На флэшках создан единственный раздел и поменять это нельзя, в отличии от жестких дисков, которые можно самому разбить.
    смонтировать флэшку
    mount /dev/discs/disc0/part1 /tmp/mnt/disc0_1

    Если вместо флэшки используется жесткий диск большого размера, то разбить и отформатировать его лучше под Linux, можно под Knoppix, средствами роутера можно сделать, но перед форматированием нужно создать и включить своп раздел (при форматировании большого диска нужно много памяти) - возиться с этим нет смысла. Если linux нет, то можно роутером:
    например разбить fdisk /dev/scsi/host0/bus0/target0/lun0/disc
    включить своп если нужно /sbin/swapon /dev/scsi/host0/bus0/target0/lun0/part2
    команда форматирования приведена выше. Своп используют, если нужно будет запускать много служб, но лучше без него, так как если USB отсоединится, то роутер повиснет.
    В NTFS форматировать нет смысла - ее можно только читать. При желании информацию с раздела ext3 можно будет считать под Windows драйвером http://sourceforge.net/projects/ext2fsd

    Начиная с версии 1.9.2.7-8 монтируются все диски в /tmp/mnt/

    7) установка полезных пакетов. (http://webtools.wl500g.info/wiki/dok...owtoipkgonasus)
    нужен раздел ext3. Неободимо чтобы в /opt была подмонтирована файловая система ext3 из-за разрешения на файлы и софтлинков.
    a)
    mkdir /tmp/mnt/disc0_1/opt
    mount -obind /tmp/harddisk/opt /opt
    смонтирует поддиректорию в /opt
    mkdir -p /opt/tmp/ipkg
    ipkg.sh update
    ipkg.sh install ipkg-opt
    ipkg update

    b) теперь можно устанавливать программы. Их список http://ipkg.nslu2-linux.org/feeds/op...table/Packages
    Установка простая:
    ipkg install mc файловый менеджер
    php-thttpd - вебсервер с поддержкой PHP5 (если он нестабилен, вместо него можно lighttpd и php-fcgi http://wl500g.info/showthread.php?t=9091)
    adduser
    findutils
    diffutils
    less
    lsof
    lynx
    mc
    unzip
    ncftp
    rsync
    sysstat
    whois
    e2fsprogs
    программа tune2fs
    wakelan
    w3cam


    часть пакетов может быть неработоспособна, часть пакетов уже интегрирована в прошивку, часть имеют одинаковую функциональность. Какие ставить и как конфигурировать можно поискать в форуме.
    Если установка какого-то пакета идет очень долго, программа установки могла подвиснуть. Можно прервать установку CTRL+C, перегрузиться (после установки пакета их программа стартует и может мешать) и переустановить подвиснувший пакет (ipkg install libtool -force-reinstall) и который ставили.

    если установка пакетов повредит предыдущие, можно переустановить поврежденный командой
    ipkg install -force-reinstall имяпакета

    после этого можно пользоваться Midnight Commander для редактирования файлов
    дать в телнет команды:
    export TERMINFO="/opt/share/terminfo"
    export TERM="xterm"
    /opt/bin/mc

    с) можно установить webtools - проект который дополняет стандартную оболочку администрирования ASUS чтобы управлять пакетами, которых в ней нет. Возможно, этот проект будет развиваться. Сейчас там не очень много настроек.
    с http://webtools.wl500g.info/wiki/doku.php?id=download скачать архив и раскрыть в директорию /opt/share/www/webtools
    раскрывать можно средствами самого роутера:
    cd /opt/share/www
    tar -xzvf webtool.tar.gz

    и переименовать поддиректорию которая там появится в нормальное имя webtools
    d) сконфигурировать thttpd:
    в /opt/etc/thttpd.conf можно поменть порт с 8080 на другой, например 82. Можно будет зайти на http://роутер:82/webtools и конфигурировать службы.
    Чтобы работал cgi в конец файла /opt/etc/thttpd.conf добавить строчку
    cgipat=/cgi-bin/* (именно cgipat опечатки нет)
    или отредактировать 12 строчку /opt/etc/init.d/S80thttpd, она должна выглядеть как
    /opt/sbin/thttpd -C /opt/etc/thttpd.conf -c /cgi-bin/*
    e) в /opt/share/www можно положить свои странички, создать тестовый файл 1.php с содержимым: <? phpinfo(); ?>

    8) можно сделать бэкап nvram
    cat /dev/mtd/3 > /opt/mynvram.bin
    и забрать этот бэкап по ftp, WinSCP (www.winscp.net есть даже плагин для Far Manager) или SAMBA.
    если захочется восстановить
    flash /opt/mynvram.bin /dev/mtd/3(опасно, так как мало ли есть баг именно в этой прошивке и он запортит флэш)
    содержимое этого бэкапа такое же, как при сохранении через веб-интерфейс в текстовом виде System Setup-> Setting Management->HERE
    Last edited by OlegI; 21-10-2009 at 13:59.

  3. #3

    продолжение

    9) настройка автозапуска

    a) если mc не запускается, то дать команды
    echo "export TERMINFO=/opt/share/terminfo" >> /usr/local/root/.profile
    echo "export TERM=xterm" >> /usr/local/root/.profile


    b) в файл /usr/local/sbin/post-boot нужно будет добавить строки. Добавлять можно редактором Midnight Commander (перед запуском дать команды
    export TERMINFO="/opt/share/terminfo"
    export TERM="xterm"

    иначе подвиснет; кнопки F1 F2 F3 нажимаются путем нажатия клавиши ESCape и потом соответствующей цифры на основной клавиатуре, потом в меню mc его можно обучить комбинациям клавиш) или vi (для больших любителей) или скопировать на флэшку и по ftp или подключив диск отредактировать. Копировать командой
    cp /usr/local/sbin/post-boot /tmp/harddisk/opt/post-boot

    Файл будет выглядеть как:
    #!/bin/sh
    chmod 777 /tmp #нужно для некоторых программ типа sqlite
    #если в сети ходят ненужные мультикасты и роутер временами сильно тормозит, можно их отключить
    ifconfig vlan0 -multicast
    ifconfig vlan1 -multicast
    ifconfig eth1 -multicast
    #если отключить мультикаст на интерфейсе br0 (или eth0 для wl500w) то при этом теряется возможность использовать upnp
    #ifconfig eth0 -multicast
    #ifconfig br0 -multicast
    ifconfig lo -multicast
    # пример как назначить WAN интерфейсу второй IP адрес
    #ifconfig vlan1:0 192.168.168.1 netmask 255.255.255.0
    #второй адрес не управляется через веб-оболочку. Все опции касающиеся его нужно давать здесь. Например, чтобы пробросить порт с 192.168.168.1 на внутренний адрес 192.168.0.2:
    #iptables -t nat -A PREROUTING -p tcp -d 192.168.168.1/255.255.255.255 --dport 21 -j DNAT --to 192.168.0.2:21
    #нужно еще проверить чтобы этот порт (21) был открыт на WAN интерфейсе (таблица INPUT)

    #чтобы в WAN (в примере WAN назначены адреса 1.1.1.1 и 192.168.168.1) не уходили пакеты с адресом отправления из внутренней сети (самба может слать в ответ на специфические запросы а провайдер за это банить) раскомментировать три строки, заменив адреса на свои:
    #iptables -A OUTPUT -s 1.1.1.1/255.255.255.255 -o vlan1 -j ACCEPT
    #iptables -A OUTPUT -s 192.168.168.1/255.255.255.255 -o vlan1 -j ACCEPT
    #iptables -A OUTPUT -o vlan1 -j DROP

    # если хочется чтобы samba была доступна из WAN раскомментировать 2 строки, но это НЕ рекомендуется - если в сети зараженные компьютеры роутер будет сильно тормозить!
    #iptables -i vlan1 -I INPUT -p tcp --dport 137:139 -j ACCEPT
    #iptables -i vlan1 -I INPUT -p udp --dport 137:138 -j ACCEPT

    # запуск SSH-сервера
    dropbear >/dev/null 2>&1
    # на всякий случай загрузка модулей, понадобится если например выключить ftp в веб-оболочке
    insmod scsi_mod
    insmod sd_mod
    insmod usb-storage


    с) второй файл /usr/local/sbin/post-mount
    Если есть раздел swap и хотите его монтировать (это нежелательно) указать при этом адрес раздела host0 - USB-разъем который ближе к шнуру питания, host1 - дальше, остальные разъемы внутри роутера. Узнать где находится диск можно косвенно: в поддиректории появятся файлы part1 part2 - это разделы. Сама команда выглядит так:
    /sbin/swapon /dev/scsi/host0/bus0/target0/lun0/part2
    #явная команда монтировки двух портов, чтобы не зависеть от того запущен stupid-ftp или нет. Смонтируется хоть что-то

    mkdir /tmp/harddisk
    /bin/mount -o sync,noatime,rw /dev/discs/disc0/part1 /tmp/harddisk
    /bin/mount -o sync,noatime,rw /dev/discs/disc1/part1 /tmp/harddisk

    # если /opt находится на общем смонтированном диске, а не как отдельный раздел:
    /bin/mount -o bind,sync,noatime,rw /tmp/harddisk/opt /opt
    #запуск статистики на порту 81 (тормозит передачу файлов, лучше вместо него использовать статистику rrd, она рисует более красивый грфик, но без статистики по хостам):
    /tmp/harddisk/opt/bin/darkstat -d /tmp/harddisk/opt/data -p 81 &
    #запуск cron если установлен:
    /opt/etc/init.d/S10cron
    # запуск thttpd:
    /opt/etc/init.d/S80thttpd start
    # в конце можно погасить службу nmbd сэкономит память, тогда подключаться к шарам можно тольклько по IP адресу вроде \\192.168.0.1\share вместо \\myrouter\share но тогда samba не сможет работать WINS-сервером
    #killall nmbd

    d) в файл post-firewall можно управлять таблицей маршрутизации. Файл запускается после поднятия интерфейсов.
    #обязательно стереть старые маршруты (если используется PPTP, то интерфейс может пересоздаваться и файл запускаться много раз):
    ip route flush scope global
    /sbin/route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.33.0.1
    # где 10.0.0.0 - подсеть, 255.0.0.0 - маска, 10.33.0.1 - шлюз
    # также можно установить новый шлюз по умолчанию, если он находится в локальной сети (для инетрнет ADSL и еще районная сеть), а не на WAN интерфейсе (на текущей прошивке это невозможно)
    /sbin/route del default
    /sbin/route add default gw 192.168.0.254


    e) файл pre-shutdown, можно вставить остановку процессов, открывших файлы на диске и перемонтировку его на чтение:
    lsof -t /dev/discs/disc0/part1 | xargs kill -9
    mount -t ext3 -o remount,ro /dev/discs/disc0/part1

    f) можно при желании вставить имена компьютеров своей внутренней сети
    в /etc/hosts:
    cp /etc/hosts /usr/local/etc/hosts
    отредактировать /usr/local/etc/hosts

    g) НЕ ЗАБЫТЬ сохранить содержимое всех этих изменений в nvram:
    flashfs save
    flashfs commit
    flashfs enable


    10) настройка SAMBA http://www.oreilly.com/catalog/samba2/book/toc.html
    Цель: создать шару только на чтение, чтобы могли подсоединяться гости и шары для администратора или пользователей.
    a) если кроме admin нужны еще пользователи, то нужно их добавить в файл /etc/passwd Это можно сделать редактором - одна строчка один пользователь:
    username:x:500:500:username,,,:/tmp/harddisk:/sbin/nologin
    и потом установить пароль командой passwd username
    либо
    если ipkg установлен пакет adduser дать команду
    adduser -h /tmp/harddisk -s /sbin/nologin -G root -H имя
    b) добавить пользователей для samba, добавить можно тех, кто есть в passwd:
    smbpasswd -a admin
    smbpasswd -a имя

    и ввести пароли
    c) отредактировать файл /etc/smb.conf Он должен иметь содержимое
    [global]
    interfaces = br0
    bind interfaces only = yes #если хочется работать только в LAN
    workgroup = HOME #имя рабочей группы
    server string = computer #комментарий к серверу
    guest account = nobody
    security = user #по умолчанию
    browseable = yes
    dns proxy = no # вряд ли NetBIOS имена в WAN соответствуют DNS записи
    guest only = no #иначе пользователи не смогут подключаться
    guest ok = no # по умолчанию, чтобы не ошибиться с безопасностью
    log level = 1
    max log size = 100
    encrypt passwords = yes #иначе Windows-клиенты не подключатся
    preserve case = yes
    short preserve case = yes
    client code page = 866
    character set = 1251 #не работает для Win клиентов в текущей версии
    #для Win клиентов лучше ставить KOI8-R русские имена хоть будут читаться а не сбоить
    # character set = KOI8-R
    # если версия самбы будет 3.0 параметры русификации другие
    # unix charset = CP1251
    # display charset = CP1251
    # dos charset = CP866
    wins support = yes # чтобы можно было пользовать роутер как WINS сервер
    time server = yes # чтобы роутер был wintime сервером, сейчас используется редко
    os level = 255 # чтобы стал мастер-браузером рабочей группы
    local master = yes # чтобы соглашался быть мастер-браузером рабочей группы

    [share]
    path = /tmp/harddisk/ftp_pub # для анонимных пользователей
    guest only = yes
    guest ok = yes
    comment = share
    force user = admin # читать из под admin чтобы не следить за доступом
    [share$]
    path = /
    comment = share
    guest ok = no
    writable = yes
    force user = admin #иначе будут срабатывать разрешения на файловой системе
    browseable = no
    valid users = admin #если хочется ограничить доступ только этими пользователями
    allow from = 192.168.0. #доступна только с указанной подсети или адресов
    # можно и так
    [c$]
    path = /
    comment = c
    guest ok = no
    writable = yes
    security = user
    browseable = no


    c) добавть в профиль по умолчанию параметры. Например, чтобы в консоли были видны русские имена файлов:
    echo "export LANG=en_US.UTF8" >> /etc/profile
    d) если не сделано, то сохранить файлы во флэше:

    echo /etc/smb.conf >> /usr/local/.files
    echo /etc/passwd >> /usr/local/.files
    echo /etc/group >> /usr/local/.files
    echo /etc/smbpasswd >> /usr/local/.files
    echo /etc/profile >> /usr/local/.files
    flashfs save
    flashfs commit
    flashfs enable


    11) Можно установить rrd - будет рисовать красивые графики загрузки интерфейсов типа mrtg. Нужно сконфигурировать cron, используется php-thttpd.
    a) Установка и настройка cron подробно описана http://www.macsat.com/cron.php
    запускать cron можно вставив в post-boot
    /opt/etc/init.d/S10cron
    b) Установка rrdtool описана http://www.macsat.com/rrdtool.php
    c) после установки можно по адресу http://роутер:82/rrd будет страничка, картинки появятся через 5 минут.
    d) поскольку cron каждые 5 минут пишет в системный лог, можно настроить его очистку. Лог лежит в памяти роутера и через какое-то время памяти не хватит - начнут выгружаться службы. Нужно положить в директорию
    /opt/etc/cron.daily
    файл с содержимым:
    ========
    #!/bin/sh
    rm -rf /tmp/syslog.log.*
    ========

    12) после всех изменений перегрузить роутер, можно командой reboot
    Last edited by OlegI; 21-10-2009 at 14:08.

  4. #4
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    Quote Originally Posted by OlegI
    настройки Midnight Commander: F9->Options->Learn key обучить клавишам F1-8
    F9->Options->Confirmation - убрать при выходе
    Используйте putty и проблем с клавишами не будет...

  5. #5

    продолжение

    продолжение

    13) Настройка нескольких 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 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
    на Deluxe скорость маршрутизации ориентировочно 3Мбайта/c при загрузке процессора 65%

    14) настройка торрент описана в http://wl500g.info/showthread.php?t=12209

    15) создание PPTP соединения вручную, если через веб-интерфейс какой-то параметр не настраивается.
    a) создать файл например по пути /etc/ppp/peers/pptp (потом не забыть сохранить его, если он не на флэшке)
    # например удаленный сервер 1.1.1.1
    pty "/usr/sbin/pptp 1.1.1.1 --nolaunchpppd"
    name имя
    password пароль
    remotename PPTP
    ipparam pptp
    defaultroute
    crtscts
    lock
    noauth
    nobsdcomp
    nodeflate
    persist
    maxfail 0
    asyncmap 0
    mtu 1400
    refuse-eap #если на Windows сервере не отключен EAP
    nomppc #если на сервере отключена компрессия
    require-mppe-128 #если хочется сильного шифрования траффика
    nomppe-stateful #менее уязвимое шифрование, нужно в версии PPP-MPPE 2.4.1
    ipcp-accept-local
    ipcp-accept-remote
    lcp-echo-failure 3
    lcp-echo-interval 10

    b) создать файлы /tmp/ppp/ip-up и /tmp/ppp/ip-up вместо линков которые там лежат
    в первый вставить - например вход в удаленную сеть 11.11.11.0
    route add -net 11.11.11.0 netmask 255.255.255.0 dev $1
    переменные которые передаются скрипту: $1 - интерфейс, например ppp0, $4 - назначенный IP, $5 - удаленный IP
    удалять маршрут не нужно - после гашения интерфейса он сам исчезнет. Если подключение идет к интернет то таким же образом можно поменять шлюз по умолчанию:
    route add default dev $1
    удалять маршрут по умолчанию если он был IP адресом не нужно - он будет в конце списка
    с) добавить статический маршрут до PPTP сервера:
    route add -net 1.1.1.1 netmask 255.255.255.255 gw такой-то
    d) запустить соединение:
    pppd file /opt/etc/ppp/peers/pptp
    или в режиме отладки: pppd nodetach debug file /opt/etc/ppp/peers/pptp

    16)настройка для провайдера WiMAX ( Yota ) без USB-диска и без доступа в интернет. Обновить прошивку (например, на 1.9.2.7-10 или 1.9.2.7-10.7), дальше в веб-оболочке System setup-> Flashfs management-> New Flashfs File выбрать прикрепленный к этому посту файл yota-wl500gp.tar.gz дождаться окончания загрузки. Файл одинаков для всех устройств (wl500gx wl500gP v1 v2 dir-320). В меню System Command набрать flashfs enable и нажать клавишу <ENTER>, потом набрать reboot и <ENTER>.

    То же самое можно сделать командами, но понадобится доступ в инернет. Перед выполнением команд надо в веб-оболочке роутера указать любой DNS-сервер (необязательно из своей сети). Подключить роутер к интернет можно через порт WAN или LAN, роутеру достаточно будет указать ip адрес шлюза (это девайс, раздающий интернет, он должен находится в одной подсети с ip-адресом LAN или WAN интерфейса роутера).
    Code:
    route delete default
    route add default gw ip_адрес_шлюза_в_интернет
    mkdir -p /usr/local/sbin/
    echo "#!/bin/sh" >> /usr/local/sbin/post-boot
    cp /usr/local/sbin/post-boot /usr/local/sbin/post-firewall
    chmod +x /usr/local/sbin/p*
    mkdir /tmp/local/opt
    mount -o bind,sync,noatime,rw /tmp/local/opt /opt
    cd /tmp
    wget http://lvk.cs.msu.su/~lasaine/madwimax/wl500g/libusb-1.0-mipsel.tgz
    wget http://lvk.cs.msu.su/~lasaine/madwimax/wl500g/madwimax-latest-mipsel.tgz
    wget http://lvk.cs.msu.su/~lasaine/madwimax/wl500g/udhcpc-script.tgz
    cd /
    tar -xzf /tmp/libusb-1.0-mipsel.tgz
    tar -xzf /tmp/madwimax-latest-mipsel.tgz
    tar -xzf /tmp/udhcpc-script.tgz
    rm /tmp/libusb-1.0-mipsel.tgz /tmp/madwimax-latest-mipsel.tgz /tmp/udhcpc-script.tgz
    echo "route delete default" >> /usr/local/sbin/post-boot
    echo "echo 1 > /proc/sys/net/ipv4/ip_forward" >> /usr/local/sbin/post-boot
    echo "mount -obind /tmp/local/opt /opt" >> /usr/local/sbin/post-boot
    echo "insmod tun.o" >> /usr/local/sbin/post-boot
    echo "(while true; do /opt/sbin/madwimax -qof ; sleep 10; done )&" >> /usr/local/sbin/post-boot
    ipkg.sh update
    ipkg.sh install uclibc-opt
    заменить с помощью vi /opt/etc/madwimax/event.sh строку с программой xargs на
    kill -TERM `cat /var/run/udhcpc."$2".pid`
    Для редактирования надо подвести курсор к нужной строке нажать "a", заменить текст (при наборе обратить внимание, что апостроф берётся с клавиши с буквой "ё"), нажать клавишу Esc и набрать "ZZ" (сохранение и выход из редктора). Выход без сохранения ":q!".
    Дальше сохранить изменения и перегрузиться:
    flashfs save
    flashfs commit
    flashfs enable
    reboot


    16.1) Для включения DynDNS, если роутер настроен в режиме точки доступа (в веб-интерфейсе для этого режима страницы настроек DynDNS отсутствуют) можно вставить в event.sh после 10 строки команду
    /usr/sbin/ez-ipupdate -h имя.dyndns.org -i "$2" -S dyndns -u имя:пароль

    17) Замечания:
    полезная команда архивировать директории tar -zvcf archive.tar.gz dir/ или tar -yvcf archive.tar.bz2 dir/
    перенаправить вывод и errorstream программ: программа > /dev/null 2>&1
    программы лучше всегда запускать в этом режиме, иначе либо они подвесят скрипт запуска, либо не запустятся, либо забьют память роутера
    для отладки скриптов можно после проблемной команды длбавлять > /tmp/out 2>&1
    тогда веь вывод команды будет в файле /tmp/out

    Если роутер перестает отвечать, скорее всего повреждена файловая система.
    проверка диска: посмотреть что смонтировано командой mount демонтировать диск, если не демонтируется убить процессы stupid-ftp smbd nmbd и дать команду
    e2fsck -f -y -v /dev/discs/disc0/part1
    -f заставит проверить структуру файловой системы диска
    -y ответит на все вопросы утвердительно
    -v выдаст больше информации
    диск 100Гб может проверять ~20 минут.

    чтобы не выдавалось сообщений, что нужно проверить раздел ext3 можно дать команду:
    tune2fs -c 0 -i 0 /dev/discs/disc0/part1
    раздел перед этим должен быть смонтирован.
    вместо disc0 может использоваться disc4 - смотря в какой разъем USB воткнута флэшка/диск

    настройки Midnight Commander: F9->Options->Learn key обучить клавишам F1-8
    F9->Options->Confirmation - убрать при выходе
    Attached Files Attached Files
    Last edited by OlegI; 25-05-2009 at 23:11.

  6. #6
    Quote Originally Posted by OlegI View Post
    13) Настройка нескольких 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
    Вопрос: сохранится ли второй порт после, например, отключения питания рутера?
    Или эти 2 строки надо внести в какой-либо файл типа post-boot?

    Дал команды
    robocfg vlan 2 ports "1 5t" vlan 0 ports "2 3 4 5t"
    vconfig add eth0 2

    Команды выполнились.
    Потом отключил питание роутера.
    Дал первую команду еще раз. Роутер зависает. Приходится снова отключать ему питание, чтобы заработал. Что делаю не так?

    Если сделать vlan2, то
    скорость маршрутизации 3Мбайта/c при загрузке процессора 65%Это много или мало? А какова скорость vlan1?
    Last edited by Omega; 19-06-2011 at 02:32. Reason: fixed

  7. #7
    tip: если пользуетесь gnome терминалом с UTF8
    то лучше указать
    export TERMINFO="/opt/share/terminfo"
    export TERM="xterm"


    а не

    export TERM="linux"


    или просто запускать mc вот так
    Code:
    $> TERM="xterm" mc
    А почему не написано, что нужно выставить
    "Network Key Rotation Interval:" ??

    Если его не выставить, то ключ менятся не будет и надежность сетки сильно упадет.
    Last edited by Omega; 19-06-2011 at 02:32. Reason: fixed

  8. #8

    Question

    Hint: как сэкономить место в /opt
    1. не устанавливать ipkg:
    - монтируем как обычно в /opt чистую партицию на rw
    - выполняем
    Code:
    echo "src wl500g http://wl500g.dyndns.org/ipkg" >/etc/ipkg.conf
    echo "src unslung http://ipkg.nslu2-linux.org/feeds/unslung/wl500g" >>/etc/ipkg.conf
    echo "dest root /" >>/etc/ipkg.conf
    echo "/etc/ipkg.conf" >>/usr/local/.files
    flashfs save
    flashfs commit
    ipkg.sh update
    После этого можно спокойно делать ipkg.sh install <что угодно>
    Правда скриптовы вариант менее функционален - нельзя например посомтретть список установленных пакетов либо провести установку конкретного пакета игнорируя зависимости.

    P.S. После установки mc можно смело удалить ncurses (если его никто не юзает больше), сохранив только файл /opt/lib/terminfo/l/linux (ipkg remove ncurses)
    Last edited by Omega; 19-06-2011 at 02:38. Reason: fixed

  9. #9
    Для прописывания таблицы маршрутов достаточно ли записать /usr/local/sbin/post-boot файл вида
    Code:
    #!/bin/sh
    /sbin/route add -net 213.148.16.0 netmask 255.255.255.224 gw 10.168.14.253
    /sbin/route add -net 213.148.17.0 netmask 255.255.255.0 gw 10.168.14.253
    ?

    Проблема в том, что на моем WL-500gP маршруты из post-boot не прописываются вообще (прошивка WL500gp-1.9.2.7-7f-post3)

    После создания файла выполняются команды
    Code:
    chmod +x /usr/local/sbin/post-boot
    flashfs save
    flashfs commit
    flashfs enable
    reboot
    route -n выдает
    Code:
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    169.254.1.0     0.0.0.0         255.255.255.0   U     0      0        0 br0
    127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
    (i.p. рутера установлен 169.254.1.1).

    Quote Originally Posted by Hawkeye View Post
    Для прописывания таблицы маршрутов достаточно ли записать /usr/local/sbin/post-boot файл вида...
    Вопрос снят. Оказывается, для прописывания маршрутов необходимо "живое подключение" (я-то думал сначала все настроить, а потом уже кабель переткнуть... )
    Last edited by Omega; 19-06-2011 at 02:34. Reason: fixed

  10. Quote Originally Posted by Hawkeye View Post
    Для прописывания таблицы маршрутов достаточно ли записать /usr/local/sbin/post-boot файл вида...
    рутинг надо прописывать не в post-boot а в post-firewall

  11. #11
    предлагаю добавить в FAQ строчку из описания прошивки 1.9.2.7-7f :

    обязательно нужно разрешать WAN->LAN фильтр и выбрать в качестве операции DROP

  12. #12
    Quote Originally Posted by OlegI View Post
    13) Настройка нескольких 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 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
    скорость маршрутизации 3Мбайта/c при загрузке процессора 65%
    Подскажите, пожалуйста, 3 МБ/с это скорость только для добавляемого порта? На скорости маршрутизации через первый WAN-порт добавление второго не скажется?

  13. #13
    Quote Originally Posted by OlegI View Post
    8) установка полезных пакетов. a)
    mkdir /tmp/harddisk/opt
    mount -obind /tmp/harddisk/opt /opt
    смонтирует поддиректорию в /opt
    mkdir -p /opt/tmp/ipkg
    ipkg.sh install ipkg
    ipkg update

    b) теперь можно устанавливать программы. Установка простая.
    ipkg install php-thttpd - вебсервер с поддержкой PHP5
    ipkg install mc файловый менеджер
    ipkg install adduser
    ipkg install lynx
    ipkg install gzip
    ipkg install tar
    ipkg install unzip
    ipkg install ncftp клиент фтп
    ipkg install rsync
    ipkg install sysstat
    ipkg install whois
    ipkg install e2fsprogs программа tune2fs
    ipkg install wakelan
    ipkg install w3cam
    ipkg install tcpdump
    ipkg install proftpd фтп-сервер
    ipkg install microperl
    ipkg install eggdrop
    ipkg install bind днс-сервер
    ipkg install nylon сокс-сервер
    ipkg install freeradius
    ipkg install freeradius-doc
    ipkg install sqlite


    часть пакетов неработоспособна типа ircd-hybrid


    если установка пакетов повредит предыдущие, можно переустановить поврежденный командой
    ipkg install -force-reinstall имяпакета

    после этого можно пользоваться Midnight Commander для редактирования файлов
    У меня WL-HDD, перешил последней прошивкой
    Пакеты пытался брать на http://ipkg.nslu2-linux.org/feeds/op.../cross/stable/
    "коробочка" их не хочет понимать, подскажите где взять указанные вами пакеты.

    Заранее спасибо.

  14. #14
    На первой странице, до строк
    ipkg.sh install ipkg
    ipkg update

    надо вставить
    ipkg.sh update

    инструкция называется "с нуля", так что думаю, поправки необходимы.
    кстати, чтобы отформатировать винт, надо размонтировать раздел - для этого я делал так:
    1. отключить ftp server (usb application -> ftp server -> enable ftp server = no).
    2. перезагрузить раутер (finish, save&restart)
    3. заходим на раутер телнетом,
    Code:
    umount /tmp/harddisk
    4. можно выполнить команду mke2fs
    5. не забыть включить ftp server обратно.

  15. #15
    ipkg install mc файловый менеджер

    не проходит говорит что mc нет

Page 1 of 84 1231151 ... LastLast

Similar Threads

  1. Replies: 220
    Last Post: 06-02-2016, 11:53
  2. Более мощные аналоги роутера WL-500gP
    By Hohamid in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 128
    Last Post: 03-02-2015, 00:09
  3. Инструкция по установке и настройке aMule
    By Iskan Der in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 60
    Last Post: 16-11-2013, 20:58
  4. Инструкция по настройке роутера Asus RT-N16 для чайников
    By ryzhov_al in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 17
    Last Post: 03-10-2013, 11:33
  5. Инструкция по настройке роутера Asus с нуля
    By OlegI in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 25
    Last Post: 04-03-2012, 19:18

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •