VPN (PPTP PPPoE): различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
 
(не показано 6 промежуточных версий 5 участников)
Строка 1: Строка 1:
[[Категория:Admin]]
{{Stub}}
{{MovedFromFreesourceInfo|AltLinux/Документация/НастройкаVPN}}
{{викифицировать}}
{{викифицировать}}


== Настройка VPN-соединения (PPtP и PPPOE) ==
== Настройка VPN-соединения (PPTP и PPPoE) ==


<div style="display: inline; color: red;">NB: ошибка в ALT Linux Server 4.0.0/4.0.1, ALT Linux Desktop 4.0.0/4.0.1/4.0.2: [http://faq.altlinux.ru/index.php?action=single&nf=1&qid=950 FAQ#950]</div>
<div style="display: inline; color: red;">NB: ошибка в ALT Linux Server 4.0.0/4.0.1, ALT Linux Desktop 4.0.0/4.0.1/4.0.2: [http://faq.altlinux.ru/index.php?action=single&nf=1&qid=950 FAQ#950]</div> (ссылка не работает, надо найти, куда делся старый FAQ)


Данное руководство подразумевает использование [[etcnet|etcnet]]. etcnet используется по умолчанию во всех дистрибутивах ALT Linux, начиная с версии 3.0. Для настройки «по-дубовому» см. раздел в конце документа.
Данное руководство подразумевает использование [[etcnet|etcnet]]. etcnet используется по умолчанию во всех дистрибутивах ALT Linux, начиная с версии 3.0, исключая десктопные дистрибутивы, начиная с 6.0. В последних используется Network Manager, хотя и etcnet тоже присутствует. Для настройки «по-дубовому» см. раздел в конце документа.


=== PPtP ===
=== PPTP ===


Необходимые пакеты: '''ppp'''.
Необходимые пакеты: '''ppp'''.


Рассматривается настройка VPN-соединения (pptp), совместимого с клиентами Windows.
Рассматривается настройка VPN-соединения (pptp), аналогичного широко используемому клиентами Windows.
Для начала рекомендуется читать документацию в /usr/share/doc/pptp* (на русском).
Для начала рекомендуется читать документацию в /usr/share/doc/pptp* (на русском).


Строка 33: Строка 30:
hide-password
hide-password
persist</pre>
persist</pre>
(вместо <tt>user/password</tt> можно вписать параметр <tt>name</tt>, по аргументу которого будет производится поиск в первой колонке /etc/ppp/{pap,chap}-secrets)


Также рекомендуется в /etc/net/ifaces/eth0/ipv4route добавить отдельную строку для маршрута к VPN-серверу:
Также рекомендуется в /etc/net/ifaces/eth0/ipv4route добавить отдельную строку для маршрута к VPN-серверу:
Строка 42: Строка 41:
Для ручной остановки PPTP-соединения следует (от root) использовать команду '''ifdown pppXX''', где вместо ''pppXX'' следует писать имя вашего PPTP-интерфейса. Для ручного запуска используйте команду '''ifup pppXX'''.
Для ручной остановки PPTP-соединения следует (от root) использовать команду '''ifdown pppXX''', где вместо ''pppXX'' следует писать имя вашего PPTP-интерфейса. Для ручного запуска используйте команду '''ifup pppXX'''.


=== PPPOE ===
=== PPPoE ===
 
<div style="display: inline; color: red;">Этот кусочек устарел и требует правки — скрипта adsl-setup больше нет</div>


Необходимые пакеты: '''rp-pppoe-base'''.
Необходимые пакеты: '''rp-pppoe-base'''.
Строка 62: Строка 59:
PPPTYPE=pppoe
PPPTYPE=pppoe
HOST=eth0
HOST=eth0
PPPOE_EXTRA_OPTIONS="-T 80"
PPPOE_EXTRA_OPTIONS="-T 80 -m 1412"
</pre>
 
из man pppoe:
<pre>
      -m MSS Causes pppoe to clamp the TCP  maximum  segment  size  at  the  specified
              value.  Because of PPPoE overhead, the maximum segment size for PPPoE is
              smaller than for normal Ethernet encapsulation.  This could  cause  prob
              lems  for  machines on a LAN behind a gateway using PPPoE.  If you have a
              LAN behind a gateway, and the gateway  connects  to  the  Internet  using
              PPPoE, you are strongly recommended to use a -m 1412 option.  This avoids
              having to set the MTU on all the hosts on the LAN.
</pre>
</pre>


Строка 85: Строка 93:
lcp-echo-interval 20
lcp-echo-interval 20
lcp-echo-failure 3
lcp-echo-failure 3
persist
</pre>
</pre>
(вместо <tt>user/password</tt> можно вписать параметр <tt>name</tt>, по аргументу которого будет производится поиск в первой колонке /etc/ppp/{pap,chap}-secrets)


Проверяем что все работает
Проверяем что все работает
# service network restart
# service network restart
и… всё. Теперь при загрузке в процессе запуска сервиса network будет создаваться и подниматься pppoe соединение.
и… всё. Теперь при загрузке в процессе запуска сервиса network будет создаваться и подниматься соединение PPP-over-Ethernet.
 
'''PS.''' Если используется как шлюз, то в '''/etc/net/ifaces/default/fw/iptables/mangle/FORWARD''' необходимо вставить:
  <code>-p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu</code>


=== Ручная настройка (без etcnet) ===
=== Ручная настройка (без etcnet) ===


==== PPtP ====
==== PPTP ====


Кратко: устанавливаем пакет pptp-client, запускаем pptp-config и настраиваем. На всякий случай укажите данные для авторизации как PAP, так и CHAP.
Кратко: устанавливаем пакет pptp-client, запускаем pptp-config и настраиваем. На всякий случай укажите данные для авторизации как PAP, так и CHAP.
Строка 127: Строка 142:
<pre>any net 192.168.2.0/24 gw 192.168.2.246</pre>
<pre>any net 192.168.2.0/24 gw 192.168.2.246</pre>


==== PPPOE ====
==== PPPoE ====


***К СОЖАЛЕНИЮ СЛЕДУЮЩЕЕ - НЕ РАБОТАЕТ В ALTLINUX SERVER 4.0.1./DESCTOP 4.1.1. ***
Необходимые пакеты: '''rp-pppoe-client'''.
Необходимые пакеты: '''rp-pppoe-client'''.


Строка 140: Строка 154:
# service adsl start
# service adsl start
для подключения.
для подключения.
[[Категория:VPN]]
{{Category navigation|title=VPN|category=VPN|sortkey={{SUBPAGENAME}}}}

Текущая версия от 17:18, 1 июля 2015

42px-Wikitext-ru.svg.png
Эту статью следует викифицировать.


Настройка VPN-соединения (PPTP и PPPoE)

NB: ошибка в ALT Linux Server 4.0.0/4.0.1, ALT Linux Desktop 4.0.0/4.0.1/4.0.2: FAQ#950

(ссылка не работает, надо найти, куда делся старый FAQ)

Данное руководство подразумевает использование etcnet. etcnet используется по умолчанию во всех дистрибутивах ALT Linux, начиная с версии 3.0, исключая десктопные дистрибутивы, начиная с 6.0. В последних используется Network Manager, хотя и etcnet тоже присутствует. Для настройки «по-дубовому» см. раздел в конце документа.

PPTP

Необходимые пакеты: ppp.

Рассматривается настройка VPN-соединения (pptp), аналогичного широко используемому клиентами Windows. Для начала рекомендуется читать документацию в /usr/share/doc/pptp* (на русском).

Создаем каталог /etc/net/ifaces/pppXX (где XX — любой свободный номер интерфейса). Пишем туда следующие файлы:

/etc/net/ifaces/pppXX/options:

ONBOOT=yes
PPPTYPE=pptp
PPTP_SERVER=10.0.0.1
REQUIRES=eth0

Пояснение: в параметр REQUIRES записывается имя того интерфейса, через который осуществляется доступ к PPTP (VPN) серверу. Наличие этого параметра гарантирует правильный порядок старта интерфейсов. Здесь и далее предполагается, что имя этого интерфейса eth0. /etc/net/ifaces/pppXX/pppoptions:

name ВАШ_ЛОГИН
password SUPER_SECRET_PASSWORD
noipdefault
defaultroute
noauth
hide-password
persist

(вместо user/password можно вписать параметр name, по аргументу которого будет производится поиск в первой колонке /etc/ppp/{pap,chap}-secrets)

Также рекомендуется в /etc/net/ifaces/eth0/ipv4route добавить отдельную строку для маршрута к VPN-серверу:

default via 10.0.66.1
10.0.0.1/32 via 10.0.66.1

Пояснение: первая строка — маршрут (в локальную сеть) по умолчанию для интерфейса eth0. Вторая строчка это указание статического маршрута до одного конкретного сервера (того самого сервера PPTP). Если его не указать (частая ошибка в настройках PPTP), то после присоединения к PPTP-серверу маршрут по умолчанию изменится, и сам сервер станет недоступен. Симптомы такой неправильной настройки: соединение устанавливается, но ничего не работает, и соединение почти сразу разрывается.

Для ручной остановки PPTP-соединения следует (от root) использовать команду ifdown pppXX, где вместо pppXX следует писать имя вашего PPTP-интерфейса. Для ручного запуска используйте команду ifup pppXX.

PPPoE

Необходимые пакеты: rp-pppoe-base.

Сначала настраиваем /etc/net/ifaces/eth0. Для этого удаляем из этого каталога всё кроме options. В options оставляем строчки

BOOTPROTO=static
MODULE=<имя_модуля_сетевой карточки>

После создаём в /etc/net/ifaces/ppp0 файлы:

options:

ONBOOT=yes
PPPTYPE=pppoe
HOST=eth0
PPPOE_EXTRA_OPTIONS="-T 80 -m 1412"

из man pppoe:

       -m MSS Causes pppoe to clamp the TCP  maximum  segment  size  at  the  specified
              value.   Because of PPPoE overhead, the maximum segment size for PPPoE is
              smaller than for normal Ethernet encapsulation.  This could  cause  prob
              lems  for  machines on a LAN behind a gateway using PPPoE.  If you have a
              LAN behind a gateway, and the gateway  connects  to  the  Internet  using
              PPPoE, you are strongly recommended to use a -m 1412 option.  This avoids
              having to set the MTU on all the hosts on the LAN.

pppoptions:

noipdefault
noauth
default-asyncmap
defaultroute
hide-password
mtu 1492
mru 1492
noaccomp
noccp
nobsdcomp
nodeflate
nopcomp
novj
novjccomp
user ВАШ_ЛОГИН
password ВАШ_ПАРОЛЬ
lcp-echo-interval 20
lcp-echo-failure 3
persist

(вместо user/password можно вписать параметр name, по аргументу которого будет производится поиск в первой колонке /etc/ppp/{pap,chap}-secrets)


Проверяем что все работает

  1. service network restart

и… всё. Теперь при загрузке в процессе запуска сервиса network будет создаваться и подниматься соединение PPP-over-Ethernet.

PS. Если используется как шлюз, то в /etc/net/ifaces/default/fw/iptables/mangle/FORWARD необходимо вставить:

 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Ручная настройка (без etcnet)

PPTP

Кратко: устанавливаем пакет pptp-client, запускаем pptp-config и настраиваем. На всякий случай укажите данные для авторизации как PAP, так и CHAP. В /etc/sysconfig/pptp нужно указать название соединения (придуманное при pptp-config):

# Tunnel name
PPTP_TUNNEL=НАЗВАНИЕ_ТУННЕЛЯ

Данные о соединении запишутся в /etc/ppp/peers/название_соединения:

debug

pty "/usr/sbin/pptp 192.168.0.254 --nolaunchpppd"
connect /bin/true
defaultroute

# 
# Tags for CHAP secret selection
#
name ВАШ_ЛОГИН
remotename PPTP

#
# Tunnel name for ip-up.local or ip-up.d scripts
#
ipparam НАЗВАНИЕ_ТУННЕЛЯ

file /etc/ppp/options.pptp

а также в файлы /etc/ppp/pap-secrect и /etc/ppp/chap-secret

Далее делаем service pptptunnel start Если интерфейс ppp0 появляется, а обмена нет, попробуйте отключить сжатие: в /etc/ppp/options.pptp дописать nodeflate.

Если вы задали GATEWAY в /etc/sysconfig/network, то при подключении через VPN он не будет переопределяться, соответственно работать Инет не будет. Поэтому GATEWAY надо отключить, а в /etc/sysconfig/static-routes указать статические маршруты для локальной сети:

any net 192.168.2.0/24 gw 192.168.2.246

PPPoE

Необходимые пакеты: rp-pppoe-client.

Указываем настройки в /etc/ppp/pppoe.conf:

ETH=eth0  #сетевой интерфейс
USER=логин
DNSTYPE=SERVER
ACNAME=internet

Указать в /etc/ppp/chap-secret (и быть может в /etc/ppp/pap-secret) свой логин/пароль и

  1. service adsl start

для подключения.