Voipnotes
Услуги
  • 3CX Phone System
    • Купить IP АТС - 3CX Phone System
Ещё
    Задать вопрос
    +7 (499) 113-65-73
    Заказать звонок
    sale@voipnotes.ru
    г. Москва 2-й Михайловский проезд 9
    +7 (499) 113-65-73
    Заказать звонок
    Voipnotes
    Услуги
    • 3CX Phone System
      • Купить IP АТС - 3CX Phone System
      Voipnotes
      Услуги
      • 3CX Phone System
        • Купить IP АТС - 3CX Phone System
        Voipnotes
        Voipnotes
        • Услуги
          • Назад
          • Услуги
          • 3CX Phone System
            • Назад
            • 3CX Phone System
            • Купить IP АТС - 3CX Phone System
        • +7 (499) 113-65-73
        sale@voipnotes.ru
        г. Москва 2-й Михайловский проезд 9
        • Главная
        • Блог
        • Подключение Asterisk по VPN к оператору связи

        Подключение Asterisk по VPN к оператору связи

        17 Июля 2015

        Сейчас все чаще и чаще пользователи стараются подключать свои АТС к операторам связи через VPN канал, это чуть более безопасно, чем подключение через публичную сеть, а у некоторых сидящих в бизнес-центрах компаний просто нет выхода, так как местный интернет провайдер блокирует определенные порты, и навязывает свои услуги связи. Из всех возможных вариантов наиболее оптимальным является выбор между PPTP и OpenVPN. Point-To-Point Tunneling Protocol (PPTP) совместим с большинством мобильных устройств и позволяет поднять свой VPN очень быстро. И хотя PPTP менее безопасен, чем OpenVPN, он быстрее и использует меньше ресурсов процессора.

        В сегодняшней статье мы расскажем как установить и настроить PPTP клиента, маршруты и Asterisk для подключения к оператору связи через VPN.

          

        Установка PPTP

        Добавляем репозиорий EPEL и устанавливаем нужные нам пакеты:

        CentOS 6 32-Bit

        rpm –Uvh  http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpmyum -y install ppp pptpd pptp-setup pptp

        CentOS 6 64-Bit

        rpm –Uvh  http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpmyum -y install ppp pptpd pptp-setup pptp

        CentOS 7

        rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpmyum -y install ppp pptpd pptp-setup pptp

        Перезагружаем PPTP

        CentOS 6:service pptpd restart
        CentOS 7:systemctl restart pptpd.service

        Проверяем, работает ли и принимает соединения:

        netstat -alpn | grep pptpd
         VPN.jpg

        Настройка PPTP

        Теперь создадим новый файл /etc/ppp/peers/pptpoperator и добавим туда следующие строчки, заменяя логин, пароль и IP-адрес-VPN-сервера Вашими значениями:

        pty "pptp  IP-адрес-VPN-сервера  --nolaunchpppd"
        name Логин
        password Пароль
        remotename PPTP
        refuse-chap
        nodeflate
        mtu 1492
        nobsdcomp
        noauth
        persist
        nodefaultroute
        maxfail 0
        unit 0

        На VPN-сервере могут поддерживаться различные протоколы аутентификации, вот некоторые из них:

        refuse-pap                    # Незашифрованный пароль PAP
        refuse-chap # Протокол проверки пароля CHAP
        refuse-mschap # Протокол проверки пароля MS-CHAP
        require-mschap-v2 # Протокол проверки пароля MS-CHAP v2
        require-mppe-128 # Использоавть MPPE128 шифрование при проверке пароля

        Настройки Iptables

        iptables -A INPUT -i eth0 -p tcp --dport 1723 -j ACCEPT
        iptables -A INPUT -i eth0 -p gre -j ACCEPT

        service iptables save
        service iptables restart
        service pptpd restart

        Настройки firewalld

        firewall-cmd --direct --add-rule ipv4 filter INPUT 0 -p gre -j ACCEPT 
        firewall-cmd --direct --add-rule ipv6 filter INPUT 0 -p gre -j ACCEPT

        firewall-cmd -reload
        systemctl restart pptpd.service

        Теперь мы можем “поднять” туннель с PPTP-сервером. В команде pppd call необходимо использовать имя, которое Вы дали файлу с пирами (peers) в директории /etc/ppp/peers/. В нашем примере мы назвали pptpoperator, так что команда будет следующая :

        pppd call pptpoperator

        Теперь командой ifconfig проверяем, поднялся наш туннель или нет. Если все сделано правильно, то Вы должны увидеть следующее:

        ppp0: flags=4305  mtu 1492
        inet 10.81.26.14 netmask 255.255.255.255 destination 109.234.34.68
        ppp txqueuelen 3 (Point-to-Point Protocol)
        RX packets 9 bytes 66 (66.0 B)
        RX errors 0 dropped 0 overruns 0 frame 0
        TX packets 10 bytes 76 (76.0 B)
        TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

        Если PPTP не поднялся, советуем перезагрузить сервер и попробовать еще раз pppd call pptpoperator

         

        Теперь необходимо настроить маршрутизацию на Вашу приватную сеть через интерфейс ppp0. В нашем примере АТС оператора имеет внутренний IP-адрес 192.168.20.0. Так что добавим маршрут к нему через интерфейс ppp0 :

        ip route add 192.168.20.0 dev ppp0

        Теперь переходим к настройкам Asterisk. В зависимости от типа подключения (с привязкой по ip адресу, или с использованием схемы регистрации логином паролем), конфигурация транков будет отличаться:

        nano /etc/asterisk/sip.conf

        С регистрацией:

        [general]
        register => login:pass@192.168.20.52:5060/Номер_телефона_если_есть


        [Operator]
        type=friend
        host=192.168.20.52
        defaultuser=*******
        secret=******
        insecure=port,invite
        canreinvite=no
        nat=force_rport,comedia
        qualify=no
        context=incoming_calls
        dtmfmode=rfc2833
        disallow=all
        allow=alaw,ulaw,g729

        Без регистрации:

        [Operator]
        type=friend
        host=192.168.20.52
        insecure=port, invite
        disallow=all
        allow=g729
        canreinvite=no
        context=from-trunk
        dtmfmode=rfc2833
        qualify=no

        Теперь делаем sip reload в консоли Asterisk и проверяем регистрацию и прохождение вызовов, все должно работать.

          

        Все настройки PPTP, сделанные выше после перезагрузки сервера, работать не будут, пока вы заново не пропишите маршрут и не сделаете pppd call pptpoperator. Для того, чтобы сделать маршрут постоянным и PPTP туннель поднимался автоматически, сделаем следующие настройки.

        Создаем файл  /etc/sysconfig/network-scripts/ifcfg-pptp со следующим содержанием:

        DEVICE=ppp0
        TYPE=Modem
        ONBOOT=yes
        USERCTL=yes
        PEERDNS=no
        PROVIDER=pptpoperator
        PERSIST=yes
        DEMAND=no
        DEFROUTE=no

        Для маршрута создаем файл /etc/sysconfig/network-scripts/route-pptp со следующим содержанием:

        192.168.20.0/25 via 0.0.0.0 dev ppp0

        Поднимаем сетевой интерфейс

        ifup pptpoperator

        Теперь даже после перезагрузки сервера маршруты ppp0 останутся, и PPTP туннель поднимется автоматически.

        На этом наша настройка закончена. Если вы в статье нашли ошибки или несоответствия, мы будем благодарны, если вы напишите нам о них в комментариях.

        Нужна консультация?

        Наши специалисты ответят на любой интересующий вопрос

        Задать вопрос
        Поделиться
        Назад к списку
        © 2021 Все права защищены.
        +7 (499) 113-65-73
        Заказать звонок
        sale@voipnotes.ru
        г. Москва 2-й Михайловский проезд 9
        Политика конфиденциальности
        Версия для печати
        © 2021 Все права защищены.
        Заказать звонок
        Написать сообщение