<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>SOREX.ORG</title>
<link>https://www.sorex.org/</link>
<description>Exchange, esx, AD, GPO, veeam, adaptec,lsi megaraid</description>
<author>sorex</author>
<language>ru</language>
<generator>E2 (v3820;)</generator>

<itunes:owner>
<itunes:name>sorex</itunes:name>
<itunes:email></itunes:email>
</itunes:owner>
<itunes:subtitle>Exchange, esx, AD, GPO, veeam, adaptec,lsi megaraid</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Mikrotik MSS</title>
<guid isPermaLink="false">75</guid>
<link>https://www.sorex.org/?go=all/mikrotik-mss/</link>
<pubDate>Sat, 14 Mar 2026 11:53:50 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/mikrotik-mss/</comments>
<description>
&lt;p&gt;Для исправления кривейшей работы с wan на гребаном микротике нужно добавить правила в firewall mangle.&lt;br /&gt;
Когда я все запустил, то наткнулся на ситуацию, когда часть сайтов открывалась нормально, а часть не открывалась вовсе. Такое поведение на моей практике всегда связано с MTU. Т. е. где-то на уровне оператора он ломается и часть больших TCP пакетов не проходит, но мы про это ничего не знаем и наш роутер не может адаптироваться под это. Вернее может, но нам нужно ему немного помочь с этим. Нам нужно включить оптимизацию MSS под Path MTU (PMTU)&lt;/p&gt;
&lt;p&gt;PMTU (Path MTU) — данный параметр обозначает наименьший MTU среди MTU каналов данных, находящихся между источником и приемником.&lt;br /&gt;
МSS (Maximum Segment Size) — максимальный размер сегмента, т. е. самая большая порция данных, которую TCP пошлет на другую сторону соединения.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;/ip/firewall/mangle/
add action=change-mss chain=forward comment=&amp;quot;Fix MSS for Open sites&amp;quot; ipsec-policy=out,none new-mss=clamp-to-pmtu out-interface-list=WAN passthrough=no protocol=tcp tcp-flags=syn tcp-mss=1300-65535
add action=change-mss chain=forward in-interface-list=WAN ipsec-policy=in,none new-mss=clamp-to-pmtu passthrough=no protocol=tcp tcp-flags=syn tcp-mss=1300-65535&lt;/code&gt;&lt;/pre&gt;</description>
</item>

<item>
<title>proxmox удаление ноды и перевод кластера в local</title>
<guid isPermaLink="false">74</guid>
<link>https://www.sorex.org/?go=all/proxmox-udalenie-nody-i-perevod-klastera-v-local/</link>
<pubDate>Wed, 24 Dec 2025 05:29:33 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/proxmox-udalenie-nody-i-perevod-klastera-v-local/</comments>
<description>
&lt;p&gt;systemctl stop pve-cluster corosync&lt;br /&gt;
pmxcfs -l&lt;br /&gt;
rm /etc/corosync/*&lt;br /&gt;
rm /etc/pve/corosync.conf&lt;br /&gt;
killall pmxcfs&lt;br /&gt;
systemctl start pve-cluster&lt;/p&gt;
&lt;p&gt;После этого удаляем папку /etc/pve/nodes/ИМЯ&lt;/p&gt;
</description>
</item>

<item>
<title>HP microserver keys</title>
<guid isPermaLink="false">73</guid>
<link>https://www.sorex.org/?go=all/hp-microserver-keys/</link>
<pubDate>Wed, 22 Oct 2025 07:04:42 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/hp-microserver-keys/</comments>
<description>
&lt;p&gt;Удаленное управление&lt;/p&gt;
&lt;p&gt;Для дисковых контроллеров&lt;br /&gt;
HP сделала ADG бесплатным для SAAP 2.0+.&lt;br /&gt;
Вы больше не можете купить SAAP 1.0.&lt;/p&gt;
&lt;p&gt;Для справки, поскольку они больше не доступны в HPE&lt;/p&gt;
&lt;p&gt;Smart Array P400/P410/P410i&lt;/p&gt;
&lt;p&gt;{36YR5-5C2W2-B79R4-ZPG2P-D2Z3S}&lt;br /&gt;
{348CB-62VKV-YQ3B5-H4JKQ-Y4DGJ}&lt;br /&gt;
{36XLJ-X5WBD-QW9X8-9JWTK-HVJ8C}&lt;br /&gt;
{34QDW-DXV4K-7GY5S-V2W7W-X964X}&lt;br /&gt;
{37B4T-H4KHX-CY8YG-XYVBV-MX8RN}&lt;br /&gt;
{37BKP-2NK3C-WRV9M-PLT74-LJPC7}&lt;/p&gt;
&lt;p&gt;Временный ключ 60 дней&lt;br /&gt;
34T62-N84MB-7DQGY-G7XGT-YTQ63&lt;/p&gt;
</description>
</item>

<item>
<title>Mikrotik CAP</title>
<guid isPermaLink="false">72</guid>
<link>https://www.sorex.org/?go=all/mikrotik-cap/</link>
<pubDate>Thu, 22 May 2025 06:11:22 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/mikrotik-cap/</comments>
<description>
&lt;p&gt;Новые партии точек доступа приходят без софта и мертвые из коробки изначально, скачиваем netinstall и заливаем последнюю прошивку с сайта, но есть момент после прошивки нет wifi интерфейсов и для их активации нужен специальный сброс через команду&lt;br /&gt;
system reset-configuration caps-mode=yes&lt;/p&gt;
</description>
</item>

<item>
<title>Не работает DNS в resolv.conf в CENTOS</title>
<guid isPermaLink="false">71</guid>
<link>https://www.sorex.org/?go=all/ne-rabotaet-dns-v-resolv-conf-v-centos/</link>
<pubDate>Fri, 11 Apr 2025 05:29:37 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/ne-rabotaet-dns-v-resolv-conf-v-centos/</comments>
<description>
&lt;p&gt;Если не добавляется DNS сервер из network scripts то нужно добавить в настройки dhcp службы:&lt;br /&gt;
vi /etc/dhcp/dhclient.conf добавить fqdn.fqdn = gethostname();&lt;br /&gt;
После этого запускаем dhclient -r; dhclient&lt;/p&gt;
</description>
</item>

<item>
<title>CENTOS 7 обновление репозиториев</title>
<guid isPermaLink="false">70</guid>
<link>https://www.sorex.org/?go=all/centos-7-obnovlenie-repozitoriev/</link>
<pubDate>Fri, 07 Feb 2025 08:42:03 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/centos-7-obnovlenie-repozitoriev/</comments>
<description>
&lt;p&gt;EOL CentOS 7 и обновление основного репозитория&lt;br /&gt;
После прекращения поддержки (30 июня 2024 года) операционной системы CentOS 7, основной репозиторий mirrorlist.centos.org более недоступен и был перемещен в Vault-хранилище.&lt;/p&gt;
&lt;p&gt;Для возможности дальнейшей установки пакетов в системе, необходимо внести изменения на сервере в данные основных репозиториев, подключившись к серверу по SSH.&lt;/p&gt;
&lt;p&gt;Внести изменения в данные репозиториев можно последовательно введя команды в терминале:&lt;/p&gt;
&lt;p&gt;sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/CentOS*&lt;br /&gt;
sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/CentOS*&lt;br /&gt;
sed -i s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/CentOS*&lt;/p&gt;
</description>
</item>

<item>
<title>Как узнать UUID в ESXI 5.5</title>
<guid isPermaLink="false">67</guid>
<link>https://www.sorex.org/?go=all/kak-uznat-uuid-v-esxi-5-5/</link>
<pubDate>Mon, 15 Nov 2021 06:06:50 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/kak-uznat-uuid-v-esxi-5-5/</comments>
<description>
&lt;p&gt;The vCenter does have a UUID.&lt;/p&gt;
&lt;p&gt;To view it simply go to &lt;a href="https://VC-FQDN/mob"&gt;https://VC-FQDN/mob&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Click on RetrieveServiceContent -&gt; Invoke Method&lt;/p&gt;
&lt;p&gt;The UUID is listed as instanceUuid.&lt;/p&gt;
</description>
</item>

<item>
<title>LSI Megaraid увеличение скорости дисков Disk Cache Policy</title>
<guid isPermaLink="false">66</guid>
<link>https://www.sorex.org/?go=all/lsi-megaraid-uvelichenie-skorosti-diskov-disk-cache-policy/</link>
<pubDate>Thu, 16 Sep 2021 10:42:12 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/lsi-megaraid-uvelichenie-skorosti-diskov-disk-cache-policy/</comments>
<description>
&lt;p&gt;Проверяем статус кеша:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;megacli -LDInfo -LAll -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Получаем:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Virtual Drive: 1 (Target Id: 1)
Name                :
RAID Level          : Primary-1, Secondary-0, RAID Level Qualifier-0
Size                : 2.728 TB
Sector Size         : 512
Is VD emulated      : Yes
Mirror Data         : 2.728 TB
State               : Degraded
Strip Size          : 256 KB
Number Of Drives    : 2
Span Depth          : 1
Default Cache Policy: WriteThrough, ReadAhead, Direct, No Write Cache if Bad BBU
Current Cache Policy: WriteThrough, ReadAhead, Direct, No Write Cache if Bad BBU
Default Access Policy: Read/Write
Current Access Policy: Read/Write
Disk Cache Policy   : Disk's Default
Encryption Type     : None
Bad Blocks Exist: No
Is VD Cached: No&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Включаем принудительно кэш на горячую:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;megacli -LDSetProp EnDskCache -L0:0 -aAll

Set Disk Cache Policy to Enabled on Adapter 0, VD 0 (target id: 0) success
Set Disk Cache Policy to Enabled on Adapter 0, VD 0 (target id: 0) success&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;В итоге получаем:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Virtual Drive: 1 (Target Id: 1)
Name                :
RAID Level          : Primary-1, Secondary-0, RAID Level Qualifier-0
Size                : 2.728 TB
Sector Size         : 512
Is VD emulated      : Yes
Mirror Data         : 2.728 TB
State               : Degraded
Strip Size          : 256 KB
Number Of Drives    : 2
Span Depth          : 1
Default Cache Policy: WriteThrough, ReadAhead, Direct, No Write Cache if Bad BBU
Current Cache Policy: WriteThrough, ReadAhead, Direct, No Write Cache if Bad BBU
Default Access Policy: Read/Write
Current Access Policy: Read/Write
Disk Cache Policy   : Enabled
Encryption Type     : None
Bad Blocks Exist: No
Is VD Cached: No&lt;/code&gt;&lt;/pre&gt;</description>
</item>

<item>
<title>vCenter 6.7 уменьшить память для установки</title>
<guid isPermaLink="false">65</guid>
<link>https://www.sorex.org/?go=all/vcenter-6-7-umenshit-pamyat-dlya-ustanovki/</link>
<pubDate>Tue, 14 Sep 2021 06:24:25 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/vcenter-6-7-umenshit-pamyat-dlya-ustanovki/</comments>
<description>
&lt;p&gt;В папке установки VMware VCSA перейдите в Vcsa-ui-installer \ win32 \ resources \ app \ resources.&lt;br /&gt;
Откройте файл с именем layout.json в Блокноте.&lt;br /&gt;
Вы можете сначала создать копию этого файла.&lt;br /&gt;
Внутри layout.json файла, прокрутите вниз до «tiny». Существует несколько вариантов, поэтому убедитесь, что вы выбрали вариант с меткой: «Tiny vCenter Server со встроенным PSC», который зависит от размера развертывания, Tiny, размера хранилища, по умолчанию (300 ГБ) и со встроенным PSC.&lt;br /&gt;
недостаточно памяти на хосте для выбранного размера&lt;br /&gt;
Измените «память» на желаемое значение. 6 ГБ (6144 МБ) в моем случае. Сохраните изменения.&lt;br /&gt;
В следующий раз, когда вы запустите установку VCSA, вы увидите, что развертывание Tiny было уменьшено до 6 ГБ (или вашего значения)&lt;br /&gt;
недостаточно памяти на хосте для выбранного размера&lt;br /&gt;
Теперь вы можете продолжить развертывание VCSA.&lt;br /&gt;
Примечание. Это изменение не отразится на виртуальном оборудовании при создании VCSA (ВМ), его нельзя изменить, и вы по-прежнему видите 10 ГБ. Но из монитора ресурсов вы увидите, что в качестве ограничения используется 6 ГБ.&lt;/p&gt;
</description>
</item>

<item>
<title>Перенос qcow диска из libvirt в ESXi</title>
<guid isPermaLink="false">64</guid>
<link>https://www.sorex.org/?go=all/perenos-qcow-diska-iz-libvirt-v-esxi/</link>
<pubDate>Mon, 06 Sep 2021 11:19:24 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/perenos-qcow-diska-iz-libvirt-v-esxi/</comments>
<description>
&lt;p&gt;qemu-img convert -f qcow2 myImage.qcow2 -O vmdk myNewImage.vmdk&lt;br /&gt;
потом переносим на esxi и в консоли хоста делаем:&lt;br /&gt;
vmkfstools -i myImage.vmdk outputName.vmdk -d thin&lt;br /&gt;
на выходе получаем 2 файла один заголовок диска и второй flat диск&lt;/p&gt;
</description>
</item>

<item>
<title>Команды для LSI рейд контроллера</title>
<guid isPermaLink="false">63</guid>
<link>https://www.sorex.org/?go=all/komandy-dlya-lsi-reyd-kontrollera/</link>
<pubDate>Mon, 30 Aug 2021 10:34:32 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/komandy-dlya-lsi-reyd-kontrollera/</comments>
<description>
&lt;p&gt;Диск исправен — запуск перестроения массива&lt;br /&gt;
Если диск исправен, можно попробовать перестроить массив. Для этого находим значения полей Enclosure Device ID и Slot Number у неисправного диска и выполняем для него команду запуска перестроения массива. В примере ниже используются значения 252 и 3:&lt;/p&gt;
&lt;/code&gt;&lt;h2&gt;megacli -PdRbld -Start -PhysDrv[252:3] -a0&lt;/h2&gt;
&lt;/code&gt;&lt;p&gt;Наблюдать за состоянием перестроения массива можно при помощи команды:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdRbld -ShowProg -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Диск неисправен — замена диска&lt;br /&gt;
Если диск неисправен, его нужно заменить. Помечаем его как отключенный:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdOffline -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Затем — как отсутствующий в массиве:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdMarkMissing -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;И теперь — как подготовленный к удалению из системы:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdPrpRmv -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Неисправный диск можно подсветить светодиодом:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdLocate -start -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Если индикация не заработала, можно попробовать починить её при помощи следующей команды:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -AdpSetProp \{UseDiskActivityforLocate -1\} -aALL&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Заменяем диск (в случае SAS это можно сделать на горячую, если по светодиодным индикаторам видно, какой из дисков неактивен).&lt;/p&gt;
&lt;p&gt;Когда новый диск вставлен, убираем подсветку светодиодом:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdLocate -stop -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;После замены диска смотрим, каких дисков не хватает в RAID-массиве:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdGetMissing -a0
                                     
    Adapter 0 - Missing Physical drives

    No.   Array   Row   Size Expected
    0     1       1     428199 MB

Exit Code: 0x00&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Вставляем новый диск в пустующее место в массиве:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdReplaceMissing -PhysDrv [252:3] -array1 -row1 -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Если диск не вставляется и выводится ошибка следующего вида:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Adapter: 0: Failed to replace Missing PD at Array 1, Row 1.

FW error description: 
 The specified device is in a state that doesn't support the requested command.  

Exit Code: 0x32&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;То можно проверить текущее состояние прошивки диска:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdInfo -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Если в строке Firmware state отображается состояние JBOD, то исправить это состояние можно следующим образом:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdMakeGood -PhysDrv[252:3] -Force -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Если же в строке Firmware state отображается состояние Unconfigured(good), Spun Up, но в строке Foreign State отображается состояние Foreign, то надо просканировать наличие дисков, переставленных из других RAID-контроллеров и снять у таких дисков отметку о других контроллерах:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -CfgForeign -Scan -aALL
# megacli -CfgForeign -Сlear -aALL&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Включаем новый диск в работу массива:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdRbld -Start -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Посмотреть продвижение процесса перестроения можно так:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# megacli -PdRbld -ShowProg -PhysDrv [252:3] -a0&lt;/code&gt;&lt;/pre&gt;</description>
</item>

<item>
<title>Переключение режима кеширования контролеров lsi на ходу</title>
<guid isPermaLink="false">62</guid>
<link>https://www.sorex.org/?go=all/pereklyuchenie-rezhima-keshirovaniya-kontrolerov-lsi-na-hodu/</link>
<pubDate>Fri, 27 Aug 2021 16:28:14 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/pereklyuchenie-rezhima-keshirovaniya-kontrolerov-lsi-na-hodu/</comments>
<description>
&lt;p&gt;При мертвой батарее&lt;br /&gt;
megacli -LDSetProp CachedBadBBU -L0 -a0&lt;/p&gt;
&lt;p&gt;вернуть обратно&lt;br /&gt;
megacli -LDSetProp NoCachedBadBBU -L0 -a0&lt;/p&gt;
</description>
</item>

<item>
<title>OSPF Mikrotik отключение авто бродкаста на interface</title>
<guid isPermaLink="false">61</guid>
<link>https://www.sorex.org/?go=all/ospf-mikrotik-otklyuchenie-avto-brodkasta-na-interface/</link>
<pubDate>Tue, 20 Jul 2021 18:09:32 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/ospf-mikrotik-otklyuchenie-avto-brodkasta-na-interface/</comments>
<description>
&lt;p&gt;Для отключения автоматического бродкаста на интерфейсах&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;/routing ospf interface add interface=all passive=yes&lt;/code&gt;&lt;/pre&gt;</description>
</item>

<item>
<title>Windows 2012 разрешить remoteapp и запретить полноценный rdp</title>
<guid isPermaLink="false">60</guid>
<link>https://www.sorex.org/?go=all/windows-2012-razreshit-remoteapp-i-zapretit-polnocenny-rdp/</link>
<pubDate>Tue, 13 Apr 2021 20:23:15 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/windows-2012-razreshit-remoteapp-i-zapretit-polnocenny-rdp/</comments>
<description>
&lt;ol start="1"&gt;
&lt;li&gt;Создать локальную группу TerminalAdmins и добавить в неё пользователей&lt;/li&gt;
&lt;li&gt;На диске С создать каталог AdminTools и разместить в нём скрипт NoRDP.cmd&lt;br /&gt;
Содержание скрипта:&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;@echo OFF
net localgroup TerminalAdmins | find /i &amp;quot;%username%&amp;quot;
if %ERRORLEVEL% == 0 goto admin
logoff.exe
exit
:admin
start /B explorer.exe
exit&lt;/code&gt;&lt;/pre&gt;&lt;ol start="3"&gt;
&lt;li&gt;В gpedit.msc изменить групповую политику:&lt;br /&gt;
User Configuration -&gt; Administrative Templates -&gt; Windows Components -&gt; Terminal Services -&gt; Policy&lt;br /&gt;
Start a program on connection = Enabled&lt;br /&gt;
Program path and file name = C:\AdminTools\NoRDP.cmd&lt;/li&gt;
&lt;li&gt;Выполнить в CMD от имени Администратора: gpupdate /force&lt;br /&gt;
Либо перезагрузить сервер.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Теперь при подключении пользователя по RDP скрипт проверит, входит ли пользователь в группу TerminalAdmins.&lt;br /&gt;
Если пользователь в группу не входит, он будет сразу же разлогинен.&lt;/p&gt;
</description>
</item>

<item>
<title>Elastix Запрет Межгорода</title>
<guid isPermaLink="false">59</guid>
<link>https://www.sorex.org/?go=all/elastix-zapret-mezhgoroda/</link>
<pubDate>Tue, 13 Apr 2021 10:30:20 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/elastix-zapret-mezhgoroda/</comments>
<description>
&lt;div&gt;&lt;p&gt;Самый простой способ как запретить межгород для некоторых номеров&lt;/p&gt;
&lt;ol&gt;
 	&lt;li&gt;Заходим в управление Elastix через веб, PBX -&amp;gt; Tools — &amp;gt; Asterisk File Editor&lt;/li&gt;
 	&lt;li&gt;Открываем файл extensions_custom.conf&lt;/li&gt;
 	&lt;li&gt;Находим строку [from-internal-custom]&lt;/li&gt;
 	&lt;li&gt;Сразу после неё добавляем:
exten =&amp;gt;_8XXXXXXXXXX/1002,1,Playback(followme/sorry)
exten =&amp;gt;_8XXXXXXXXXX/1002,2,Hangup()&lt;/li&gt;
 	&lt;li&gt;Это означает что для внутреннего номера 1002 закрыты одинадцатизначные номера начинающиеся на 8.&lt;/li&gt;
 	&lt;li&gt;Вместо followme/sorry можно подствить например restricted или любую другу голосовую фразу.&lt;/li&gt;
 	&lt;li&gt;Если можно без сообщения сразу положить трубку, то вообще вместо двух строк можно обойтись одной:
exten =&amp;gt;_8XXXXXXXXXX/1002,1,Hangup()&lt;/li&gt;
 	&lt;li&gt;Не забываем там же нажать &lt;strong&gt;Сохранить&lt;/strong&gt; и &lt;strong&gt;Reload Asterisk&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description>
</item>

<item>
<title>Как заменить +7 на 8 для Elastix</title>
<guid isPermaLink="false">58</guid>
<link>https://www.sorex.org/?go=all/kak-zamenit-7-na-8-dlya-elastix/</link>
<pubDate>Tue, 13 Apr 2021 10:29:51 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/kak-zamenit-7-na-8-dlya-elastix/</comments>
<description>
&lt;div&gt;&lt;p&gt;У многих записная книжка в телефоне забита в формате +7,  а большинство Российских операторов ip телефонии этот формат не понимают и ждут номера начинающегося на 8.&lt;br /&gt;
Это инструкция как автоматически сделать подмену +7 на 8 в Elastix (Asterisk)&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Для замены +7 на 8 в Elastix необходимо внести изменения в файл extensions_custom.conf. Для этого входим в панель управления Elastix, закладка PBX -&amp;gt; Tools, меню Asterisk File Editor. Листаем и находим необходимый нам файл extensions_custom.conf, и открываем его, нажав левой кнопкой мыши.&lt;br /&gt;
Находим в файле строку [from-internal-custom] и сразу после неё добавляем строку:&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p class="code"&gt;exten =&amp;gt; _+7XXXXXXXXXX,1,GoTo(outbound-allroutes,8${EXTEN:2},1)&lt;/p&gt;
&lt;p&gt;Нажимаем Save.&lt;/p&gt;
&lt;p&gt;Изменения вступят в силу после перезагрузки Астериска. Самый простой способ перезагрузить Астериск закладка PBX -&amp;gt; Tools, меню Asterisk-Cli, в поле Command ввести reload и нажать кнопку Execute. Также можно с консоли или просто перезагрузить компьютер на котором установлен Астериск.&lt;/p&gt;
&lt;p&gt;&lt;hr&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Если вы знаете как можно сделать подмену +7 на 8 через Trunk или Outbound Routes — подскажите. Вариант с «8+7|» или «8+.7|» не работают.&lt;/p&gt;
&lt;/div&gt;&lt;p&gt;В последних версиях Elastix это легко делается для исходящих правил. В prepend пишем +7, а в prefix 8.&lt;br /&gt;
Думаю также можно поступить и указав в самом транке.&lt;/p&gt;
&lt;p&gt;Вот пример из моего исходящего правила. Заменяем +7 на 8 и добавляем 8 где цифр в номере 10.&lt;br /&gt;
&lt;img class="topImg" src="https://sorex.org/wp-content/uploads/2015/10/131.jpg" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Делалось это для корректного отзвона. Просто один оператор у меня показывает номер как +7, а другой вообще без кода страны для Российских номеров.&lt;/p&gt;
&lt;p&gt;&lt;hr&gt;&lt;/p&gt;
&lt;p&gt;Итак, как я и обещал, отписываюсь о возможности подмены.&lt;br /&gt;
Так как в моём случае нужно было убить сразу 2х зайцев, поэтому у меня и не выходил каменный цветок, а именно:&lt;br /&gt;
Есть sip-провайдер (по умолчанию он принимает номера, набранные через +7), нужно на него выход сделать через 9.&lt;br /&gt;
Соответственно делал так:&lt;br /&gt;
Например мне нужно звонить в город (Москва и мобильные — 11 значные номера), соответственно делал так: в оutbound routes создал роут: prepand (пусто) + prefix (9) | match patern (XXXXXXXXXXX) — здесь очень внимательным нужно быть к количеству иксов! Дело в том, что сначала я думал, что девятку тоже надо обозначать иксом или приписывать перед ними, но такая схема не работала, в итоге я понял, что иксов (или других спецсимволов) должно быть ровно столько, сколько в номере цифр!&lt;br /&gt;
Дальше, что касается подмены 8ки на 7ку:&lt;br /&gt;
Это я разрулил на сиповском транке вот таким образом prepand (7) + prefix (8) | match patern (.X)&lt;br /&gt;
Теперь у меня всё работает!&lt;br /&gt;
P.S. В случае, если должна быть обратная замена 7ки на 8ку, то соответственно: prepand (8) + prefix (7) | match patern (.X)&lt;br /&gt;
P.S. Если у вас не 7, а +7, то нужно пробовать как и +7 и как 007, потому что некоторые провайдеры и телефонные станции + расценивают как 2 нуля.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
</description>
</item>

<item>
<title>MySQL error «Can’t create new tempfile» при восстановлении таблицы.</title>
<guid isPermaLink="false">57</guid>
<link>https://www.sorex.org/?go=all/mysql-error-cant-create-new-tempfile-pri-vosstanovlenii-tablicy/</link>
<pubDate>Tue, 13 Apr 2021 10:29:15 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/mysql-error-cant-create-new-tempfile-pri-vosstanovlenii-tablicy/</comments>
<description>
&lt;p&gt;В логах mysql много ошибок подобного рода.&lt;br /&gt;
&lt;i&gt;120920  9:25:28 [ERROR] /usr/sbin/mysqld: Table ’./old_sm/phones’ is marked as crashed and last (automatic?) repair failed&lt;/i&gt;&lt;br /&gt;
Поскольку автоматическое исправление не сработало, то будем исправлять вручную.&lt;br /&gt;
Перед любым таким действием настоятельно рекомендуется сделать резервное копирование данных.&lt;br /&gt;
Заходим в командную строку mysql.&lt;br /&gt;
Запускаем проверку таблицы.&lt;/p&gt;
&lt;pre class=""&gt;mysql -u root -p stalker_db&lt;/pre&gt;
&lt;p&gt;&lt;i&gt;mysql&amp;gt; check table phones;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;+——————————-&lt;s&gt;+&lt;/s&gt;—-&lt;s&gt;+&lt;/s&gt;———&lt;s&gt;+&lt;/s&gt;—————————————————————+&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;|           Table                 | Op      | Msg_type | Msg_text                                          |&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;+——————————-&lt;s&gt;+&lt;/s&gt;—-&lt;s&gt;+&lt;/s&gt;———&lt;s&gt;+&lt;/s&gt;—————————————————————+&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;|             old_sm.phones | check | warning     | Table is marked as crashed and last repair failed |&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;|             old_sm.phones | check | error         | Found 6833 keys of 3930951                        |&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;|             old_sm.phones | check | error         | Corrupt                                           |&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;+——————————-&lt;s&gt;+&lt;/s&gt;—-&lt;s&gt;+&lt;/s&gt;———&lt;s&gt;+&lt;/s&gt;—————————————————————+&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;3 rows in set (0.37 sec&lt;/i&gt;)&lt;/p&gt;
&lt;p&gt;Запускаю восстановление таблицы.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;mysql&amp;gt; repair table phones;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;+——————————-&lt;s&gt;+&lt;/s&gt;——&lt;s&gt;+&lt;/s&gt;———&lt;s&gt;+&lt;/s&gt;————————————————————-+&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;|           Table                 | Op        | Msg_type | Msg_text                                                 |&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;+——————————-&lt;s&gt;+&lt;/s&gt;——&lt;s&gt;+&lt;/s&gt;———&lt;s&gt;+&lt;/s&gt;————————————————————-+&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;|             old_sm.phones | repair    | error        | Can’t create new tempfile: ’./old_sm/phones.TMD’ |&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;|             old_sm.phones | repair    | status       | Operation failed                                         |&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;+——————————-&lt;s&gt;+&lt;/s&gt;——&lt;s&gt;+&lt;/s&gt;———&lt;s&gt;+&lt;/s&gt;————————————————————-+&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;2 rows in set (0.01 sec)&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Т. е. при запущенном mysql-сервере восстановлению не подлежит. Останавливаю mysql&lt;br /&gt;
&lt;i&gt;service mysql stop&lt;/i&gt;&lt;br /&gt;
Запускаю восстановление с помощью myisamchk. Данный метод будем работать с таблицами на движке MyISAM. Если у вас таблицы на движке InnoDB может помочь пересоздание таблицы с заливкой старых данных.&lt;br /&gt;
&lt;i&gt;root@112-1:/var/lib/mysql/old_sm# myisamchk -r -f phones.MYI &lt;/i&gt;&lt;br /&gt;
&lt;i&gt;— recovering (with sort) MyISAM-table ’phones.MYI’&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Data records: 3930951&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;— Fixing index 1&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;— Fixing index 2&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;— Fixing index 3&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;— Fixing index 4&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;— Fixing index 5&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Запускаю mysql сервер&lt;br /&gt;
&lt;i&gt;service mysql start&lt;/i&gt;&lt;br /&gt;
Ошибка пропала, что и требовалось.&lt;/p&gt;
</description>
</item>

<item>
<title>Elastix запрос ussd баланса</title>
<guid isPermaLink="false">56</guid>
<link>https://www.sorex.org/?go=all/elastix-zapros-ussd-balansa/</link>
<pubDate>Tue, 13 Apr 2021 10:28:25 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/elastix-zapros-ussd-balansa/</comments>
<description>
&lt;p&gt;Послать USSD-команду (например, запрос баланса и другие управляющие команды) очень просто. Например, для отправки &lt;b&gt;*923#&lt;/b&gt; с модема dongle0 нужно написать такую команду в консоли Asterisk:&lt;/p&gt;
&lt;pre class="lang:default decode:true "&gt;pbx*CLI&amp;gt; &amp;lt;b&amp;gt;dongle ussd dongle0 *923#&amp;lt;/b&amp;gt;&lt;/pre&gt;
</description>
</item>

<item>
<title>Elastix обработка USSD и SMS и отправка на почту</title>
<guid isPermaLink="false">55</guid>
<link>https://www.sorex.org/?go=all/elastix-obrabotka-ussd-i-sms-i-otpravka-na-pochtu/</link>
<pubDate>Tue, 13 Apr 2021 10:28:03 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/elastix-obrabotka-ussd-i-sms-i-otpravka-na-pochtu/</comments>
<description>
&lt;p&gt;Добавляем Dilaplan:&lt;/p&gt;
&lt;pre class="lang:default decode:true"&gt;[from-gsm]
exten =&amp;gt; sms,1,Verbose(Incoming SMS from ${CALLERID(num)} ${SMS})
exten =&amp;gt; sms,n,System(/usr/bin/php /etc/asterisk/sms.php ${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DATACARD} — ${CALLERID(num)}: ${SMS_BASE64})
exten =&amp;gt; sms,n,Hangup()

exten =&amp;gt; ussd,1,Verbose(Incoming USSD: ${USSD})
exten =&amp;gt; ussd,n,System(/usr/bin/php /etc/asterisk/ussd.php ${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DATACARD}: ${USSD_BASE64})
exten =&amp;gt; ussd,n,Hangup()

exten =&amp;gt; s,1,Set(CALLERID(all)=${CALLERID(num)})
exten =&amp;gt; s,n,Set(CALLERID(num)=8${CALLERID(num):2})
exten =&amp;gt; s,n,goto(from-trunk,${DONGLEIMEI},1)&lt;/pre&gt;
&lt;p&gt;И два скрипта в систему&lt;/p&gt;
&lt;p&gt;sms.php:&lt;/p&gt;
&lt;pre class="lang:default decode:true "&gt;&amp;lt;?php

$sms=base64_decode($argv[6]);
//var_dump($argv);
$smsok=$argv[1].» «.$argv[2].» «.$argv[5].» «.$sms;
$smsok = str_replace(’«’, ’’, $smsok);
$smsok = str_replace(„’“, „„, $smsok);
$smsok = preg_replace („/[^а-яА-Я0-9a-zA-z\s\(\)\[\]\-\:\*\.\,\%\$\@\+\-\{\}\?\&amp;gt;\&amp;lt;\#\^\;\=\_\№]/u“,““,$smsok);
$cmd=»echo $smsok | mail -s ’Incoming SMS from $argv[5]’ admin@mail.ru«;
exec($cmd);
$cmd=»echo $smsok &amp;gt;&amp;gt; /var/log/asterisk/sms.txt«;
exec($cmd);
?&amp;gt;
&lt;/pre&gt;
&lt;p&gt;и ussd.php:&lt;/p&gt;
&lt;pre class="lang:default decode:true "&gt;&amp;lt;?php
$sms=base64_decode($argv[5]);
var_dump($argv);
$smsok=$argv[1].» «.$argv[2].» «.$sms;
$smsok = str_replace(’«’, ’’, $smsok);
$smsok = str_replace(„’“, „„, $smsok);
$smsok = preg_replace („/[^а-яА-Я0-9a-zA-z\s\(\)\[\]\-\:\*\.\,\%\$\@\+\-\{\}\?\&amp;gt;\&amp;lt;\#\^\;\=\_\№]/u“,““,$smsok);
$cmd=»echo $smsok | mail -s ’Incoming USSD’ admin@mail.ru«;
exec($cmd);
$cmd=»echo $smsok &amp;gt;&amp;gt; /var/log/asterisk/ussd.txt«;
exec($cmd);
?&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Добавляем автопроверку баланса и отправку на почту каждый день в 22-00:&lt;/p&gt;
&lt;p&gt;crontab -e&lt;/p&gt;
&lt;p&gt;00 22 * * * /usr/sbin/asterisk -rx «dongle ussd dongle0 *105#»&lt;/p&gt;
</description>
</item>

<item>
<title>Elastix «Шепот» соседа через chanspy</title>
<guid isPermaLink="false">54</guid>
<link>https://www.sorex.org/?go=all/elastix-shepot-soseda-cherez-chanspy/</link>
<pubDate>Tue, 13 Apr 2021 10:27:29 +0000</pubDate>
<author>sorex</author>
<comments>https://www.sorex.org/?go=all/elastix-shepot-soseda-cherez-chanspy/</comments>
<description>
&lt;p&gt;«Шепот» — это когда «Опытный сотрудник» подключается к диалогу «Клиент» — «Молодой сотрудник» и помогает молодому вести диалог. «Опытного», естественно, слышит только молодой — клиенту незачем знать об этом.&lt;/p&gt;
&lt;p&gt;На удивление, гугломашина выдала направление «подумать» далеко не на первой ссылке. В сборке с вебмордой FreePBX данный механизм делается внедрением в файл &lt;u&gt;&lt;b&gt;extensions_override_freepbx.conf&lt;/b&gt;&lt;/u&gt; следующих строк:&lt;/p&gt;
&lt;pre&gt;&lt;code class="bash hljs"&gt;[app-chanspy]
exten =&amp;gt; &lt;span class="hljs-number"&gt;555&lt;/span&gt;,&lt;span class="hljs-number"&gt;1&lt;/span&gt;,Macro(user-callerid)
exten =&amp;gt; &lt;span class="hljs-number"&gt;555&lt;/span&gt;,&lt;span class="hljs-number"&gt;2&lt;/span&gt;,Authenticate(&lt;span class="hljs-number"&gt;1234&lt;/span&gt;)
exten =&amp;gt; &lt;span class="hljs-number"&gt;555&lt;/span&gt;,&lt;span class="hljs-number"&gt;3&lt;/span&gt;,Read(SPYNUM,agent-newlocation)
exten =&amp;gt; &lt;span class="hljs-number"&gt;555&lt;/span&gt;,&lt;span class="hljs-number"&gt;4&lt;/span&gt;,ChanSpy(SIP/&lt;span class="hljs-variable"&gt;${SPYNUM}&lt;/span&gt;,wqv(-&lt;span class="hljs-number"&gt;1&lt;/span&gt;))
;--== end of [app-chanspy] ==--;
&lt;/code&gt;
&lt;/pre&gt;
&lt;p&gt;Механизм подменяет собой штатный ChanSpy. Пользоваться просто: опытный набирает 555, вводит пароль (1234), вводит внутренний номер «молодого» и включается в разговор.&lt;/p&gt;
</description>
</item>


</channel>
</rss>