- Пять программ для VOIP под Linux
- Ekiga
- QuteCom
- Linphone
- Twinkle
- Skype
- Заключение
- IP-телефония
- Asterisk
- astGUIclient
- baresip
- BitWise for Linux
- Blink
- Ekiga
- Gizmo Project for Linux
- GNU Free Call
- Виртуальная АТС. Часть 1: Простая установка Asterisk на Ubuntu 20.04
- Asterisk + Ubuntu + VDS = IP-PBX
- Установка Asterisk
- Настройка Asterisk
- Подключение абонентов
Пять программ для VOIP под Linux
Все течет и все меняется. Прошли те времена, когда большинство пользователей Интернет сидело на dial-up модемах. Широкополосный доступ сейчас не редкость, а норма. С возрастанием пропускной способности каналов увеличиваются и возможности обычного пользователя. Интернет-телефония является одним из таких приятных сюрпризов — дешевизна, удобство использования. При упоминании Интернет-телефонии каждому сразу приходит ассоциация с другим именем — программой Skype. Однако, этот софттелефон не является единственным в своем классе. Имеется также, как минимум еще четыре более или менее значимых проекта. Возможно, о некоторых из них читатели узнают впервые. Этот факт тем более является одним из аргументов для прочтения этой статьи. Большинство этих продуктов относятся к миру OpenSource, то есть, являются официально бесплатными и используют открытые протоколы для своей работы.
На сегодняшний день Интернет-телефония VOIP является достаточно распространенной вещью. Плюсы у нее однозначные — удобство использования и дешевые тарифы, с помощью которых можно звонить в любой уголок мира, не выходя из дома. Самой распространенной программой для осуществления таких звонков является хорошо известный Skype. Однако, помимо него, есть много других софттелефонов, которые обладают не меньшими возможностями. Большинство из них официально бесплатны и используют открытые протоколы. Исходя из этих двух определений, можно заранее предугадать, что такие SIP-клиенты созданы, в первую очередь, под операционные системы семейства Linux. Про некоторые из них, возможно, вы никогда не слышали. Это является тем более весомым доводом для того, чтобы более детально изучить наиболее ярких представителей программ этого класса. Наш обзор мы начнем с самого популярного и зрелого проекта.
Ekiga
Домашняя страница проекта: http://ekiga.org/
Главное окно Ekiga
Программный телефон Ekiga, первоначально созданный Damien Sandras, на сегодня является одним из самых популярных и известных VOIP-клиентов из мира OpenSource. Этому особенно способствовало приобретение и последовавшее через некоторое время закрытие проекта Gizmo5 компанией Google. Еще одна из главных причин его популярности — простота использования. Многие программы этого же класса требуют создания учетной записи с помощью сторонних сервисов. Напротив, Ekiga предлагает пользователям встроенную поддержку, облегчающую первые шаги в Интернет-телефонии. Но не думайте, что этот программный телефон создан исключительно для новичков. Программа обладает широким наборов возможностей, начиная с поддержки целого списка кодеков и заканчивая просмотром адресной книги LDAP. В Ekiga есть еще одна приятная неожиданность для тех, кто захочет воспользоваться этим софттелефоном — Ekiga Call Out. С помощью этой функции можно выполнять звонки на «настоящие» телефонные номера по дешевым тарифам.
Пакет Ekiga имеется в репозиториях практически всех значимых дистрибутивов Linux, поэтому его установка проста. Достаточно набрать в менеджере пакетов, будь то apt-get , pacman , zypper или emerge ключевое слово ekiga .
QuteCom
Главное окно QuteCom
Еще одним из наиболее популярных SIP-клиентов является QuteCom. Ранее известный как WengoPhone и запущенный французским VOIP-сервисом Wengo. Также, как и Ekiga, этот софттелефон поддерживает возможности голосового и видео-чатов. Отличительной особенностью QuteCom является поддержка сторонних протоколов. Разработчики программы включили в нее библиотеку libpurple , на основе которой работает популярный кросс-платформенный интернет-пейджер Pidgin. Результатом такого внедрения стала возможность для пользователей общаться в сетях MSN, AIM, ICQ Yahoo, Jabber, Facebook, MySpace и даже Skype (последняя является достаточно спорной из-за наличия множества программных ошибок и вопросов, связанных лицензионными соглашениями).
Программа QuteCom также достаточно распространена во многих репозиториях Linux. Она легко находится по ключевому слову qutecom в строке запроса менеджера пакетов.
Linphone
Главное окно Linphone
Если вы ищете SIP-клиент, который обладает большим количеством настроек (но, к слову сказать, менее дружественным GUI-интерфейсом), вам стоит обратить свой взор в сторону Linphone. В составе этой программы имеется целый набор дополнительных возможностей по конфигурации. К примеру, таких, как переключение между протоколами IPv4/IPv6, ручная настройка портов RTP/UDP, подбор оптимального значения MTU. К тому же, Linphone является кросс-платформенным — имеются версии этого продукта, портированные под Android, Blackberry и iPhone. Это удобно в том плане, что вы всегда будете работать с одним и тем же интерфейсом на разных устройствах (дома или на работе — с компьютера, в поездке — с мобильного устройства). Более того, для фанатов терминала и волшебства командной стоки, в программе имеется встроенный интерфейс командной строки CLI.
Для установки Linphone в Ubuntu, вам будет необходимо загрузить готовый прекомпилированный deb-пакет с официального сайта проекта. Имеются сборки для других, наиболее популярных Linux-систем. В дистрибутиве OpenSuSe 11.4 KDE программа Linphone является предустановленной по умолчанию.
Twinkle
Главное окно Twinkle
Программный телефон Twinkle всегда был и является моим любимым SIP-клиентом под KDE. Одним из оснований для меня так говорить является его чрезвычайная дружелюбность к пользователю. Визард с графическим интерфейсом поможет вам создать аккаунты, включая встроенную поддержку FreeWorld Dialup, sipgate, SIPPhone (что касается протокола SIPPhone, запущенного проектом Gizmo5, то на сегодняшний день он является устаревшим и нерабочим) и Diamondcard, который позволяет вам совершать звонки по телефонным линиям на реальные номера. Программа Twinkle имеет хорошую интеграцию в среде KDE, например, с адресной книгой KAdressBook (вы также можете воспользоваться встроенной в Twinkle адресной книгой, если не применяете окружение KDE). И, наконец, самое интересное. Приятная новость для скриптописателей и кодеров всего мира — в программе имеется поддержка скриптов для обработки событий системы. Вы можете написать bash-скрипт для любого действия (входящий звонок, исходящий звонок, пропущенные вызовы и многое другое), который Twinkle будет автоматически исполнять, в зависимости от заданного условия.
Skype
Главное окно Skype в Linux
Наконец, мы добрались до самой известного и популярного софттелефона, без которого этот обзор был бы не полным. Еще бы! Skype является дедушкой для всех современных программных телефонов. Небезызвестная компания Microsoft совсем недавно приобрела его всего за каких-то 8,5 миллиона долларов. К сожалению, стоит отметить факт, что задолго до этой покупки, портированная под Linux версия этого продукта — Skype Linux — страдала серьезными изъянами в своей работе. То же касается и отставания в разработке самих версий. В то время, как счастливые пользователи Windows и MacOS имеют в своем распоряжении сборку Skype версии 5.x, для линуксоидов доступна только версия 2.2. А это значит, что пользователи Linux лишены многих возможностей, группового видеочата — в частности. Еще один минус — устаревший графический интерфейс программы, поэтому, если вы привыкли к Windows-версии Skype, для вас будет несколько непривычно работать с нею в Linux. Но самая неприятная штука для всех пользователей — программа Skype использует свой собственный, закрытый протокол. Одним из следствий этого является то, что если у вас есть учетная запись Skype, то ею вы можете воспользоваться только с помощью этой программы. Другим подобным SIP-клиентам (наподобие тех, которые мы рассмотрели выше) официально запрещено использовать этот аккаунт.
Для установки Skype под Linux (например, в Ubuntu или OpenSuSe), пользователям необходимо скачать соответствующий прекомпилированный пакет с официального сайта проекта и запустить его в менеджере пакетов (Synaptic или Yast).
Заключение
Мы рассмотрели пять наиболее значимых и развитых на сегодняшний день SIP-клиентов. Большая часть из них (четыре из пяти) относятся к OpenSource-продуктам, то есть — официально бесплатные. И только один Skype является полностью коммерческой программой со своим собственным, проприетарным протоколом. Все описанные здесь софттелефоны обладают примерно одинаковыми возможностями — какие больше, какие меньше. То, какой программный телефон будете использовать вы, зависит целиком от ваших предпочтений. Но главная цель обзора достигнута — перед вами был представлен ряд программ класса SIP-клиентов, на ваш выбор. И возможно, о некоторых из них вы узнали только сейчас.
Источник
IP-телефония
Asterisk
Cвободное решение компьютерной телефонии от компании Digium.
astGUIclient
Комплекс для взаимодействия с системой управления телефонными вызовами.
baresip
Baresip — портативный sip клиент под Линух с поддержкой видео.
BitWise for Linux
IM-клиент с опцией зашифрованного чата с использованием стойкого ко взлому алгоритма (128-bit Blowfish). Другие возможности: видеочат, обмен файлами, IP-телефония без использования сервера и многое другое.
Blink
Blink -это клиентская программа для общения по сети в реальном времени, использующая протокол SIP.
Ekiga
Ekiga (ранее GnomeMeeting) является частью рабочей среды Gnome, в которую легко интегрируется. Есть версия и для Windows. Поддерживает протоколы SIP и H.323, множество аудио и видео кодеков и способна взаимодействовать с другими SIP-совместимыми клиентами, в том числе и Microsoft NetMeeting.
Gizmo Project for Linux
Gizmo Project for Linux — Интернет-телефон с возможностью проведения конференц-связи и «аська» для обмена текстовыми сообщениями. Для нормальной связи достаточно dial-up соединения. Из особенностей стоит отметить возможность настройки качества соединения в зависимости от ширины пропускания канала, опцию записи разговора одним кликом, а также отображение на карте местоположения собеседника.
GNU Free Call
GNU Free Call — кроссплатформенный аналог Skype без использования закрытых протоколов и обязательной регистрации.
Источник
Виртуальная АТС. Часть 1: Простая установка Asterisk на Ubuntu 20.04
Из-за перехода на удаленку в небольших компаниях часто возникают проблемы с телефонной связью. Обычно такие фирмы сидят в арендованных офисах, а услуги телефонии им оказывает бизнес-центр. О подключении сотрудников из дому придется позаботиться самостоятельно: самый недорогой способ это сделать — развернуть бесплатный сервер VoIP с открытым исходным кодом Asterisk на виртуальной машине. В статье для примера мы использовали Ubuntu 20.04, но этот рецепт подойдет и для других версий популярного дистрибутива — 18.04 и 18.10, а также (в теории, мы не проверяли) для актуальных версий Debian.
Asterisk + Ubuntu + VDS = IP-PBX
Существуют и другие серверы VoIP, при этом некоторые коммерческие продукты ограниченное время можно использовать бесплатно. Считается, что они гораздо проще в настройке, но требуют для работы Windows или установки с собственного дистрибутива Linux. Это сразу отсекает большинство недорогих VDS, а собственное железо с каналом передачи данных или аренда выделенного аппаратного сервера обходятся дороже. Бесплатный Asterisk разворачивается на любой виртуальной машине, к тому же внедрить его не так сложно. Для этого не потребуется даже сборка из исходных текстов. С помощью Asterisk нетрудно наладить телефонную связь между IP-телефонами (аппаратными и программными), а если подключиться к внешнему провайдеру VoIP, то за небольшую сумму денег вы получите полноценную IP АТС (IP-PBX). Если потребность в ней исчезнет, отказаться можно в любой момент — аренда выгоднее вложений в железо и софт.
Установка Asterisk
Для тестов мы взяли недорогую виртуальную машину, но боевая конфигурация зависит от потребностей заказчика. Здесь проявляется главное преимущество VDS: ресурсов можно заказать по минимуму, а потом добавить, если возникнет такая потребность. Обычно для полноценной работы АТС нужно не меньше 2 ГБ оперативной памяти, но если их будет много, отказаться от лишних ресурсов нетрудно.
Инсталляция сервера VoIP на Ubuntu 20.04 — самая простая часть квеста. Необходимый пакеты есть в официальном репозитории дистрибутива и добавляются в систему парой команд. В Ubuntu мы используем механизм повышения привилегий sudo, а в Debian он скорее всего не понадобится, поскольку там практикуются интерактивные сеансы с правами root:
Запуск и остановка службы Asterisk производятся через systemd, а посмотреть ее статус после инсталляции можно с помощью команды systemctl :
Если все прошло удачно, результат будет примерно таким:
Для старта/остановки/перезапуска (например, после изменения конфигурационных файлов) службы в ручном режиме используются следующие команды:
Пока все стандартно, но самая увлекательная часть нашего приключения впереди. Сервер VoIP нужно настроить.
Настройка Asterisk
Файлы конфигурации находятся в каталоге /etc/asterisk, причем их там огромное количество.
Продукт настраивается очень гибко и обладает массой возможностей, но для решения простых задач большинство из них нам не понадобится. В этой статье мы ограничимся правкой двух конфигурационных файлов: /etc/asterisk/sip.conf и /etc/asterisk/extensions.conf. Предварительно стоит сделать их резервные копии:
Переходим к редактированию новых конфигурационных файла (самые любопытные могут изучить резервные копии дистрибутивных, там много интересного):
В файл нужно добавить минимум двух пользователей (внутренних абонентов) с номерами 1001 и 1002, а также задать для них пароли (параметр secret). На вашем сервере внутренние номера и пароли будут другими:
[general]
context=default
allowoverlap=no
udpbindaddr=0.0.0.0
tcpenable=no
tcpbindaddr=0.0.0.0
transport=udp
srvlookup=yes
[1001]
type=friend
host=dynamic
secret=1234
[1002]
type=friend
host=dynamic
secret=5678
Аналогично делаем новый extensions.conf:
Его содержание будет следующим:
[general]
static=yes
writeprotect=no
priorityjumping=no
autofallthrough=yes
clearglobalvars=no
[default]
exten => 1001,1,Dial(SIP/1001,10)
exten => 1002,1,Dial(SIP/1002,10)
Меняем владельца и права доступа к файлам, поскольку там лежат, в частности, пароли пользователей нашей АТС
Теперь нам остается только перезапустить службу и проверить ее работоспособность:
На этом настройка IP АТС с возможностью телефонной связи между внутренними абонентами завершена. Перейдем к проверке ее работоспособности.
Подключение абонентов
Чаще всего для подключения к виртуальной АТС используют программные телефоны для настольных и мобильных операционных систем. Их существует великое множество, для тестов мы взяли бесплатный Linphone для iOS и Android. При первом запуске нужно будет выбрать опцию «ИСПОЛЬЗОВАТЬ SIP ПОЛЬЗОВАТЕЛЯ», а затем указать в настройках IP нашего сервера, логин и пароль. Учетную запись сервиса Linphone создавать не надо, у нас есть собственный.
После подключения к нашей АТС клиенты готовы общаться между собой. На рабочей станции с Linux и графическим окружением можно использовать тот же самый Linphone, доступный в официальном репозитории дистрибутива:
Настраивается он примерно так же. Теперь у нас есть виртуальная АТС, обеспечивающая связь между внутренними абонентами. Не бог весть какое достижение, но и трудозатраты на ее внедрение тоже невелики. В следующей статье мы научимся подключаться к SIP-провайдеру, звонить через него в мобильные и кабельные телефонные сети, принимать входящие внешние звонки, а также делать переадресацию и другие интересные штуки.
Источник