Полный контроль над роутером ASUS из командной строки
Как получить полный контроль, над роутером ASUS с установленной оригинальной (заводской) прошивкой, через командную строку с помощью Telnet протокола доступа.
Для получения больших возможностей по настройке роутера многие тут-же прошивают роутер альтернативной прошивкой, такой как DDWRT, OpenWRT и другие. Но не всегда это оправдано. Вэб-интерфейс оригинальной прошивки может не содержать каких-то триггеров но в самой прошивки есть многие необходимые утилиты.
Значит, мы можем проделать все манипуляции над роутером с оригинальной (заводской) прошивкой, через командную строку с помощью Telnet протокола доступа.
Самый безопасный и мощный способ это использовать SSH протокол, но можно воспользоваться не безопасным Telnet так, как он имеется во всех роутерах ASUS.
Если вэб-интерфейс вашего роутера не имеет триггера для включения Telnet, то вам необходимо прочитать эту статью: «Как включить Telnet сервер на роутере ASUS».
Получение доступа к командной строке
Прежде всего вам нужно подключиться к роутеру используя любой Telnet клиент, например PuTTY или консольный клиент.
Домен, IP-адрес, логин и пароль такие же как в вэб-интерфейсе роутера.
- IP-адрес — 192.168.1.1 (или тот который вы установили).
- Домен — router.asus.com (стандартный для ASUS роутеров)
- Порт — 23 (стандартный для Telnet протокола).
- Имя пользователя (логин) — admin (стандартный для ASUS роутеров).
- Пароль — тот который вы установили (стандартный для ASUS роутеров - admin ).
Для подключения с помощью консольного клиента:
Подключитесь к роутеру по протоколу доступа Telnet:
Для авторизации используйте логин и пароль такие же как в вэб-интерфейсе роутера:
Поздравляю, теперь вы в командной строке Linux роутер!
В роутере
Теперь вы в командной строке Linux роутера ASUS.
В общем, Linux роутер очень похож на Debian но имеет некоторые особенности. Начну с общего.
Показать информацию о железе и прошивке роутера можно так:
Показать все примонтированные разделы, можно так:
Как вы видите squashfs раздел примонтирован с параметром ro то есть только на чтение. Но, ramfs ( /var ) примонтирован с параметром rw то есть чтение и запись. Значит, мы можем создавать и удалять файлы в этой директории. Но после перезагрузки всё будет как раньше, а новые файлы будут удалены.
Все загрузочные скрипты находятся в директории /etc/init.d/ .
Это место находится на разделе подключённом в режиме только чтения, поэтому вы не можете добавлять свои скрипты сюда.
На роутере установлен BusyBox. BusyBox — это набор UNIX утилит командной строки, который используется в качестве основного интерфейса во встраиваемых операционных систем. В различных версиях и сборках он содержит различное количество утилит.
Для того, чтобы получить список команд, поддерживаемых данным экземпляром BusyBox, запустите его без каких-либо аргументов или используйте опцию --list :
Для того, что бы узнать о том, что делают отдельные команды, используйте опцию --help в сочетании с этой командой:
Но не все программы в прошивке являются частью BusyBox. Поэтому может потребоваться просмотреть список всех программ:
Если в списке вы видите что-то похожее на […] -> busybox то эта программа является частью BusyBox.
Если нет нужной вам программы, то вы можете скачать её из интернета (или создать его путем кросс-компиляции) и положить в временный каталог ( /tmp/ ). Также вы можете скачать полную версию BusyBox с официального сайта (http://www.busybox.net) и поместить его в временный каталог ( /tmp/ ). Но, как я писал выше, после перезагрузки всё будет как раньше и новые файлы будут удалены.
К примеру, в моём роутере, встроенный BusyBox (v1.13.4) не содержит редактор vi или nano .
NVRAM
А теперь про особенности о которых Я писал выше. Все настройки роутера (настройки изменяемые через веб-интерфейс, пользовательские настройки, загрузочные скрипты) хранятся в энергонезависимый памяти - NVRAM (Non Volatile Random Access Memory). Существует специальная команда для работы с этой памятью - flash и она уже установлена в оригинальную прошивку.
Его можно запустить без аргументов для того, чтобы увидеть все опции:
Как вы можете видеть есть несколько опций. Аббревиатура hw означает - оборудование (железо).
Все настройки хранятся в переменных.
Показать все переменные:
И многие другие переменные.
Примечание: Все переменные начинающиеся с префикса DEF_ имеют значение по умолчанию (исходная конфигурация). Она включается при нажатии кнопки Reset на корпусе роутера или из веб-интерфейса роутера или с помощью команды flash в терминале.
Примечание: Не все из перечисленных переменных работают.Такие переменные как SAMBA_ENABLED=0 не работают, из-за того, что Samba не установлен.
Для того, чтобы найти переменные с словом NAME , используйте команду flash совместно с grep :
Примечание: Имена всех переменных записываются в верхнем регистре.
Показать значение определенной переменной (например, имя администратора):
Установить новое значение переменной (например, имя администратора):
Теперь у вас есть новое имя администратора (логин), а это повышает безопасность.
Но для того, что бы изменения вступили в силу необходимо перезагрузить роутер:
Если необходимо вернуть все заводские параметры (сброс к изначальным настройкам):
P.S. Если вы не нашли в этой статье нужную вам информацию, то может быть вы сможете найти её в комментариях ниже. В английской версии статьи комментариев больше.
Если эта статья помогла вам, пожалуйста, оставьте комментарий
Спасибо за прочтение!
Если этот пост помог вам, и вы хотели бы показать свою поддержку, подумайте о том, чтобы заправить будущие посты, купив мне чашку кофе!