Как поставить openwrt на vmware

Обновлено: 03.07.2024

В этом видео мы разберем:
- как установить OpenWRT на VMWare;
- сделаем базовые настройки по аналогии с обычным роутером;
- посмотрим как устанавливать в OpenWRT дополнительное ПО;
- рассмотрим несколько наглядных примеров по настройке файрвола и проброса портов.
________________________________________________________________________________

Мной был разработан специальный обучающий видеокурс посвященный АУДИТУ БЕЗОПАСНОСТИ, ПЕНТЕСТИНГУ И ЗАЩИТЕ WiFi СЕТЕЙ.

На его воплощение ушло более 2 лет, курс состоит из 20 уроков общей продолжительностью более 18 часов. Ему нет аналогов - ни у нас, ни за океаном.

В курсе я очень подробно раскрываю тематику пентестинга и защиты WiFi сетей, начиная с самых основ и заканчивая довольно таки серьёзными вещами.
Поэтому курс подойдёт как для абсолютных новичков, так и для пентестеров с опытом.

Видеобзор курса:
ficomp.info/mate/videot/e8uL3KSZicPYlJs
Примеры уроков:
ficomp.info/mate/videot/f9Fytp7blbjWZqs
ficomp.info/mate/videot/kt9n2W7UpMWWgn0

Kommentteja

Всегда восхищался такими людьми которые так все понятно упаковывают . Спасибо 🙏 и процветание каналу

Годно) но небольшое дополнение: на VMWare Workstation 15 (не PRO) процесс создания машины будет лишен возможности выбора hdd типа IDE - придется согласиться на SCSI, потом после создания в настройках машины создать дополнительно второй hdd тип IDE и указать в мастере использовать скачанный *.vmdk, и уже после удалить лишний изначальный SCSI. - на SCSI OpenWRT не запустится 100%.

Благодарю за дополнение !

Так зачем нужен конкретно Open WRT , если в принципе может подойти любой дистрибутив ?

Учитывайте специфику моего канала.

как настроить openwrt на реальном оборудование на ПК я начинающий google яндекс ещё не помог

@Боевое Вождение получилось с другой OPNsense

Вы можете попрактиковать на виртуалке, а потом перейти уже на реальную железку. По сути настройка OpenWRT - не сильно отличается от той же на обычном роутере.

Есть полезная утилита StarWind V2V Converter для создания образов дисков и конвертирования различных образов дисков виртуальных машин друг в друга. Img конвертирует в vmdk в один клик.

Да, я в курсе, мне уже писали, благодарю за инфу !

автор молодец, наткнулся случайно на ваш канал когда искал инфу о сервисе VPNKI, все очень подробно и доходчиво объясняете, хотелось бы еще коротенькое видео о настройке OpenWRT на VirtualBox

@Боевое Вождение спасибо уже разобрался, поставил без особых проблем 👍

На канале есть ролик по установке OpenWRT на VMware. Принципиально не сильно отличается от установки на VirtualBox.

а туда можно будет типа nordvpn воткнуть и подключиться к нему с хоста? :)

q1ncite • Информационная Безопасность 8 kuukautta sitten

Если в репозиториях OpenWRT он есть, то конечно можно.

Давненько искал, щас заценим))

VI ещё нормальный редактор. Скажите спасибо, что не нужно редактировать файлы потоковыми редакторами типа sed или ed. Это бы был пушистый упитанный зверёк

досмотрел до момента про редактор ви и поставил лайк. орнул в голосину про этот редактор! :-D на канал уже подписан, смотрю дальше ))

Отлично всё рассказываете! Понравилась подача материала для неопытных, как раз вовремя. Хотелось бы посмотреть про настройку балансировки от двух провайдеров, как перенастроить порты, правила настроить.

Буду иметь ввиду !

А где можно глянуть о том, чтобы установить линукс на vmware либо на virtual box? Ситуация у меня такая: имеется несколько файлов с расширением .bin и мне надо их конвертировать, чтобы потом полученный файл можно было выбрать для запуска на виртуальной машине. Я не помню точно, но на этом канале было что-то о линукс, где в терминале надо было писать какие-то команды. --- И ещё момент неприятный: до этого я ни разу не устанавливал линукс на виртуальную машину, поэтому даже имея образ линукс системы, я не имею понятия, как её можно установить и какие требования минимальны требуются от мощности реального ноутбука? Могу на почту написать, если потребуется информация с моей стороны. Заранее, спасибо!

1. Мануалы по установке Linux, есть на просторах, просто поищите. 2. Через 1,5-2 месяца выйдет мой курс, там эта подробно рассматривается. Но наверное он таки вам не подойдет, т.к. посвящен вардрайвингу.

Редкий контент, годно !

Как сделать так что бы трафик из openwrt не был виден провайдеру? Tor, i2p, dns script? Было бы очень интересно посмотреть на такую реализацию и на виртуальном openwrt это все продемонстрировать.

Боевое вождение вот что то похожее нашёл, как только к роутеру все это дело применить ficomp.info/mate/videot/jb6o1aetltC-nZ8

Боевое вождение Я думаю многим это было бы интересно, очень жду видео про это!

Ну самое верное - это i2p.По поводу демонстрации - не могу обещать когда, - очень много нюансов. При том это надо правильно сделать, чтобы трафик блокировался при отвале туннеля. Очень часто людей палят именно по этой причине.

а если сетевая не интел? где искать и что писать?12:40

Карты виртуальные, вам какая разница ? Пишите то же самое !

Спасибо за видео! Но непонятны приседания с конвертацией образа диска. Если уж ставить на виртуальную машинку, то достаточно любого live дистрибутива, alpine linux например, с размером жёсткого диска в 256МБ. В live режиме достаточно скачать образ OpenWrt и с помощью dd записать его. Ну и предпочтительно все-таки записывать образ не в ext4, а в squashfs. В этой фс можно обновлять прошивку или возвращаться в исходному состоянию, как будто бы вы работаете с настоящим роутером, в ext4 этого сделать не получиться. Автор, скажите, цель-то какая этой установки на виртуальную машину? Для разработки и отладки ПО, это понятно. А вы зачем это сделали? Просто показать что работает? Работает, да. Ну и автор просто не осилил vi. :) Для работы с роутером ещё один хост с виртуалкой не нужен, можно выводить хост-машину через виртуальный роутер. Вы уж сильно не огорчайтесь, я уже давно это прожевал, просто делюсь.

1. На счёт приседаний с конвертацией, конечная цель одна: как можно проще, доступными для конечного пользователя методами, и на максимально простом, понятном ему языке, добиться конечной цели, а именно работающей на виртуалке OpenWRT. 2. На счёт "vi", я то давным давно осилил, просто пытался показать зрителям эмоции, которые посещают при первом знакомстве с ним ) Поэтому и разжёвывал каждую букву с паузами что нажимать, что бы их, эти эмоции не постигли в том числе )) 3. Зачем OpenWRT на виртуалке ? а) многие боятся устанавливать OpenWRT на железку, не пощупав руками что это; б) Помимо того, что вы указали сами, это безусловно не к чему не обязывающее тестирование, всего чего угодно, с моментальными откатами в исходное состояние. Пример: следующее видео вышедшее на канале ficomp.info/mate/videot/nJ6i2W-5qLDMlo0 4. Зачем Windows на виртуалке ? а) это очень наглядно . что крайне немаловажно для понимания происходящего; б) это удобно, для разного рода демонстраций; в) нельзя многие вещи необходимые для тестирования, например какие то ограничения для дальнейшей демонстрации, накладывать на хостовую машину; г) в свою очередь с виртуалкой я вообще делаю что мне хочется. Ну и хороший всему вышеперечисленному пример, опять же следующее видео вышедшее на канале ficomp.info/mate/videot/nJ6i2W-5qLDMlo0

Доброго вечора, а скажіть будьласка, що ви думаєте про обладнання MikroTik, та його функціонал, і чи є сенс в OpenWRT якщо є MikroTik?

@Aleksandr Maslo 1. Плюшки которых нет в RouterOS, в альтернативных прошивках, и в частности в OpenWRT безусловно есть. Их очень много. 2. Вопрос в другом, какую цель вы преследуете ? И стоит ли накатывать другую прошивку, вместо родной прекрасно работающей, у которой своего функционала завались. 3. *Это моего субъективное мнение, оно может быть не верным, потому как я уже говорил, я ярый фанат MikroTik )))* 4. А если хотите просто поиграться, посмотреть: чо ?как? - купите что нить дешевенькое и гуляейтсь в своё удовольствие.

@Боевое Вождение Доброго дня. питання саме між фунціоналом прошивок обладнання MikroTik та інших венденів але з прошивкою від Open чи DD-WRT. якщо купувати то що краще Мікрот чи щось для подальшої перепрошивки? Чи є плюшки в альтернативних прошивках, яких немає в RouterOS? Питання не в перепрошивці Мікрота під OpenWRT на це вже відповіли на вебінарах Козловського.

1. Сказать честно, MikroTik это моя слабость )) Невероятное сочетание огромного функционала и приемлемой цены. Очень мне нравится их оборудование и реализация подхода к настройкам в RouterOS. 2. Есть ли смысл в чём ? Перешивать RouterOS на OpenWRT ? Как по мне безусловно нет, лучше взять что то другое, если уж так хочется. Ну это если я вопрос правильно понял.

Может я не первый этот вопрос задаю. Как скрыть своё подключение?

@Боевое Вождение Тогда ждём ваш курс, удачи.

1. Да, не первый. 2. Эта тема рассматривается у меня в курсе, поэтому я здесь эти вопросы не разбираю.

Как установить драйвер нвидиа на кали? Через оф сайт кали не устанавливается. Неужели надо ставить также как на винде? Скачивать нужную прогу, грузиться через безопасный режим. Я думал на кали только списком команд можно поставить драйверы

@Elliott Root Ничего не скажу, я с этим материалом не знаком.

@Боевое Вождение я вот собираюсь купить курс от offensive security OSWP. Что думаете насчёт их курсов?

1. В кали проприетарные драйвера, ставятся сложнее чем в винде. 2. Эта тема рассматривается у меня в курсе, поэтому я здесь эти вопросы не разбираю.

Я недавно не был занят, и я хочу изучать openwrt, поэтому я попытался создать его для удовольствия. Конечно, это не в форме компиляции исходного кода, которая занимает слишком много времени.

Сначала загрузите образ существующей системы на официальном сайте. Путь следующий:

Тогда найдиcombined-ext4.img.gzПосле загрузки этого изображения распакуйте его и получите файл .img:


Установка Vmware не будет говорить, вы можете увидеть мой другой блог.

Поскольку файл .img не может напрямую использоваться vmware и его необходимо преобразовать в формат vmdk, необходимо использовать инструмент qemu-img.

Используйте прямо под Ubuntu:

После установки используйте следующую команду для создания файла формата .vmdk:



После завершения подготовки запускается среда openwrt.

Откройте VMware и выберите «Создать новую виртуальную машину».

1. Выберите «Custom (дополнительно)» в конфигурации виртуальной машины:


2. Нажмите «Далее», «Аппаратная совместимость оборудования виртуальной машины».


3. Перейдите к следующему шагу, выберите «Я установлю операционную систему позже». Из установки операционной системы:


4. Перейдите к следующему шагу, выберите «Linux» в гостевой операционной системе и выберите «Other Linux 3. Kernel» в версии:


5. Перейдите к следующему шагу, задайте имя виртуальной машины в поле «Имя виртуальной машины», просто назовите его случайным образом. Здесь установлено значение «openwrt-15.05». Если указан путь, который вы хотите сохранить, то здесь / home / Баллак / VMware / OpenWRT-15,05 /:


0

6. Перейдите к следующему шагу, оставьте процессоры и память без изменений:



7. Перейдите к следующему шагу. Выберите «Использовать мостовую сеть» для сетевого подключения. В большинстве интернет-страниц здесь указано, что для него установлено «Использовать сеть» Преобразование адресов (NAT) », но я не могу пропинговать хост после теста. Отметьте это первым! !


8. Перейдите к следующему шагу. Типы контроллеров ввода / вывода могут оставить значения по умолчанию:


9, перейдите к следующему шагу, выберите тип виртуального диска IDE, Вы должны выбрать IDE здесь, иначе вы не найдете раздел при запуске !!!


10, перейдите к следующему шагу, диск выбирает «Создать новый виртуальный диск»:


11. Перейдите к следующему шагу. Размер диска остается неизменным:


12. Перейдите к следующему шагу, просто оставьте файл диска без изменений:


13 Перейдите к следующему шагу, выберите «Настроить оборудование»:




14. Извлеките новый CD / DVD (IDE), звуковую карту, принтер и USB-контроллер, а затем закройте, чтобы выйти.


15, нажмите Finish и увидите следующий интерфейс, указывающий, что создание было успешным:


Выполнив описанные выше действия, не спешите запускать, сначала скопируйте файл openwrt-15.05.1-x86-generic-комбинированный-ext4.vmdk, полученный с помощью инструмента qemu-img, в рабочий каталог вновь созданной виртуальной машины openwrt

Введите рабочий каталог виртуальной машины openwrt и просмотрите файл с помощью команды ls:


Измените 1: 1.fileName = "openwrt-15.05.vmdk" на:

Сохранить и выйти! !

После настройки запустите openwrt:


Так началось успешно! ! !

Однако вы обнаружите, что хост не имеет доступа к openwrt через веб-страницу, здесь нужно только изменить файл / etc / config / network:


Вы можете видеть, что ipaddr для lan0 - 192.168.1.1. Так как ip моего хоста - 192.168.1.142, шлюз маршрутизатора также 192.168.1.1, поэтому вы не можете получить доступ к openwrt. Измените lan0 ipaddr на 192.168.1.4 здесь Хосты находятся в одном сегменте сети.

Пересмотренная версия выглядит следующим образом:


Затем сохраните, выйдите, выполните /etc/inid.d/network restart, чтобы перезапустить службу.

Затем хост пингует 192.168.1.4, в это время он может пропинговать:


Затем откройте браузер, введите 192.168.1.4, вы можете увидеть нормальный доступ:


Нажмите «Войти», интерфейс предложит вам установить пароль:


После установки пароля просто нажмите «Сохранить и применить».

После входа в систему с учетной записью root и паролем, который вы только что установили, вы можете увидеть настоящий интерфейс openwrt:


Сделай это, закрой работу! ! !

Интеллектуальная рекомендация

Поверните строку в целые числа

Тема Описание Преобразуйте строку в целое число (реализация функции integer.valueof (строка), но строка не совпадает 0), требуя функции библиотеки, которая нельзя использовать для преобразования целых.

Docker создает репликацию Redis Master-Slave

Centos установить докер быстрый старт докера Создать Dockerfile Поместите файл на сервер Linux, создайте папку / usr / docker / redis и поместите его в этот каталог Выполните следующий код в каталоге .


Установка GateOne на новом CentOS7

Установка GateOne на новом CentOS7 В последнее время исследуются такие инструменты, как WebSSH2, в настоящее время требуется встроить терминал ssh в веб-приложение и найти GateOne. GateOne - это веб-в.


Примечания к исследованию Qt4 (5), QWaitCondition of QThread Learning


Практические занятия: решения проблем системы управления обучением

Сразу после получения задания будет много трудностей и много проблем. Хорошо иметь проблему, а это значит, что вы можете получить новые знания. Неважно, есть ли проблемы, ключ в том, как их решить. пр.

Вам также может понравиться


искробезопасная практика (5) обратный индекс

задний план Поисковые системы обычно создают инвертированный индекс ключевых слов. Ключевое слово - индекс, за которым следуют веб-страницы, содержащие ключевое слово. На этот раз, используя данные мо.


Решение центра тяжести неправильного многоугольника

Справочник статей Во-первых, решение центра тяжести неправильных многоугольников 1.1 Метод расчета треугольника центра тяжести 1.2 Метод расчета площади треугольника 1.3 Метод расчета площади полигона.

Установка программ

В первую очередь, установите эмулятор VirtualBox, если его у вас нет. Чтобы иметь возможность выполнять команды вне консоли окна эмулятора, понадобится SSH клиент. Например, Putty. При этом вам станет доступен буфер обмена домашней системы. Для удобного доступа к файловой системе «роутера» нужен графический SCP клиент. Например, WinSCP для Windows. Для Linux будет достаточно встроенного файлового менеджера. Например, Krusader, Dolphin, Nautilus.

Выбор прошивки

Если интересующая вас прошивка доступна только как raw образ (img.gz, image.gz, bin) будет необходимо воспользоваться входящим в комплект VirtualBox конвертером. Под Windows для этого сохраните в папке VirtualBox (могут понадобиться права администратора) следующий текстовой файл и задайте ему расширение .bat или .cmd:

После чего распакуйте скачанный образ прошивки и перетащите его на данный скрипт. Полученный .vdi образ можно подключать к виртуальной машине.

Настройка VirtualBox


Создайте новую виртуальную машину. Тип – Linux, версия – Linux 2.6. Откажитесь на данном этапе от подключения диска — это будет сделано позже.
Откройте свойства новой виртуальной машины (кнопка «Настроить») и перейдите в раздел Сеть. Вместо режима NAT выберите Сетевой мост (Bridged) – это позволит получить доступ к виртуальной машине с других устройств в сети. Если же у вас нет домашней сети (хотя бы роутера) оставьте NAT и добавьте второй адаптер «Виртуальный адаптер хоста».
Затем в разделе COM-порты обязательно поставьте галочку, чтобы активировать эмуляцию порта. В противном случае OpenWrt не сможет загрузиться.
Наконец, в разделе Носители добавьте к контролёру IDE образ прошивки OpenWrt, как жёсткий диск. Если к контроллёру SATA подключены устройства – удалите их.
Нажмите OK, сохранив настройки.

Выбор ОС

Носители

Настройки сети

COM-порт

Настройка сети


Запустите виртуальную машину. По окончании загрузки нажмите Enter. Станет доступна консоль.

Первый запуск


В первую очередь задайте пароль администратора, введя passwd и новый пароль в ответ на приглашение.
По умолчанию OpenWrt создаёт собственную подсеть, игнорируя существующие и получает в ней адрес 192.168.1.1. Вы можете попробовать подключиться к виртульной машине по этому адресу, задав своему компьютеру (сетевой карте либо виртуальному адаптеру хоста, в зависимости от сделанных настроек VirtualBox) статичный адрес в подсети 192.168.1.*. Но удобнее вариант, при котором эмулируемый «роутер» соединяется с существующей сетью, получая доступ в интернет и к устройствам в вашей сети. При помощи встроенного текстового редактора vi можно редактировать конфигурационные файлы. Наберите vi /etc/config/network для изменения настроек сети. Управление курсором в vi осуществляется стрелками, для удаления строки можно нажать dd, переход в режим редактирования происходит нажатием кнопки i, возврат в режим команд по Esc. Приведите данный файл к следующему виду (поменять option proto со static на dhcp):

После чего перейдя по Esc в коммандный режим наберите :wq и Enter для сохранения и выхода из редактора. Чтобы выйти без сохранения, наберите команду :q!. Эти настройки означают, что эмулируемый «роутер» попробует получить доступный ip адрес. Если у вас нет настоящего роутера и возможности получить более одного адреса — выберите в настройках сети VirtualBox режим «Виртуальный адаптер хоста».

Для применения новых настроек перезагрузите виртуальную машину или введите /etc/init.d/network restart.

После загрузки посмотрите адрес виртуальной машины, набрав ifconfig, в поле inet addr у eth0:

Поздравляю, OpenWrt запущена и доступна по сети. Имейте ввиду: данный адрес (192.168.1.23 в моём случае) — временный и может меняться после перезапуска эмулятора или спустя какое-то время (несколько часов). Запустите Putty и попробуйте подключиться к виртуальной машине по данному адресу. Логин для подключения – root, пароль вы задали при первой загрузке.

Доступ к файловой системе

Запустите WinSCP (или аналог) и подключитесь к виртуальной машине.

Вы увидите стандартный двухпанельный файловый менеджер. Теперь вы можете редактировать конфигурационные файлы в удобном графическом режиме. Так же возможно копировать файлы в «роутер» и обратно. Попробуйте перейти в правой части в корень (/), а затем в /etc/config/ и запустить network.

При желании внесите изменения и сохраните результат.

Установка пакетов

Имейте ввиду, архитектура вашей прошивки и устанавливаемого пакета должна совпадать.

Веб-интерфейс

Окно авторизации LuCI

В большинство версий OpenWrt изначально входит веб оболочка LuCI. LuCI расшифровывается как Lua Configuration Interface. Перейдите в браузере по сетевому адресу вашего «роутера», ведите заданный вначале пароль и сможете поэксперементировать с LuCI.

Доступен русский перевод. Для установки перейдите раздел System — Software, введите в поле Filter слово «russian» и на вкладке Available packages (russian) установите пакет luci-i18n-russian. Либо установите его при помощи opkg, как описано выше, а затем выберите язык в разделе System — System — Language and Style — Language.

Настало время опробовать свежий релиз OpenWRT 15.05 Chaos Calmer. А заодно я решил затестить, каково это - OpenWRT на x86 архитектуре, т.к. Линукс под рукой время от времени бывает нужен - для всяких экспериментов, ну или, хотя бы, флешку отформатировать для роутера. :) Раньше я для этого использовал ноут с ArchLinux-ом. Но ноут у меня накрылся, да и Arch я разлюбил, после того как он на systemd перешёл. как то лень его фактически с нуля по новой осваивать! Зато для этих целей прекрасно подойдёт виртуалка с уже полюбившимся мне OpenWRT!

Подготовка ПО
Качаем последнюю стабильную версию VirtualBox (на момент написания статьи - 5.0.6) и соответствующую версию Extension Pack для него. Устанавливаем VirtualBox и Extension Pack. В моём случае - на компьютере установлена Windows 7 64bit - она и будет использоваться как Хост-ОС.
Качаем образ OpenWRT. Тут выбираем нужный релиз, затем архитектуру x86 (либо x86/64, как я, собственно, и сделал в данном случае) и, наконец, нужный образ (в данном случае - openwrt-15.05-x86-64-combined-ext4.img.gz). Если есть готовый образ для VirtualBox (.vdi) - скачиваем его. Если же доступен только raw образ (.img.gz), то его потребуется переконвертировать в совместимый с VirtualBox формат. Для этого воспользуемся встроенным в VirtualBox конвертором. В папке с установленной VirtualBox создаём текстовый файл с расширением .bat или .cmd следующего содержания: "%

dp0VBoxManage.exe" convertfromraw --format VDI %1 "%

dpn1.vdi"
pause Затем распаковываем образ из скачанного архива и перетаскиваем его на созданный ранее скрипт. Полученный .vdi образ можно подключать к Виртуальной машине.

Создание виртуальной машины (ВМ)
Запускаем VirtualBox и жмём "Создать". Задаём имя, тип и версию гостевой системы:

На этапе подключения жёсткого диска выбираем "Использовать существующий виртуальный жёсткий диск" и подключаем наш .vdi образ с OpenWRT:

Затем Выбираем созданную ВМ и жмём "Настроить". На вкладке "Сеть" настраиваем сетевой интерфейс для связи ВМ с внешним миром. Мой хост-компьютер подключен к домашней сети и интернет через роутер. Поэтому удобнее всего для ВМ будет использовать тип подключения "Сетевой мост". Таким образом ВМ будет выглядеть в сети как отдельное устройство: будет иметь возможность общаться с другими устройствами в домашней сети (включая хост-компьютер), выходить в интернет, получать от роутера IP адрес по DHCP и т.д.

Здесь "Realtek PCIe GBE Family Controller" - это физический интерфейс хост-машины, подключенный к роутеру, через который будет организован "сетевой мост".

На вкладке "COM-порты" нужно обязательно поставить галочку "Включить последовательный порт", иначе OpenWRT не сможет запуститься.

Запуск ВМ и настройка сети
Запускаем созданную виртуальную машину. После окончания процесса загрузки нажимаем Enter - станет доступна консоль OpenWRT.

Создаём пароль для root: passwd По умолчанию OpenWRT использует на lan интерфейсе статический адрес 192.168.1.1 . Чтобы настроить ВМ для работы в нашей домашней сети, редактируем конфиг: vi /etc/config/network Так как в моей домашней сети устройства получают адреса от роутера по DHCP, приводим конфиг примерно к такому виду: config interface loopback
option ifname lo
option proto static
option ipaddr 127.0.0.1
option netmask 255.0.0.0

config interface lan
option ifname eth0
option proto dhcp Применяем настройки сети: /etc/init.d/network reload Чтобы ВМ получала от роутера фиксированный IP адрес, добавляем MAC-адрес виртуального адаптера в список постоянных аренд в настройках DHCP сервера на роутере и присваиваем ему нужный IP.

Также отмечу, что я в настройках ВМ включил два сетевых интерфейса: один - для связи с домашней сетью и интернетом, второй - для других целей. Оба - в режиме сетевого моста. OpenWRT по умолчанию определила первый интерфейс (eth0) как lan со статическим адресом 192.168.1.1, второй (eth1) - как wan с получением адреса по DHCP. Таким образом доступ из виртуалки в домашнюю сеть и интернет получился сразу "из коробки". Однако по умолчанию фаервол OpenWRT запрещает подключение к ней по SSH и к вэб-интерфейсу по http "извне" - то есть через wan интерфейс. Но так как виртуалка будет находиться в моей домашней сети, я просто переназначил интерфейсы lan и wan для удобства работы: config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'option netmask '255.0.0.0'

config interface 'wan'
option ifname 'eth0'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.1.10'
option netmask '255.255.255.0'
option ip6assign '60'

config interface 'lan'
option ifname 'eth1'
option proto 'dhcp'

В VirtualBox версии 5.0.4 у меня наблюдался такой баг: виртуальные (гостевые) машины видели по сети роутер, друг друга, выходили в интернет, НО не видели хост-машину, так же как и хост-машина не видела гостевые! Баг вылечился обновлением VirtualBox до версии 5.0.6.

Расширение дискового пространства
Ну и теперь, когда у нашей ВМ есть выход в интернет, можно устанавливать все необходимые пакеты, например: opkg update
opkg install nano mc В скачанном образе OpenWRT корневой раздел размером около 48мБ. Этого вполне достаточно для установки пакетов первой необходимости и выполнения многих задач. Однако, если нам этого недостаточно, то увеличим виртуальный жёсткий диск. В VirtualBox вроде бы для этого есть специальный инструмент и можно в принципе воспользоваться им. Но я сделал иначе.
В настройках виртуальной машины подключим ещё один виртуальный жёсткий диск. Выбираем "Создать новый диск", затем задаём его название, выбираем нужный размер и формат хранения:

Загружаем нашу виртуалку и проверяем, что система увидела второй диск: ls -la /dev | grep sd
brw-r--r-- 1 root root 8, 0 Oct 8 20:22 sda
brw-r--r-- 1 root root 8, 1 Oct 8 20:22 sda1
brw-r--r-- 1 root root 8, 2 Oct 8 20:22 sda2
brw-r--r-- 1 root root 8, 1 Oct 8 20:22 sdb Видим, что второй диск определился как /dev/sdb. Теперь просто копируем первый диск на него утилитой dd: dd if=/dev/sda of=/dev/sdb Останавливаем ВМ, удаляем из неё первый диск и грузимся со второго, оставшегося (теперь он уже станет /dev/sda). Можем убедиться, что диск у нас теперь стал действительно такого размера, какой мы задали, например утилитой cfdisk: cfdisk /dev/sda Однако видим, что наш корневой раздел sda2 так и остался размером 48мБ, а остальное место на диске осталось неразмеченным. Поэтому качаем LiveCD с утилитой GParted, подключаем его к виртуальному CD-приводу нашей машины, и загружаем с него виртуалку. Ну а дальше - дело техники: запускаем GParted, выбираем раздел /dev/sda2 и растягиваем его на всё неразмеченное пространство диска. В конце жмём "применить" ("Apply"), и выключаем машину. Вот и всё, теперь можно извлечь образ из виртуального CD-привода и снова загрузить виртуалку с жесткого диска. Проверяем результат: df -h
Filesystem Size Used Available Use% Mounted on
rootfs 7.9G 13.7M 7.9G 0% /
/dev/root 7.9G 13.7M 7.9G 0% /
tmpfs 122.6M 52.0K 122.6M 0% /tmp
tmpfs 512.0K 0 512.0K 0% /dev

При освоении openWrt или при разработке устройств на базе openWrt очень полезно собрать openWrt для X86. Это намного ускоряет процесс отладки, да и понимание, как что устроено, приходит гораздо быстрее. Поскольку сделать это достаточно просто, то предлагаю научиться это делать.

OpenWrt постоянно эволюционирует, и те пошаговые инструкции, которые работают сегодня, могут не работать через некоторое время, так, видимо, и случается с предыдущими how-to, которые размещены на этом сайте. Тем не менее, «make menuconfig» остается неизменным :)). Поэтому выполним его и произведем следующую конфигурацию.
Target System:
x86

Utilities:
filemanager:
mc

Думаю, что существует несколько путей установки OpenWrt на персональный компьютер, поэтому вариант, изложенный здесь, ни на что не претендует, это всего лишь вариант установки, который показался мне интересным.

1) Итак, для установки на x86 нужно выделить раздел на жестком диске с помощью какого-нибудь Acronis Partition Magic или любой другой подходящей для этой цели утилиты.

2) Монтируем раздел, например, вот так:

3) Копируем файловую систему openwrt из директории /openwrtX86/bin/x86. Также создаем там директорию /boot и копируем в неё образ ядра «openwrt-x86-generic-vmlinuz» вот отсюда /openwrtX86/bin/x86/.

4) Отмонтируем раздел, например, вот так:

Установка на этом завершена, осталось внести пункт для загрузки в меню grub. Поскольку у меня используется burg, то осталось внести пункт в меню загрузки burg.

Делается это тоже достаточно просто. Иногда сам себе говорю «спасибо», что не поленился и расписал на сайте, что, где и как делается, поскольку сегодня это помнишь, а завтра уже нет. То же самое касается и этого how-to, сегодня помню про burg, завтра - нет, поэтому по шагам про настройку burg :
1) Внести изменения в конфигурационный файл /etc/burg.d/40_custom , чтобы он имел следующий вид:

exec tail -n +3 $0

menuentry 'OpenWrt' --class gnu-linux --class gnu --class os --group group_main

echo 'Loading OpenWrt kernel . '

linux /boot/openwrt-x86-generic-vmlinuz root=/dev/sda6

2) Обновить конфигурацию burg, выполнив следующую команду:

Текущая конфигурация burg находится в файле /boot/burg/burg.cfg, изменения в этот файл вносить нельзя, что и написано в самом верху. Все изменения вносятся через процедуру
sudo update-burg

для удаления ненужных строк в меню burg:
1)uname -r
2) через synaptic удалить пункты «linux-image-» неиспользуемых версий.
3) sudo update-burg

Теперь можно перезагрузить.
Меню burg будет выглядеть примерно так. Как-то даже непривычно видеть там слово «openWrt» :))


Очень полезно при конфигурации openWrt добавить пакет c gcc. Тогда получим полноценную машину для программирования.
Для добавления gcc в openWrt нужно на этапе конфигурации отметить:
Global build settings:
Binary stripping method (none)
Development:
gcc

Способ сборки и установки openWrt на персональный компьютер, описанный выше, наверное, полезен при отладке каких-то аппаратных драйверов или программного обеспечения. В целом, он несложен, но гораздо проще и быстрее запустить openWrt на виртуальной машине типа «VMware Player» или «VM VirtualBox».

Для получения образов openWrt для «VMware Player» и «VM VirtualBox» нужно на этапе конфигурации отметить:
Target Images:
Build VirtualBox image files (VDI)
Build VMware image files (VMDK)

Читайте также: