Главная > Сети > VTun: организация VPN между двумя точками

VTun: организация VPN между двумя точками

Имеем задачу: организовать безопасное соединение между двумя удаленными узлами сети. Сделать это можно с помощью VPN между этими узлами. Для решения подобных задач существует множество протоколов, таких как PPTP, GRE, L2TP, IPSec, PPPoE, OpenVPN и т.п..

Лично мне для решения этой задачи знакомый сисадмин посоветовал использовать VTun. Так как на обоих узлах в качестве ОС установлен Linux, то VTun будет удобным и простым решением.

В возможности VTun входит шифрование трафика, шейпинг, компрессия. Из вариантов туннелирования VTun поддерживает IP (tun), Ethernet (ether), tty и pipe туннели. Всего вышеперечисленного более чем достаточно для решения задачи. В дополнении к возможностям, VTun крайне прост в настройке, которая состоит из одного единственного конфигурационного файла.

И так, приступим. Первый узел — компьютер с Debian 5.0 на борту, на втором установлена Ubuntu Server 10.04. И там, и там в репозиториях есть VTun версии 3.0.2 и ядро, включающее в себя драйвер виртуального tun-интерфейса.

Установим vtun на обеих машинах консольной командой

~$ sudo aptitude install vtun

Теперь сконфигурируем один компьютер как vtun-сервер, а другой как vtun-клиент. Первому условно дадим имя «SERVER», второму «CLIENT», — так будет понятнее.

SERVER

Файл конфигурации /etc/vtund.conf
# глобальные настройки
options {
    ifconfig /sbin/ifconfig; # путь до утилиты ifconfig
}

# конфигурация хоста (client - название)
# название хоста на клиенте и сервере должны совпадать
client {
    encrypt yes;    # включаем шифрование соединения
    compress no;    # отключаем сжатие трафика
    passwd secret;  # пароль для авторизации клиента
    type tun;       # тип туннеля (в данном случае IP-туннель)
    keepalive yes;  # поддерживаем соединение
    stat yes;       # включаем учет статистики интерфейса
    proto udp;      # используемый протокол

    # список команд, запускаемых после создании туннеля
    up {
        # прописываем настройки интерфейса, %% - имя интерфейса
        ifconfig "%% 192.168.200.1 pointopoint 192.168.200.2";
    };

    # список команд, запускаемых после отключении туннеля
    down {
        ifconfig "%% down"; # опускаем интерфейс
    };
}
Файл конфигурации /etc/default/vtun
# указываем, что vtun должен запускаться как демон
RUN_SERVER=yes

CLIENT

Файл конфигурации /etc/vtund.conf
options {
    ifconfig /sbin/ifconfig;
}

client {
    passwd secret; # пароль
    persist yes;   # пытаться подключиться при потере соединения

    up {
        ifconfig "%% 192.168.200.2 pointopoint 192.168.200.1";
    };

    down {
        ifconfig "%% down";
    };
}
Файл конфигурации /etc/default/vtun
CLIENT0_NAME=client     # имя клиента
CLIENT0_HOST=server.tld # реальный адрес vtun-сервера

Как видно выше, конфиги получились очень простые. Для лучшего понимания я добавил комментарии. Дополнительную информацию по настройке VTun всегда можно получить из документации.

После того как конфигурация будет окончена необходимо запустить vtun на обеих машинах командой

~$ sudo invoke-rc.d vtun start

На сервере и клиенте появятся виртуальные интерфейсы tun0 с адресами 192.168.200.1 и 192.168.200.2 соответственно.

Интерфейсы появились, адреса назначены — VPN работает как надо. Теперь можно работать с удаленным узлом через виртуальный интерфейс tun0, используя присвоенный ему IP-адрес.

Таким образом, с помощью VTun можно создавать большие и сложные виртуальные сети, объединять в одну большую сеть разрозненные локальные и так далее. Возможно, в следующей статье я напишу об объединении нескольких локальных сетей в одну большую виртуальную. Следите за обновлениями.

VN:F [1.9.22_1171]
Rating: 5.8/10 (8 votes cast)
VTun: организация VPN между двумя точками, 5.8 out of 10 based on 8 ratings
Categories: Сети Tags: , , ,
  1. 28 Август 2012 в 17:16 | #1
    Использует Opera 12.01 Opera 12.01 на GNU/Linux x64 GNU/Linux x64

    Я похожее решение строил через pptpd и pppd. Вот в деталях, если кому вдруг решение с vtun-ом не подойдёт: http://avz.org.ua/wp/2011/06/24/policy-routing/ Мне лично вариант с vtun-ом нравится больше, надо будет попробовать при случае.

    VA:F [1.9.22_1171]
    Rating: 0.0/5 (0 votes cast)
  2. 15 Сентябрь 2012 в 17:55 | #2
    Использует Opera 12.02 Opera 12.02 на GNU/Linux x64 GNU/Linux x64

    Построил туннель под centos по этой инструкции. Всё работает отлично. Спасибо!

    VA:F [1.9.22_1171]
    Rating: 0.0/5 (0 votes cast)
  1. Пока что нет уведомлений.