<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://www.m-200.com/base/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>https://www.m-200.com/base/index.php?action=history&amp;feed=atom&amp;title=%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BA_FREERADIUS._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_2</id>
		<title>Подключение к FREERADIUS. Часть 2 - История изменений</title>
		<link rel="self" type="application/atom+xml" href="https://www.m-200.com/base/index.php?action=history&amp;feed=atom&amp;title=%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BA_FREERADIUS._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_2"/>
		<link rel="alternate" type="text/html" href="https://www.m-200.com/base/index.php?title=%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BA_FREERADIUS._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_2&amp;action=history"/>
		<updated>2026-05-15T19:50:36Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.19.20</generator>

	<entry>
		<id>https://www.m-200.com/base/index.php?title=%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BA_FREERADIUS._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_2&amp;diff=134&amp;oldid=prev</id>
		<title>Pax: Новая страница: «&lt;div style=&quot;font-size:90%; clear: right; border-right: #aaaaaa 1px solid; padding-right: 1ex; border-top: #aaaaaa 1px solid; padding-left: 1ex; float: right; padd…»</title>
		<link rel="alternate" type="text/html" href="https://www.m-200.com/base/index.php?title=%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BA_FREERADIUS._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_2&amp;diff=134&amp;oldid=prev"/>
				<updated>2014-12-03T07:37:09Z</updated>
		
		<summary type="html">&lt;p&gt;Новая страница: «&amp;lt;div style=&amp;quot;font-size:90%; clear: right; border-right: #aaaaaa 1px solid; padding-right: 1ex; border-top: #aaaaaa 1px solid; padding-left: 1ex; float: right; padd…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;font-size:90%; clear: right; border-right: #aaaaaa 1px solid; padding-right: 1ex; border-top: #aaaaaa 1px solid; padding-left: 1ex; float: right; padding-bottom: 1ex; margin: 1ex 0px 1ex 1ex; border-left: #aaaaaa 1px solid; width: 250px; padding-top: 1ex; border-bottom: #aaaaaa 1px solid; background-color: #fcfcfc&amp;quot;&amp;gt;&lt;br /&gt;
*[[Подключение к FREERADIUS. Часть 1]]&lt;br /&gt;
**''Насторойка М-200''&lt;br /&gt;
*[[Подключение к FREERADIUS. Часть 2]]&lt;br /&gt;
**''Насторойка FREERADIUS''&lt;br /&gt;
*[[Подключение к FREERADIUS. Часть 3]]&lt;br /&gt;
**''Авторизация''&lt;br /&gt;
*[[Подключение к FREERADIUS. Часть 4]]&lt;br /&gt;
**''Маршрутизация''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ПравГлавМеню}}&lt;br /&gt;
&lt;br /&gt;
Теперь настроим сам freeradius. Я не ставлю задачи разобраться со всеми возможностями сервера и настраивать буду только самый необходимый минимум, чтобы связка м-200 - freeradius заработала. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Для начала''' нужно создать подключение для callbuilder. В файл clients.conf добавить:&lt;br /&gt;
&lt;br /&gt;
 client m-200 {&lt;br /&gt;
        ipaddr  = 127.0.0.1&lt;br /&gt;
        secret  = testing123&lt;br /&gt;
        nastype = other&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Думаю очевидно, что пароль calbuider-а и здесь должны совпадать. ipaddr - адрес callbuider-а.&lt;br /&gt;
&lt;br /&gt;
'''Далее''' необходимо обеспечить проверку пользователей. Freeradius позволяет делать это разными путями и для начала используем самый простой и &amp;quot;тупой&amp;quot; - через текстовый файл.&lt;br /&gt;
&lt;br /&gt;
В файл radiusd.conf добавляем:&lt;br /&gt;
&lt;br /&gt;
 authorize {&lt;br /&gt;
    preprocess&lt;br /&gt;
    files&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
В файле users создаем пользователя 904:&lt;br /&gt;
&lt;br /&gt;
 904 Auth-Type := accept&lt;br /&gt;
  h323-credit-time = &amp;quot;h323-credit-time=1000&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*М-200 не использует пароль для авторизации, так что необходимо указать Auth-Type := accept. &lt;br /&gt;
*h323-credit-time = &amp;quot;h323-credit-time=1000&amp;quot; - это разрешенное время разговора. Передаваться оно должно именно в таком формате (AV Pair). &lt;br /&gt;
*freeradius &amp;quot;съел&amp;quot; запись о пользователе только в таком виде - h323-credit-time на новой стороке и обязательно с пробелом впереди. Наверное это так и надо)&lt;br /&gt;
&lt;br /&gt;
'''Перезапускаем freeradius, проверяем:&lt;br /&gt;
'''&lt;br /&gt;
 # radtest 904 password 127.0.0.1 0 testing123&lt;br /&gt;
 Sending Access-Request of id 54 to 127.0.0.1 port 1812&lt;br /&gt;
        User-Name = &amp;quot;904&amp;quot;&lt;br /&gt;
        User-Password = &amp;quot;password&amp;quot;&lt;br /&gt;
        NAS-IP-Address = 127.0.0.1&lt;br /&gt;
        NAS-Port = 0&lt;br /&gt;
 rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=54, length=20&lt;br /&gt;
 #&lt;br /&gt;
&lt;br /&gt;
Если все правильно, то получаем Access-Accept.&lt;br /&gt;
&lt;br /&gt;
'''Теперь тестовый звонок.'''&lt;br /&gt;
&lt;br /&gt;
Терминал М-200 (у меня коммутатор и МАЛ, так что 2 терминала):&lt;br /&gt;
&lt;br /&gt;
 Коммутатор:&lt;br /&gt;
 &lt;br /&gt;
 SEIZ EXT&amp;lt;SIP&amp;gt;(904)$&lt;br /&gt;
 CALL EXT&amp;lt;SIP&amp;gt;(904)$:6157 -&amp;gt; CallAuth_in(770:9)$:6205 [904,407]&lt;br /&gt;
 SEIZ CallAuth_out(1538:9)$&lt;br /&gt;
 CALL CallAuth_out(1538:9)$:6206 -&amp;gt; INT_IP(769/14)$:6132 [904,407]&lt;br /&gt;
 RLSI EXT&amp;lt;SIP&amp;gt;(904)$:CV:16&lt;br /&gt;
 RLSO CallAuth_in(770:9)$&lt;br /&gt;
 RLSI CallAuth_out(1538:9)$:CV:16&lt;br /&gt;
 RLSO INT_IP(769/14)$&lt;br /&gt;
 &lt;br /&gt;
 МАЛ:&lt;br /&gt;
 &lt;br /&gt;
 SEIZ INT_IP(772/14)$&lt;br /&gt;
 CALL INT_IP(772/14)$:779 -&amp;gt; SUB(407/1/8)$:60 [904,407]&lt;br /&gt;
 RLSI INT_IP(772/14)$:CV:16&lt;br /&gt;
 RLSO SUB(407/1/8)$&lt;br /&gt;
&lt;br /&gt;
Файл  /ATS/TARIF_LOG/callbuilder.log&lt;br /&gt;
&lt;br /&gt;
 [03-04-2013 13:24:21] Auth radius pr: send: sid: 1364981061-872532 h323-conf-id=1364981061-872532&lt;br /&gt;
 [03-04-2013 13:24:21] Auth radius pr: send: sid: 1364981061-872532 904&lt;br /&gt;
 [03-04-2013 13:24:21] Auth radius pr: send: sid: 1364981061-872532 904&lt;br /&gt;
 [03-04-2013 13:24:21] Auth radius pr: send: sid: 1364981061-872532 h323-gw-id=904&lt;br /&gt;
 [03-04-2013 13:24:21] Auth radius pr: send: sid: 1364981061-872532 407&lt;br /&gt;
 [03-04-2013 13:24:21] Auth radius pr: Auth OK: sid: 1364981061-872532 h323-credit-time=1000&lt;br /&gt;
 [03-04-2013 13:24:21] Auth radius pr: Auth OK: 904 -&amp;gt; 407 time=1000&lt;br /&gt;
 [03-04-2013 13:24:21] AuthRadiusPrepayAnswer: unipar len=78 module=127 port_id=6205 credit_time=1000&lt;br /&gt;
&lt;br /&gt;
Если freeradius запускать не демоном, а командой  ''radiusd -X'', то можно увидеть, что у него внутри твориться:&lt;br /&gt;
&lt;br /&gt;
 rad_recv: Access-Request packet from host 127.0.0.1 port 36070, id=109, length=113&lt;br /&gt;
        Service-Type = Login-User&lt;br /&gt;
        h323-conf-id = &amp;quot;h323-conf-id=1364981061-872532&amp;quot;&lt;br /&gt;
        User-Name = &amp;quot;904&amp;quot;&lt;br /&gt;
        Calling-Station-Id = &amp;quot;904&amp;quot;&lt;br /&gt;
        h323-gw-id = &amp;quot;h323-gw-id=904&amp;quot;&lt;br /&gt;
        Called-Station-Id = &amp;quot;407&amp;quot;&lt;br /&gt;
        NAS-Port = 0&lt;br /&gt;
        NAS-IP-Address = 127.0.0.1&lt;br /&gt;
 +- entering group authorize {...}&lt;br /&gt;
 ++[preprocess] returns ok&lt;br /&gt;
 [files] users: Matched entry 904 at line 24&lt;br /&gt;
 ++[files] returns ok&lt;br /&gt;
 Found Auth-Type = Accept&lt;br /&gt;
 Auth-Type = Accept, accepting the user&lt;br /&gt;
 Login OK: [904/&amp;lt;via Auth-Type = accept&amp;gt;] (from client m-200 port 0 cli 904)&lt;br /&gt;
 +- entering group post-auth {...}&lt;br /&gt;
 ++[exec] returns noop&lt;br /&gt;
 Sending Access-Accept of id 109 to 127.0.0.1 port 36070&lt;br /&gt;
        h323-credit-time = &amp;quot;h323-credit-time=123&amp;quot;&lt;br /&gt;
 Finished request 1.&lt;br /&gt;
 Going to the next request&lt;br /&gt;
 Waking up in 4.9 seconds.&lt;br /&gt;
 Cleaning up request 1 ID 109 with timestamp +533&lt;br /&gt;
 Ready to process requests.&lt;br /&gt;
&lt;br /&gt;
'''Теперь, чтобы убедиться, что все работает, проверим запрет.'''&lt;br /&gt;
&lt;br /&gt;
В файле users изменим:&lt;br /&gt;
&lt;br /&gt;
 914 Auth-Type := accept&lt;br /&gt;
  h323-credit-time = &amp;quot;h323-credit-time=0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Перезапускаем freeradius, проверяем:&lt;br /&gt;
&lt;br /&gt;
 SEIZ EXT&amp;lt;SIP&amp;gt;(904)$&lt;br /&gt;
 CALL EXT&amp;lt;SIP&amp;gt;(904)$:6157 -&amp;gt; CallAuth_in(770:8)$:6203 [904,407]&lt;br /&gt;
 RLSI CallAuth_in(770:8)$:CV:21&lt;br /&gt;
 RLSO EXT&amp;lt;SIP&amp;gt;(904)$&lt;br /&gt;
&lt;br /&gt;
Как видно, вызов от абонента 904 не прошел авторизацию.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Использовать файл users конечно можно, но это как минимум неудобно. Freeradius предлагает разные пути проверки пользователей и мне, например, нравится вариант использования модуля RLM_PERL - это встроенный PERL интерпретатор. Об этом в [[Подключение к FREERADIUS. Часть 2|третьей части]]. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Настройка авторизации с помощью модуля perl в [[Подключение к FREERADIUS. Часть 3| третей части]].&lt;br /&gt;
&lt;br /&gt;
[[Категория:RADIUS]]&lt;br /&gt;
[[Категория:Уголок ДР]]&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Pax</name></author>	</entry>

	</feed>