Как мне маршрутизировать свой интернет через туннель SSH?

22

Старый Q Как настроить сервер OpenVPN без привилегий root?

Есть ли способ настроить сервер OpenVPN без привилегий root? Например. с файлами конфигурации в моем домашнем каталоге? Если да, как мне настроить его?

Я пытаюсь использовать SSH в системе и настраивать сервер OpenVPN там для личного использования.

ИЗМЕНИТЬ

Поскольку очевидно, что OpenVPN нуждается в привилегиях root, я меняю вопрос на маршрутизацию своего интернета с помощью SSH, который я могу легко настроить.

    
задан Oxwivi 25.05.2011 в 11:57
источник

3 ответа

29

sshuttle - это прозрачный прокси-сервер, который пересылает через SSH-соединение и устанавливает прокси-сервер путем запуска сценариев Python на удаленном сервере. sshuttle может выполняться при следующих условиях:

  • клиентская машина или маршрутизатор - это Linux-based, FreeBSD или Mac OS
  • административные привилегии на клиенте
  • доступ к удаленной сети через SSH
  • нет привилегии администратора в удаленной сети
  • доступность Python на удаленном сервере

Установите sshuttle изЦентрапрограммногообеспеченияилитерминала:

sudoapt-getinstallsshuttle

Основнаякомандадлязапускаsshuttleсмаршрутизациейвсеготрафика:

sshuttle-rusername@sshserver:port0/0

ПослевыполнениякомандыпоявитсяподсказкапароляsudoипоследующийпарольдляучетнойзаписиSSH.Никакихдругихдеталейнепоявится,кромекороткогосообщенияивозвратакоболочкеприсбое.Дляполучениядополнительныхсообщенийостатусезапуститеsshuttleврежимеverboseсфлагом-v.

Вэтомпримеревесьинтернет-трафик,кромеDNS,маршрутизируетсячерезVPN.Флаг-rобозначаетимяудаленногоузлаинеобязательноеимяпользователяипорт,приведенныевприведенномвышепримере.0/0являетсясокращеннымдля0.0.0.0/0,которыйпредставляетподсетидлямаршрутизациипоVPN.Использование0/0направляетвесьтрафик,кромеDNS-запросов,наудаленныйсервер.DNS-туннелированиевозможносиспользованиемфлага-H.

Прочтитеman-страницу(mansshuttle)длядеталейопцийирежимов,вкоторыхможетработатьsshuttle.Информациюоконцепцииидругихпримерахсм.Настранице .

    
ответ дан André Paramés 25.05.2011 в 15:48
источник
16

Вы не можете настроить OpenVPN без привилегий root, потому что для этого требуются определенные операции.

  • Предпосылки: вам нужно включить пересылку пакетов в брандмауэре (iptables?)
  • Добавление устройств в эксплуатацию: необходимо добавить специальное виртуальное устройство, используя ifconfig . В противном случае связь между сервером и клиентом невозможна

В зависимости от ваших потребностей доступны другие решения. Для просмотра вашего сервера вы можете настроить сервер SOCKS.

Прокси SOCKS

Настройка прокси-сервера SOCKS не составляет труда: он встроен в OpenSSH. Чтобы включить сервер SOCKS, запустите следующую команду в терминале :

ssh user@host -D1234

Замените 1234 на предпочтительный порт. В вашем браузере вы можете ввести localhost в качестве хоста и 1234 в качестве порта на сервере SOCKS4 / 5.

Ниже приведен пример в браузере Firefox:

  1. Перейдите в Изменить - > Preferences
  2. Откройте раздел Дополнительно
  3. Перейдите на вкладку Сеть
  4. Нажмите Настройки
  5. Выберите Настройка прокси-сервера вручную
  6. Введите localhost в качестве хост SOCKS
  7. Введите 1234 в качестве порта (тот же порт, что указан в команде SSH)
  8. Нажмите ОК и Закрыть , чтобы закрыть диалоговые окна настроек.

    
ответ дан Lekensteyn 25.05.2011 в 14:10
-1

Если вы хотите только туннелировать свой TCP-трафик, я рекомендую использовать программу под названием tun2socks. Если вы также хотите туннелировать UDP-трафик, вы должны установить udpgw на свой сервер.

Вот учебник по установке и использованию этих программ: Ссылка

    
ответ дан giri 14.05.2014 в 14:55