id: Гость   вход   регистрация
текущее время 23:20 19/04/2024
Автор темы: Гость, тема открыта 19/10/2011 11:23 Печать
Категории: софт, анонимность, tor, свободный софт, операционные системы, закрытый софт
http://www.pgpru.com/Форум/UnixLike/ПробросПортовДляVirtualBox
создать
просмотр
ссылки

Проброс портов для VirtualBox


Иногда я использую VirtualBox (в настоящее время – 4.1.4 от Oracle) под прозрачно торифицированным юзером.
В ходе работы с ней, я периодически скачиваю какие-то небольшие файлы с сайтов, и потом мне надо их перевести в физическую систему.
Трахался, трахался с расшариванием дир. на физической машине средствами VirtualBox – под линуксными гостевыми машинами не идет,только под виндой, в рассылках я так тоже хорошего совета не добился, я так понял, что никто так и не смог этого же сделать,рекомендовали юзать ssh, sftp, samba и т.п.
Соответственно, для того, чтобы виртуальная машина, запущенная под прозрачно торифицированным юзером, работала через Tor на физмашине, в ней надо выбрать типа подключения NAT, потому что если выбрать Bridge, то она будет отображаться в локальной сети как самостоятельная физ. машина, иметь свой внутренний ip, также как и физмашина, и не будет работать через Tor на физмашине.
В связи с этим, захотелось организовать доступ к ней в режиме NAT по ssh из физмашины.
Я сделал проброс портов, как в мануале, но соединение не устанавливается, насколько я понял, оно "режется" настройками iptables касательно прозрачно торификации этого юзера.
В связи с этим мне приходится пользоваться костылем: поработал в Сети, скачал файлы, отключился от посещенных ресурсов, перешел в режим "бридж" и скопировал все на физ. машину.
Но это несет в себе риск забыть переключить обратно в NAT и следующий раз зайти на эти ресурсы не чере Tor, а напрямую.
Как правильно прописать в iptables исключения для возможности коннекта с физической машины по ssh с виртуальной машиной через проброшенный порт?
И стоит ли это делать, или это создаст "дыру" в фаерволе, угрожающей режиму прозрачной торификации?



 
Комментарии
— unknown (19/10/2011 14:33)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664


Tor может принимать соединения не только с локалхоста.
— Гость (19/10/2011 14:43)   <#>
Как правильно прописать в iptables исключения для возможности коннекта с физической машины по ssh с виртуальной машиной через проброшенный порт?
Ну это стандартное правило iptables. Разрешаете входящие по tcp-протоколу с определённого IP/интерфейса на другой IP/интерфейс и порт.
— Гость (19/10/2011 20:07)   <#>
Tor может принимать соединения не только с локалхоста.


Но тогда надо настраивать компьютер как tor-роутер для поднятых на нем виртмашин для прозрачной торификации?

Ну это стандартное правило iptables. Разрешаете входящие по tcp-протоколу с определённого IP/интерфейса на другой IP/интерфейс и порт.


Только с какого ip на какой? Если с локалхоста на локалхост на физмашине, то это правило у меня уже есть и оно, похоже, в этом случае не работает:
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT


У физмашины в локальной сети ip-адрес типа 192.168.1.x, виртуальным машинам VirtualBox в режиме NAT присваивается ip из совершенно другой подсети:
Причем даже если запустить несколько таких машин, у них у всех адерс именно такой: 10.0.2.15.
При пробросе портов коннект идет через ip-адрес физ. машины, просто в настройках VirtualBox прописывает проброс порта физ. машины на порт виртмашины. (Это действует соответственно при настройках NAT, если сделать бридж, то там уже проброс портов с физмашины на виртуальную не применяется, она действует как самостоятельная машина в локальной сети, ее гейтвеем служит роутер локальной сети, который является гейтвеем для физмашины, и ip у нее типа 192.168.1.x (в моем случае, естественно роутер можно настроить чтобы он работал с ip из другой подсети).
— Гость (20/10/2011 00:24)   <#>
Только с какого ip на какой? Если с локалхоста на локалхост на физмашине, то это правило у меня уже есть и оно, похоже, в этом случае не работает
И не должно работать. Локалхост — это виртуальный внутренний сетевой интерфейс. Он видел только программам, запущенным на данной машине. Считайте, по сети он недоступен по определению.

Если у вас IP для физмашины и виртуалки разные, и так должно быть, то сделайте дополнительный IP-алиас для сетевого интерфейса на физ. машине. Тогда к eth0 и одному и тому же маку будут привязны, допустим, 192.168.1.10 и 10.0.2.30. Таким образом, физмашина станет клиентом 2х логических подсетей. При этом с виртуальной машиной она будет в одной физической и логиеской подсети 10.0.2.x. Вы прописываете далее прозрачную торификацию (10.0.2.30 будет gw для 10.0.2.15) или просто указываете адрес 10.0.2.30 privoxy/polipo/tor'у как listen address. Соответственно, теперь виртуалка сможет работать через 10.0.2.30:8118 или 10.0.2.30:9050 и т.д. Как создавать дополнительные IP на одном интерфейсе в Linux — без понятия, гуглите.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3