Прошивка роутер tftp linux

Setting up a TFTP server for TFTP Recovery/Install

What is TFTP Recovery over Ethernet?

On most devices, the vendor provided boot loader is a partition separated from the actual firmware. In case of a failed flash process or in case of a misconfiguration, the device’s boot loader usually is still untouched and fully working. It the boot loader has a built-in “TFTP recovery mode”, it enables to regain control of a device with a broken firmware partition, by allowing a recovery flash process (which will also reset your configuration to the device defaults).

Some devices do not have automatic pull function and they need manual TFTP copy commands in recovery mode to get firmware from TFTP and firmware install.

The below article mainly advises on the “TFTP client at router” recovery.

Is TFTP recovery over Ethernet Supported by my Device?

Setting up TFTP Recovery/Install

Setting up TFTP Server

On Mac OSX

macOS provides a native tftpd server that runs the command line. There are also GUI applications that are available for those that prefer them.

Command-Line Native tftpd

For recent versions of macOS, the system-supplied tftpd is managed with launchctl . Users should be comfortable with command-line usage and sudo to take this approach. As confirmed on macOS Sierra 10.12.6 and macOS Mojave 10.14.2, the general steps involved are

TFTPServer.app

On Windows

Tftpd64

Download the portable version, and unzip it in a folder. You should see the manual, a license in a PDF file, a configuration file, and the application executable itself.

Place the file you want to send (the firmware file usually) in the same folder where you find the Tftpd64 program file. The folder exposed through TFTP can be changed by clicking on Browse button, but in most situations you don’t need to do that.

Configure your ethernet port according to your device’s own recovery method as detailed in Rescue from failed firmware upgrade, note that in most cases you can’t use that port to connect to the internet until you reconfigure it back like it was before.

Double-click on the Tftpd64 program file and you should get a Windows Firewall popup asking you to grant access. Check both options, to allow Tftpd64 to communicate over both home/work and public networks. This is very important, if the Windows Firewall blocks your TFTP server you won’t be able to access it from the device you want to recover.

Click on the drop-down menu called Server Interfaces and select your PC’s Ethernet port.

Tiny PXE

Tiny PXE seems to do the same as Tftpd64 plus BOOTP support (particularly useful for MikroTik devices).

On Linux

Dnsmasq

Dnsmasq is pre-installed in most distributions. Put an image file into your directory — actual name will vary. Then run TFTP server:

atftpd

You can also use atftpd:

Install atftpd from repository on Debian/Ubuntu/Mint

Install atftpd from repository on RedHat/Fedora/Centos

Create directory where you want to put the image file

Put an image file into your directory — actual name will vary

Change the ownership of the folder and the file in it

If not set, you should try running TFTP server as superuser.

Testing TFTP server

If you have received the file, congratulations, it’s ready.

Источник

dimio.org

В заметке про установку прошивки dd-wrt на D-Link DIR-620 я упоминал о замене стандартного загрузчика роутера на загрузчик от Zyxel Keenetic, после чего становится возможной загрузка прошивок в DIR-620 при момощи tftp. Нужно это может быть во-первых для того, чтобы не пересобирать сторонние прошивки в формат, понятный загрузчику, доступному через веб-интерфейс; во-вторых — для восстановления прошивки роутера, если что-то пошло не так и веб-интерфейс недоступен.
Поскольку процесс установки прошивки через tftp под Windows детально рассмотрен на сайте deadc0de, а я в основном использую Linux-машины дома, опишу загрузку dd-wrt в DIR-620 через tftp именно для Linux.

Как загрузить прошивку dd-wrt при помощи tftpd

  • Для начала устанавливаем tftp-сервер — либо сам tftpd (работает в интерактивном режиме), либо atftp(клиент, можно использовать для проверки работы сервера)/atftpd(сервер), работающий в неинтерактивном режиме. atftp для загрузки прошивки удобней, чем tftp:
  • Выключаем питание роутера, соединяем кабелем порт LAN1 роутера с выходом сетевой карты компьютера, в моем случае проводной интерфейс имеет имя eth0 (при необходимости изменить имя сетевого интерфейса в Linux можно за пару минут);
  • Меняем IP-адрес и маску подсети на компьютере, с которого будет устанавливаться прошивка:
Читайте также:  Windows зависает при загрузке рабочего стола

Команду нужно выполнять от суперпользователя, например при помощи sudo;
Набираем в консоли следующую команду:

Настройка atftpd

После установки ftp-сервера atftpd ( sudo apt-get install atftpd ) может возникнуть необходимость выполнить некоторые настройки для его корректной работы. Например — создать рабочую директорию, которая будет корневой для сервера:

Затем отключаем запуск демона через «супер-сервер» inet.d, изменив значение переменной USE_INETD в файлах /etc/default/atftpd и /etc/init.d/atftpd с TRUE на FALSE:

После этого ftp-сервер можно будет запускать с помощью команды /etc/init.d/atftpd start .
Постоянно используемые опции запуска можно перечислить в переменной OPTIONS, находящейся в файле /etc/init.d/atftpd. Например:

—user nobody — от имени какого пользователя будет запущен демон;
—bind-address 0.0.0.0 — ftp-сервер будет обрабатывать запросы, поступающие на указанный ip-адрес;
—no-multicast — сервер не будет реагировать на широковещательные запросы, обрабатывая только прямые;
/var/aftpd_dir — созданная ранее рабочая директория для сервера.

Остаётся только запустить сервер и проверить его работоспособность, подключившись к нему tftp 127.0.0.1 . Тестовый файл (test_file), расположенный в директории /var/aftpd_dir, можно получить при помощи команды put:

/test_file /test_file
Sent 10 bytes in 0.0 seconds
tftp>

Источник

Прошивка роутер tftp linux

Последняя версия: OpenWrt 21.02.0
В данной теме необходимо размещать изображения и логи под спойлером

OpenWrt — встраиваемая операционная система, основанная на ядре Linux, и предназначенная, в первую очередь, для домашних маршрутизаторов. Основные компоненты включают в себя ядро Linux, util-linux, uClibc или musl и BusyBox. Исходный код открытый. Распространяется под лицензией GNU GPL

Проект LEDE разработан на основе линукса, встраиваемый мета-дистрибутив базирующийся на OpenWRT, ориентирован на широкий спектр беспроводных маршрутизаторов SOHO и не-сетевых устройств. “Linux Embedded Development Environment” (Встраиваемая среда разработки линукс).
LEDE отвернулся от материнского проекта в мае 2016 года, с целью продолжить разрабатывать лучшее программное обеспечение в открытой модели управления и поощрение новых разработчиков внести свой вклад и усилия в области развития.

  • Данная тема предназначена для обсуждения настроек, процесса установки на ваш маршрутизатор и всего что связано с прошивкой OpenWrt/LEDE.
  • В данной теме не обсуждают компиляцию из исходных кодов и пересборку, для этого есть тема Сборка OpenWrt/LEDE из исходных кодов

Настройка TFTP-сервера tftpd-hpa

Установим пакет tftpd-hpa:

содержащий настройки сервера. Приведём его к следующему виду:

В настройках указаны дополнительные опции:
create разрешает серверу создавать новые файлы,
ipv4 предписывает ему ожидать подключений только на адресах IPv4,
umask предписывает сбрасывать бит записи для группы и все биты доступа для остальных пользователей,
permissive предписывает не проводить никаких проверок прав доступа к файлу сверх производимых операционной системой.
Создадим каталог для tftp-сервера, дадим серверу доступ к каталогу:

sudo mkdir /var/tftp

sudo chown tftp:tftp /var/tftp

Можно также поменять домашний каталог пользователя tftp в файле /etc/passwd на /var/tftp.

Теперь просто прописываем нужные нам ip адреса через gnome network manager и все.

Осталось перезапустить демона, чтобы он начал работу с новым каталогом:

Сообщение отредактировал stp101 — 05.10.21, 17:00

Где найти прошивку для TP-Link TL-WR941N/ND v3.1

На данный момент

Мощность датчика на максимум. Перебрал все каналы. На телефон выдает почему то максимум 65.0 Mbit/s хотя он поддерживает 72 Mbit/s. Родная прошивка выдает ему всегда скорость 130. У DD-WRT тоже с этим проблемы!
Тем устройствам которым положено в режиме N на 40hz работать на всю катушку — присваивается ограниченная скорость. Пока что не могу понять в чем дело.

Сообщение отредактировал yarikx600 — 01.08.18, 19:19

Сообщение отредактировал stp101 — 01.08.18, 19:49

Убедитесь что в /etc/config/igmpproxy

config igmpproxy
option quickleave 1
# option verbose 2

config phyint
option network wan
option zone wan
option direction upstream
list altnet 192.168.0.0/16
list altnet 172.16.0.0/12
list altnet 10.0.0.0/8

config phyint
option network lan
option zone lan
option direction downstream

А в /etc/config/firewall

config rule
option name ‘Allow-IPTV-IGMPPROXY’
option src ‘wan’
option proto ‘udp’
option dest_ip ‘224.0.0.0/4’
option target ‘ACCEPT’
option family ‘ipv4’
option dest ‘lan’

config rule
option name ‘Allow-IGMP’
option src ‘wan’
option proto ‘igmp’
option family ‘ipv4’
option target ‘ACCEPT’

Еще проблема может быть из-из появившейся поддержки IGMP snooping.

В разных темах замечал что люди интересовались как выключать wifi в OpenWrt в заданное время, собственно вот небольшая инструкция.
Есть два варианта.

Читайте также:  Windows iis ftp сервер

Вариант 1 — через cron.

Для этого нужно перейти в Cистема -> Запланированные задания
И вписать нужную команду в это окно

Подробно расписано тут: DD-WRT — альтернативная прошивка (Пост stp101 #52504079) принцип одинаковый, так что будет работать и в OpenWrt

Вариант 2 — через веб интерфейс.
Это вот такая штука

Или через консоль, подключаемся по ssh и даем команды opkg update (обновляем список пакетов) и ставим opkg install luci-app-wifischedule (все остальные пакеты должны сами подтянуться, если не подтянутся, доустановите вручную opkg install wifischedule и opkg install luci luci-i18n-wifischedule-ru)
Вот и все 🙂 Теперь можно переходить в Сервисы -> Wi-Fi планировщик и настраивать расписание работы WIFI

Сообщение отредактировал stp101 — 06.09.18, 16:07

1) Подготовить USB-флешку. На флешке два раздела. Первый на 1 ГБ с файловой системой ext4. Второй — на всё оставшееся пространство тоже с файловой системой ext4.

2) Воткнуть флешку в роутер. Обновить список пакетов и установить необходимые:

3) В LuCi появится новый пункт меню, связанный с монтированием разделов накопителя (System → Mount Points). Там нужно нажать кнопку Generate Config, которая обнаружит разделы на подключённом накопителе — в Mount Points появятся разделы /dev/sda1 (1024 MB) и /dev/sda2

4) Нажать Edit возле sda1, включить Enable this mount, в качестве Mount point выбрать /overlay. Точно так же включить автомонтирование sda2 в качестве /data
В /data можно закачивать торренты и т. п. Это просто раздел под ваши нужды. У меня туда статистика использования трафика собирается, например.

5) Скопировать содержимое /overlay на флешку. В терминале:

6) Перезагрузить роутер (если всё получилось, то на странице Software должно прибавиться количество свободного места)

В случае проблем (допустим, накосячили с настройками так, что потеряли доступ к роутеру) вы всегда можете выключить роутер, воткнуть флешку в компьютер, поправить настройки.

Для любителей микрооптимизации: во-первых, читать это
Если желание оптимизировать ещё не пропало, можно заменить ext4 на F2FS (соответственно вместо kmod-fs-ext4 ставить kmod-fs-f2fs)
Если к использованию F2FS вы не готовы, а желание сэкономить ресурс флешки сильнее страха приключений на пятую точку, то:
— в п.1 после создания на флешке разделов выполнить в терминале:

Сообщение отредактировал Dart Raiden — 08.04.19, 22:43

Предварительные требования:
— прошита OpenWrt 18.06
— установлен веб-интерфейс LuCi
— роутер имеет доступ в Интернет

1) Обновить список пакетов (System → Software → Update lists), установить OpenVPN:

Впрочем, будет работать и openvpn-openssl. Если вы используете что-то более ранее, чем OpenWrt 18.06, то жизненно необходимо установить openvpn-openssl вместо openvpn-mbedtls.

2) Скачать файл конфигурации, положить .ovpn в /etc/openvpn
Я не буду подробно описывать процесс перемещения файлов в файловую систему роутера, вы можете воспользоваться WinSCP, SFTP-плагином для Total Commander (плагин умеет работать и по SCP), либо прямо из консоли с помощью wget и unzip, способов много.

Отредактировать этот файл, дописав куда-нибудь в его середину строку:

config openvpn antizapret

option enabled 1
option config /etc/openvpn/antizapret-tcp.ovpn

(опять же, способ редактирования конфига оставлен на усмотрение читателя: одному удобно через vi, другому через тот же WinSCP). antizapret-tcp.ovpn — это файл, который вы на прошлом шаге копировали. Если его название изменилось, то, соответственно, исправьте его и тут в конфиге.

4) Включить и запустить VPN (System → Startup). Проверить, что всё запустилось корректно. В Status → System Log будет примерно следующее:

5) Создать новый интерфейс (Network → Interfaces → Add new interface):
Name of the new interface: antizapret
Protocol of the new interface: unmanaged
Cover the following interface: Ethernet Adapter: «tun0»
Advanced settings → Bring up on boot
Firewall Settings → Create: → antizapret
Save and Apply

6) Настроить зону файерволла antizapret (Network → Firewall → antizapret → Edit):
Input: reject
Включить Masquerading и MSS clamping
Allow forward from source zones: lan
Save and Apply

7) Исправить /etc/config/dhcp:
значение

изменить с 1 на 0

8) Указать DNS-сервер, который будет использоваться, если подключение к VPN-серверу разорвано:
в настройках обоих интерфейсов WAN и WAN6 (Network → Interfaces) отключить Use DNS servers advertised by peer на вкладке Advanced settings
в настройках интерфейса WAN в поле Use custom DNS servers вписать адрес 77.88.8.8
Save and Apply

На сообщения «WARNING: this configuration may cache passwords in memory» в журнале внимания обращать не нужно, это неактуально, потому что паролей у нас нет. Если напрягает, можете добавить в файл конфигурации строчку

Плюсы:
— через VPN идёт лишь трафик до заблокированных доменов, остальной трафик идёт «напрямую» (нет потери скорости, у вас не меняется IP)
— следствие из предыдущего: трафик небольшой и поддержание бесплатного сервиса не бьёт по карману владельца

Читайте также:  Windows 10 резервировать или нет

Предварительные требования:
— прошита OpenWrt 18.06
— установлен веб-интерфейс LuCi
— роутер имеет доступ в Интернет

1) Обновить список пакетов (System → Software → Update lists), установить OpenVPN, собранный с поддержкой mbed TLS:

Впрочем, будет работать и openvpn-openssl. Если вы используете что-то более ранее, чем OpenWrt 18.06, то жизненно необходимо установить openvpn-openssl вместо openvpn-mbedtls.

2) Скачать файл конфигурации, положить .ovpn в /etc/openvpn
Я не буду подробно описывать процесс перемещения файлов в файловую систему роутера, вы можете воспользоваться WinSCP, SFTP-плагином для Total Commander (плагин умеет работать и по SCP), либо прямо из консоли с помощью wget и unzip, способов много.

3) Заменить содержимое /etc/config/openvpn на:

config openvpn zaborona

option enabled 1
option config /etc/openvpn/zaborona-help.ovpn

(опять же, способ редактирования конфига оставлен на усмотрение читателя: одному удобно через vi, другому через тот же WinSCP). zaborona-help.ovpn — это файл, который вы на прошлом шаге копировали. Если его название изменилось, то, соответственно, исправьте его и тут в конфиге.

4) Включить и запустить VPN (System → Startup). Проверить, что всё запустилось корректно. В Status → System Log будет примерно следующее:

5) Создать новый интерфейс (Network → Interfaces → Add new interface):
Name of the new interface: zaborona
Protocol of the new interface: unmanaged
Cover the following interface: Ethernet Adapter: «tun0»
Advanced settings → Bring up on boot
Firewall Settings → Create: → zaborona
Save and Apply

6) Настроить зону файерволла zaborona (Network → Firewall → zaborona → Edit):
Input: reject
Включить Masquerading и MSS clamping
Allow forward from source zones: lan
Save and Apply

7) Если у вас пропал доступ в Интернет после этого пункта, не делайте его. В настройках интерфейса «WAN» (Network → Interfaces) отключить Use DNS servers advertised by peer на вкладке Advanced settings. В Use custom DNS servers вписать адрес 74.82.42.42. Нажать рядом «+», во вторую появившуюся строку вписать адрес 77.88.8.8. Save and Apply.

В настройках интерфейса «WAN6» (Network → Interfaces) отключить Use DNS servers advertised by peer на вкладке Advanced settings. В Use custom DNS servers вписать адрес 2001:4860:4860::8888. Нажать рядом «+», во вторую появившуюся строку вписать адрес 2001:4860:4860::8844. Save and Apply.

На сообщения «WARNING: this configuration may cache passwords in memory» в журнале внимания обращать не нужно, это неактуально, потому что паролей у нас нет. Если напрягает, можете добавить в файл конфигурации строчку

Плюсы:
— через VPN идёт лишь трафик до заблокированных доменов, остальной трафик идёт «напрямую» (нет потери скорости, у вас не меняется IP)
— следствие из предыдущего: трафик небольшой и поддержание бесплатного сервиса не бьёт по карману владельца

а также отключить DNS over HTTPS в сетевых настройках браузера.

Не забудьте перезапустить dnsmasq:

1) задать пароль администратора (через LuCI)

2) в разделе System → Administration включить Dropbear на интерфейсе «lan» (если включить на «wan», то он будет доступен всему интернету (если у вас белый IP), вскоре его начнут подбирать трудолюбивые китайцы. Поэтому, не вешайте на «wan»).

3) с помощью WinSCP подключиться со следующими параметрами:
Host name: 192.168.1.1
Login: root
Password: пароль_который_вы_установили_на_шаге_1

Получаете обычный 2-панельный файловый менеджер, с помощью которого можно перетаскивать файлы с ПК на роутер и обратно, а также править файлы на роутере).

1) задать пароль администратора (через LuCI)

2) в разделе System → Administration включить Dropbear на интерфейсе «lan» (если включить на «wan», то он будет доступен всему интернету (если у вас белый IP), вскоре его начнут подбирать трудолюбивые китайцы. Поэтому, не вешайте на «wan»).

3) с помощью SFTP-плагина для TC/DC (этот плагин, вопреки своему названию, умеет работать и по SCP) подключиться со следующими параметрами:
Connect to: 192.168.1.1
User name: root
Password: пароль_который_вы_установили_на_шаге_1

Если вы создаёте или редактируете файл в Windows, а затем копируете его на роутер, то перед копированием убедитесь, что переносы строк в файле UNIX-овские, а не Windows-овские! Для этого достаточно открыть файл в Notepad++ и в статусной строке внизу справа найти «Unix (LF)». Если там «Windows (CR LF)», то щёлкните правой кнопкой по надписи, выберите «Unix (LF)» и сохраните файл. Всё это нужно повторять после каждого редактирования, поэтому сначала редактируете как душе угодно, а затем уже проверяете переносы и заливаете на роутер.

Сообщение отредактировал Dart Raiden — 24.09.21, 00:06

Источник

Оцените статью