CentOS 7 установлена в среде виртуализации ProxMox. При установке CentOS 7 все установки были выбраны по умолчанию, настройки сети не проводились, что привело к тому, что после установки CentOS 7 сетевой интерфейс не настроен и, даже более того, там отсутствует утилита ifconfig. Нам нужно всё настроить и установить Asterisk. Поехали!

1. Первым делом мы вводим команду:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

2. Откроется конфигурационный файл ifcfg-eth0 в текстовом редакторе vi:

3. Вносим в него следующие изменения (нажимаем клавишу i, тем самым включая режим правки). Параметр BOOTPROTO=none показывает на то, что мы будем вводить IP-адрес вручную. По умолчанию параметру BOOTPROTO было присвоено значение dhcp. Затем вводим сетевые настройки и не забываем в конце файла параметр ONBOOT=no изменить на ONBOOT=yes, чтобы интерфейс после перезагрузки поднимался(включался) самостоятельно.

4. Затем нажимаем Esc, и вводим с клавиатуры :wq (двоеточие тоже нужно вводить), этой командой редактора vi мы сохраним наши изменения в конфигурационном файле.

5. Вводим команду

reboot

и после перезагрузки проверяем работоспобность нашей сети, например пингом шлюза сети.

6. Если команда ping 8.8.8.8 дала положительный ответ, то делаем вывод, что мы настроили интерфейс на предыдущих шагах правильно и интернет на нашей машине CentOS 7 появился, если в ответ на пинг выходит ошибка:… , то в файл /etc/sysconfig/network нужно прописать:

NETWORKING=yes
HOSTNAME=centos7
GATEWAY=192.168.1.200

 

7. Далее выполняем в консоли команду:

ping ya.ru

и если она также даёт положительный ответ, то мы понимаем, что параметр DNS1 в файле /etc/sysconfig/network-scripts/ifcfg-eth0 мы, также, задали правильно и доменные имена нормально разрешаются в IP-адреса.

8. Делаем обновление пакетов в системе командой:

yum upgrade

в консоли. Затем, снова, перезагружаемся командой

reboot

9. Устанавливаем на всякий случай пакеты net-tools и nano командой:

yum install -y make net-tools nano

Пакет net-tools нужен для функционирования ifconfig, если впоследствии мы захотим работать с сетевыми интерфейсами проще, а nano это более дружелюбный к пользователю текстовый редактор, чем vi.

10. Следующим шагом будет отключение SELINUX (систему улучшенной безопасности LINUX). Эта система много моей крови выпила, когда я устанавливал FTP-сервер и всё вроде бы работало, служба FTP позволяла подключаться пользователю, но в подключенный каталог я не мог ничего писать, да и читать из него, вроде тоже. Всему виной тогда была эта система безопасности, которая отключается из консоли следующей командой:

sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config

Данная команда, как вы наверное поняли, просто заменяет параметр SELINUX=enforcing на SELINUX=disabled в файле /etc/selinux/config.

11. Устанавливаем необходимые компоненты для работы Asterisk командой:

yum install -y make wget openssl-devel ncurses-devel newt-devel libxml2-devel kernel-devel gcc gcc-c++ sqlite-devel uuid uuid-devel libuuid libuuid-devel uuid-c++

12. Переходим в каталог, в который мы будем грузить исходники:

cd /usr/src/

13. Загружаем, консольной программой для загрузки файлов, wget исходники Asterisk, а также исходники DAHDI, libpri и JSON. Вводим три команду, друг за другом:

wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-14-current.tar.gz

wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz

wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz

wget http://www.digip.org/jansson/releases/jansson-2.10.tar.gz

14. Распаковываем скачанные архивы командами:

tar zxvf dahdi-linux-complete*

tar zxvf libpri*

tar zxvf asterisk*

tar zxvf jansson*

15. Компилируем DAHDI и включаем его в автозагрузку:

cd /usr/src/dahdi*

make all && make install && make config

16. Включаем автоматический запуск службы DAHDI при старте системы и сразу стартуем службу:

chkconfig dahdi on

service dahdi start

17. Компилируем libpri:

cd /usr/src/libpri*

make clean && make && make install

18. Компилируем JSON:

cd /usr/src/jansson*

./configure --prefix=/usr/ && make clean && make && make install && ldconfig

19. Узнаём какой битности наша система и в зависимости от битности будем выбирать команду для компиляции исходников Asterisk. Вводим команду:

uname -a

Если в ответе команды есть 64, то значит у нас 64-битная система, в обратном случае 32-х битная.

20. Компилируем Asterisk:

cd /usr/src/asterisk*

Для 32-х битных:

.configure && make clean && make menuselect && make && make install

Для 32-х битных:

.configure --libdir=/usr/lib64 && make clean && make menuselect && make && make install

21. Устанавливаем образцы и конфигурационные файлы:

make samples

make config

22. Перезагружаем систему:

reboot

23. После перезагрузки в окно консоли вводим:

asrerisk -r

И если после выполнения этой команды мы попадаем в консоль Asterisk CLI, то установку Asterisk можно считать успешной.

 

Следующая статья на эту тему: Первоначальная настройка Asterisk 14.5.0