<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Блог о бытие моём &#187; Server Wars</title>
	<atom:link href="http://graber.net.ru/category/sysadmin/feed/" rel="self" type="application/rss+xml" />
	<link>http://graber.net.ru</link>
	<description>заметки интернет-растения</description>
	<lastBuildDate>Mon, 12 Sep 2011 09:49:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Настраиваем Freeradius 2 и rlm_perl на linux Debian</title>
		<link>http://graber.net.ru/sysadmin/freeradius_and_rlm_pern/</link>
		<comments>http://graber.net.ru/sysadmin/freeradius_and_rlm_pern/#comments</comments>
		<pubDate>Mon, 12 Sep 2011 09:49:07 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[freeradius]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=260</guid>
		<description><![CDATA[Каждый раз при использовании Freeradius в связке с rpl_perl на своем любимом Debian-чике натыкаюсь на одни и те же грабли. Стоит только включить поддержку перл, как сразу получаем ошибку. Freeradius с поддержкой perl никак не хочет запускаться. Все пропало! Ничего не работает! Опять! Опять разбираться, гуглить, терять время. А время, как известно &#8211; это деньги. [...]]]></description>
			<content:encoded><![CDATA[<p>Каждый раз при использовании Freeradius в связке с rpl_perl на своем любимом Debian-чике натыкаюсь на одни и те же грабли. Стоит только включить поддержку перл, как сразу получаем ошибку. Freeradius с поддержкой perl никак не хочет запускаться.</p>
<p>Все пропало! Ничего не работает! Опять! Опять разбираться, гуглить, терять время. А время, как известно &#8211; это деньги. Чтож, не буду вдаваться в подробности и рассказывать почему возникает эта ошибка, но расскажу как быстро ее исправить. Метод не единственный, но абсолютно рабочий, и требует минимум временных затрат.<br />
<span id="more-260"></span><br />
Итак, что мы имеем. Систему linux Debian с установленным Freeradius сервером. Однака поддержка perl не работает, вы выдает следующую ошибку:<br />
<code>radius:/etc/freeradius# /etc/init.d/freeradius start<br />
Starting FreeRADIUS daemon: freeradius Can't load '/usr/lib/perl/5.10/auto/Data/Dumper/Dumper.so' for module Data::Dumper: /usr/lib/perl/5.10/auto/Data/Dumper/Dumper.so: undefined symbol: Perl_sv_cmp at /usr/lib/perl/5.10/XSLoader.pm line 70.<br />
 at /usr/lib/perl/5.10/Data/Dumper.pm line 36<br />
Compilation failed in require at /etc/freeradius/example.pl line 30.<br />
BEGIN failed--compilation aborted at /etc/freeradius/example.pl line 30.</code></p>
<p>Чтож, запустить freeradius достаточно просто. Попробуйте выполнить такой вызов:<br />
<strong>LD_PRELOAD=/usr/lib/libperl.so freeradius -X</strong><br />
Если все заработало, то осталось изменить стартовые скрипты, и задача решена.<br />
Если же сервер не запустился, почитайте последние строки вывода, и исправьте ошибки.</p>
<p>Для нормальной загрузки freeradius сервера нам потребуется поправить всего 1 файл:<br />
/etc/init.d/freeradius<br />
откройте его и найдите строки:<br />
<code>case "$1" in<br />
        start)<br />
                log_daemon_msg "Starting $DESCR" "$PROG"<br />
                start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $PROGRAM -- $FREERADIUS_OPTIONS || ret=$?<br />
                log_end_msg $ret<br />
                exit $ret<br />
                ;;</code><br />
А теперь замените строку:<br />
<strong>start-stop-daemon &#8211;start &#8211;quiet &#8211;pidfile $PIDFILE &#8211;exec $PROGRAM &#8212; $FREERADIUS_OPTIONS || ret=$?</strong><br />
на<br />
<strong>LD_PRELOAD=/usr/lib/libperl.so start-stop-daemon &#8211;start &#8211;quiet &#8211;pidfile $PIDFILE &#8211;exec $PROGRAM &#8212; $FREERADIUS_OPTIONS || ret=$?</strong></p>
<p>должно получиться следующее:<br />
<code>case "$1" in<br />
        start)<br />
                log_daemon_msg "Starting $DESCR" "$PROG"<br />
                LD_PRELOAD=/usr/lib/libperl.so start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $PROGRAM -- $FREERADIUS_OPTIONS || ret=$?<br />
                log_end_msg $ret<br />
                exit $ret<br />
                ;;</code><br />
Чтож, сохраняем изменения, и радуемся.</p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/freeradius_and_rlm_pern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Обновление Debian Lenny до Debian 6.0 Squeeze</title>
		<link>http://graber.net.ru/sysadmin/migration-debian-lenny-to-squeeze/</link>
		<comments>http://graber.net.ru/sysadmin/migration-debian-lenny-to-squeeze/#comments</comments>
		<pubDate>Mon, 14 Mar 2011 11:04:33 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[debian]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=235</guid>
		<description><![CDATA[После 24 месяцев продолжительной разработки проект Debian рад сообщить о новой стабильной версии 6.0 (кодовое имя &#171;Squeeze&#187;). Debian 6.0 — это свободная операционная система, впервые представленная в двух вариантах. Наряду с Debian GNU/Linux, в этой версии добавлен Debian GNU/kFreeBSD в качестве &#171;технологической пробы&#187;. Вот такую замечательную новость я узрел, и сразу решил обновиться. Всегда хочется [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p><em>После 24 месяцев продолжительной разработки проект Debian рад сообщить о новой стабильной версии 6.0 (кодовое имя &laquo;Squeeze&raquo;). Debian 6.0 — это свободная операционная система, впервые представленная в двух вариантах. Наряду с Debian GNU/Linux, в этой версии добавлен Debian GNU/kFreeBSD в качестве &laquo;технологической пробы&raquo;.</em></p></blockquote>
<p>Вот такую замечательную новость я узрел, и сразу решил обновиться. Всегда хочется иметь stable релиз, и наконец уже забыть про использование бэкпортов&#8230; Но одно дело поставить систему на свежую машинку, и совсем другое &#8211; обновить рабочий сервер.<br />
<strong>Как без потерь обновить мой Debian до нового релиза Debian 6.0 &laquo;Squeeze&raquo;?</strong><br />
Именно такой вопрос посетил меня сегодня. Ну и естественно это оказалось просто до безобразия, ну или почти <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<span id="more-235"></span><br />
Первым делом я решил проверить, все ли нормально с зависимостями на моей системе. Я достаточно часто ставил &laquo;левые&raquo; пакеты, плюс самосбора полно. Поэтому, для избежания дальнейшего секаса, такая проверка была необходима, чего и вам советую. Сделать это достаточно просто. Для этого выполните:<br />
<strong>apt-get update<br />
apt-get -f install</strong><br />
Если есть ошибки &#8211; исправляйте, если нет, то все ок, и едем дальше.<br />
Убедившись, что с зависимостями у меня все ровно, я решил удалить хвосты от старых пакетов. Можете считать меня извращенцем, но я делаю это так:<br />
<strong>dpkg -l | grep -v &laquo;ii  &laquo;</strong><br />
Выбираю все пакеты которые не ii, и удаляю их. Чаще всего весь этот хлам метится как &#8216;rc&#8217;<br />
<strong>dpkg -P &lt;список пакетов&gt;</strong><br />
Чтож, теперь наша система готова обновляться. Но перед началом обновления, я вам настоятельно рекомендую полностью забакапить /etc т.к. в момент обновления некоторые конфиги могут пострадать <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Для начала обновления нужно отредактировать список репозиториев откуда тянуть пакеты. У меня он (<strong>/etc/apt/sources.list</strong>) выглядит так:<br />
<code>deb http://ftp.de.debian.org/debian/ squeeze main non-free contrib<br />
deb-src http://ftp.de.debian.org/debian/ squeeze main non-free contrib<br />
deb http://security.debian.org/ squeeze/updates main non-free contrib<br />
deb-src http://security.debian.org/ squeeze/updates main non-free contrib</code><br />
Ну а теперь поехали обновлять:<br />
<strong>apt-get update</strong><br />
<strong> apt-get install apt dpkg aptitude</strong><br />
Теперь у нас используется репозиторий squeeze, и мы смело можем перейти непосредственно к самому обновлению:<br />
<strong>aptitude update<br />
aptitude full-upgrade</strong></p>
<p>Собственно таким методом я обновил более 10 серверов. Проблем при обновлении почти не возникло. Единственное, что пришлось править после обновления &#8211; это конфиги dovecot и mysql. В остальном все прошло гладко.</p>
<p>Удачи <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/migration-debian-lenny-to-squeeze/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Подключаем Backports к Debian Lenny</title>
		<link>http://graber.net.ru/sysadmin/debian-lenny-backports/</link>
		<comments>http://graber.net.ru/sysadmin/debian-lenny-backports/#comments</comments>
		<pubDate>Thu, 28 Oct 2010 13:32:06 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[backports]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[ext4]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=207</guid>
		<description><![CDATA[Конечно, использование стабильной версии Debian дает нам гарантии, что все пакеты весьма стабильны и не содержат ошибок, но далеко не все пакеты есть в stable версии. И часто бывает нужно поставить пакет из testing или unstable ветки, т.к. в stable пакет либо отсутствует вовсе, либо его версия сильно устарела, а хочется свежака! Так случилось и [...]]]></description>
			<content:encoded><![CDATA[<p>Конечно, использование стабильной версии Debian дает нам гарантии, что все пакеты весьма стабильны и не содержат ошибок, но далеко не все пакеты есть в stable  версии. И часто бывает нужно поставить пакет из testing или unstable ветки, т.к. в stable пакет либо отсутствует вовсе, либо его версия сильно устарела, а хочется свежака! Так случилось и со мной. Решил я погонять ext4, а в ядре 2.6.26 эта файловая система еще не поддерживалась. Решение нашлось само собой. В бекпорте есть версия 2.6.32, и она умеет ext4. Так чтоже такое backports, и с чем его едят?!<br />
<span id="more-207"></span><br />
<strong>Debian backports</strong> &#8211; это ветка перекомпилированных пакетов из тестовой (testing) или нестабильной (unstable) веток. В основном пакеты портируются из тестовой (testing) ветки, но бывают случаи портирования и из нестабильной (unstable) ветки: как правило, связаны с безопасностью системы. Собираются пакеты таким образом, чтобы они были работоспособными в стабильной (stable) ветке без наличия в системе каких-либо новых библиотек. </p>
<p>Крайне рекомендуется устанавливать из backports только необходимые пакеты, а не всю ветку целиком. </p>
<p><strong>Подключение Debian backports</strong><br />
Для подключения backports вам потребуется выполнить 3 простых действия. Обратите внимание, что все действия должны выполняться от имени пользователя root (через su или sudo)</p>
<p>Итак, для начала нам потребуется обучить apt-get использовать репозиторий backports. Для этого добавьте следующие строки в конфигурационный файл /etc/apt/sources.list:<br />
<code>deb http://www.backports.org/debian lenny-backports main contrib non-free<br />
deb-src http://www.backports.org/debian lenny-backports main contrib non-free</code></p>
<p>После этого обновите список доступных пакетов:<br />
<code>aptitude update</code></p>
<p>При попытке поставить любой backport пакет, вы будите получать предупреждение о том, что пакет из неизвестного источника. Дабы не тратить свое время и нервы на это сообщение, нужно установить соответствующие ключи:<br />
<code>aptitude install debian-backports-keyring</code></p>
<p>Теперь наша система готова устанавливать backports пакеты. Как я уже говорил, я хотел обновить ядро. Для этого я выполнил следующую команду:<br />
<code>aptitude -t lenny-backports install linux-image-2.6-686</code></p>
<p>Цель достигнута, ext4 заработал. Но душа моя по-прежнему лежит к xfs.</p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/debian-lenny-backports/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ставим Zend Optimizer на Debian Lenny</title>
		<link>http://graber.net.ru/sysadmin/zendoptimizer-on-debian-lenny/</link>
		<comments>http://graber.net.ru/sysadmin/zendoptimizer-on-debian-lenny/#comments</comments>
		<pubDate>Wed, 06 Oct 2010 09:46:41 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=200</guid>
		<description><![CDATA[Каждый раз, при настройке WEB сервера, я забываю про этот гребаный Zend Optimizer. А потом, при запуске платных cms, удивляюсь, а чей-то оно не работает!?&#8230; И каждый раз вспоминаю! ZendOptimizer! И так происходит снова и снова! Из года в год! Ну казалось, бы. Скачал, библиотечку. Поклал ее куда нужно. Конфиг поправил, и апачик в рестарт. [...]]]></description>
			<content:encoded><![CDATA[<p>Каждый раз, при настройке WEB сервера, я забываю про этот гребаный Zend Optimizer. А потом, при запуске платных cms, удивляюсь, а чей-то оно не работает!?&#8230; И каждый раз вспоминаю! ZendOptimizer! И так происходит снова и снова! Из года в год! Ну казалось, бы. Скачал, библиотечку. Поклал ее куда нужно. Конфиг поправил, и апачик в рестарт. Всего-то. Но вот как доходим до момента &laquo;поправить конфиг&raquo;, получаем ступор. А собственно ЧТО туда вписать нужно? И давай вспоминать, что да как&#8230;<br />
Вот решил записать, чтоб больше не думать.<br />
<span id="more-200"></span><br />
<strong>Как установить Zend Optimizer на Debian Lenny?</strong><br />
Весьма несложно! Для этого потребуется выполнить 5 простых шагов:<br />
1) Скачиваем нужную нам версию с офф. <a href="http://www.zend.com/en/products/guard/downloads">сайта</a><br />
2) Распаковываем наш архивчик<br />
<code>tar zxvf ./ZendOptimizer-*.tar.gz</code><br />
3) После извлечения файлов из архива найдите среди них ZendOptimizer.so для вашей версии PHP, и скопируйте его в папку /usr/lib/php5 (или как она у вас называется)<br />
4) далее перейдите в папку /etc/php5/conf.d и создайте там файл zend.ini следующего содержания:<br />
<code># configuration for php Zend Optimizer module<br />
zend_extension=/usr/lib/php5/ZendOptimizer.so</code><br />
именно эту строку я всегда забываю <img src='http://graber.net.ru/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /><br />
5) Перепустите апачик, и радуйтесь!<br />
<code>/etc/init.d/apache2 restart</code></p>
<p>Обратите внимание, что в 3-ем пункте, я положил библиотеку оптимайзера в рабочий каталог PHP. Это не обязательно. Вы можете разместить библиотеку ZendOptimizer.so где угодно, хоть в корне. Многие любят размещать ее в /usr/lib/Zend, или /usr/local/lib/Zend. Совершенно неважно где вы ее разместите, главное, правильно указать путь до нее в 4-ом. пункте.</p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/zendoptimizer-on-debian-lenny/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Обрывы при звонке с X-Lite</title>
		<link>http://graber.net.ru/sysadmin/x-lite-call-inactivity/</link>
		<comments>http://graber.net.ru/sysadmin/x-lite-call-inactivity/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 09:14:56 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[Asterisk]]></category>
		<category><![CDATA[SIP]]></category>
		<category><![CDATA[X-Lite]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=192</guid>
		<description><![CDATA[Разнообразие всевозможных софтфонов поражает воображение. И каких их только нет. На любой вкус и цвет. Но мне из всего этого зоопарка пришелся по вкусу X-Lite. Почему? А хрен его знает, просто понравился и все. В общем-то он замечательно работает, в нем есть масса кодеков. И тебе g729, и тебе g711, как a-law, так и u-law. [...]]]></description>
			<content:encoded><![CDATA[<p>Разнообразие всевозможных софтфонов поражает воображение. И каких их только нет. На любой вкус и цвет. Но мне из всего этого зоопарка пришелся по вкусу X-Lite. Почему? А хрен его знает, просто понравился и все. В общем-то он замечательно работает, в нем есть масса кодеков. И тебе g729, и тебе g711, как a-law, так и u-law. Ко всему прочему он бесплатны и работает с моим USB SIP/Skype телефоном. Но и на солнце бывают пятна, так и тут не обошлось без подводных камней.<br />
<span id="more-192"></span><br />
Частенько сталкивался с такой ситуацией, что при использовании X-Lite в качестве SIP клиента для Asterisk, происходит такая ситуация. При исходящем звонке примерно через 15 сек. происходит обрыв соединения. Либо при установке звонка на Hold, через несколько секунд X-Lite кладет трубку. Уж не знаю кто тут виноват, Asterisk или X-Lite, но такие вот моменты имеют место быть. Неприятно. А менять софтфон желания нет. Да и не нужно. Лечится снятием одной галки в настройках X-Lite. При этом на Asterisk ничего менять не нужно.</p>
<p>Запускаем X-Lite, далее идем Options->Advanced->Network. Там находим секцию &laquo;Call Inactivity&raquo;, и снимаем галку &laquo;In times of network disruption, automatically hang up calls after:&raquo;. Вот и все. Больше никаких обрывов. Возможно это как-то можно поправить на стороне Asterisk, и наверное это было бы более правильным решением, но я заленился разбираться. Буду рад, если кто-то подскажет.</p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/x-lite-call-inactivity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Asterisk 1.6.2.0 10 дней &#8211; полет нормальный</title>
		<link>http://graber.net.ru/sysadmin/asterisk-1-6-2-0-10-dnej-polet-normalnyj/</link>
		<comments>http://graber.net.ru/sysadmin/asterisk-1-6-2-0-10-dnej-polet-normalnyj/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 11:13:19 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[Asterisk]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=144</guid>
		<description><![CDATA[В пятницу 18.12.2009 Asterisk Development Team объявила о выходе из Asterisk 1.6.2.0, и Asterisk-Addons 1.6.2.0. Надо сказать, я долго ждал этого релиза, и как только он вышел, сразу же его собрал на одном из своих серверов. Надо четко понимать, что Asterisk 1.6.2.0 очень сильно переработан по отношению к любому предшествующему релизу, и при переходе на [...]]]></description>
			<content:encoded><![CDATA[<p>В пятницу 18.12.2009 Asterisk Development Team объявила о выходе из Asterisk 1.6.2.0, и<br />
Asterisk-Addons 1.6.2.0. Надо сказать, я долго ждал этого релиза, и как только он вышел, сразу же его собрал на одном из своих серверов. Надо четко понимать, что Asterisk 1.6.2.0 очень сильно переработан по отношению к любому предшествующему релизу, и при переходе на него могут возникать разные сложности. Но несмотря на это, переход с 1.6.0.14 прошел весьма безболезненно.<br />
<span id="more-144"></span><br />
Самая засада была с порядком модулей в modules.conf. Пришлось явно указать, что chan_sip должен грузиться ДО app_queue. Без этого получалась ситуация, что агенты в очередях получали статус Invalid, и никто не мог дозвониться ни до одного агента из очереди, хотя все SIP пиры били зарегистрированы и свободны. В остальном никаких сложностей не возникло. Asterisk работает нормально, с chan_h323 тоже никаких сложностей не возникло. 10 дней без падений <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Из нововведений очень порадовало наличие автодетектора факсов:<br />
В sip.conf добавлена новая опция &laquo;faxdetect = yes | no&raquo;. Если эта опция включена, то Asterisk будут следить за CNG тоном во входящем звуковом потоке. И при обнаружении факса, канал перейдет в диалплане на экстеншен &#8216;fax&#8217;.</p>
<p>Скачать Asterisk и Asterisk-Addons можно тут: <a href="http://downloads.asterisk.org/pub/telephony/asterisk/">http://downloads.asterisk.org/pub/telephony/asterisk/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/asterisk-1-6-2-0-10-dnej-polet-normalnyj/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Asterisk + Telphin</title>
		<link>http://graber.net.ru/sysadmin/asterisk-telphin/</link>
		<comments>http://graber.net.ru/sysadmin/asterisk-telphin/#comments</comments>
		<pubDate>Fri, 25 Dec 2009 09:58:19 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[Asterisk]]></category>
		<category><![CDATA[telphin]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=139</guid>
		<description><![CDATA[Ох и намаялся я при подключении Asterisk-а к Телфину. И траблы были не столько в настройках, сколько в общении с сапортом, но про это я рассказывать не собираюсь. Поговорим о настройках. Конечно лень-матушка мне подсказала пойти в инет, и найти готовые конфиги для настройки этой связки. Но может я плохо искал, а может не очень [...]]]></description>
			<content:encoded><![CDATA[<p>Ох и намаялся я при подключении Asterisk-а к Телфину. И траблы были не столько в настройках, сколько в общении с сапортом, но про это я рассказывать не собираюсь. Поговорим о настройках.<br />
Конечно лень-матушка мне подсказала пойти в инет, и найти готовые конфиги для настройки этой связки. Но может я плохо искал, а может не очень хотел найти, или планеты в тот день выстроились в ряд&#8230; Вобщем ничего я не нашел <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Расстроился малясь, и сделал все на свой лад.<br />
Итак. Наша задача забрать номер по SIP из Телфина, и привязать его к Asterisk-у.<span id="more-139"></span><br />
Для начала я вписал в sip.conf такую строку:<br />
<code>register => 00011111:22222222@sip.telphin.com</code><br />
где 00011111 &#8211; это наш SIPID, а 22222222 &#8211; пароль полученный от telphin.<br />
Ох как хорошо, подумал я, зарегались на телфине. Вот только наш * не знает как оттуда звонки получать, и как их туда отправлять&#8230; Чтож, не умеет &#8211; научи, не хочет &#8211; заставим <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Опять же в sip.conf пишем следующее:<br />
<code>[00011111]<br />
type=friend<br />
username=00011111<br />
secret=22222222<br />
fromuser=00011111<br />
fromdomain=sip.telphin.com<br />
host=sip.telphin.com<br />
canreinvite=no<br />
insecure=invite,port<br />
port=5060<br />
qualify=yes<br />
context=FromTelphin<br />
disallow=all<br />
allow=alaw</code><br />
А в extensions.conf добавим контекст FromTelphin<br />
<code>[FromTelphin]<br />
exten => s, 1, Noop(=== Telphin: Incoming call ===)<br />
exten => s, n, Hangup()</code><br />
Вот теперь мы замечательно принимаем вызовы с Телфина. Что касается исходящих, то тут все просто.<br />
<code>exten => _X., 1, NoOp(=== Telphin: Outgoing call ===)<br />
exten => _X., n, Dial(SIP/${EXTEN}@00011111,,tT)<br />
exten => _X., n, Hangup</code><br />
Вот и все <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Очень уж мне хотелось в контексте FtomTelphin вместо s использовать городской номер купленный в Телфине, но не получилось. Если знаете как этого добиться &#8211; научите плиз&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/asterisk-telphin/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SSH без пароля</title>
		<link>http://graber.net.ru/sysadmin/ssh-bez-parolya/</link>
		<comments>http://graber.net.ru/sysadmin/ssh-bez-parolya/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 14:08:51 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=112</guid>
		<description><![CDATA[Весьма полезное действие, но я все время забываю КАК оно производится. Решил записать. Как всегда, все ОЧЕНЬ просто: Аутентификация пользователя по его публичному ключу. Аутентификация удаленного пользователя по ключу идентична проверке HostBased аутентификации за тем исключением, что проверяется не адрес клиентской машины, а ключ клиента и имя пользователя. Данному пользователю на сервере может соответствовать его [...]]]></description>
			<content:encoded><![CDATA[<p>Весьма полезное действие, но я все время забываю КАК оно производится. Решил записать.<br />
Как всегда, все ОЧЕНЬ просто:</p>
<p><strong>Аутентификация пользователя по его публичному ключу.</strong><br />
Аутентификация удаленного пользователя по ключу идентична проверке HostBased аутентификации за тем исключением, что проверяется не адрес клиентской машины, а ключ клиента и имя пользователя. Данному пользователю на сервере может соответствовать его публичный ключ, тогда клиент, имея секретный ключ сможет заходить на сервер без пароля.<br />
<span id="more-112"></span><br />
<strong>Генерация SSH ключей</strong><br />
В первую очередь, нужно создать пару ключей, если их ещё нет. По умолчанию ключи хранятся в домашней директории пользователя, /home/имя пользователя/.ssh/id_rsa и id_rsa.pub.<br />
Итак, на машине с которой мы хотим ходить БЕЗ пароля создадим ключ. Для этого выполним команду:<br />
<code>user@host_a:~$ ssh-keygen -b 2048 -t rsa</code><br />
на запрос ввести пароль ничего не вводим, и нажимает на enter. После выполнения команды получим примерно такое:<br />
<code>Your identification has been saved in /home/user/.ssh/id_rsa.<br />
Your public key has been saved in /home/user/.ssh/id_rsa.pub.</code></p>
<p>Ну а теперь осталось скопировать сгенерированный ключ на уделенный хост. Для этого выполним следуюшую команду:<br />
<code>user@host_a:~$ ssh-copy-id -i /home/user/.ssh/id_rsa.pub user@remote_host_b</code><br />
Вводим пароль пользователя user на сервере remote_host_b и&#8230;<br />
Да собственно все <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Теперь выполняем ssh user@remote_host_b и попадаем на удаленную машину без ввода пароля.</p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/ssh-bez-parolya/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Автодобавление Message-id в exim</title>
		<link>http://graber.net.ru/sysadmin/avtodobavlenie-message-id-v-exim/</link>
		<comments>http://graber.net.ru/sysadmin/avtodobavlenie-message-id-v-exim/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 14:54:59 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[exim]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=109</guid>
		<description><![CDATA[Столкнулся с такой проблемой. При отправке письма из php скрипта в заголовке письма не проставляется Message-id, что не очень хорошо. Так некоторые антиспам системы недолюбливают такие письма. Конечно, можно самостоятельно добавить это поле в заголовок письма, но есть более другой способ. Т.к. я использую exim как SMTP сервер, то я решил не переписывать PHP скрипты, [...]]]></description>
			<content:encoded><![CDATA[<p>Столкнулся с такой проблемой. При отправке письма из php скрипта в заголовке письма не проставляется Message-id, что не очень хорошо. Так некоторые антиспам системы недолюбливают такие письма. Конечно, можно самостоятельно добавить это поле в заголовок письма, но есть более другой способ. Т.к. я  использую exim как SMTP сервер, то я решил не переписывать PHP скрипты, а попросту добавил 1 строку в конфиг exim-а.<br />
<span id="more-109"></span>Было так:<br />
<code>acl_check_rcpt:<br />
  accept  hosts         = +relay_from_hosts</code></p>
<p>Добавив волшебную строку получилось:</p>
<p><code>acl_check_rcpt:<br />
  accept  hosts         = +relay_from_hosts<br />
          control       = submission</code></p>
<p><strong>control = submission</strong> автоматически добавляет в заголовки писем недостающие поля, такие как Message-id и Date.<br />
Такой способ показался мне намного более правильным.</p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/avtodobavlenie-message-id-v-exim/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Music On Hold для Asterisk (mp3 или alaw)</title>
		<link>http://graber.net.ru/sysadmin/music-on-hold-dlya-asterisk-mp3-ili-alaw/</link>
		<comments>http://graber.net.ru/sysadmin/music-on-hold-dlya-asterisk-mp3-ili-alaw/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 14:37:44 +0000</pubDate>
		<dc:creator>Antonio</dc:creator>
				<category><![CDATA[Server Wars]]></category>
		<category><![CDATA[Asterisk]]></category>

		<guid isPermaLink="false">http://graber.net.ru/?p=38</guid>
		<description><![CDATA[Буквально вчера настраивал знакомым Asterisk как офисную АТС. Все как всегда прошло гладко, но что-то не сраслось с МОНом. Почему-то mp3 залитые на сервер не заиграли&#8230; И это навело меня на мысль, что при каждом проигрывании mp3 файла происходит его перекодирование, что не есть хорошо&#8230; Благо, что есть такая замечательная вещь как sox. Примитивый скриптик [...]]]></description>
			<content:encoded><![CDATA[<p>Буквально вчера настраивал знакомым Asterisk как офисную АТС. Все как всегда прошло гладко, но что-то не сраслось с МОНом. Почему-то mp3 залитые на сервер не заиграли&#8230; И это навело меня на мысль, что при каждом проигрывании mp3 файла происходит его перекодирование, что не есть хорошо&#8230; Благо, что есть такая замечательная вещь как sox. Примитивый скриптик сделал перекодирование из mp3 в alaw (именно этот кодек использовался на *).<br />
<span id="more-38"></span><br />
Создадим скрипт convert_mp3.sh:</p>
<p><code>#!/bin/bash<br />
for i in *<br />
do<br />
fff=`echo $i | cut -d'.' -f1`<br />
echo $fff<br />
sox $i -r 8000 -c1 -ql $fff.al<br />
mv $fff.al alaw/$fff.alaw<br />
done</code></p>
<p>Итак, как этим пользоваться:</p>
<p>1) создаем папку, заливаем в нее свои mp3 файлы, convert_mp3.sh, там-же  создаем папку alaw</p>
<p>2) запускаем convert_mp3.sh и терпеливо дожидаемся окончания работы скрипта.</p>
<p>3) забираем из папки alaw файлы для MOHа, которые уже не будут конвертироваться в момент проигрывания, и кладем их в нужную для asterisk-ка папку.</p>
<p>ВСЁ! Музон заиграл <img src='http://graber.net.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://graber.net.ru/sysadmin/music-on-hold-dlya-asterisk-mp3-ili-alaw/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

