пятница, 24 июля 2015 г.

iptables внутри lxc-контейнера

Чтобы iptables завелся внутри lxc-контейнера делаем на хосте:

# mkdir /var/lib/lxc/NAME/rootfs/lib/modules
# echo "iptable_filter" >> /etc/modules


и в конфиг контейнера:

lxc.mount.entry = /lib/modules /var/lib/lxc/NAME/rootfs/lib/modules none ro,bind 0 0

понедельник, 20 июля 2015 г.

Сборка Asterisk 13.x на Debian 8

====== Сборка Asterisk 13.x на Debian 8 ======

Устанавливаем необходимые зависимости:
# aptitude install build-essential libncurses5-dev libssl-dev libxml2-dev uuid-dev libsqlite3-dev libjansson-dev

Дополнительно:
* libnewt-dev - альтернативный интерфейс make menuselector
* libsrtp0-dev - если планируется использовать SRTP (res_srtp.so)
* libspeexdsp-dev - для сборки кодека Speex (codec_speex.so)

Качаем, распаковываем исходники и конфигурируем:
$ wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz
$ tar -zxvf asterisk*
$ cd ./asterisk*
$ ./configure
$ make menuselect


Минимальный набор модулей:
app_dial.so Dialing Application
bridge_native_rtp.so Native RTP bridging module
bridge_simple.so Simple two channel bridging module
chan_sip.so Session Initiation Protocol (SIP)
codec_alaw.so A-law Coder/Decoder
codec_gsm.so GSM Coder/Decoder
format_gsm.so Raw GSM data
format_pcm.so Raw/Sun uLaw/ALaw 8KHz (PCM,PCMA,AU)
pbx_config.so Text Extension Configuration
res_crypto.so Cryptographic Digital Signatures
res_http_websocket.so HTTP WebSocket Support
res_rtp_asterisk.so Asterisk RTP Stack
res_security_log.so Security Event Logging
res_srtp.so Secure RTP (SRTP)


Для IAX2-транков:
chan_iax2.so Inter Asterisk eXchange (Ver 2)
res_timing_timerfd.so Timerfd Timing Interface


Для AEL:
pbx_ael Asterisk Extension Language Compiler
res_ael_share share-able code for AEL


Дополнительные модули:
app_echo.so Simple Echo Application
app_playback.so Sound File Playback Application
codec_speex.so Speex Coder/Decoder
res_musiconhold.so Music On Hold Resource


$ make
# make install
# make config
# make install-logrotate


=== Запуск сервиса от пользователя asterisk ===
# adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk

/opt/bin/chown_asterisk.sh:
#!/bin/sh
chown -R asterisk:asterisk /var/lib/asterisk/
chown -R asterisk:asterisk /var/log/asterisk/
chown -R asterisk:asterisk /var/run/asterisk/
chown -R asterisk:asterisk /var/spool/asterisk/


/etc/default/asterisk:
AST_USER="asterisk"
AST_GROUP="asterisk"


/etc/logrotate.d/asterisk:
create 640 asterisk asterisk