Saturday 27 August 2022

Обратный звонок.

Всем привет. 

Еще одна почемучка на злобу дня.

- Вадим Николаевич?

- Нет, это не Вадим Николаевич. А кто спрашивает?

- Это Нина.

- Нина? Почему у вас такой странный голос? И кто такой  Вадим Николаевич?

- Странный голос? Мне  Вадим Николаевич звонил с этого номера. Простите, а Вы кто?

- Все-таки странный у вас голос. Неожиданно тонкий. Похоже Вы огорчены чем-нибудь?

- Не знаю. И все же кто говорит со мной?

- Вы меня не знаете, скоре я Вас тоже. А Вадим Николаевич Вам кто?

— Наверное, я все-таки ошиблась номером, — сказала Нина. — И я Вас не знаю.

— Ок, я точно не Вадим Николаевич! Я Олег. Подойдет?

— Ну вот! — Нина вздохнула, будто ей жаль было прекращать разговор. — Теперь еще и Олег.

— Простите, — я извинился и дал отбой связи.

Я не сразу набрал ответный вызов. Конечно, я не  Вадим Николаевич. Какое у меня может быть дело к неизвестной Нине? Никакого. Просто хотелось узнать, откуда она. Есть ли у нее дом, а если она не дома как многие сейчас, то это ничего не меняет. 

Friday 26 August 2022

WinForms альтернативи.

Всім привіт.

Сьогодні поговоримо про альтернативи створення WinForms.

WPF vs ShowUI

Windows Presentation Foundation (WPF) є іншим, новішим засобом створення GUI в .NET. Ми не говоримо про інструмент точно так само, як PowerShell Studio для WPF, але ви можете не відчувати того що він вам потрібен. WPF не створює графічний інтерфейс програмно, як це робить WinForms. Натомість визначення графічного інтерфейсу  міститься у файлі XML (технічно конкретний формат XML називається XAML, для Extensible Application Markup Language). Ви можете отримати будь-яку з  безкоштовних «Express» версій Visual Studio та використовувати її вбудований інструмент для створення форм WPF, який дуже схожий на PowerShell Studio, для створення файлу XAML. Тоді просто скажемо PowerShell (ну, ви скажете .NET) завантажити XAML і щось з ним зробити. Наступний код демонструє приклад того, про що ми говоримо.


Wednesday 24 August 2022

Output data by Poweshell Studio in runtime.

Hi all.

If you newbee coder in Poweshell Studio you need simple method for output debug information in runtime. So I can present some variants for you.


1. You can easy test your form by sending output to Out-String and then Write-Host. For

example, in your form you could end up with a line like this:

<code to get data> | Out-String | Write-Host


2. So the next it's very popular method for output data in WinForms. It's Out-GridView, I wrote about it super commandlet early:

$entries = Get-EventLog -Computer $ComputerName.Text -Log $EventLogName.SelectedItem

$entries | Out-GridView


3. If you don’t want to create additional forms, there are several controls you can use within the form itself to display your results. You can use a Label control for a simple one-line result. Just set the Text property:

$labelDeviceID.Text=$data.deviceID

$labelFreespace.Text=$data.FreeGB

$labelSize.Text=$data.SizeGB

$labelVolume.Text=$data.Volumename

Sure, don't forget to set property $label.Visible = False for finishing, or remove all debug's labels from your Form before Build.


4. You could use a RichTextBox control. This control has some interesting visual properties you can experiment with. If you use this control, set the font to a fixed-width font like Consolas, especially if you want to display PowerShell output. Both of these controls expect strings, so you might need to reformat any PowerShell output by piping it to Out-String:

#clear any existing text box values

$RichTextBoxResults.Clear()

$data=<my command>

$RichTextBoxResults.Text=$data | Out-String


5. And the last option, although the most complicated of the bunch, is a DataGridView control. This is like what you get when you pipe results to Out-Gridview, except the table is in your form. You put data in the control via its DataSource property, which is an array of binding values. Fortunately, PowerShell Studio has a helper function called Update-DataGridView that makes it easier to populate it. Here’s a code snippet of what that might look like:

#clear the grid before

$datagridview1.ClearSelection()

#get data

$data=Get-WmiObject Win32_LogicalDisk -Filter "drivetype=3" -ComputerName $Computername.Text | Select "DeviceID",@{Name="SizeGB";Expression={"{0:N2}" -f ($_.Size/

1GB)}}, @{Name="FreeGB";Expression={"{0:N2}" -f ($_.Freespace/1GB)}},"VolumeName"

#add the data to the control

Update-DataGridView -DataGridView $datagridview1 -Item $data


See you later.

Tuesday 23 August 2022

Измеряем пропускную способность сети с помощью IPERF3.

Всем привет.

Утилита IPERF3 позволит убедиться что ваша система не имеет узких мест.

IPERF3 можно использовать для выявления узких мест или проблем, которые могут возникнуть во время передачи данных по сети. IPERF3 - это бесплатный инструмент с открытым исходным кодом, который широко используется для измерения максимально достижимой пропускной способности между двухточечными соединениями и может использоваться с протоколами TCP и UDP.

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

С чего начать?

Скопируйте утилиту IPERF3 на хосты, которые вы хотите протестировать (для Windows нужна еще будет cygwin1.dll). Обеcпечьте себе доступ к обеим машинам, на которых вы будете запускать тесты. Убедитесь, что вы разрешаете трафик UDP (чтобы гарантировать, что мы сможем использовать ускорение).

Синтаксис командной строки IPERF3 прост. Общий синтаксис для запуска теста описан ниже:

  • команды на стороне сервера: iperf3 -s [ опции ]
  • команды на стороне клиента: iperf3 -c [ опции ]

Ниже перечислены некоторые из вариантов:

Общие команды IPERF3:

-f, –format [кмКМ]

Буква, указывающая формат для печати чисел пропускной способности. Поддерживаемые форматы:

'k' = Кбит / сек 'K' = КБайт / сек

'm' = Мбит / с 'M' = МБит / с

-J, –Json вывод в формате JSON.

Серверные команды IPERF3:

-F, -имя файла. На стороне сервера: чтение из сети и запись в файл, а не выбрасывание данных.

Клиентские команды IPERF3:

-F, -имя файла. На стороне клиента: чтение из файла и запись в сеть вместо использования случайных данных;

-u, –udp Используем UDP, а не TCP.

-b, – пропускная способность n [км]. Установите целевую полосу пропускания на n бит / сек (по умолчанию 1 Мбит / сек для UDP, без ограничений для TCP). Если имеется несколько потоков (флаг -P), ограничение полосы пропускания применяется отдельно к каждому потоку.  Обязательно при тестировании UDP.

-R, – реверс. Запуск в обратном режиме: сервер отправляет, клиент получает. Что очень удобно, нам не надо переключаться с клиента на сервер фактически. 

-t, –время n. Время в секундах для передачи. По умолчанию 10 секунд.

Saturday 20 August 2022

Про думку словами.


Всім привіт.

Підсумок тижня - люди які кажуть що "мені довго писати, я краще словами" словами висловлюють думку не краще! Наприклад в Teams: в одного 5 слів за хвилину, в іншого 35-ть. А результат таких перемовин однаковий - на картині кольори переплутані, та повно білих плям!(

Я вважаю, що поки пишеш, то є час подумати та сформулювати думку правильно та гарно. Більш того - ти сам бачиш, як ти говориш. А коли просто говориш - вилетіло і тютю :)

Також я впенений що технічні питання взагалі не варто обговорювати усно! Щось недочув, щось не зрозумів, і після ніяких доказів. Також іноді дратують колеги які саме телефонують в Teams назалежно від того який в тебе статус: що "зайнятий", що "нема на місці"...

Потрібно формувати культуру спілкуванння онлайн - якщо маєш статус "Зайнятий", то тебе через чат спитають чи можно зателефонувати зараз або пізніше. Можно навіть номер тікета вказати, щоб було наперед зрозуміло з якого питання буде звернення. Тоді в тебе є можливість або відповісти що "за 10 хвилин" або направити людину до іншого спеціаліста тощо.  Або з цього приводу можно створити мітінг, щоб зарезервувати час в календарі собі та колезі.

Але більше за все дивують екземпляри які на твоє письмове звернення тобі телефонують в Teams або телефон та починають діалог з претензії  "Що!? Хіба не можно було мені зателефонувати?"

То ж шануймося.

Слава Україні!

Saturday 13 August 2022

Конфигурация ILO.


Всем привет.

В процесс администрирования для iLO актуально две вещи - это пароль администратора и ее IP-адрес. И то и другое можно потерять или забыть поэтому стоит знать как же его узнать или поменять.

Вы можете сбросить пароль администратора iLO непосредственно из запущенной операционной системы. Однако это в том случае если у вас есть доступ к ОС Windows, а не самой ILO!

Для этого используется официальная утилита HPE - hponcfg или HP Online iLO Configuration для Windows (и вам потребуется предварительная установка драйвера iLO Management Interface Driver в операционной системе, которая запущена на сервере. Версия iLO для драйвера важна).

На самом деле утилита hponcfg позволяет из локальной командной строки на сервере изменить любые настройки iLO без перезагрузки сервера (выполнить Reset iLO): сетевые настройки интерфейса iLO (IP адрес, шлюз, подсеть), импортировать/экспортировать и сбросить конфигурацию.

Сначала рекомендуется сохранить текущую конфигурацию ILO в xml-файл:

hponcfg.exe /w current_config.xml

Затем создайте новый файл reset_admin_password.xml с текстом:

<ribcl VERSION="2.0">

<login USER_LOGIN="Administrator" PASSWORD="password">

<user_INFO MODE="write">

<mod_USER USER_LOGIN="Administrator">

<password value="NewPassword"/>

</mod_USER>

</user_INFO>

</login>

</ribcl>

Чтобы применить к iLO конфигурацию с новым паролем, выполните:

hponcfg.exe /f reset_admin_password.xml /l hplog.txt

Thursday 11 August 2022

Профессионал и Любитель.

Всем привет. 

Каждый Профессионал был когда то Любителем.

Тонкая грань перехода из одного качества в другое подчас незаметна. Чем больше и глубже Ваше увлечение любимым делом, тем чаще  происходит подобное! Вам знакомо это чувство? Мультимедиа, Сети, Безопасность, Виртуализация и Офис-онлайн. Именно в этих сферах я нахожу Творчество в большей степени. Желаю Вам делать это со мной вместе!

Сеть.

Давным давно одного дяденьку посетила мысль, что можно было бы свой компьютер каким то образом соединить с компьютером своего друга, файлами меняться. Соединили. А можно еще и соседа ? А почему нет! Соединили! Глянули – сетка! И пошло поехало – с кем сетка, как соединять, какое устройство - модем, сетевой адаптер, по какому протоколу вести обмен, на какой скорости обмен. Ну и как водится этим же надо управлять – так кроме компьютеров появилось сетевое оборудование, как пассивное так активное. Активное оборудование еще называют умным, ну насколько оно умнее администратора его настраивающего еще надо глянуть. Все – сегодня сети везде, не в сети может быть только калькулятор и то если он прошлогоднего выпуска. В зависимости от своих текущих интересов вы можете не интересоваться сетями, но 100% что вы их так или иначе используете в своей жизни.

Безопасность.

Как никогда информационная безопасность сегодня очень актуальна. Чем больше у вас информации, тем больше шансов ее потерять, иногда навсегда. Не буду вас пугать злыми хакерами, которые только и думают как эту информацию у вас свистнуть. Хакеры были есть и будут, но далеко не все из них профи, а профи за всем подряд не охотятся. Поэтому соблюдайте правила «личной гигиены» на своем локальном компьютере, а если он еще и в сети (ну куда же без нее), защищайтесь и на сетевом уровне. К теме информационной безопасности приходишь самой собой как только начинаешь вникать в Сети. Поэтому и я Безопасностью занимаюсь почти столько же сколько и сетями. Вот уж действительно можно сказать что это серьезно, это интересно и это очень важно!

Saturday 6 August 2022

Мой блог в глазах McAfee.

Привет привет.

На выходные меня порадовал читатель тем что мой блог попал в категорию McAfee. Примерно вот так кричит его браузер Chrome на любую страничку моего блога.



Печалька. Как вы понимаете, в этом повинен не сам браузер, а плагин McAfee который решил взять на себя функцию защиты пользователя от..., вот тут я не знаю от чего ибо: 

  • мой блог вполне успешно у него же открывается в Firefox;
  • мой блог точно не содержит никакого рotential illegal software. Это Блог, а не репозиторий софта!

Разумеется узнать на что именно у McAfee такая реакция невозможно. Могу предположить что такое поведение либо от блока рекламы, либо реакция на перекрестные ссылки на мои же сайты в ru-зоне. В любом случае борьба с этим бесполезна, потому как время от времени рейтинг блога повышается в глазах McAfee). Ах да, McAfee теперь под крышей Trellix. В общем я вас предупредил.

Удачи.

Thursday 4 August 2022

Оффлайн установка RSAT в Windows 10.

Всем привет.

Набор компонентов RSAT (Remote Server Administration Tools/Средства удаленного администрирования сервера) позволяет удаленно управлять серверными ролями и компонентами на серверах Windows Server с обычной рабочей станции. В RSAT входят как графические MMC оснастки, так и утилиты командной строки, и модули PowerShell. Вы можете установить RSAT как на десктопных версиях Windows 10 или 11, так и на платформе Windows Server. В этой статье мы покажем, как установить RSAT в Windows 10 и Windows 11, и в Windows Server 2022/2019/2022 в онлайн и в офлайн режиме через Feature on Demand из графического интерфейса Windows и через консоль PowerShell.

Обычно советуют ставить RSAT либо через отключение WSUS либо GPO. Можно попробовать для начала установить RSAT с временным отключением WSUS:

$UseWUServer = Get-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "UseWUServer" | Select-Object -ExpandProperty UseWUServer

Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "UseWUServer" -Value 0

Restart-Service "Windows Update"

Get-WindowsCapability -Name "RSAT*" -Online | Add-WindowsCapability –Online

Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "UseWUServer" -Value $UseWUServer

Restart-Service "Windows Update"

Можно попрoбовать правкой GPO через gpedit.msc:

Computer Configuration > Policies > Administrative Templates >System > Specify settings for optional component installation and component repair:

Set it to Enabled

Alternate source file path: <пусто>

Never attempt to download payload from Windows Update: Disabled

Download repair content and optional features directly from Windows Update instead of Windows Server Update Services (WSUS): Enabled

Get-WindowsCapability -Name "RSAT*" -Online | Add-WindowsCapability –Online

Tuesday 2 August 2022

Пользуемся netsh.

Всем привет.

Несмотря на засилие Powershell утилита netsh все еще используется для настройки сетевых соединений в Microsoft Windows Server. Ниже я покажу парочку команд которые могут быть вам полезны.

Проверяем все правила брандмауэра Windows:

netsh advfirewall firewall show rule name=all

Безусловно, увидеть вообще все правила брандмауэра Windows бывает полезно. Однако чаще Вам нужны будут только те правила, которые относятся к текущей учетной записи пользователя операционной системы: 

netsh advfirewall show currentprofile

Также с помощью утилиты netsh можно проверить состояние всего сетевого интерфейса системы: 

netsh interface show interface

Вам могут понадобиться для работы индексы всех сетевых интерфейсов системы - как отключенных, так и подключенных: 

netsh interface ip show interfaces

Помимо всего прочего, с помощью команды netsh можно проверить все профили беспроводных соединений: 

netsh wlan show profile

Кроме того, с помощью netsh можно увидеть все доступные беспроводные соединения: 

netsh wlan show networks

Версия на печать

Популярное