VPN

VPN

VPN

Не VPN-ом единым

Это всего лишь один из способов, притом не самый простой – но, как по мне, самый надежный. Несомненно, существуют и другие, не менее надежные, и, зачастую более простые. Буду, кстати, рад, если в комментах кто-нибудь поделится ими.

Суть любого способа обхода «Великого Российского Фаервола» (тм) заключается в том, что вы делаете вид, что идете на запрещенный сайт не из России, а откуда-нибудь из США, Германии или других стран с нормальным законодательством. Физически вы, естественно, сидите дома (на работе, в парке etc.), но железные мозги этого не понимают, и думают что вы где-то там.

На всякий случай, перечислю основные способы обхода – если заинтересуетесь, гугл вам в помощь, ну или задавайте вопросы. если смогу – отвечу.

  • Готовый VPN (заранее настроенный, собственно, то, что я описываю, но сделанное за вас другими людьми) – например, вот https://www.vpntunnel.se/en/order.p 
  • hp
  • Прокси за границей – ищите, и обрящете. Проблема в том, что открытых и скоростных проксей не так много и они регулярно закрываются.
  • tor, технология, автоматически выстраивающая цепочку прокси от вас до конечного узла. Начинать отсюда – https://www.torproject.org
  • SSH-туннель – нужны знания unix-систем и любой хостинг в свободной стране. Начинать отсюда https://github.com/apenwarr/sshuttl 
  • e ну и в гугл.
  • Совсем просто – режим «Turbo» в Опере. Зачастую, помогает, потому что это тот же самый тоннель, только без такого параноидального шифрования, как предлагаю я.
  • Ну и наконец то, что предлагаю я – виртуальный (VDS) сервер и самостоятельная настройка openVPN


Объяснюсь. Это дело платное, сразу стоит заметить, если хотите бесплатно – tor, proxy или ищите бесплатный VDS. За 6,50 евро в месяц вы получаете собственный серв в Австрии и можете, кроме искомого VPN-а, разместить там сайт, например. Или еще что полезное сделать.

Я буду писать на примере EDIS, так как сам его использую.

Поехали

Заходим по ссылке http://www.edis.at/en/server/kvm-vps/au 


stria/kvm-starter/, нажимаем большую синюю кнопку, переходим на страницу, которая предлагает нам выбрать, как нам удобнее платить. Выбираем, пишем что-нибудь в поле Hostname, можно выбрать Location (я оставил по-умолчанию, но вдруг вы Париж предпочитаете), OS оставьте Debian 6 64bit – я буду выкладывать конфиги именно для него.

Нажимаем на кнопку Add to cart & Checkout

На следующем этапе вам нужно заполнить анкету. Данные можно уазывать любые вообще, главное – напишите действующий e-mail (туда придут реквизиты) и выберите достаточно серьезный пароль. Ну не «111» во всяком случае.


После того, как вы получите письмо, не торопитесь :-)

Дело в том, что примерно в течение 15-20 минут на ваш сервер устанавливается ОС, с которой мы будем работать потом.


Ок, сходили покурили / попили кофе, можно приступать.

Если вы перейдете по ссылке из письма в админку сервера, вы увидите свою панель управления. Здесь нам практически ничего не нужно, но следует знать, что именно отсюда можно переустановить ОС или перезагрузить сервер.


В числе прочего в письме вам придет нечто подобное:


Pv4 addresses: 158.255.212.240

Netmask: 255.255.255.0

Gateway: 158.255.212.1

Nameserver: 91.227.204.227 / 91.227.205.227


IPv6 Range: 2a03:f80:ed15:158:255:212:240:0/112

Gateway: 2a03:f80:ed15::1

Nameserver: 2001:4860:4860::8888 / 2001:4860:4860::8844


User: root

Password: <здесь пароль суперпользователя, сгенерированный автоматически>


Берем любой ssh-клиент (если у вас windows – советую Putty), запускаем и соединяемся с сервером.

putty


Если все прошло успешно, то вы увидите консоль вашего удаленного серва. Оттуда можно сделать с ним вообще все, что хочешь, но нас интересует VPN, поэтому его и поставим.

Команда apt-get install openvpn установит для вас все, что необходимо, и вашей задачей будет это все запустить.

Итако, в консоли сервера выполняем apt-get install openvpn, немного ждем, серверная часть openVPN установлена.


Поехали настраивать

Последовательно в консоли выполняем:


cd /etc/openvpn

mkdir easy-rsa

cp -R /usr/share/doc/openvpn/examples/easy-rsa/2.0/ 


* easy-rsa/

chmod -R +x easy-rsa/

cd easy-rsa/

source ./vars

./clean-all


Следующей командой мы создаем сертификат так называемого бюро сертификатов (CA). Вообще такие вещи принадлежат организациям, которые на их основе генерируют сертификаты для своих пользователей, но в данном случае мы сами себе и организация, и пользователь, так что смело командуем:

./build-ca

Создаем сетификат-ключ для сервера

./build-key-server server

Генерируем шифровальные ключи

./build-dh

И, наконец, ключи для себя

./build-key myname

Теперь в папке /etc/openvpn/easy-rsa/keys лежат все необходимые нам ключи. На локальной машинке нам понадобятся myname.crt, myname.key и ca.crt


Дальше нам предстоит создать и отредактировать конфигурационный файл сервера openVPN.

Это просто.

Команда nano /etc/openvpn/server.conf открывает окно текстового редактора Nano с пустым (пока) файлом, который мы задали как аргумент.

В этот файл вставляем строки:


port 1194

proto tcp

;proto udp

;dev tap

dev tun


ca /etc/openvpn/easy-rsa/keys/ca.crt

cert /etc/openvpn/easy-rsa/keys/server.crt

key /etc/openvpn/easy-rsa/keys/server.key

dh /etc/openvpn/easy-rsa/keys/dh1024.pem


server 10.8.0.0 255.255.255.0

ifconfig-pool-persist ipp.txt

keepalive 10 120

duplicate-cn

comp-lzo

persist-key

persist-tun

status /var/log/openvpn-status.log

log /var/log/openvpn.log


verb 3

push "redirect-gateway def1"

push "dhcp-option DNS 91.227.204.227"


Нажимаем кнопки ctrl+O, ctrl+X, тем самым сохраняя файл и выходя из редактора.

Поздравляю, конфиг создан.


Теперь нам нужны модули ядра для обеспечения туннелирования.

Командой nano /etc/modules открываем для редактирования файл со списком динамически подгружаемых модулей ядра, переходим в самый его конец и вставляем следующие строки:


nf_nat_ftp

nf_nat

nf_conntrack_ipv4

nf_conntrack_ftp

nf_conntrack

tun


Сохраняем (ctrl+O), выходим (ctrl+X).

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


modprobe nf_nat_ftp

modprobe nf_nat

modprobe nf_conntrack_ipv4

modprobe nf_conntrack_ftp

modprobe nf_conntrack

modprobe tun


Все, теоретически серверная часть должна работать.

Даем команду service openvpn start, тем самым запуская openVPN сервис.

Активируем NAT


echo 1 > /proc/sys/net/ipv4/ip_forward

echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf


Выполните команду ifconfig

В выводе ее должно быть что-то вроде такого:


eth0 Link encap:Ethernet HWaddr 52:54:00:88:f3:b0

inet addr:158.255.212.240 Bcast:158.255.212.255 Mask:255.255.255.0

inet6 addr: fe80::5054:ff:fe88:f3b0/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:14192479 errors:0 dropped:0 overruns:0 frame:0

TX packets:53685 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:873095869 (832.6 MiB) TX bytes:18996952 (18.1 MiB)

…………

tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-0 


0-00-00

inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255

UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1

RX packets:14975 errors:0 dropped:0 overruns:0 frame:0

TX packets:15777 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:100

RX bytes:2050126 (1.9 MiB) TX bytes:10430919 (9.9 MiB)


На следующем шаге вам понадобятся адреса интерфейсов eth0 и tun0 – то, что написано после inet addr.

В данном случае это 158.255.212.240 и 10.8.0.1

Даем еще одну команду. Вместо <внешнийIP> и <внутреннийIP> подставьте, соответственно, адреса, которые висят на eth0 и tun0.


iptables -t nat -A POSTROUTING -s 10.8.0.0.0/24 -o <внутреннийIP> -j SNAT --to-source <внешнийIP>


Сохраняем настройки:


iptables-save > /etc/iptables.rules

cd /etc/rc.local

iptables-restore < /etc/iptables.rules

update-rc.d openvpn defaults

service openvpn restart


Все, теперь настройка серверной части точно закончена.


Переходим к клиентской части

Чтобы соединиться со своим новым сервером, вам нужно забрать оттуда ключи.

Проще всего это сделать, выводя содержимое файлов ключей и сертификатов на экран и копируя его себе в текстовые файлики.

Итак:

cd /etc/openvpn/easy-rsa/keys/ (перешли в каталог с ключами)

cat ca.crt выведет вам на экран содержимое файла ca.crt, скопируйте его, создайте текстовый файл у себя на компьютере, вставьте содержимое, сохраните, закройте.

Нам понадобятся три файла – ca.crt, myname.key и myname.crt.

ca.crt мы уже скопировали, точно так же поступаем с остальными.

Должен предупредить – не стоит никому показывать, а уж тем более отдавать или публиковать ваши сертификаты – это небезопасно.


В конце концов, когда у нас есть все для успешного соединения, возьмите любой OpenVPN-клиент для своей платформы, покажите ему ваши сертификаты, IP вашего сервера и наслаждайтесь свободным интернетом.

 

Если кому-то это все показалось сложным и пугающим – не пугайтесь :-)

Во-первых – если вы все же решитесь оплатить VDS и что-нибудь не получится – обращайтесь, я попробую помочь. Если вы не решаетесь купить VDS и вам что-нибудь попроще – посмотрите вначале поста, там бегло перечислены способы, или загляните сюда, это замечательный пост  

ntv, в котором обзор гораздо полнее, чем у меня.


Но помните одно. На сегодняшний день не существует закона, который запрещал бы мне смотреть или читать что-либо потому, что кто-то непонятно кто из ФСКН или Минсвязи объявил это запрещенным.

Интернет не запретишь, как ни старайся.


Report Page