Краткий курс 1) Нам понадобится linux.
Я пошел по пути наименьшего сопротивления, поставил
virtualbox, в него
Ubuntu 10.10 (весной заканчивается поддержка, есть наверно смысл поставить
10.04 LTS)- одна из самых "дружелюбных" систем для незнакомых с linux, 11 версия мне что то не понравилась, не было времени ковырятся. Так же есть дружелюбная linux
mint - интерфейс "виндоусообразный".

2) В домашней папке пользователя (у меня это /home/vlad/ - у вас своя) создаем папку mod-kit,

чтоб не вводить каждый раз sudo, я запустил midnight commander через sudo и в нем продолжал (ctrl+o - скрыть окно - открывает командную оболочку)
внутри нее еще 4 папки:
firmware - в нее сложим прошивки которые будем разбирать
firmware_new - в ней будут наши готовые модифицированные прошивки
target - в ней будет распакованная структура прошивки
trunk - в ней будет пакет программ, который будет собирать и разбирать прошивки

3) Далее нам нужно скачать пакет
Firmware Modification Kit (зеркало) и распаковать архив в папку /home/vlad/mod-kit/trunk

4) Для корректной работы в системе должны быть установлены g++ и zlib пакеты

Если во время работы будут ошибки - в папке с программой появится лог работы, в котором будет написано, в каком файле, в какой строке ошибка, посмотрев эту строку можно догадаться каких еще пакетов не хватает в системе.
5) Ну теперь все готово ) закидываем прошивку, которую хотим вскрыть в каталог firmware, назовем ее к примеру tomato3g.trx
6) переходим в папку /home/vlad/mod-kit/trunk и даем команду
Код: Выделить всё
./extract_firmware.sh ../firmware/tomato3g.trx ../target
- распакует содержимое прошивки tomato3g.trx в папку /target (корневой каталог прошивки root)

7) Дальше можете посмотреть, что то изменить, добавить в прошивку (веб-интерфейс лежит в папке www)

8) После того как все сделали (а в dual wan сгенерировали контрольную сумму в папке www запуском signit.sh) собираем прошивку, для этого снова переходим в папку /home/vlad/mod-kit/trunk и даем команду
Код: Выделить всё
./build_firmware.sh ../firmware_new ../target
это соберебет заготовку из папки target в файл прошивки в папку firware_new

9) В нашем случае нужен только файл custom_image_asus.trx - это и есть наша модифицированная прошивка (файлы отличаются начальным кодом, поэтому прошивки от linksys wrt54*.bin не совместимы с asus)
Ну вот и все, дерзайте!