Показаны сообщения с ярлыком pptp. Показать все сообщения
Показаны сообщения с ярлыком pptp. Показать все сообщения

воскресенье, 28 августа 2011 г.

L2TP server + route default

Причина попробовать новый протокол была проблема в локальной сети с одной машиной на windows 7. Происходило периодическое отключение от локального pptp сервера. Жалоб в интернете на это много и причин, как я понял тоже много, а однозначного решения проблемы нет (кому то помогло включение файрвол или замена драйверов звуковой карты, а кому то и пере установка windows).
В общем был и такой совет - сменить сервер pptp на l2tp, так как протокол более современный, упрощенный, ну и поэтому быстрый и надежный (наверно). Для его установки в ubuntu проблем нет. В интернете много информации - именно ubuntu+l2tp. Но как всегда большинство статей похожи друг на друга и описывают основные моменты, которые и так ясны. Ну в общем сам пакет xl2tpd я установил и настроил быстро, минут 30. Основная задержка у меня произошла - когда я настраивал подключение клиентов. Соединение к серверу l2tp устанавливалось без проблем, а интернет не работал, пинги тоже не проходили.  Настройки iptables (как раньше) не помогали. В конце дня я понял что дело в маршрутизации. Для pptp этой проблемы не было, а для l2tp это стало нужно, потому что этот протокол боле низкого уровня (мое мнение). Советов по этому вопросу в целом много, но у меня долго не получалось добиться нормальной работы vpn сервера.
Помогла эта статья http://www.opennet.ru/base/net/l2tp_vpn.txt.html
Что в итоги я сделал -
в файле /etc/ppp/ip-up в конце дописал команду - route add default gw 192.168.1.1
/etc/ppp/in-up - файл который выполняется при каждом подключении клиента vpn
192.168.1.1 - адрес adsl модема.

Сейчас все хорошо работает на VirtualBox, завтра настрою в реальной сети. Сейчас анализирую все настройки и причины проблем. Осмелюсь сделать по этому поводу вывод. А вывод простой, надо глубже изучать основы, это утилиты routin, ip, iptables.

Установка
apt-get install xl2tpd
Настройка nat для моего диапазона адресов, в файле /etc/rc.local
iptables -t nat -A POSTROUTING -s 192.168.9.0/255.255.255.0 -o eth0 -j MASQUERADE

Мои файлы конфигов:

/etc/xl2tpd/xl2tpd.conf

[global]
port = 1701
auth file = /etc/l2tpd/l2tp-secrets
access control = no
rand source = dev

[lns default]
exclusive = no
ip range = 192.168.9.10-192.168.9.20 ; * Allocate from this IP range
lac = 192.168.0.4 - 192.168.0.100 ; * These can connect as LAC's
hidden bit = no
local ip = 192.168.9.2
length bit = yes
require chap = yes
refuse pap = yes ; * Refuse PAP authentication
refuse authentication = no ; * Refuse authentication altogether
require authentication = no ; * Require peer to authenticate
name = us1 ; * Report this as our hostname
pppoptfile = /etc/ppp/options.xl2tpd
flow bit = yes ; * Include sequence numbers


etc/ppp/options.xl2tpd
lock
auth
name l2tpd
usepeerdns
nobsdcomp
noaccomp
nodeflate

#noproxyarp
#lcp-echo-interva l 00 # интервал времени опроса соединения
#lcp-echo-failure 8   # сколько делать неудачных попыток до отключения

refuse-eap
refuse-pap
#refuse-chap
nomppe

#mru 1460
#mtu 1460

defaultroute
replacedefaultroute
maxfail 0

logfile /var/log/l2tp.log

ms-dns 192.168.0.5
#ms-dns 78.36.121.19
#ms-dns 127.0.0.1
#ms-dns 8.8.8.8
#ms-dns 8.8.4.4

вторник, 20 апреля 2010 г.

Abills + PPTPD + FreeRadius

Описание установки Abills на Ubuntu-server 9.10
Оригинал статьи:  http://forum.ubuntu.ru/index.php?topic=87597.0
 На сервере установлено две сетевые карты
eth0 192.168.0.11 - внешняя, eth1 192.168.2.7 - внутренняя

Настройка клиента PPTP

На работе подключили новый канал интернета. Это местный провайдер кабельных сетей, подключение по протоколу pptp. После всех работ задокументировал настройки. Для раздачи внутри отдела интернета установил сервер естественно ubuntu версии 9.10. Кстати, начиная с этой версии в репозитариях отсутствует пакет ipmasq (для настройки роутинга). Схема такая eth0 - внешняя сеть с установкой клиента pptp, eth1 - внутренняя сеть. Для ограничения доступа решено также установить pptp сервер для внутренних клиентов.

Установка клиента pptp 
для подключения к (провайдеру кабельных сети)
apt-get install pptp-linux

Создал файл /etc/ppp/peers/skay - настройки для подключения (skay - так назвал провайдера)
**** begin ****
remotename skay
#pty "pptp --loglevel 1 192.168.160.69 --nolaunchpppd"
pty "pptp 192.168.160.69 --nolaunchpppd"
name osb7128

maxfail 0
lcp-echo-interval 60
lcp-echo-failure 5

#noauth
#nodetach
#lock
defaultroute
#noipdefault
replacedefaultroute
file /etc/ppp/options.pptp
ipparam skay

#debug
#noccp
**** end ****


Содержимое файла /etc/ppp/options.pptp
**** begin ****
#lcp-echo-interval 60
#lcp-echo-failure 4
#defaultroute

lock
noauth

refuse-pap
refuse-eap
refuse-chap
refuse-mschap

#+mschap-v2

nobsdcomp
nodeflate

persist

# add potions 22.04.2010
#defaultroute
#replacedefaultroute

# Encryption
# (There have been multiple versions of PPP with encryption support,
# choose with of the following sections you will use.  Note that MPPE
# requires the use of MSCHAP-V2 during authentication)
#require-mschap-v2

# http://ppp.samba.org/ the PPP project version of PPP by Paul Mackarras
# ppp-2.4.2 or later with MPPE only, kernel module ppp_mppe.o
# {{{
# Require MPPE 128-bit encryption
#require-mppe-128
# }}}

# http://polbox.com/h/hs001/ fork from PPP project by Jan Dubiec
# ppp-2.4.2 or later with MPPE and MPPC, kernel module ppp_mppe_mppc.o
# {{{
# Require MPPE 128-bit encryption
#mppe required,stateless
# }}}
**** end ****


В файл /etc/ppp/options добавил параметр:
+mschap-v2 - шифрование для установления соединения

В файл /etc/ppp/chap-secrets добавил параметры соединения (параметры в строке разделены символом табуляции, а не пробелом - это важно!):

osb7128    skay    мой-пароль    *

После этих настроек pptp соединение запускается командой pon skay
poff skay - закрывается соединение.


Установк pptp сервера:
apt-get install pptpd

Мои настройки в файле /etc/pptp.conf

**** begin ****
ppp /usr/sbin/pppd
option /etc/ppp/pptpd-options
#debug
# stimeout 10
logwtmp
listen 192.168.3.8             - работать только на внутреннию сеть
bcrelay eth1
localip 192.168.199.1
remoteip 192.168.199.10-30
**** end ****

В файл /etc/ppp/chap-secrets добавил параметры соединения:
osb7128    skay    мой-пароль    *

Настройки из файла /etc/ppp/pptp-option.conf
**** begin ****
 name pptpd
#auth

# domain mydomain.net

#chapms-strip-domain

# Encryption
# Debian: on systems with a kernel built with the package
# kernel-patch-mppe >= 2.4.2 and using ppp >= 2.4.2, ...
# {{{
refuse-pap
refuse-chap
refuse-mschap
# Require the peer to authenticate itself using MS-CHAPv2 [Microsoft
# Challenge Handshake Authentication Protocol, Version 2] authentication.
require-mschap-v2   - шифрование при проверки пароля, во время установки связи
# Require MPPE 128-bit encryption
# (note that MPPE requires the use of MSCHAP-V2 during authentication)
#require-mppe-128  - отключил шифрование трафика
# }}}

#ms-dns 10.0.0.1
#ms-dns 172.17.1.1    - днс провайдера
ms-dns 127.0.0.1       - днс у меня локальный

#ms-wins 10.0.0.3
#ms-wins 10.0.0.4

#proxyarp
nodefaultroute
# Logging
#debug
#dump
# Miscellaneous
# access.
lock
nobsdcomp
**** end ****


Содержимое файла /etc/rc.local (как есть с экспериментами)

#  настройка nat для всей подсети:
#iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

#iptables -A FORWARD -i eth1 -s 192.168.199.0/255.255.255.0 -o eth0 -d 172.17.0.0/255.255.0.0 -j ACCEPT
#iptables -A FORWARD -i eth0 -s 172.17.0.0/255.255.0.0 -o eth1 -d 192.168.199.0/255.255.255.0 -j ACCEPT

#iptables -A FORWARD -i eth1 -s 192.168.3.0/255.255.255.0 -o eth0 -d 172.17.0.0/255.255.0.0 -j ACCEPT
#iptables -A FORWARD -i eth0 -s 172.17.0.0/255.255.0.0 -o eth1 -d 192.168.3.0/255.255.255.0 -j ACCEPT

# work
iptables -t nat -A POSTROUTING -s 192.168.199.0/255.255.255.0 -o ppp0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.199.0/255.255.255.0 -o eth0 -j MASQUERADE

# пробовал вариант для работы rtorrent
#iptables -t nat -A POSTROUTING -s 127.0.0.1 -o ppp0 -j MASQUERADE

#iptables -t nat -A POSTROUTING -s 192.168.199.0/255.255.255.0 -j SNAT 172.17.2.77
#iptables -t nat -A POSTROUTING -s 192.168.199.0/255.255.255.0 -j SNAT eth0

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


service pptpd restart - перезапуск сервеса