SCROLL

В работе имеется гипервизор VMware vSphere Hypervisor 6.5 с которого понадобилось экспортировать виртуальную машину для последующего его импорта в VirtualBox.

 

Просто и удобно это можно сделать при помощи консольной утилиты VMware OVF Tool.

 

Скачиваем VMware Open Virtualization Format Tool с сайта VMware и устанавливаем. Запускаем командную строку от администратора и переходим в каталог установленной программы:

cd C:\Program Files\VMware\VMware OVF Tool

 

Исходные данные для выполнения операций:

  • Хост VMware — 10.10.16.98
  • Имя VM — test_vm
  • Директория экспорта OVF — D:\Temp

 

Экспортируем VM в OVF файл командой (потребуется ввод логина\пароля для доступа на Хост VMware):

ovftool.exe vi://10.10.16.98/test_vm "D:\Temp"
Enter login information for source vi://10.10.16.98/
Username: root
Password: *********
Opening VI source: vi://root@10.10.16.98:443/test_vm
Opening VI source: vi://root@10.10.16.98:443/test_vm
Opening OVF target: D:\Temp
Writing OVF package: D:\Temp\test_vm\test_vm.ovf
Transfer Completed
Completed successfully

Столкнулся недавно с задачей по маршрутизации звонков между несколькими FreePBX соединенными SIP-транками. Необходимо вызов пришедший из одного SIP-транка на определенный номерной план передать в другой SIP-транк.

 

Имеется три АТС на базе FreePBX (13, 14) — FreePBX «A» (номерной план 1ХХ), FreePBX «B» (номерной план 2ХХ), FreePBX «C» (номерной план 3ХХ). Которые соединены между собой SIP-транками следующим образом:

FreePBX «A» <—-SIP TRUNK «A»—-> FreePBX «B» <—-SIP TRUNK «B»—-> FreePBX «C»

 

Для наглядности рассмотрим к примеру ситуацию когда необходимо дозваниваться с FreePBX «A» (1ХХ) до абонентов находящихся в FreePBX «С» (3ХХ) и в обратном направлении.

 

Можно конечно решить задачу соединив отдельным SIP-транком  FreePBX «A» и FreePBX «С», но рассмотрим другой вариант, когда к примеру нет возможности соединить их на прямую, тогда в этом случае посредником для звонков будет выступать FreePBX «B», т.к. он имеет связь по SIP-транку с FreePBX «С» и FreePBX «A».

По производственной необходимости понадобилось вычислять хеши файлов по ГОСТ 34.11-2012.

 

Сделать это можно утилитой которая предоставляет КриптоПРО (Вычисление хэшей с использованием КриптоПро CSP 4.0 по ГОСТ 34.11-2012). Она прекрасно справляется со своей задачей, но она консольная, т.е. рядовому пользователю будет проблематично и не удобно ей пользоваться.

 

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

 

Принцип работы программы простой, по кнопке «Open» выбираете файлы для которых необходимо вычислить хеш сумму и дожидаетесь результата. Результат вычисления будет отображен ниже. По кнопке «CopyToClipboard» можно скопировать все содержимое в буфер обмена.

В работе имеется связка Asterisk 16.3.0 + FreePBX 14.0.11 и два SIP-провайдера. Задался вопросом как модифицировать/изменить номер телефона (CallerID) при входящем звонке, устанавливая префикс 8 в любом случае. Мне нужно это для удобства обратного набора, на поступивший внешний звонок.

 

В моем случае один SIP-провайдер отдает номер телефона с префиксом 7, прим. 7800-800-80-80 (7XXXXXXXXXX), а другой вообще без префикса, прим. 800-800-80-80.

Чтобы исправить это, нам  необходимо немного модифицировать dialplan, внеся в файл конфигурации /etc/asterisk/extensions_custom.conf следующий код:

[from-pstn-custom]
exten => _X.,1,ExecIF($[${VALID_EXTEN(fix-cid,${CALLERID(num)})}]?Gosub(fix-cid,${CALLERID(num)},1))

[fix-cid]
; Входящий номер с кодом 7
exten => _7XXXXXXXXXX,1,Set(CALLERID(num)=8${CALLERID(num):1})
exten => _7XXXXXXXXXX,n,Return()

; Входящий номер без кода страны
exten => _XXXXXXXXXX,1,Set(CALLERID(num)=8${CALLERID(num)})
exten => _XXXXXXXXXX,n,Return()

Для простого и удобного мониторинга сетевых принтеров, была написана программа «Мониторинг состояния картриджей в принтерах». Данная программа имела ряд изъянов в функциональном плане, о чём свидетельствуют комментарии в статье к программе.

 

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

 

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

 

[stextbox id=’warning’]UPD 1 Выпущена версия 1.0.0.2. Добавлена возможность выбора нескольких файлов, возможность выбора изменять только дату или время[/stextbox]

Время от времени, на работе сталкиваюсь с просьбами от коллег в помощи изменении информации о дате и времени создания файла. Поэтому для пользователей написал простую утилитку по смене сведений в файле о «Создании», «Изменении» и последнего «Доступа» к нему.

 

Принцип работы утилиты прост, как рубль двадцать — открываем необходимый файл (Open File), выставляем требуемую дату и время, отмечает галочками интересующие нас пункты и нажимаем «Change timestamp»:

Скачать “Timestamp Changer” chg_timestamp_v.1.0.0.2.zip – Загружено 457 раз – 664,82 КБ

На блейд-сервер Dell PowerEdge M620 входящий в состав шасси VRTX, установил VMware ESXi 6.5. После установки в vSphere не обнаружились не одного дискового хранилища, которые имеются в шасси VRTX.

 

Проблема заключается в отсутствие необходимого драйвера для контроллера Shared PERC 8 Mini. Для решения проблемы, нужно всего навсего уставить отсутствующий драйвер в систему VMware ESXi 6.5

 

Скачиваем драйвер:

Скачать “VMW-ESX-6.5.0-dell_shared_perc8-06.806.90.00-6990897.zip” VMW-ESX-6.5.0-dell_shared_perc8-06.806.90.00-6990897.zip – Загружено 740 раз – 191,64 КБ

[stextbox id=’warning’]Либо с официального сайта VMWare, в случае если имеется учетная запись там.[/stextbox]

 

Копируем из скачанного архива VIB (dell-shared-perc8-06.806.90.00-1OEM.650.0.0.4598673.x86_64.vib) или автономный пакет (VMW-ESX-6.5.0-dell_shared_perc8-06.806.90.00-offline_bundle-6990897.zip) на сервер VMware ESXi в папку (/tmp). Для примера как это можно сделать, посмотрите статью

Не редко случается когда после заведения нового пользователя в Exchange, остальные пользователи жалуются что они не могут найти нового в своей адресной книге Outlook. Это случается потому что Автономная адресная книга (OAB) обновляется в течении суток и поэтому новый пользователь и не появляется в адресной книге у других пользователей.

 

Рассмотрим как принудительно обновить автономную адресную книгу (OAB) на Exchange 2010 SP3.

 

Заходим в Консоль управления Exchange — Конфигурация организации — Почтовый ящик — Автономная адресная книга. Обновляем Автономную адресную книгу (OAB):

Или через консоль Exchange:

Get-OfflineAddressBook | Update-OfflineAddressBook

Обратил внимание что не обновляется автономная адресная книга в Exchange 2010 SP3.

Маленькая заметка для себя, как включить доступ root пользователя по ssh в Linux.

 

По-умолчанию ssh вход для пользователя root в Linux отключен, но для решения некоторых задач появляется необходимость в предоставлении доступа для root пользователя по ssh.

 

Чтобы включить ssh вход для пользователя root в Linux, необходимо в файле /etc/ssh/sshd_config изменить строку:

PermitRootLogin without-password
или 
#PermitRootLogin prohibit-password

на строку:

PermitRootLogin yes

 

Перезапускаем ssh службу:

/etc/init.d/ssh restart

В почтовом сервере Exchange 2010 при запуске тестовых команд, таких как Test-OutlookWebServices или Test-EcpConnectivity, требуется учетная запись Exchange Test.

 

Создается при помощи скрипта New-TestCasConnectivityUser.ps1 из каталога скриптов Exchange 2010 C:\Program Files\Microsoft\Exchange Server\V14\Scripts.

 

При попытке выполнить скрипт New-TestCasConnectivityUser.ps1, я получил ошибку Mailbox could not be created. Verify that OU ( Users ) exists and that password meets complexity requi rements., которая означает, что не может быть найден OU Users, либо бы заданный пароль не соответствует требованиям сложности:

[PS] C:\Program Files\Microsoft\Exchange Server\V14\scripts>.\new-TestCasConnectivityUser.ps1

Введите временный безопасный пароль для создания тестовых пользователей. Если установлен диспетчер SCOM, в целях обеспе
чения безопасности будет регулярно производиться автоматическое изменение пароля. Если диспетчер SCOM не установлен, па
роль необходимо изменять вручную.
Ввести пароль: **********
Создать тестовых пользователей: CAS1.domain.local
Нажмите сочетание клавиш CTRL+Break для выхода или клавишу ВВОД для продолжения.:
CreateTestUser : Mailbox could not be created. Verify that OU ( Users ) exists and that password meets complexity requi
rements.
C:\Program Files\Microsoft\Exchange Server\V14\scripts\new-TestCasConnectivityUser.ps1:267 знак:31
+ $result = CreateTestUser <<<< $exchangeServer $mailboxServer $securePassword $OrganizationalUnit $UMDialPlan $
UMExtension $Prompt
+ CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,CreateTestUser

 

Столкнулся с проблемой доступа из локальной сети к развернутому экземпляру MSSQL Server Express. Рассмотрим как настроить доступ к экземпляру SQL.

 

Запускаем SQL Server Configuration Manager. Переходим в Сетевая конфигурация SQL Server - Протоколы для SQLEXPRESS (где SQLEXPRESS — имя экземпляра SQL Server).

 

Включаем протокол TCP/IP и переходим в его свойства, во вкладку IP-адреса. Опускаемся к пункту IPAll. Удаляем значение в поле TCP Dynamic Ports, оставляем поле пустым, а в TCP Port пишем 1433:

Случилось так что появилась необходимость переименовать компьютер на котором развернут MSSQL Server. Рассмотрим как выполнить эту процедуру корректно.

Частенько сталкиваюсь с необходимостью конвертирования сертификата .crt, .ca-bundle в формат PFX. И каждый раз пытаюсь вспомнить как это сделать в Linux посредством OPENSSL.

 

Ниже представленной командой можно легко выполнить конвертацию:

openssl pkcs12 -export -out doman_com.pfx -inkey doman_com.key -in doman_com.crt -certfile doman_com.ca-bundle

[stextbox id=’warning’]

.pfx — это выходной файл PFX
.key — это файл ключа, используемый для создания запроса (CSR)
.crt — это файл сертификата (CRT, PEM), полученный от центра сертификации
.ca-bundle — это сертификат от центра сертификации, который мы конвертируем в PFX

[/stextbox]

Используя утилиту SMSTOOLS3 (развернутую по этой статье) для отправки/приема SMS сообщений, я столкнулся со сложностью отправки SMS сообщений с разных подключенных GSM модемов.

 

По-умолчанию в SMSTOOLS3, имеется скрипт отправки SMS сообщений (/usr/local/bin/sendsms), который отправляет SMS сообщения с первого устройства указанного в файле конфигурации.

Ниже рассмотрим как исправить изъян скрипта в отсутствие выбора GSM модема для отправки SMS сообщения, путем доработки его.

 

Рассмотрим как настроить два GSM модема (прим. GSM1, GSM2), для возможности отправки с обоих SMS сообщений. В конфигурационном файле (/etc/smsd.conf), указываем используемые GSM модемы через запятую (devices = GSM1, GSM2), добавляем секцию описания очередей ([queues]) для каждого GSM модема и в каждую секцию описания GSM модема указываем какая очередь используется для того или иного GSM модема.

На системных дисках пользовательских ПК, закончилось место. В ходе анализа куда пропало свободное место, обнаружилось что все свободное место было занято, большим количеством файлов cab_xxxx в папке C:\Windows\Temp. Если удалить их, то через какое то время они снова там появляются и съедают все свободное место на диске.

 

Проблема оказалась в утилите makecab.exe, которая архивирует логи из C:\Windows\Logs\CBS и не умеет работать с файлами больше 2 Гб. После неудачной попытки утилиты заархивировать большой лог-файл, остается временный файл cab_xxxx и каждые 30-60 минут появляется новый, после каждой попытке архивации. В итоге этот бесконечный цикл приводит к переполнению диска.

 

Для решения просто удаляем старые логи из каталога C:\Windows\Logs\CBS и после этого очищаем C:\Windows\Temp.

Недавно столкнулся с интересной проблемой при отправке сообщения на внешний e-mail из OTRS (Open-source Ticket Request System) при использовании почтового сервера на базе MS Exchange 2010 SP3.

 

На почтовом сервере MS Exchange 2010 для OTRS создан отдельный Соединитель получения (HubTransport), в котором разрешены анонимные подключения.

 

Все отлично работает при отправки сообщений из OTRS на внутренние e-mail адреса, но при попытке отправить сообщение на какой либо внешний e-mail (к примеру мне понадобилось подключить агента к OTRS, у которого нет внутри корпоративного e-mail) я получаю ошибку 550, 5.7.1 Unable to relay!.

Однажды при попытке посмотреть какие «Виртуальные хосты» сейчас активны на Веб-сервере apache, я получил следующие ошибки в выводе:

В очередной раз после миграции ВМ Debian Linux с одного хоста VMWare на другой, при загрузке системы наблюдал множественные ошибки:

blk_update_request: I/O error, dev fd0, sector 0
hv_vmbus: probe failed for device vmbus_10 (-19)

 

Ошибка связана с попытками подключить Floppy дисковод, который в ВМ отсутствует. Решается все довольно просто, путем отключения драйвера Floppy в системе.

 

Выполняем следующие команды в терминале:

echo "blacklist floppy" | sudo tee /etc/modprobe.d/blacklist-floppy.conf
sudo rmmod floppy
sudo update-initramfs -u

 

Для применения изменений перезагружаем систему.

Задался недавно вопросом, как можно из консоли Linux, подключится к удаленной машине с ОС Windows на борту и выполнить на ней какую либо команду (прим. «ipconfig») или запустить за ранее написанный скрипт (*.bat, *.ps1).

 

В ходе поиска решения данного вопроса, был найден инструмент Winexe, который по сути является аналогом psexec под Windows. Winexe работает в связке с Samba, поэтому последняя должна присутствовать в системе.

 

Из замеченных неудобств работы с Winexe, хочу отметить что для корректного отображения «кириллицы», необходимо конвертировать вывод в UTF-8 из cp866/cp1251. Так же в случае запуска на удаленной машине «cmd», «powershell» не работают клавиши курсора, «backspace» и возможен задвоенный ввод символов.

 

Установка будет производится на Debian 9 Stretch. В ходе установки будет использоваться Fork пакета Winexe 1.1 (https://sourceforge.net/u/mstowe/winexe/ci/v0.2/tree/), а так же версия Samba 4.5.16 из стандартные репозиториев Debian.