Друзья, здравия Вам!
Разрешите всех мужчин, поздравить с Праздником!
Для всех настоящих - оставайтесь такими же, для всех остальных - становитесь ими!
Сегодня хочу поговрить о создании
VPN туннеля на ресивере.
Для чего? В первых своих
постах я писал о монтировании дисков ресивера на своем ноуте при помощи двух протоколов:
Samba и
Netatalk. Получается так, что порты
samba у меня блокирует провайдер, а подключение по протоколу
Netatalk занимает очень много времени (монтируются около минуты). Потому я стал искать ответ. Остановился на решении, которое позволяет создать частную виртуальную сеть по протоколу
OpenVPN. Другими словами, я смогу заходить на свой ресивер из любой точки мира и использовать его и ресурсы домашней сети, как если бы я находился дома, т.е. у меня будет обеспечен доступ к локальным адресам моей сети. После чего я смогу монтировать диск ресивера по протоколу
samba. Можно было бы поступить проще, и использовать
VPN сервер на роутере. Но к сожалению моя модель роутера поддерживает эту опцию, только после перепрограммирования её альтернативной прошивкой. Чего я категорически делать не хочу. Всё работает хорошо, а лучшее, как известно враг хорошего)))
Потому остановимся на
OpenVPN.
Для этого нам понадобится пакет
openvpn, который как мне кажется лежит в любом уважающем себя репозитории установленного имиджа. Итак, устанавливаем его, либо через интерфейс ресивера (у каждого имиджа он свой - потому прочитайте справку по Вашему имиджу для осуществления этого шага), либо в ручную.
Здесь же я опишу процесс установки в ручную, через
ssh протокол на вашем ресивере.
1. Заходим на ресивер и устанавливаем пакет
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
2. Находим файлы конфигурации, которые были установлены с пакетом
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Переходим в папку скрипта запуска и запускаем процесс генерации публичного ключа:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
На выходе получаем публичный ключ в папке
/etc/openvpn/keysПосле чего набираем команду (если у Вас установлен
Midnight Commander)
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
или
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
если у Вас установлен текстовый редактор
nano И приступаем к конфигурированию Вашего сервера.
Файл /etc/openvpn/server.confВам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Где
dev tun0 - установка устройства через которое будет работать наш vpn сервер.
ifconfig 192.168.1.100 192.168.1.200 - установка интерфейса, первый адрес - адрес ресивера, второй адрес ноутбука [ Меняем по своему усмотрению. Заметьте, что подсети должны быть одинаковыми. Если например у Вас сеть 10.0.2.0/24 и номер IP ресивера 10.0.2.120, то IP адрес Вашего ноутбука выбираем в такой же подсети, например - 10.0.2.210 ]
port 1011 - номер порта для связи (ставите свой по вкусу и помним о необходимости проброса этого порта на Вашем роутере)
comp-lzo - протокол сжатия трафика (не меняем)
proto udp - интернет протокол (помним о необходимости проброса по этому протоколу вышеуказанного порта на Вашем роутере)
keepalive 10 120 - промежутки времени через которые будет осуществляться проверка на активность интерфейса
verb 3 - уровень детализации процесса журналирования
secret /etc/openvpn/keys/name.key - наш ранее созданный ключ
log /etc/openvpn/openvpn.log - файл журналирования (после окончательной настройки протокола - удалите или закомментируйте эту строку символом «;» чтобы этот оставить рост размера этого файла.).
Теперь настроим наш клиент, т.е. устройство с которого мы будем подключаться к домашней сети. Это наш ноут.
У меня стоит на ноуте
Mac OS X и единственно достойным и зарекомендовавшим себя решением, оказался только
Tunnelblick. Для уважаемой системы «
Окна» наверняка Вы сможете найти в интернете множество достойных вариантов. Я же здесь остановлюсь на настройке именно
Tunnelblick.
Скачиваем его по
этой ссылке.
Устанавливаем на ноутбук. Запустив его, в открывшемся окне, в окне «
Конфигурации» (левый нижний угол) нажимаем на «
+».
И во вновь появившемся окне нажимаем клавишу «
У меня нет файлов конфигурации»
И далее нажимаем на клавишу «
Создать пример конфигурации и отредактировать его"
Далее внимательно читаем что написано в открывшемся окне (см ниже).
И затем заполняем открывшийся одновременно с окном файл конфигурации нашего клиента (предварительно сделав его копию, либо удалив весь текст в нем):
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Как видим, конфигурация очень похожа на ту которую мы с Вами делали для сервера.
Поясню построчно:
dev tun0 - установка устройства через которое будет работать наш vpn сервер (должно совпадать с нашим сервером).
remote myhome.ip.net - внешний статический IP адрес Вашей домашней сети (покупаете у провайдера или используете DDNS, например No-IP)
port 1011 - адрес порта, должен совпадать с настройками ресивера (см. выше)
ifconfig 192.168.1.200 192.168.1.100 - здесь настройка такая же как в ресивере, только наоборот, первым идёт адрес ноутбука, который он получит при соединении к openvpn, второй указываем IP ресивера.
proto udp - интернет протокол для связи (такой же как стоит на ресивере)
resolv-retry infinite - не ведаю, брал из готовой конфигурации
persist-tun - не ведаю, брал из готовой конфигурации
persist-key - не ведаю, брал из готовой конфигурации
verb 3 - детализация журналирования, сам журнал будет доступен в окне программы Tunnelblick
secret name.key - имя нашего публичного ключа, который сформировали ранее на ресивере
comp-lzo - протокол сжатия
Затем сохраняем наш файл конфигурации.
Теперь заходим обратно на наш ресивер, по протоколу
ssh и далее любым доступным способом копируем наш, ранее созданный на ресивере, файл публичного ключа
name.key с ресивера во вновь созданную программой
Tunnelblick папку на рабочем столе "
Образец конфигурации Tunnelblick VPN». Например так:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Надеюсь, Вы поняли, что вместо
your_name_on_notebook@ip_home_notebook, надо написать ваш логин на вашем ноутбуке и собственно сам
IP Вашего ноутбука. Например
boss@myhome.no-ip.biz.
После чего вводим пароль для Вашего ноутбука. Ждём пока копирование завершится.
Переходим вновь на наш ноутбук.
Теперь в папке "
Образец конфигурации Tunnelblick VPN» должно быть у нас два файла: файл ключа и файл ранее созданной конфигурации. Если всё так, то следующим шагом будет, как по вышеозначенной инструкции - переименование папки в имя файла, например
myhome с расширением
tblk. У нас получится
myhome.tblk.
Теперь нам достаточно дважды нажать мышкой на вновь созданный файл конфигурации и наши установки по умолчанию появятся в
Tunnelblick. Переходим в окно программы
Tunnelblick и нажимаем клавишу
Соединиться.
И после успешного завершения соединения видим следующую картинку:
Если возникли ошибки смотрим журналы и разбираемся. Указанная конфигурация полностью мною проверена и работает.
После подключения
настраиваем samba протокол и наслаждаемся нашим результатом.
Ещё раз всех с праздником!
Удачи всем!