VPN для SSH, интернет для всех остальных

Вступление: Привет! Я пытался заставить VPN и команду ssh работать вместе. И я был успешен до такой степени, что я могу получить на сервере с ssh user@hostname. Но когда VPN активен, весь мой интернет проходит через этот VPN.

Цель: Я хотел бы использовать свое собственное интернет-соединение для всего, кроме этого SSH-соединения.

Опция прерывает SSH> VPN: Я заметил, что есть опция «Использовать это соединение только для ресурсов в своей сети» в « Редактирование VPN» - «Настройки IPv4» вкладка - кнопка «Маршруты ...» . Это выглядело как решение, но если я включил это, я больше не могу подключиться с помощью команды «ssh user @ hostname» , она зависает до истечения времени ожидания.

Мысли: Пока я думаю, что это не работает, потому что имя хоста (из ssh username @ hostname) и шлюз (из настроек VPN) отличаются. Но я не знаю достаточно о ssh или VPN, чтобы это знать.

Идеи? Есть ли какая-то опция в ssh, которую я пропускаю? Я попытался ssh -b gatewayFromVPN username@hostname, но это не сработало (и я сомневаюсь, что это должно). Или есть опция в настройках VPN или что-то, что может решить эту проблему?

Заранее спасибо.

Резюме

  • Просмотр и т. Д.> Интернет-соединение
  • (одновременно с)
  • SSH> VPN-соединение

«Использовать это соединение только для ресурсов в своей сети» разрывает SSH> VPN

6
задан 23 August 2012 в 18:57

3 ответа

Я отчасти достиг что я разыскиваемый под управлением Ubuntu фактически в Windows 7 в данный момент. (В настоящее время рабочий VMware Player с Ubuntu 12.04) Этот способ, которым мой весь Интернет на Ubuntu проходит VPN, но я могу использовать свой браузер и т.д. в окнах 7, что не имеет той VPN.

, Хотя это не то, к чему я стремился, это должно будет сделать на данный момент.

, Возможно, я могу запустить Ubuntu фактически в Ubuntu или чем-то так, что у меня нет потребности в окнах в будущем...

1
ответ дан 23 August 2012 в 18:57

Я хотел сделать что-то подобное в прошлом. У меня было две идеи: вещи разделения на основе порта и вещи разделения на основе владельца процесса. Сетевая система Linux, это выясняется, может обработать оба из этих сценариев.

я задал два вопроса на Unix. SE. Я не следовал ни одному особенно хорошо поэтому, если Вы действительно играете вокруг, сообщите мне что работы для Вас.

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

Редактирование: Я просто сделал Google для iptables owner, и нашел это . Это, кажется, предполагает, что несколько грязных iptables строк согласовали бы это право. Я должен все еще протестировать, но это выглядит положительно простым...

Предполагают, что Вы имели eth0 и eth1 соединения, и Вы хотели, чтобы пользователь bob использовал eth1 и только когда-либо использовал eth1 и вызвал все остальное на eth0. Это должно сделать это...

iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -o eth0 -m owner --uid-owner bob  -j DROP
iptables -A OUTPUT -o eth1 -m owner --uid-owner bob  -j ACCEPT
iptables -A OUTPUT -o eth1 -j DROP
iptables -A OUTPUT -o eth0 -j ALLOW

я предполагаю, что можно просто подкачать наш eth1 для имени соединения VPN и bob для нового пользователя, которого Вы создадите для выполнения соединения SSH от через: su -c ssh username@host bob.

3
ответ дан 23 August 2012 в 18:57

Лучший способ достигнуть этого состоит в том, чтобы определить маршрут к Вашему хосту ssh через шлюз VPN, значение по умолчанию направляют через Ваш интернет-шлюз.

К дополнительным материалам для чтения:

маршрут (8)

0
ответ дан 21 October 2019 в 12:47

Другие вопросы по тегам:

Похожие вопросы: