VPN за 60 секунд, достаточно иметь на своем компьютере SSH

Admin

ufo
Administrator
12.08.2016
642
407
#1
Если Вы предпочитаете простые и красивые решения, или Вам нравится всё, что попадает под категорию It Just Works, то эта статья для Вас. Для запуска шифрованного подключения достаточно иметь на своем компьютере SSH-клиент, установить sshuttle (об этом чуть позже) и приобрести VPS с любым тарифным планом в интересующей Вас стране. На удалённой VPS-машине в большинстве случаев абсолютно ничего настраивать не нужно (достаточно, чтобы были установлены пакеты python и сервер SSH).

На своем компьютере установим sshuttle:

- либо с помощью
Код:
pip install sshuttle
либо с помощью копирования исходников с github
Код:
git clone https://github.com/sshuttle/sshuttle.git && python setup.py install
пользователи debian могут это сделать так:
Код:
apt-get install sshuttle
Далее нужно выполнить простую команду:
Код:
sudo sshuttle -r [email protected] 0.0.0.0/0
где username — логин на удаленном виртуальном сервере, sshserver — его IP-адрес или доменное имя, параметр 0.0.0.0/0 означает, что мы собираемся добавить в нашу таблицу маршрутизации правило, благодаря которому весь исходящий трафик будет отправляться на удалённый сервер, за исключением DNS-запросов. Разработчик намеренно не включает по умолчанию этот функционал для DNS, потому что у некоторых пользователей для выхода в интернет должны использоваться провайдерские серверы разрешения имен. Если мы можем пользоваться любыми DNS-серверами, то и запросы к ним можем “завернуть” в наш шифрованный SSH-туннель:
Код:
sshuttle --dns -r [email protected] 0.0.0.0/0
Помимо этого мы можем направлять в туннель наш исходящий трафик не полностью, а только для определенных IP-подсетей, указывая соответствующий параметр:
Код:
sshuttle -r [email protected] 11.12.13.14/0
Преимущества этого решения в следующем:
- у Вас нет необходимости иметь права администратора на удалённом сервере, используемом для выхода в интернет
- Вам не нужно создавать правила SSH для форварда каждого порта

Недостаток только один (если это можно назвать недостатком): sshuttle не поддерживает Windows, пользователям этой ОС можно сделать костыль в виде VM.