| RSS



Меню

Bookmark and Share


Статистика
Ваш IP: 3.15.26.231
Вы используете: v





Сейчас на сайте:

Тех поддержка ->

Облако тэгов
ОС видио Tor Обратная сторона антенна 4.6 PHP Эксплоит Windows Server 2008 qip Virtual chroot kernel proc sysctl tune FreeBSD bridge Boot Disk Bluetooth GEO game directx Emulator Python Shell DDoS червь Conficker вирус троян Лаборатория Касперского пиратство apple iPhone ИТ-отрасль Щеголев Microsoft экономический кризис Twitter социальная сеть анонимность Лицензия Open Source ASP.NET MVC уязвимость MySQL база данных файлообмен закон франция пират Skype мобильный Deutsche Telekom Хакер киберпреступник Trend Micro кибератака Германия робот утечка данных персональные данные ноутбук интернет Китай цензура ядро Linux Торвальдс Windows Vista Acer Linux патент браузер Firefox Internet Explorer Opera Net Applications Safari Intel Linux Foundation Moblin Oracle патч банкомат кардер HSM IBM X-Force Cofee сша кибервойна Эстония Dell ИТ-специалист хакерские атаки Pirate Bay контроль кибербезопасность язык программирования The Pirate Bay Пиратская партия утечка информации приговор Mozilla Chrome безопасность Госдума СМИ Windows 8 Баллмер взлом Пентагон ботнет Украина Facebook Cisco cloud Windows XP нетбук торрент музыка биометрический nokia ФБР IP-адрес CIPAV Comcast sms RSA java Google CAPTCHA Symantec спам конфиденциальная информация инсайдер Perimetrix антивирус тест Anti-Malware Windows 7 операционная система Windows провайдер авторское право RapidShare UNIX свиной грипп шантаж дети EFF BluWiki копирайт экстремизм Panda Security cloud computing McAfee Cybercrime Response Unit Bottle Domains HTTPS ICANN студент шпионское ПО Норвегия школьник New York Times XSS YouTube Warner Music кибершпионаж КНДР Ubuntu свободное ПО AMD ATI касперский Россия РФ сервер хостинг фальшивый антивирус Comodo CA Wi-Fi D-Link суд пароль блог фишинг Одноклассники медведев контрафакт мошенник штраф Sony GPS по Gumblar JAVASCRIPT хакеры вредоносное ПО Yahoo ФАС компьютер Софт MPAA кибероружие PandaLabs Red Hat Минкомсвязи сбой ASUSTeK Computer мошенничество Доктор Веб ВКонтакте Cyber-Arc исходный код PCI DSS МВД фильтр порнография BREIN свобода слова Казахстан GEMA Autodesk сисадмин Gmail кредитная карта кибермошенник LiveJournal шифрование криптография Deep Purple банк нанотехнологии Wikipedia zero-day ColdFusion выборы кража данных DNS BIND Android BASIC атака Black Hat Mac OS X Click Forensics Clampi домен фсб Прокуратура Уголовное дело icq Barrelfish киберпреступность Sophos AT&T ошибка Electa Gamma Knife OpenBSD DARPA военные Сайт Visual Studio 2010 .NET Framework 4 Chrome OS электронная почта турция конференция спамер FTC полиция российская ОС Koobface Великобритания БЕЛОРУССИЯ грузия BSA Bittorrent облачные вычисления Azure Европа Dr.Web Билл Гейтс спецслужбы Cryzip Живой Журнал Royal Bank of Scotland смартфон Canonical Pwn2Own F-Secure Symbian Hotmail фильм

Главная » Статьи » Общие Статьи

Устанавливаем Windows в QEMU под FreeBSD
 1) Устанавливаем QEMU

# cd /usr/ports/emulator/qemu
# make -DWITH_KQEMU
# make install


QEMU легко ставится из портов, нужно только не забыть собрать его с
поддержкой модуля акселерации KQEMU. В принципе, этот модуль не
обязателен, но с ним QEMU работает гораздо быстрее.

2) Подгружаем модуль акселерации

# kldload kqemu


Чтобы модуль подгружался при загрузке, нужно добавить строку в
конфигурационный файл /boot/loader.conf:

kqemu_load="YES"


3) Подгружаем модуль асинхронного ввода-вывода

# kldload aio


Чтобы модуль подгружался при загрузке, нужно добавить строку в
конфигурационный файл /boot/loader.conf:

aio_load="YES"


4) Создаем образ жесткого диска, на который далее будем ставить Windows

$ mkdir /home/user/qemu
$ qemu-img create /home/user/qemu/windows.img 4096M


Образ разместим в домашнем каталоге. Впрочем, это не существенно, можно
разместить где угодно. Размер образа - 4 гига (для самой Windows и пары
установленных программ этого достаточно, если нужно - можете сделать
больше).

5) Устанавливаем Windows

$ qemu -localtime -m 512 -boot d -cdrom /home/user/windows_install.iso \
-hda /home/user/qemu/windows.img -name "Windows"


В данном случае Windows устанавливается с образа компакт-диска. Если
Windows устанавливается с настоящего компакт-диска, то вместо образа
/home/user/windows_install.iso надо указать устройство /dev/acd0.

Что все это значит:
-localtime устанавливает время в Windows равным времени FreeBSD
-m задает размер памяти в мегабайтах, которая будет выделена для Windows
-boot говорит QEMU откуда нужно загружаться (d - компакт-диск, c - жесткий диск)
-cdrom указывает путь к компакт-диску
-hda указывет путь к жесткому диску
-name выводит в заголовке окна QEMU название запущенной в нем
операционной системы (необязательная опция, чисто для красоты)

6) Запускаем Windows

$ qemu -localtime -m 512 -boot c /home/user/qemu/windows.img -name "Windows"


Обратите внимание - загрузка Windows выполняется с образа жесткого
диска (опция -boot c).

На этом, собственно, все. Windows запущен в QEMU под управлением
FreeBSD.

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

Windows, запущенная в QEMU, не имеет выхода в сеть. Для того, чтобы
Windows могла выходить в сеть, нужно приложить некоторые усилия.

Представьте, что у нас есть два компьютера, один из которых подключен к
сети. Мы хотим, чтобы второй компьютер, который не имеет собственного выхода
в сеть, тем не менее, тоже мог выходить в сеть. Для этого мы компьютер, не
имеющий сети, подключаем к компьютеру, на котором сеть есть. А компьютер, на
котором сеть есть, настраиваем так, чтобы он все пакеты, которые ему
присылает второй компьютер, пропускал сквозь себя в сеть. Таким образом,
первый компьютер становится для второго компьютера своеобразным "мостом", по
которому безсетевой компьютер может выйти в сеть.

Такая схема подключения называется "сетевой мост".
В нашем случае в качестве первого компьютера выступает FreeBSD, имеющая
выход в сеть, а в качестве второго компьютера, не имеющего выхода в сеть -
Windows, запущенная в QEMU. Соответственно, наша задача заключается в
том, чтобы подключить Windows к FreeBSD, а FreeBSD, в свою очередь,
настроить так, чтобы она пропускала через себя в сеть пакеты,
отправляемые из Windows.

Сетевой мост во FreeBSD 7.0 создается с помощью модуля if_bridge.
Сетевой мост if_bridge был портирован из NetBSD и, начиная с версии
FreeBSD 7.0, заменил устаревший сетевой мост bridge.

0) Выясняем, как называется реальный физический интерфейс, через
который во FreeBSD работает сеть
У меня он называется em0, у вас это название может быть другим, например, rl0.

1) Создаем виртуальный сетевой интерфейс, к которому будет подключен Windows

# ifconfig tap0 create


2) Создаем виртуальный сетевой интерфейс, который будет выполнять
функции моста

# ifconfig bridge0 create


3) Объединяем интерфейсы в мост

# ifconfig bridge0 addm em0 addm tap0 up


Чтобы мост создавался при загрузке, нужно добавить две строки в
конфигурационный файл /etc/rc.conf:

cloned_interfaces="tap0 bridge0"
ifconfig_bridge0="addm em0 addm tap0 up"


На этом создание сетевого моста завершено. ifconfig должен показывать
примерно следующее:

$ ifconfig
em0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=198<VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4>
ether 00:1c:c0:2a:25:3d
inet 192.168.216.10 netmask 0xffffff00 broadcast 192.168.216.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
tap0: flags=8902<BROADCAST,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether 00:bd:f3:19:00:00
bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether 5e:54:49:fc:f9:f0
id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
maxage 20 holdcnt 6 proto rstp maxaddr 100 timeout 1200
root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
member: tap0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
member: em0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>


Как видите, тут у нас присутствуют реальный физический интерфейс em0,
виртуальный интерфейс tap0 и сетевой мост bridge0. Обратите внимание:
внутри bridge0 находятся два member - это интерфейсы em0 и tap0,
объединенные мостом.

Теперь нужно подключить Windows к FreeBSD.

4) Включаем автоматическое поднятие интерфейса tap0

# sysctl net.link.tap.up_on_open=1


Чтобы эта переменная инициализировалась при загрузке, нужно добавить
строку в конфигурационный файл /etc/sysctl.conf:

net.link.tap.up_on_open=1


5) Разрешаем непривилегированному пользователю соединяться с
интерфейсом tap0

# sysctl net.link.tap.user_open=1


Чтобы эта переменная инициализировалась при загрузке, нужно добавить
строку в конфигурационный файл /etc/sysctl.conf:

net.link.tap.user_open=1


6) Разрешаем непривилегированному пользователю открывать устройство /dev/tap0

# chmod 666 /dev/tap0


Тут тонкий момент - файлы устройств пересоздаются каждый раз при
загрузке системы, поэтому права доступа на файл после перезагрузки
вернутся в исходное состояние (600). Поэтому следует задавать права
доступа к устройству не через chmod, а через правила devfs. Для этого
нужно добавить строку в конфигурационный файл /etc/devfs.conf:
perm tap0 0666

Ну и, наконец, запускаем Windows.

7) Запускаем Windows с поддержкой сети

$ qemu -localtime -m 512 -boot c /home/user/windows.img -name "Windows" \
-net nic -net tap,ifname=tap0


Как видите, к параметрам обычного запуска добавились два параметра -net.
Первый -net со значением nic создает "внутри" QEMU сетевую карту,
которую дальше увидит и будет использовать Windows.
Второй -net со значением tap подключает эту сетевую карту к
виртуальному интерфейсу tap0. Указываемая через запятую опция
ifname=tap0 говорит о том, что подключиться нужно именно к интерфейсу
tap0. В принципе, это не обязательная опция, но иногда, по каким-то
своим соображениям, QEMU пытается подключится не с дефолтному tap0, а,
скажем, к tap1 или к tap4. В этом случае можно явно указать нужный
интерфейс, добавив эту опцию.

Все, загрузившись, Windows обнаружит сетевую карту и будет ходить в
сеть через нее.


Дополнительные материалы про QEMU:
http://www.ibm.com/developerworks/ru/library/l-qemu/index.html
http://community.livejournal.com/ru_root/710103.html
http://www.opennet.ru/base/sys/qemu_win.txt.html
http://ru.gentoo-wiki.com
http://www.michurin.com.ru/qemu.shtml

А также про настройку сетевого моста:
http://www.opennet.ru/base/net/net_bridge.txt.html
http://www.bsdportal.ru/viewtopic.php?p=93244
Категория: Общие Статьи | Добавил: aka_kludge (29.10.2009) | Автор: Михаил Иванов
Просмотров: 2274 | Теги: Windows, qemu, bridge, FreeBSD, Virtual | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
    Главная      
...
На службе : дней

01:43
Обновить


Пользователи
aka_kludge
qwerty
LeadyTOR
aka_Atlantis
AdHErENt
mAss
Sissutr
hiss
DrBio
tHick

Поиск


Copyright tHR - TeAM 2024 г. admin: aka_kludge (ICQ:334449009) Moderator's: LeadyTOR, ... Яндекс.Метрика