Установка и настройка серверов Linux,создание сайтов, установка и настройка Asterisk PBX, Linux для начинающих и не только.
Получать статьи этого сайта на почту:

 

12
Jul 2012
sergldom
автор
0
комментариев
Рейтинг статьи:
4
Average: 4 (1 vote)

Установка и настройка VPN сервера на Debian, Ubuntu Linux используя pptp и arno-iptables-firewall

      Установка и настройка VPN сервера PPTPD в Debian LinuxЭта инструкция описывает установку и настройку  PPTP сервера под управлением Debian GNU/Linux Squeeze. 

      PPTP  — туннельный протокол типа точка-точка, позволяющий компьютеру устанавливать защищённое соединение с сервером за счёт создания специального туннеля в стандартной, незащищённой сети.

IP адрес сервера в локалке пусть будет 192.168.0.1
IP адреса в VPN будут 192.168.2.0/24

Начинаем установку необходимых программ:

aptitude install ppp pptpd arno-iptables-firewall

Теперь приступаем к настройке.

Первым делом открываем в редакторе файл /etc/pptpd.conf и дописываем в конец следующие строки:

vi /etc/pptpd.conf
# IP-адрес сервера в локальной сети
localip 192.168.2.200
# Диапазон адресов для клиентов PPTP сервера которые выдаются автоматически
remoteip 192.168.2.221-239

      Добавляем в файл /etc/ppp/pptpd-options следующие строки:

vi /etc/ppp/pptpd-options
# требуем авторизацию у клиентов
auth

# Используем шифрование
require-mppe

# Адрес DNS-сервера, который будет передаваться клиенту
ms-dns 192.168.0.1

# Не пытаться восстановить соединение после отключения клиента
# Если не указать эту опцию - pptpd будет безуспешно восстанавливать соединение и ругаться в логи
nopersist

# Укажем файл, в который писать лог:
logfile /var/log/pptpd.log

Сохраняем конфигурационный файл и создаем файл лога командой:

touch /var/log/pptpd.log

Переходим к настройке паролей в файле /etc/ppp/chap-secrets
Добавляем по примеру:
 

vi /etc/ppp/chap-secrets
# Если пользователь получает динамический IP-адрес из диапазона remoteip(220-239), что находится в конфигурационном файле pptpd.conf:
user1    pptpd    passworduser1    "*"
# Если мы привязываем определённый IP  к логину клиента добавляем:
user2    pptpd    passworduser2    "192.168.2.110"

После этого перезапускаем pptpd:

/etc/init.d/pptpd restart

 

Переходим к настройке нашего скрипта файрвола arno-iptables-firewall, который создаёт правила для iptables на основе конфигурационных файлов.

# Разрешаем протокол GRE для всех:
Вносим переменную DC_OPEN_IP в файл /etc/arno-iptables-firewall/firewall.conf

vi /etc/arno-iptables-firewall/firewall.conf

было:

OPEN_TCP="$DC_OPEN_TCP"
OPEN_UDP="$DC_OPEN_UDP"
OPEN_IP=""

стало:

OPEN_TCP="$DC_OPEN_TCP"
OPEN_UDP="$DC_OPEN_UDP"
OPEN_IP="$DC_OPEN_IP"

В файл /etc/arno-iptables-firewall/debconf.cfg вносим переменную DC_OPEN_IP и открываем протокол GRE для сервера
было:

vi /etc/arno-iptables-firewall/debconf.cfg

# включаем NAT:
DC_NAT=1

# указываем внешнюю сетевую карту:
DC_EXT_IF="eth1"

# открываем порт 1723 для работы vpn:
DC_OPEN_TCP="1723"

# Указываем внутренние сетевые интерфейсы eth0 - внутренняя сеть, ppp+ - VPN интерфейсы (ppp0,ppp1...ppp10...):
DC_INT_IF="eth0 ppp+"

# Указываем внутренние сети локальную и VPN:
DC_INTERNAL_NET="192.168.0.0/24 192.168.2.0/24"

# Открываем NAT для локальной сети и VPN сети:
DC_NAT_INTERNAL_NET="192.168.0.0/24 192.168.2.0/24"

# Разрешаем пинг снаружи на сервер
DC_OPEN_ICMP=1

стало:

vi /etc/arno-iptables-firewall/debconf.cfg

# включаем NAT:
DC_NAT=1

# указываем внешнюю сетевую карту:
DC_EXT_IF="eth1"

# открываем порт 1723 для работы vpn:
DC_OPEN_TCP="1723"

# Указываем внутренние сетевые интерфейсы eth0 - внутренняя сеть, ppp+ - VPN интерфейсы (ppp0,ppp1...ppp10...):
DC_INT_IF="eth0 ppp+"

# Указываем внутренние сети локальную и VPN:
DC_INTERNAL_NET="192.168.0.0/24 192.168.2.0/24"

# Открываем NAT для локальной сети и VPN сети:
DC_NAT_INTERNAL_NET="192.168.0.0/24 192.168.2.0/24"

# Разрешаем пинг снаружи на сервер
DC_OPEN_ICMP=1

DC_OPEN_IP="47"

Перезагружаем ARNO командой:

Если же вы используете самописный скрипт iptables, тогда необходимо добавить следующие строки в свой скрипт:
 

# Разрешаем протокол GRE для всех;
iptables -A INPUT -p gre -j ACCEPT

# Разрешаем соединение с PPTP-сервером для всех;
iptables -A INPUT -m tcp -p tcp --dport 1723 -j ACCEPT

Теперь можно пинговать наш сервер 192.168.0.1 и пользоватся интернетом через него.

На этом настройка  VPN сервера на PPTP закончена, если Вам понадобится подключится к VPN сервер из Windows, Вам достаточно почитать инструкцию: Инструкция подключения к серверу PPTPD из Windows.

С Вами был Сергей Лазаренко, если Вам понравилась статья, подписывайтесь на получение обновлений с сайта на свою почту. А также прошу поделится с друзьями данной инструкцией нажав на иконку Вашей социальной сети.

 

После труда, принято немножко отдохнуть, потому посмотрим интересный видео ролик о подводной охоте на сома:

 

Рейтинг статьи: 

4
Average: 4 (1 vote)

Вам понравилась статья? Хотите получать уведомления о выходе новых статей с этого сайта на свой почтовый адрес? Подписывайтесь пожалуйста. Введите свой почтовый адрес и нажмите кнопку Хочу получать статьи!

<![CDATA[]]><![CDATA[]]>

 

*Адреса электронной почты не разглашаются и не предоставляются третьим лицам для коммерческого или некоммерческого использования.

 

 
 

 

Add new comment

Filtered HTML

  • Search Engines will index and follow ONLY links to allowed domains.

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

Plain text

  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
  • Search Engines will index and follow ONLY links to allowed domains.

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.