Архив рубрики ‘Инструкции’

Ноя
12

Краткая шпаргалка по установке кодека g729 на FreePBX. Писалась для себя и повторяет описанное в сети, ничего нового.

Сайт для загрузки  кодеков: http://asterisk.hosting.lv/

Пара вариантов для x86-систем:
http://asterisk.hosting.lv/bin/codec_g729-ast110-gcc4-glibc-pentium4.so
http://asterisk.hosting.lv/bin/codec_g729-ast110-gcc4-glibc-core2.so

Пара вариантов для x64-систем:
http://asterisk.hosting.lv/bin/codec_g729-ast110-gcc4-glibc-x86_64-core2.so
http://asterisk.hosting.lv/bin/codec_g729-ast110-gcc4-glibc-x86_64-pentium4.so

Команда для просмотра установленных кодеков:
core show translation

Копипаста для установки на x86:
cd /usr/lib/asterisk/modules
wget http://asterisk.hosting.lv/bin/codec_g729-ast110-gcc4-glibc-pentium4.so
mv codec_g729-ast110-gcc4-glibc-pentium4.so codec_g729.so

Копипаста для установки на x64:
cd /usr/lib/asterisk/modules
wget http://asterisk.hosting.lv/bin/codec_g729-ast110-gcc4-glibc-x86_64-pentium4.so
mv codec_g729-ast110-gcc4-glibc-x86_64-pentium4.so codec_g729.so

Команда ручной загрузки модуля (Из консоли Asterisk):

asterisk*CLI>  module load codec_g729.so

Окт
29

Проверяем, запланирован ли переход в зону GMT+3 в 2014 году:
zdump -v Europe/Moscow |grep 2014

Если никакой реакции не произошло, значит нужно обновить базу часовых поясов. Скачиваем:
cd /tmp
wget http://www.iana.org/time-zones/repository/releases/tzdata2014i.tar.gz
tar xvzf tzdata2014i.tar.gz

Компилируем временные зоны для Европы:
zic europe

Создаем ссылку на обновленную временную зону:
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

А теперь все вместе для копирования 🙂
cd /tmp
wget http://www.iana.org/time-zones/repository/releases/tzdata2014i.tar.gz
tar xvzf tzdata2014i.tar.gz
zic europe
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

Проверяем, что все правильно:
[root@localhost tmp]# zdump -v Europe/Moscow |grep 2014
Europe/Moscow  Sat Oct 25 21:59:59 2014 UTC = Sun Oct 26 01:59:59 2014 MSK isdst=0 gmtoff=14400
Europe/Moscow  Sat Oct 25 22:00:00 2014 UTC = Sun Oct 26 01:00:00 2014 MSK isdst=0 gmtoff=10800

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

Еще вот есть замечательный скрипт для проверки, взят отсюда
tzcheck.sh:
#!/bin/sh
T1=$(LC_ALL=C TZ=Europe/Moscow date -d @1409067890)
if [ "$T1" != 'Tue Aug 26 19:44:50 MSK 2014' ] ; then
echo FAIL! Wrong TZ BEFORE 26 Oct 2014!
exit 1
fi
T2=$(LC_ALL=C TZ=Europe/Moscow date -d @1416667890)
if [ "$T2" != 'Sat Nov 22 17:51:30 MSK 2014' ] ; then
echo FAIL! Wrong TZ AFTER 26 Oct 2014!
exit 2
fi
echo OK

Дек
12

Кратенько, по пунктам, чтобы не забыть и не пропало:

  • Заходим по SSH
  • Переходим в директорию, где лежат файлы виртуальной машины:cd /vmfs/volumes/{Имя DATASTORE}/{Имя ВМ}
  • Смотрим список подключенных дисков ls -l /vmfs/devices/disks/ и запоминаем, как зовут нужный
  • Создаем VMDK файл:
    vmkfstools -r /vmfs/devices/disks/{Имя диска из пункта выше} {Произвольное имя}.vmdk
  • Монтируем получившийся файл через vSphereClient
  • См. также KB1026256
Окт
23

Свершилось! Я наконец-то смог настроить это грешное подключение!

Расклад такой: Есть компьютер с Windows 7 x64, который очень хочет попасть в домашнюю сеть. Дома стоит роутер с DD-WRT. Я много раз пытался настроить подключение, но всякий раз бросал то дело из-за каких-либо проблем с настройкой. Инструкций по настройке Open VPN в сети просто море, но я сюда записываю свой велосипед, чтобы потом не собирать опять по всей сети по кускам.

Выражаю благодарность автору инструкции, которой я пользовался для создания ключей, бессовестно утащу себе немножко текста оттуда, для сохранности. Вот ссылка на источник.

Внимание! Из-за автоформатирования кавычки превратились хрен знает во что, поэтому их нужно заменять на двойные прямые везде. (Shift+2 на русской раскладке)

Установка

Первым делом качаем последний дистрибутив OpenVPN отсюда: http://openvpn.net/index.php/open-source/downloads.html

Если будете генерировать сертификаты, а это нужно в первый раз обязательно, то устанавливаем при установке галки «OpenSSL utilites» и «OpenVPN RSA Certificate Management Scripts». По сути, все галочки в списке будут отмечены. Почему-то этом на это не ставится акцент, и возникают проблемы. Хотя может быть, я не шибко внимательно читал. Для установки на других компьютерах эти галки ставить не нужно, если есть уже созданные сертификаты для этих компьютеров. Обратите внимание, что у меня 64х битная версия Windows и я скачал 64х битный же дистрибутив OpenVPN. В дальнейшем я буду исходить из того, что установка произведена в «c:\Program Files\OpenVPN\», имейте в виду.

Создание сертификатов для сервера и клиента

  1. Запускаем консоль CMD от имени администратора: Пуск\поиск\CMD\правой кнопкой мыши\Запустить от имени администратора. Выделенное жирным шрифтом можно копировать прямо в командную строку 🙂
  2. Переходим в папку с установленным OpenVPN:
    cd %PROGRAMFILES%\OpenVPN\easy-rsa
  3. Создаем папку для ключей и делаем копии файлов, необходимых для работы:
    mkdir keys && copy serial.start keys\serial && copy index.txt.start keys\index.txt
    Будет создана папка «keys», а в ней — два файла (serial и index.txt)
  4. Делаем начальную инициализацию, выполняя
    init-config.bat
    В результате будет создан файл vars.bat
  5. Открываем vars.bat для редактирования. Помните, что текстовый редактор нужно открывать от имени администратора, иначе ему может не хватить прав на сохранение файла. После строки set KEY_CONFIG=openssl-1.0.0.cnf добавляем строку set OPENSSL_CONF=%HOME%\%KEY_CONFIG%. Это нужно для того, чтобы openssl, поставляемый с дистрибутивом OpenVPN, не ругался на отсутствие файла /etc/ssl/openssl.cnf, который он использует по-умолчанию.  Это нужно для версии OpenVPN 2.3.2 и ниже, возможно в последующих релизах они исправят это. Далее пролистываем файл до конца и заполняем данные о сертификатах, чтобы не вводить их кучу раз в процессе создания сертификатов (set KEY_COUNTRY и т.д.). Нужные значения ставим после знака «=». Сохраняем файл и закрываем тестовый редактор.
  6. Создаем ключ Диффи-Хеллмана (Diffie-Hellman key) (Файл keys\dh1024.pem):
    build-dh.bat
    Внимание! Если при этом вылезет сообщение «WARNING: can’t open config file: /etc/ssl/openssl.cnf», значит вы не добавили строку в vars.bat из пятого пункта моей инструкции. А зря! 🙂
  7. Создаем корневой сертификат (Certificate Authority) (файлы keys\ca.key и keys\ca.crt):
    build-ca.bat
    Если вы заполнили переменные внизу файла vars.bat, то на все вопросы можно просто отвечать кнопкой enter, все данные будут подставлены автоматически.
  8. Создаем серверный сертификат с именем server (Совершенно произвольное имя, не связанное ни с чем, просто чтобы различать)
    build-server-key.bat server
    Будут созданы файлы keys\server.key, keys\server.crt, keys\server.csr
  9. Создаем ключи для клиента (клиентов), где client1 — совершенно произвольное имя, просто чтобы различать сертификаты:
    build-key.bat client1
    Будут созданы файлы keys\client1.key, keys\client1.crt, keys\client1.csr

Если вдруг вас раздражает куча файлов в папке keys, то:
Для клиента нужны только файлы keys\client1.key, keys\client1.crt и keys\ca.crt.
Для сервера нужны только файлы keys\server.key, keys\server.crt и dh1024.pem

Прочие файлы из папки keys можно удалить, они нужны для последующего создания сертификатов, но для работы необязательны. Но если вдруг вы захотите создать еще сертификатов для других клиентов и не сохраните прочие файлы, придется все начинать с пункта 1 и менять на всех устройствах на новые сертификаты.

Настройка DD-WRT

Эта инструкция для DD-WRT v24SP2- (03/25/13) std, в других версиях интерфейс может отличаться, имейте в виду…

  1. Идем в Services->VPN и там выставляем:
    OpenVPN: Enable
    Start Type: WAN Up
    Config as: Server
    Server mode: Bridge (TAP)
    DHCP-Proxy mode: Enable
    Port: 1194
    Tunnel Protocol: UDP
    Encryption Cipher: Blowfish CBC
    Hash Algorithm: SHA1
    Advanced Options: Disable

    Public Server Cert: Берем из файла server.crt, причем скопировать нужно все, начиная с «——BEGIN CERTIFICATE——» и заканчивая «——END CERTIFICATE——» включительно. С дальнейшими файлами — по той же схеме 🙂
    CA Cert: из файла ca.crt
    Private Server Key: server.key
    DH PEM: из файла dh1024.pem

  2. Жмем Save -> Apply Settings
  3. Возможно, придется установить правила для файлволла, но у меня заработало и так.

Настройка клиента

  1. Устанавливаем OpenVPN, если он еще не установлен на клиенте. Галочки, про которые я говорил вначале, ставить не нужно.
  2. Создаем папку keys в %PROGRAMFILES%\OpenVPN\easy-rsa и копируем в нее файлы client1.key, client1.crt и ca.crt, созданные ранее.
  3. Копируем файл %PROGRAMFILES%\OpenVPN\sample-config\client.ovpn в папку %PROGRAMFILES%\OpenVPN\config\
  4. Изменяем следующие строки в скопированном файле:
    • Убираем точку с запятой в строке dev tap, и ставим в начале строки dev tun
    • В строке remote my-server-1 1194 заменям my-server-1 на адрес вашего DD-WRT в Интернет.
    • Меняем строки:
      • ca ca.crt на ca «c:\\Program Files\\OpenVPN\\easy-rsa\\keys\\ca.crt»
      • cert client.crt на cert «c:\\Program Files\\OpenVPN\\easy-rsa\\keys\\alexbit-3820tg.crt»
      • key client.key на key «c:\\Program Files\\OpenVPN\\easy-rsa\\keys\\alexbit-3820tg.key»

В итоге, если выкинуть все комментарии, в файле %PROGRAMFILES%\OpenVPN\config\client.ovpn останется следующее:

client
dev tap
proto udp
remote АДРЕС СЕРВЕРА 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca «c:\\Program Files\\OpenVPN\\easy-rsa\\keys\\ca.crt»
cert «c:\\Program Files\\OpenVPN\\easy-rsa\\keys\\alexbit-3820tg.crt»
key «c:\\Program Files\\OpenVPN\\easy-rsa\\keys\\alexbit-3820tg.key»
ns-cert-type server
comp-lzo
verb 5

 Вот в принципе и вся настройка. Дальше запускаем OpenVPN GUI и пробуем подключаться. Должно работать.

Апр
22

Источник: тут.

Шпаргалка для соединения двух Asterisk-серверов по протоколу IAX2, готовая для настройки через вебморду FreePBX.

Берем блокнот, копируем туда вот этот текст:

< Начало текста >

{Server1} : Имя первого Asterisk (Любое)
{Server2} : Имя второго Asterisk (Любое)
{Server1IPAddress} : IP адрес первого Asterisk
{Server2IPAddress} : IP адрес второго Asterisk
{Server1User} : Имя пользователя первого Asterisk (Любое)
{Server2User} : Имя пользователя второго Asterisk (Любое)
{Server1Secret} : Пароль пользователя первого Asterisk (Любой)
{Server2Secret} : Пароль пользователя второго Asterisk (Любой)

НАСТРОЙКА ПЕРВОГО СЕРВЕРА ({Server1} ):

СОЗДАЕМ НОВЫЙ IAX2 ТРАНК:

Trunk Name: {Server2}
Peer Details:
context=from-internal
host={Server2IPAddress}
qualify=yes
secret={Server2Secret}
type=peer
username={Server2User}

User Context: {Server1User}

User Details:
context=from-internal
host={Server2IPAddress}
secret={Server1Secret}
type=user

СОЗДАЕМ ИСХОДЯЩИЙ МАРШРУТ:
Dial Patterns: 5|XXX
trunk Sequence: IAX2/{Server2}

НАСТРОЙКА ВТОРОГО СЕРВЕРА ({Server2})

СОЗДАЕМ НОВЫЙ IAX2 ТРАНК:

Trunk Name: {Server1}

Peer Details:
context=from-internal
host={Server1IPAddress}
qualify=yes
secret={Server1Secret}
type=peer
username={Server1User}

User Context: {Server2User}

User Details:
context=from-internal
host={Server1IPAddress}
secret={Server2Secret}
type=user

СОЗДАЕМ ИСХОДЯЩИЙ МАРШРУТ:
Dial Patterns: 5|XXX
trunk Sequence: IAX2/{Server1}

< Конец текста >

Затем тупо заменяем «поиском и заменой» все {поля} по всему тексту — получается готовая инструкция по настройке!



Яндекс.Метрика