GNU/Linux >> Belajar Linux >  >> Cent OS

Cara menginstal asterisk di RHEL 8 / CentOS 8 Linux

Artikel ini akan menjelaskan cara menginstal perangkat lunak komunikasi sumber terbuka Asterisk di RHEL 8 / CentOS 8; karena Asterisk dan dependensi penting lainnya tidak tersedia sebagai paket RPM dari repositori, maka diperlukan untuk mengompilasinya dari sumber.

Dalam tutorial ini Anda akan mempelajari:

  • Apa saja prasyarat untuk menginstal Asterisk
  • Cara mengkompilasi Asterisk dari sumber
  • Cara memulai Asterisk
  • Cara mengkonfigurasi ulang atau menghapus Asterisk
  • Cara mengakses antarmuka baris perintah Asterisk

Output startup layanan sistem asterisk pada RHEL 8 / CentOS 8

Persyaratan dan Konvensi Perangkat Lunak yang Digunakan

Persyaratan Perangkat Lunak dan Konvensi Baris Perintah Linux
Kategori Persyaratan, Konvensi, atau Versi Perangkat Lunak yang Digunakan
Sistem RHEL 8 / CentOS 8
Perangkat Lunak Asterisk, pjsip, libedit
Lainnya repositori lokal atau jauh dikonfigurasi; tanggal dan zona waktu sistem yang benar.
Konvensi # – membutuhkan perintah linux yang diberikan untuk dieksekusi dengan hak akses root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$ – membutuhkan perintah linux yang diberikan untuk dieksekusi sebagai pengguna biasa yang tidak memiliki hak istimewa

Pengantar

Asterisk adalah perangkat lunak open source private branch exchange (PBX), dan dengan demikian tujuan utamanya adalah untuk membuat dan mengontrol panggilan telepon antara berbagai sistem, melalui jalur PSTN tradisional atau titik akhir VoIP modern.
Dalam panduan ini kami akan memastikan itu akan diinstal di RHEL 8 / CentOS 8 bersama dengan komponen umum.

Menginstal Asterisk di RHEL 8 / CentOS 8 – langkah demi langkah.

Kami akan menempatkan versi terakhir – 16.3.0 pada saat penulisan tutorial ini.

  1. Prasyarat

    Kita perlu menginstal paket-paket di bawah ini termasuk systemd-devel jika kita ingin memulai Asterisk sebagai layanan systemd.

    # dnf -y install wget bzip2 tar sqlite-devel ncurses-devel systemd-devel 
    

    Dan untuk mengembangkan dari sumber:

    # dnf -y install binutils gcc gcc-c++ kernel-devel autoconf automake libtool 
    

    Mulai sekarang kita perlu menginstal semuanya dari sumber jadi mari kita lakukan dari folder umum

    # mkdir -p /root/src && cd /root/src

    Pertama kita akan mengkompilasi libedit , pengganti atau alternatif untuk pengeditan baris perintah readline GNU.

    # cd /root/src
    # wget http://thrysoee.dk/editline/libedit-20190324-3.1.tar.gz
    # tar xzvf libedit-20190324-3.1.tar.gz
    # cd libedit-20190324-3.1
    # ./configure && make && make install
    
  2. Memasang komponen opsional
    Komponen berikut ini opsional, tetapi dalam skenario nyata sangat sering dibutuhkan.

    DAHDI (Digium/Asterisk Hardware Device Interface):ini adalah kerangka kerja untuk berinteraksi dengan kartu telepon digital di Asterisk.
    Mari kita instal.

    # cd /root/src
    # wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
    # tar zxvf dahdi-linux-complete-current.tar.gz && cd dahdi-linux-complete-3.0.0+3.0.0
    # make all && make install && make install-config
    # cd /etc/dahdi && cp system.conf.sample system.conf
    # systemctl enable dahdi && systemctl start dahdi
    # modprobe dahdi
    # modprobe dahdi_transcode
    

    LibPRI adalah library yang menambahkan dukungan untuk ISDN (PRI dan BRI), pada dasarnya diperlukan jika memasang kartu ISDN untuk berkomunikasi dengan sistem lama.

    Untuk menginstalnya:

    # cd /root/src/
    # wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.6.0.tar.gz     
    # tar xzvf libpri-1.6.0 && cd libpri-1.6.0
    # make && make install
    
  3. Menginstal Asterisk
    Sekarang saatnya untuk mengkompilasi aplikasi utama dari sumber – seperti yang disebutkan.
    Ini juga akan menginstal perpustakaan SIP pjsip ke dalam sistem.

    # cd /root/src/
    # wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16.3.0.tar.gz
    # tar xzvf asterisk-16.3.0.tar.gz
    # wget https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.8/pjproject-2.8.tar.bz2
    # mv pjproject-2.8.tar.bz2 /tmp
    # cd asterisk-16.3.0
    # ./configure 
    # make && make install && make install-logrotate
    

    Dengan make install-logrotate kami pastikan file log aplikasi akan dirotasi.

  4. Konfigurasi Asterisk
    Pada Asterisk terdapat banyak file konfigurasi, yang utama adalah asterisk.conf; untuk menginstal versi default dari semuanya, kita perlu menjalankan:

    # cd /root/src/asterisk-16.3.0/
    # make samples
    

    Pada titik ini, karena beberapa modul atau fitur memerlukan konfigurasi atau dependensi lebih lanjut, lebih baik menonaktifkannya.
    Namun, ini tidak wajib, mereka bukan komponen penting yang mencegah Asterisk dimulai.

    #cd /etc/asterisk
    
    # cp modules.conf modules.conf.org
    # echo "noload => res_config_ldap.so"               >>modules.conf
    # echo "noload => res_pjsip_transport_websocket.so" >>modules.conf
    # echo "noload => cdr_sqlite3_custom.so"            >>modules.conf
    # echo "noload => cel_sqlite3_custom.so"            >>modules.conf
    # echo "noload => res_config_sqlite3.so"            >>modules.conf
    # echo "noload => cdr_pgsql.so"                     >>modules.conf
    # echo "noload => cel_pgsql.so"                     >>modules.conf
    # echo "noload => res_config_pgsql.so"              >>modules.conf
    
    sed -i.org 's/enabled = yes/enabled = no/' ari.conf 
    

    Setelah itu saatnya menyiapkan file service systemd:

    # cd /root/src/asterisk-16.3.0/contrib/systemd
    # cp asterisk* /usr/lib/systemd/system
    

    Layanan Asterisk harus berjalan sebagai pengguna biasa, untuk alasan keamanan, jadi kami perlu menambahkan ID layanan yang akan disebut asterisk sebagaimana ditentukan dalam file konfigurasi systemd.

    # useradd -m -c "asterisk user"
    
    

    Lalu mari kita ubah beberapa izin:

    chown -R asterisk:asterisk /var/log/asterisk/*
    chown  asterisk:asterisk /var/log/asterisk/.
    
  5. Memulai Asterisk
    SELinux akan mencegah Asterisk untuk memulai, jadi kami menempatkannya dalam permissive mode demi kesederhanaan.

    # setenforce 0
    # sed -i.org 's/enforcing/permissive/' /etc/sysconfig/selinux
    

    Akhirnya kita bisa memulai Asterisk

    # systemctl enable asterisk
    # systemctl start asterisk
    

    Anda juga dapat menjalankan Asterisk secara langsung tanpa systemd dengan mengeluarkan:

    # /usr/sbin/asterisk -mqf -C /etc/asterisk/asterisk.conf

    atau lebih baik

    # asterisk -vvvc

    untuk mendapatkan info verbose.

    Keluaran tanda bintang saat diluncurkan secara langsung

  6. Mengkonfigurasi ulang Asterisk
    Bisa dilakukan kapan saja untuk mengkonfigurasi ulang Astering dengan menghapus atau (kembali)menambahkan fitur apapun.
    Cukup hentikan layanan, ubah ke folder sumber dan jalankan make menuselect .

    Pilih menu Asterisk

    # systemctl stop asterisk
    # cd /root/src/asterisk-16.3.0/
    # make menuselect
    

    Jika Anda telah melakukan perubahan Anda perlu menyimpan konfigurasi sebelum keluar dari menu pilih menu.
    Setelah itu perlu untuk mengkompilasi ulang lagi Asterisk seperti yang dijelaskan di atas. Lebih baik membuat perubahan apa pun di lingkungan pengujian terlebih dahulu.

  7. Menghapus Asterisk
    Jika Anda perlu menghapus Asterisk dari sistem – termasuk Dahdi dan libpri – berikut langkah-langkahnya:

    # systemctl stop dahdi
    # systemctl stop asterisk
    # cd /root/src/asterisk-16.3.0
    # make uninstall-all
    cd /root/src/libpri-1.6.0 && make uninstall
    
  8. Mengakses Asterisk CLI
    Perangkat lunak ini juga memiliki shell, untuk mengaksesnya – setelah Asterisk dijalankan – kita perlu mengetik:

    # asterisk -r 

    CLI Asterisk

Kesimpulan

Kami telah berhasil mengkompilasi Asterisk dari sumber dan memulainya, namun tidak cukup untuk mendapatkan lingkungan kerja; biasanya setelah instalasi Anda akan menambahkan titik akhir SIP Anda dengan mengedit file konfigurasi sip.conf – atau melalui CLI yang disebutkan – dan konfigurasikan ekstensi apa pun di file extensions.conf . Kedua file ada di /etc/asterisk.


Cent OS
  1. Cara menginstal redmine di RHEL 8 / CentOS 8 Linux

  2. Cara menginstal Hadoop di RHEL 8 / CentOS 8 Linux

  3. Cara menginstal server DNS di RHEL 8 / CentOS 8 Linux

  1. Cara menginstal Perl di RHEL 8 / CentOS 8 Linux

  2. Cara install apache tomcat di linux RHEL 8 / CentOS 8

  3. Cara menginstal node.js di RHEL 8 / CentOS 8 Linux

  1. Cara Menginstal Xdebug di RHEL 8 / CentOS 8 Linux

  2. Cara menginstal Apache di RHEL 8 / CentOS 8 Linux

  3. Cara menginstal wireshark di RHEL 8 / CentOS 8 Linux