Установка vpn сервера на линукс. Настройка VPN-соединения в Linux. Настройка серверной части на Ubuntu Linux
Настройка с помощью Network Manager"а
Как бы там ни было, но все таки опиши настройку впн с помощью network-manager"а. Эта настройка вполне подойдет тем, у кого в подключении к сети используется автоматическое получение IP адреса с помощью DHCP.
1. Устанавливаем два необходимых нам пакета:
#apt-get install pptp-linux network-manager-pptp
Так как этих пакетов по умолчанию нет на диске с убунтой, а впн часто приходится настраивать на машине, у которой больше нет другого выхода в интернет, то советую заранее припастись этими пакетами с официального репозитория. Для этого заходим на сайт packages.ubuntu.com/ , там ищем два эти пакета, закачиваем их и в дальнейшем устанавливаем на нужной нам машине.
2. Если в аплете Network Manager не появился пункт «VPN соединения»(VPN Connections) или он не будет открываться, то надо перелогиниться или даже лучше - перезагрузиться.
3. Нажимаем левой клавишей мыши (по правой кнопке вызывается другое меню) по значку Network Manager"а и в выпавшем меню выбираем «VPN соединения» - «Настройка VPN»(Configure VPN). Добавляем новое соединение и выставляем все нужные опции для этого соединения.
4. После этого, ваше соединение должно появиться в меню «VPN соединения», если оно вдруг не появилось - перелогиньтесь или перезагрузитесь (ну что я могу поделать, на столько, все еще, сырой этот network-manager).
5. Все теперь можете подключаться к созданному вами впн соединению (а также и отключаться, выбрав пункт меню в Network Manager"е).
#apt-get install pptp-linux
Как я уже описывал выше в разделе установки с помощью network-manager"а, впн часто приходится настраивать на машине, у которой больше нет другого выхода в интернет, поэтому советую заранее припастись этим пакетом с официального репозитория packages.ubuntu.com/.
2. Редактируем файл options.pptp:
#nano /etc/ppp/options.pptp
lock
noauth
nobsdcomp
nodeflate
persist
Не буду описывать каждый из параметров, опишу лишь некоторые:
persist - этот парметр пытается по новой открыть соединение, когда оно закрывается;
nodeflate - не использовать deflate сжатие (хотя говорят с ним работает быстрее, не знаю - не проверял).
Также, если у вас в соединении используется шифрование, то добавляем одну из строк, в зависимости от типа шифрования - require-mschap-v2, require-mppe-40, require-mppe-128, require-mppe.
3. Создаем файл подключения /etc/ppp/peers/vpn (название vpn можете заменить на любое другое, но если замените, не забывайте менять его дальше в этой статье)
#nano /etc/ppp/peers/vpn
Вставляем туда следующие строки:
maxfail 0
lcp-echo-interval 60
lcp-echo-failure 4
defaultroute
pty "pptp vpn.ava.net.ua --nolaunchpppd"
name sukochev
remotename PPTP
+chap
file /etc/ppp/options.pptp
ipparam vpn
Внимание!!!
Обязательно замените следующие опции на ваши:
Вместо vpn.ava.net.ua впишите адрес вашего впн сервера (можно использовать IP сервера). Вместо sukochev вставляете ваш логин подключения.
Опишу некоторые параметры:
maxfail 0 - всегда пытаться подключиться при отсутствии связи;
lcp-echo-interval - интервал времени, по прошествии которого, происходит опрос удаленной стороны;
lcp-echo-failure - количество не отвеченных запросов удаленной стороны, после чего система считает, что нас отключили;
defaultroute - устанавливаем маршрут по умолчанию;
+chap - тип аутентификации. Помимо +chap может использоваться тип +pap.
file - читать дополнительные настройки из заданного файла.
Также можно добавить, если нужно, следующие параметры:
deflate 15,15 - использовать deflate сжатие (в файле options.pptp не должно быть параметра nodeflate);
mtu - максимальный размер передаваемого пакета (изменяют этот параметр обычно тогда, когда часто отключается соединение или не открываются некоторые сайты);
mru - максимальный размер получаемого пакета.
4. Редактируем файл /etc/ppp/chap-secrets (если используется тип аутентификации PAP, то /etc/ppp/pap-secrets соответственно)
#nano /etc/ppp/chap-secrets
Вставляем туда строку, типа:
Sukochev PPTP password *
Внимание!!! Замените sukochev на свой логин, а password на ваш пароль для подключения.
5. Если это необходимо, то прописываем в файл /etc/network/interfaces нужные роуты. Например у меня роуты прописаны для того, чтобы при включенном впн-подключении я мог пользоваться местной локальной сетью. Вот пример моих роутов (те что начинаются на up route), у вас они естественно будут отличаться:
Auto eth1 iface eth1 inet dhcp up route add -net 10.1.0.0 netmask 255.255.0.0 gw 10.1.45.1 dev eth1 up route add -net 10.3.0.0 netmask 255.255.0.0 gw 10.1.45.1 dev eth1
Не забываем после изменения файла /etc/network/interfaces перезапустить сетевые подключения:
#/etc/init.d/networking restart
6. Теперь можете включать и выключать впн подключение с помощью следующих команд:
Включение
Выключение
Автоматическое подключение VPN при загрузке системы
Для этого редактируем файл /etc/network/interfaces
#nano /etc/network/interfaces
И вставляем в конец фйла следующие строки:
auto ppp0
iface ppp0 inet ppp
provider vpn
pre-up ip link set eth1 up
up route del default
up route add default dev ppp0
Где eth1 - это интерфейс сетевого устройства, через которое подключается впн-соединение, а vpn - название впн-соединения, которое вы создали в папке /etc/ppp/peers/.
Рассмотрев в предыдущих частях теоретические вопросы перейдем к практической реализации. Сегодня мы рассмотрим создание VPN сервера PPTP на платформе Ubuntu Server. Данный материал рассчитан на читателей, имеющих навыки работы с Linux, поэтому мы не будем отвлекаться на вещи описанные нами в других статьях, таких как настройку сети и т.п. Если вы испытываете затруднения - предварительно изучите другие наши материалы.
Практическое знакомство с VPN мы начнем с PPTP, как наиболее простого в реализации. Однако следует помнить о том, что это слабозащищенный протокол и его не следует использовать для доступа к критически важным данным.
Рассмотрим схему, которую мы создали в нашей тестовой лаборатории для практического знакомства с данной технологией:
У нас имеется локальная сеть 10.0.0.0/24 с сервером терминалов 10.0.0.2 и 10.0.0.1, который будет выполнять функции VPN сервера, для VPN мы зарезервировали сеть 10.0.1.0/24. Внешний интерфейс сервера имеет условный выделенный IP адрес X.X.X.X. Наша цель - предоставить удаленным клиентам доступ к терминальному серверу и общим ресурсам на нем.
Настройка сервера PPTP
Установим пакет pptpd реализующий функционал PPTP VPN:
Sudo apt-get install pptpd
Теперь откроем файл /etc/pptpd.conf и зададим основные настройки VPN сервера. Перейдем в самый конец файла, где укажем адрес сервера в VPN сети:
Localip 10.0.1.1
И диапазон адресов для выдачи клиентам:
Remoteip 10.0.1.200-250
Адресов нужно выделить не меньше, чем возможных одновременных соединений, лучше с небольшим запасом, так как их увеличение без перезапуска pptpd невозможно. Также находим и раскомментируем строку:
Bcrelay eth1
Это позволит передавать VPN клиентам широковещательные пакеты внутренней сети.
Также можно использовать опции listen и speed , первая позволяет указать IP адрес локального интерфейса для прослушивания входящих PPTP соединений, второй указать скорость VPN соединений в бит/с. Например разрешим серверу принимать PPTP соединения только с внешнего интерфейса:
Listen X.X.X.X
Более тонкие настройки находятся в файле /etc/ppp/pptpd-options . Настройки по умолчанию вполне соответствуют нашим требованиям, однако кратко рассмотрим некоторые из них, чтобы вы имели представление о их назначении.
Секция #Encryption отвечает за шифрование данных и проверку подлинности. Данные опции запрещают использование устаревших и небезопасных протоколов PAP, CHAP и MS-CHAP:
Refuse-pap
refuse-chap
refuse-mschap
Require-mschap-v2
require-mppe-128
Следующая секция #Network and Routing , здесь следует обратить внимание на опцию ms-dns , которая позволяет использовать DNS сервер во внутренней сети. Это может быть полезно при доменной структуре сети или наличия в ней DNS сервера который содержит имена всех ПК сети, что дает возможность обращаться к компьютерам по их именам, а не только по IP. В нашем случае данная опция бесполезна и закомментирована. Подобным образом можно задать и адрес WINS сервера опцией ms-wins .
Здесь же находится опция proxyarp , включающая, как несложно догадаться из названия, поддержку сервером Proxy ARP.
В секции #Miscellaneous содержится опция lock , которая ограничивает клиента одним подключением.
Ivanov * 123 *
petrov * 456 10.0.1.201
Первая запись позволяет подключаться к серверу пользователю ivanov c паролем 123 и присваивает ему произвольный IP адрес, вторая создает пользователя petrov с паролем 456, которому при подключении будет присваиваться постоянный адрес 10.0.1.201.
Перезапускаем pptpd :
Sudo /etc/init.d/pptpd restart
Важное замечание! Если pptpd не хочет перезапускаться, зависая на старте, а в /var/log/syslog добавляя строку long config file line ignored обязательно добавьте в конец файла /etc/pptpd.conf перенос строки.
Наш сервер готов к работе.
Настройка клиентских ПК
В общем случае достаточно настроить VPN соединение с опциями по умолчанию. Однако мы советуем явно указать тип соединения и отключить лишние протоколы шифрования.
Далее, в зависимости от структуры сети, необходимо указать статические маршруты и основной шлюз. Эти вопросы подробно разбирались в предыдущих частях.
Устанавливаем VPN соединение и пробуем пропинговать какой либо ПК в локальной сети, мы без каких либо затруднений получили доступ к терминальному серверу:
Теперь еще одно важное дополнение. В большинстве случаев доступ к компьютерам локальной сети будет возможен только по IP адресам, т.е. путь \\10.0.0.2 будет работать, а \\SERVER - нет. Это может оказаться неудобным и непривычным для пользователей. Существует несколько способов решения данной проблемы.
Если локальная сеть имеет доменную структуру, достаточно указать DNS сервером для VPN подключения DNS сервер контроллера домена. Воспользуйтесь опцией ms-dns в /etc/ppp/pptpd-options сервера и данные настройки будут получены клиентом автоматически.
Если DNS сервер в локальной сети отсутствует, то можно создать и использовать WINS сервер, информацию о нем также можно автоматически передавать клиентам при помощи опции ms-wins . И наконец, если удаленных клиентов немного, использовать на клиентских ПК файлы hosts (C:\Windows\System32\drivers\etc\hosts), куда следует добавить строки вида.
В последних версиях ubuntu, появилась возможность настройки VPN соединения с помощью графического интерфейса. Рассмотрим настройку VPN.
Нам понадобятся 2 пакета. Это пакеты pptp-linux и network-manager-pptp. Скачать вы их можете по ссылкам:
Помните, пакеты нужно скачивать для своей архитектуры (32- или 64-бит).
После скачивания, устанавливаем пакеты в соответствующем порядке. Вначале ставим pptp-linux , потом network-manager-pptp .
После установки network-manager-pptp производим перезагрузку системы.
После перезагрузки находим в правом верхнем углу значок, изображающий два монитора, и щелкаем по нему левой кнопкой мыши.
Находим пунтк «Настроить VPN…» и нажимаем на него.
После этого появится еще одно окно.
В новом окне указываем имя подключения и адрес vpn-сервера. В моём случае имя - «aist», а адрес сервера (gateway) - server.avtograd.ru
(Нажмите на картинку для увеличения)
После того, как данные введены, пробегитесь по вкладкам «Authentication» , «Compression & Encryption» и тд. и заполните данные. Пока не нажимая кнопку «Далее».
Что касаемо лично меня, то на этих вкладках я ничего не менял, и оставил всё как есть. Что менять, а что нет, зависит от вашего провайдера.
После того, как все настройки сделаны нажимаем «Далее» .
Появляется очередное окошко.
Нажимаем кнопку «Применить» . Настройка параметров VPN-соединения закончена.
Теперь подключаемся к интернету. Снова щелкаем левой кнопкой мыши по тому же самому значку с двумя мониторами и выбераем созданное вами подключение. В моём случаем это «aist» .
В появившемся окне вводим наш логин и пароль для подключения к сети и нажимаем «OK».
Всё готово. Стабильного вам интернет соединения =).
Материал специально подготовлен для myubuntu.ru .
Настройка VPN в Ubuntu
Не думал писать эту статью, но так как в Ubuntu 8.04, так нормально
и не сделали Network Manager при работе в сети со статическими IP
адресами, то все таки опишу, как я вручную настраиваю у себя
подключение к VPN.
Настройка с помощью Network Manager"а
Как
бы там ни было, но все таки опиши настройку впн с помощью
network-manager"а. Эта настройка вполне подойдет тем, у кого в
подключении к сети используется автоматическое получение IP адреса с
помощью DHCP.
1. Устанавливаем два необходимых нам пакета:
Так
как этих пакетов по умолчанию нет на диске с убунтой, а впн часто
приходится настраивать на машине, у которой больше нет другого выхода в
интернет, то советую заранее припастись этими пакетами с официального
репозитория. Для этого заходим на сайт http://packages.ubuntu.com/ , там ищем два эти пакета, закачиваем их и в дальнейшем устанавливаем на нужной нам машине.
2.
Если в аплете Network Manager не появился пункт "VPN соединения"(VPN
Connections) или он не будет открываться, то надо перелогиниться или
даже лучше - перезагрузиться.
3. Нажимаем левой клавишей мыши (по
правой кнопке вызывается другое меню) по значку Network Manager"а и в
выпавшем меню выбираем "VPN соединения" - "Настройка VPN"(Configure
VPN). Добавляем новое соединение и выставляем все нужные опции для
этого соединения.
4. После этого, ваше соединение должно появиться в
меню "VPN соединения", если оно вдруг не появилось - перелогиньтесь или
перезагрузитесь (ну что я могу поделать, на столько, все еще, сырой
этот network-manager:().
5. Все теперь можете подключаться к
созданному вами впн соединению (а также и отключаться, выбрав пункт
меню в Network Manager"е).
Ручная настройка
Дальше
я описываю настройку для своего соединения, ваша настройка должна
отличаться вводимыми данными, а также может отличаться вводимыми
параметрами.
1. Устанавливаем пакет pptp-linux
:
Как
я уже описывал выше в разделе установки с помощью network-manager"а,
впн часто приходится настраивать на машине, у которой больше нет
другого выхода в интернет, поэтому советую заранее припастись этим
пакетом с официального репозитория http://packages.ubuntu.com/ .
2. Редактируем файл options.pptp
:
nano /etc/ppp/options.pptp
lock
noauth
nobsdcomp
nodeflate
persist
Не буду описывать каждый из параметров, опишу лишь некоторые:
persist
- этот парметр пытается по новой открыть соединение, когда оно закрывается;
nodeflate
- не использовать deflate сжатие (хотя говорят с ним работает быстрее, не знаю - не проверял).
Также, если у вас в соединении используется шифрование, то добавляем одну из строк, в зависимости от типа шифрования - require-mschap-v2, require-mppe-40, require-mppe-128, require-mppe
.
3. Создаем файл подключения /etc/ppp/peers/vpn
(название vpn
можете заменить на любое другое, но если замените, не забывайте менять его дальше в этой статье)
nano /etc/ppp/peers/vpn
Вставляем туда следующие строки:
maxfail 0
lcp-echo-interval 60
lcp-echo-failure 4
defaultroute
pty "pptp vpn.ava.net.ua --nolaunchpppd"
name sukochev
remotename PPTP
+chap
file /etc/ppp/options.pptp
ipparam vpn
Вместо vpn.ava.net.ua впишите адрес вашего впн сервера (можно использовать IP сервера). Вместо sukochev вставляете ваш логин подключения.
Опишу некоторые параметры:
maxfail 0 - всегда пытаться подключиться при отсутствии связи;
lcp-echo-interval - интервал времени, по прошествии которого, происходит опрос удаленной стороны;
lcp-echo-failure - количество не отвеченных запросов удаленной стороны, после чего система считает, что нас отключили;
defaultroute - устанавливаем маршрут по умолчанию;
+chap - тип аутентификации. Помимо +chap может использоваться тип +pap .
file - читать дополнительные настройки из заданного файла.
Также можно добавить, если нужно, следующие параметры:
deflate 15,15 - использовать deflate сжатие (в файле options.pptp не должно быть параметра nodeflate);
mtu - максимальный размер передаваемого пакета (изменяют этот параметр обычно тогда, когда часто отключается соединение или не открываются некоторые сайты);
mru - максимальный размер получаемого пакета.
4. Редактируем файл /etc/ppp/chap-secrets (если используется тип аутентификации PAP, то /etc/ppp/pap-secrets соответственно)
nano /etc/ppp/chap-secrets
Вставляем туда строку, типа:
sukochev PPTP password *
Внимание!!! Замените sukochev на свой логин, а password на ваш пароль для подключения.5. Если это необходимо, то прописываем в файл /etc/network/interfaces нужные роуты. Например у меня роуты прописаны для того, чтобы при включенном впн-подключении я мог пользоваться местной локальной сетью. Вот пример моих роутов (те что начинаются на up route), у вас они естественно будут отличаться:
auto eth1
iface eth1 inet dhcp
up route add -net 10.1.0.0 netmask 255.255.0.0 gw 10.1.45.1 dev eth1
up route add -net 10.3.0.0 netmask 255.255.0.0 gw 10.1.45.1 dev eth1
Не забываем после изменения файла /etc/network/interfaces перезапустить сетевые подключения:
/etc/init.d/networking restart
6. Теперь можете включать и выключать впн подключение с помощью следующих команд:
Включение
Выключение
Автоматическое подключение VPN при загрузке системы
Для этого редактируем файл /etc/network/interfaces
nano /etc/network/interfaces
И вставляем в конец фйла следующие строки:
auto ppp0
iface ppp0 inet ppp
provider vpn
pre-up ip link set eth1 up
up route del default
up route add default dev ppp0
Где eth1 - это интерфейс сетевого устройства, через которое подключается впн-соединение, а vpn - название впн-соединения, которое вы создали в папке /etc/ppp/peers/ .
Шаг 1
Открываем командную строку
Наиболее простой способ это открыть терминал путем одновременного нажатия клавиш Ctrl + Alt + T, но можно и запустить Терминал из Главного меню.
Шаг 2Чтобы установить OpenVPN Network Manager плагин, вводим в командную строку следующую команду без кавычек: "sudo apt-get install network-manager-openvpn-gnome". Нажмите Enter.
Шаг 3Устанавливаем OpenVPN Network Manager плагин
При необходимости введите пароль от системы и снова нажмите Enter.
Шаг 4Устанавливаем OpenVPN Network Manager плагин
Введите "Y", это значит, что вы согласны осуществить установку, и нажмите Enter.
Шаг 5Скачиваем сертификат
В личном кабинете у вас сформировался сертификат, для установки необходимо его скачать. Перейдите в Мои услуги "VPN->My services" и нажмите "VPN clients".
Шаг 6Скачиваем сертификат
Нажмите на иконку OpenVPN, чтобы скачать сертификат.
Шаг 7Скачиваем сертификат
На вопрос "Would you like to save this file?", нажмите "Save File". Начнется скачивание файла.
Шаг 8Скачиваем сертификат
Так как у сертификатов длинные названия, для удобства можно его предварительно переименовать на более короткое.
Шаг 9Импорт конфигурации
Импортировать конфигурацию OpenVPN можно посредством следующей команды "sudo openvpn --config /home/my/Downloads/client.ovpn". Где "/home/my/Downloads" путь до папки, в которой расположен сертификат, а client.ovpn наименование самого сертификата. Нажмите Enter.
Шаг 10Импорт конфигурации
При необходимости введите пароль от системы и снова нажмите Enter. VPN подключен, теперь можно закрыть терминал, на работу VPN это не повлияет.
Шаг 11Отключение от сети
Если вы хотите отключить VPN, введите в терминале команду "sudo killall openvpn". Нажмите Enter.
Шаг 12Отключение от сети
При необходимости введите пароль от системы и снова нажмите Enter. ВПН теперь будет отключен.
Шаг 13Пользуемся всеми преимуществами VPN
Поздравляем! У Вас получилось настроить VPN на Ubuntu! Теперь у Вас есть защищенный доступ к сети Интернет и новый IP!
Почему стоит скачать VPN на Linux?
- Вы получите надежное соединение, стабильную скорость и доступ к любимому контенту
- Установка расширения VPN для браузера распространяется только на веб-страницы, они не подходят для игр и скачивания торрентов
- VPN для Linux помогает обеспечивать максимальный уровень анонимности для пользователей, заменяя реальный IP на IP-адрес сервера VPN
Иногда нужно получить удаленный доступ к сети предприятия, создать тоннель между серверами или предоставить доступ к Интернету хорошему соседу которого отключили от Сети за задолженность А, может быть, - просто иметь возможность получить доступ к своей сети из любого уголка мира, где есть Интернет.
Для этих целей можно использовать виртуальные частные сети (Virtual Private Network - VPN). В нашем случае, это будет самый распространенный протокол в странах СНГ, а именно - PPTP (Point-to-Point Tunneling Protocol). Многие кабельные провайдеры интернета используют именно его для предоставления услуг доступа ко .
Поднять свой сервер на Linux Ubuntu Server LTS не так уж трудно. Для этого нам понадобится доступ к Интернету и реальный IP (если нужно будет подключаться из Интернета).
Заходим на сервер, используя учетную запись root и устанавливаем необходимые пакеты командой apt-get install pptpd Нам предложат также установить пакет bcrelay, он позволяет дублировать широковещательные пакеты, принятые на входящем интерфейсе на виртуальные (PPP тоннели клиентов).
Нажимаем enter и наш сервер установлен. Приступим к конфигурации. Откроем файл nano /etс/pptpd.conf и в самом низу увидим следующие строки
#localip 192.168.0.1
#remoteip 192.168.0.234-238,192.168.0.245
# or
#localip 192.168.0.234-238,192.168.0.245
#remoteip 192.168.1.234-238,192.168.1.245
Это настройки IP адресов клиентов. Раскомментируем первые две строки (удалим символ #) и немного подправим их.
Строка localip 192.168.0.1 значит, что у нашего VPN сервера будет IP 192.168.0.1 можно указать наш IP в одной из непосредственно подключенных сетей. Например, у меня в домашней сети у сервера IP адрес - 172.30.2.1 Чтобы не нагружать сервер еще и ненужной я использовал его же.
Вторая строка - remoteip 192.168.0.234-238,192.168.0.245 указывает диапазон IP адресов, которые будут присваиваться клиентам. Как видно из этих строк, сетевой адрес может быть любым (во второй группе строк). Для удобства мы выберем его из того же диапазона что и IP нашего сервера.
Я использую дома такую логику выдачи IP: 1й - роутер, 2-19 - компьютеры, 20-49 - статический VPN (при подключении выдается один и тот же адрес), 50-100 - VPN клиенты, 101-199 - Wi-Fi клиенты, 200-254 - для различных устройств (например IP роутера, телевизора и т.п). Укажем такой диапазон remoteip 172.30.2.50-100 и сохраним конфигурацию.
Перейдем в каталог cd /etс/ppp/ здесь хранятся все файлы настройки pptpd (сервер) и pppd (клиент).
Переименуем файл pptpd-options командой mv pptpd-options pptpd-options.bak и создадим его по новой nano pptpd-options Это сделано для того, чтобы легче было вставить несколько строк в новый файл, чем искать параметры среди десятков строк с комментариями. Вставим в этот новый файл такое содержимое:
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
#require-mppe-128
ms-dns 172.30.2.1
nodefaultroute
lock
nobsdcomp
auth
logfile /var/log/pptpd.log
Что все это значит? Давайте по порядку:
- Использовать имя pptpd для поиска логинов в chap-secrets
- При указании этой опции pptpd не согласится аутентифицироваться по протоколу refuse-pap, refuse-chap, refuse-mschap
- Требовать у партнёра аутентификации с помощью MS-CHAPv2
- Требовать использования MPPE со 128-битным шифрованием require-mppe-128 т.е. шифровать весь трафик. Это увеличивает нагрузку на сервер и не все "слабые" устройства его поддерживают (Wi-Fi роутеры и т.п.).
- Предложить использовать DNS сервер с IP 172.30.2.1
- nodefaultroute - не устанавливать шлюз по умолчанию от сервера к клиенту, в противном случае, весь трафик в Интернет будет послан через подключившегося клиента, также Интернет отключится из-за потери маршрута к провайдеру.
- Lock - блокировать сессии, т.е. с одного логина может быть только одно подключение
- nobsdcomp - не сжимать трафик. При включении увеличивает нагрузку на наш сервер
- auth - требовать авторизации (логин и пароль)
- logfile /var/log/pptpd.log - писать логи работы в этот файл.
Сохраняем и закрываем этот конфигурационный файл.
Теперь нужно добавить пользователей, которые будут подключаться к нашему серверу. Откроем файл nano chap-secrets (он используется для хранения учетных записей PPP).
Для корректной работы нужно соблюдать такой формат: колонки должны быть разделены хотя бы одним пробелом или табом (Tab), не допускается использование пробелов в именах (иначе пробел рассматривается как следующая колонка), логин должен начинаться на букву. Например:
Первая колонка - это логин пользователя, вторая - имя сервиса. В нашем случае это pptpd. Далее - пароль пользователя, последняя - IP адрес, который будет выдан. Причем, если стоит * то IP адрес будет выдан из заданного ранее диапазона автоматически. Также в качестве IP можно указать адрес, который может быть за пределами диапазона.
Перед тем, как использовать сервер, нужно его перезапустить. Для этого выполним /etс/init.d/pptpd restart если в конфигурации нет ошибок, сервер будет запущен.
rоot@CoolServ:/etс/ppp# /etс/init.d/pptpd restart
Restarting PPTP:
Stopping PPTP: pptpd.
Starting PPTP Daemon: pptpd.
Если вы используете ) в него нужно добавить такие строки:
# VPN - PPTPD
iptables -A INPUT -p tcp -m tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p gre -m state --state RELATED,ESTABLISHED -j ACCEPT
Для предоставления доступа к Интернету VPN клиентам через наш сервер нужно дописать такое правило в IPTables:
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
Где eth1 - интерфейс в сторону Интернета.
Для проверки можно создать тестовое подключение VPN с отключенным шифрованием (не обязательным) и используя любой указанный логин подключиться к серверу.
Частые ошибки при подключении
Чтобы создать клиентское подключение PPTP из Windows XP выполняем следующие пункты: нажимаем "Пуск" - "Панель управления" - "Сеть и подключения к интернету" - "Сетевые подключения".
Жмем на "Создание нового подключения" - это запустит "Мастер новых подключений".
Теперь вписываем название подключения. Здесь можно написать что угодно, это будет просто названием подключения, для примера мы напишем "PPTP" (по типу соединения).
Может появиться следующий вопрос «Использовать настроенные подключения к Интернету?» (Если у Вас уже настроено подключение PPPoE), в нем нажимаем "Не набирать номер".
Если такое сообщение не появилось, читаем далее.
Теперь у Вас попросят ввести адрес сервера, указываем IP вашего сервера или его имя.
В окне, показанном на фото выше, выбираем "Свойства". Появится окошко в котором выбираем вкладку "Безопасность". Находим в нем пункт "Требуется шифрование данных" и убираем галочку. в противном случае мы не сможем подключиться, будут появляться ошибки 741 или 742 - «требуемый тип шифрования не поддерживается сервером».
После этого нажимаем кнопку «ОК», возвращаемся в предыдущее окно, вводим логин, пароль и подключаемся к нашему удаленному серверу по защищенному VPN каналу!