<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Заметки на полях</title>
    <link>https://shapkin.me/</link>
    <description>Recent content on Заметки на полях</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright>
    <lastBuildDate>Mon, 14 Apr 2025 16:04:31 +0300</lastBuildDate>
    <atom:link href="https://shapkin.me/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Создаем горячую клавишу в Excel</title>
      <link>https://shapkin.me/posts/excel-hotkey/</link>
      <pubDate>Mon, 14 Apr 2025 16:04:31 +0300</pubDate>
      <guid>https://shapkin.me/posts/excel-hotkey/</guid>
      <description>&lt;p&gt;Работая с таблицами в Excel бывает часто надо выделять какие-то строки или ячейки в один и тот же цвет и удобнее было бы иметь для этого горячую клавишу.&lt;/p&gt;&#xA;&lt;p&gt;Запускаем Excel, переходим во вкладку &amp;ldquo;Вид&amp;rdquo; -&amp;gt; &amp;ldquo;Макросы&amp;rdquo; -&amp;gt; &amp;ldquo;Запись макроса&amp;rdquo;, там указываем название, например &amp;ldquo;Заливка желтым&amp;rdquo;, указываем желаемую комбинацию клавиш, я указал &amp;ldquo;Ctrl + Shift + Y&amp;rdquo; для заливки желтым и &amp;ldquo;Ctrl + Shift + U&amp;rdquo; для очистки заливки.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Обязательно выбираем &amp;ldquo;Сохранить в &amp;quot; -&amp;gt; &amp;ldquo;Личная книга макросов&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Литофания</title>
      <link>https://shapkin.me/projects/lithophane/</link>
      <pubDate>Mon, 07 Apr 2025 17:04:44 +0300</pubDate>
      <guid>https://shapkin.me/projects/lithophane/</guid>
      <description>&lt;p&gt;Давно хотел попробовать напечатать изображение по технике литофании.&#xA;Модель генерируется с перепадами высот, чтобы при просветке нужные участки были либо более темными, либо более светлыми.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://shapkin.me/img/008/008-1.jpg&#34; alt=&#34;lithophane&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Маска Krampus</title>
      <link>https://shapkin.me/projects/krampus/</link>
      <pubDate>Wed, 02 Apr 2025 20:24:52 +0300</pubDate>
      <guid>https://shapkin.me/projects/krampus/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Полноразмерная маска, которая одевается на голову, напечатана на 3D принтере под заказ &amp;#x1f60e;.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://shapkin.me/img/007/007-1.png&#34; alt=&#34;Krampus mask&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Печать белым PETG.&#xA;Было много неудач, первый крупный проект за 4 года владения 3D принтером, модель взята отсюда &lt;a href=&#34;https://www.thingiverse.com/thing:3948002&#34; target=&#34;_blank&#34;&gt;https://www.thingiverse.com/thing:3948002&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Самыми сложными частями для принтера оказались две лицевые части, где глазницы.&lt;br&gt;&#xA;То сопло несколько раз забивалось, то фитинги слетали (оба, ender 3 pro, пока еще боуден &amp;#x1f923;) и , пришлось наконец-то заменить их на новые хорошие.&lt;br&gt;&#xA;В сумме в помойку улетело 7 или 8 неудачных отпечатков, фото части таких экземпляров можно посмотреть ниже &amp;#x1f625;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Сборка OpenVPN с патчем XOR в Docker для Debian</title>
      <link>https://shapkin.me/posts/build-openvpn-with-xor-debian/</link>
      <pubDate>Thu, 27 Mar 2025 18:31:58 +0300</pubDate>
      <guid>https://shapkin.me/posts/build-openvpn-with-xor-debian/</guid>
      <description>&lt;p&gt;Этим постом я открою цикл статей по сборке OpenVPN с патчем XOR, установке и настройке сервера OpenVPN.&lt;br&gt;&#xA;Полный список статей спрятан под спойлер.&lt;/p&gt;&#xA;&#xA;&lt;details&gt;&#xA;  &lt;summary&gt;Список статей&lt;/summary&gt;&#xA;  &lt;ol&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://shapkin.me/posts/build-openvpn-with-xor-debian/&#34;&gt;Сборка OpenVPN с патчем XOR в Docker для Debian&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://shapkin.me/posts/build-openvpn-with-xor-windows/&#34;&gt;Сборка OpenVPN с патчем XOR в Docker для Windows&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://shapkin.me/posts/build-openvpn-with-xor-android/&#34;&gt;Сборка OpenVPN с патчем XOR в Docker для Android&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://shapkin.me/posts/openvpn-server-setup/&#34;&gt;Настройка сервера OpenVPN&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Соберем deb пакет для Debian 12 и скопируем его на хостовую машину, чтобы использовать для установки на других системах.&#xA;Первым делом, создаем директорию, в которой будут все наши конфиги:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Как настроить мониторинг срока действия доменов с помощью Grafana и Prometheus</title>
      <link>https://shapkin.me/posts/domain-expiration-days-grafana/</link>
      <pubDate>Wed, 26 Mar 2025 18:20:02 +0300</pubDate>
      <guid>https://shapkin.me/posts/domain-expiration-days-grafana/</guid>
      <description>&lt;p&gt;В этой статье я расскажу, как добавить в систему мониторинга на базе Grafana и Prometheus проверку срока действия домена.&#xA;Мы будем использовать простой Bash-скрипт для проверки даты истечения доменов, Pushgateway для передачи данных в Prometheus и Grafana для визуализации результатов, а все сервисы будут упакованы в docker контейнеры.&lt;/p&gt;&#xA;&lt;p&gt;Установку и настройку &lt;code&gt;prometheus&lt;/code&gt; и &lt;code&gt;grafana&lt;/code&gt; в этом посте рассматривать не будем, предполагается, что они уже установлены.&lt;/p&gt;&#xA;&lt;h3 id=&#34;общая-логика-работы&#34;&gt;Общая логика работы&lt;a href=&#34;#%d0%be%d0%b1%d1%89%d0%b0%d1%8f-%d0%bb%d0%be%d0%b3%d0%b8%d0%ba%d0%b0-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d1%8b&#34; class=&#34;anchor&#34; aria-hidden=&#34;true&#34;&gt;&lt;svg xmlns=&#34;http://www.w3.org/2000/svg&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34;&#xA;      stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xA;      &lt;path d=&#34;M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3&#34;&gt;&lt;/path&gt;&#xA;      &lt;line x1=&#34;8&#34; y1=&#34;12&#34; x2=&#34;16&#34; y2=&#34;12&#34;&gt;&lt;/line&gt;&#xA;   &lt;/svg&gt;&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;Система состоит из нескольких компонентов:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Обо мне</title>
      <link>https://shapkin.me/about/</link>
      <pubDate>Wed, 18 Sep 2024 19:11:48 +0300</pubDate>
      <guid>https://shapkin.me/about/</guid>
      <description>&lt;h2 id=&#34;ит-эксперт-с-фокусом-на-аудит-администрирование-и-оптимизацию-ит-инфраструктуры&#34;&gt;ИТ-эксперт с фокусом на аудит, администрирование и оптимизацию ИТ-инфраструктуры.&lt;a href=&#34;#%d0%b8%d1%82-%d1%8d%d0%ba%d1%81%d0%bf%d0%b5%d1%80%d1%82-%d1%81-%d1%84%d0%be%d0%ba%d1%83%d1%81%d0%be%d0%bc-%d0%bd%d0%b0-%d0%b0%d1%83%d0%b4%d0%b8%d1%82-%d0%b0%d0%b4%d0%bc%d0%b8%d0%bd%d0%b8%d1%81%d1%82%d1%80%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%b8-%d0%be%d0%bf%d1%82%d0%b8%d0%bc%d0%b8%d0%b7%d0%b0%d1%86%d0%b8%d1%8e-%d0%b8%d1%82-%d0%b8%d0%bd%d1%84%d1%80%d0%b0%d1%81%d1%82%d1%80%d1%83%d0%ba%d1%82%d1%83%d1%80%d1%8b&#34; class=&#34;anchor&#34; aria-hidden=&#34;true&#34;&gt;&lt;svg xmlns=&#34;http://www.w3.org/2000/svg&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34;&#xA;      stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xA;      &lt;path d=&#34;M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3&#34;&gt;&lt;/path&gt;&#xA;      &lt;line x1=&#34;8&#34; y1=&#34;12&#34; x2=&#34;16&#34; y2=&#34;12&#34;&gt;&lt;/line&gt;&#xA;   &lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;IT-профессионал с более чем 15-летним опытом в системном администрировании и управлении инфраструктурой.&lt;br&gt;&#xA;Я специализируюсь на аудите и анализе ИТ-инфраструктуры, администрировании серверов и сервисов, автоматизации бизнес-процессов.&lt;br&gt;&#xA;Имею обширные знания в работе с Linux, Windows, VMware, а также в построении и управлении командами.&lt;br&gt;&#xA;За годы работы я создал отдел технической поддержки &amp;ldquo;с нуля&amp;rdquo;, создал и внедрил несколько сервисов для решения задач как своего отдела так и для всей компании.&lt;br&gt;&#xA;Увлекаюсь 3D печатью, 3D моделированием и программированием микроконтроллеров.&lt;br&gt;&#xA;Отец троих детей.🙂&lt;/p&gt;</description>
    </item>
    <item>
      <title>Настройка Vim</title>
      <link>https://shapkin.me/posts/customizing-vim/</link>
      <pubDate>Fri, 30 Jun 2023 13:12:24 +0300</pubDate>
      <guid>https://shapkin.me/posts/customizing-vim/</guid>
      <description>&lt;p&gt;Когда мне надо отредактировать или просто просмотреть какой-либо файл на linux сервере я использую текстовой редактор vim.&#xA;Для удобства пользования, можно создать файл .vimrc в домашней директории пользователя и указать там нужные настройки.&lt;/p&gt;&#xA;&lt;p&gt;За несколько лет использования редактора, я пришел к следующему набору:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;expandtab&lt;/strong&gt; —  Включает замену tab на пробелы&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;smarttab&lt;/strong&gt; — При нажатии tab в начале строки добавляется количество пробелов, указанное в директиве shiftwidth&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;shiftwidth=4&lt;/strong&gt; — Задает количество пробелов в одном tab&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;tabstop=4&lt;/strong&gt; — Задает количество пробелов в одном tab&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;softtabstop=4&lt;/strong&gt; — Задает количество пробелов в одном tab при удалении&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;number&lt;/strong&gt; — Добавляет нумерацию строк&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;syntax on&lt;/strong&gt; — Включает подсветку синтаксиса&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;mouse=i&lt;/strong&gt; — Включает режим вставки (мне обычно нужно для выделения курсором мышки и копирования строк)&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;ignorecase и smartcase&lt;/strong&gt; — Убирает чувствительность к регистру при поиске&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;hlsearch&lt;/strong&gt; — Включает подсветку результатов поиска&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;incsearch&lt;/strong&gt; — Подсветка первого вхождения по поиску&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;encoding=utf8&lt;/strong&gt; — Задает кодировку для работы с файлом&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Итак, чтобы добавить данные настройки пишем в консоли:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Проблемы с дисковой производительностью на ESXi</title>
      <link>https://shapkin.me/posts/vmware-lsi-mr3/</link>
      <pubDate>Fri, 24 Mar 2023 11:16:33 +0300</pubDate>
      <guid>https://shapkin.me/posts/vmware-lsi-mr3/</guid>
      <description>&lt;p&gt;Летом 2022 коллеги начали массово жаловаться на нестабильность работы стендов.&#xA;В процессе изучения была обнаружена проблема с производительностью дисковой подсистемы, которая проявляется только при большой нагрузке.&lt;/p&gt;&#xA;&lt;p&gt;В логах на хостах были такие записи:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;2022-06-27T17:37:29.743Z cpu1:36774)lsi_mr3: mfi_TaskMgmt:254: Processing taskMgmt virt reset for device: vmhba2:C2:T0:L0&#xA;2022-06-27T17:37:29.743Z cpu1:36774)lsi_mr3: mfi_TaskMgmt:258: VIRT_RESET cmd # 328727984&#xA;2022-06-27T17:37:29.743Z cpu1:36774)lsi_mr3: mfi_TaskMgmt:262: ABORT&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Сразу уточню, что используется виртуализация VMware vSphere 6.&lt;/p&gt;&#xA;&lt;p&gt;Версия драйвера который был установлен на моих ESXi хостах&#xA;&lt;code&gt;lsi-mr3 6.605.08.00-7vmw.600.1.17.3029758&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Скрипт генерации клиентского конфига OpenVPN</title>
      <link>https://shapkin.me/posts/script-for-creating-new-openvpn-client/</link>
      <pubDate>Wed, 01 Mar 2023 12:52:01 +0300</pubDate>
      <guid>https://shapkin.me/posts/script-for-creating-new-openvpn-client/</guid>
      <description>&lt;p&gt;Скрипт для упрощения генерации новых клиентов OpenVPN и создания готового inline конфига.&lt;/p&gt;&#xA;&lt;p&gt;После установки и настройки openvpn сервера, создаем дополнительную директорию (если требуется), либо меняем путь на подходящий, куда будут сохраняться пользовательские конфигурации.&lt;/p&gt;&#xA;&lt;p&gt;Создаем шаблон для клиентской конфигурации и сохраняем его, например в новую директорию /etc/openvpn/user_configs/&lt;/p&gt;&#xA;&lt;p&gt;Указываем в файле необходимые директивы для работы сервиса, а также постоянные данные, например корневой сертификат и tls ключ.&#xA;При запуске скрипта указываем имя клиента, далее скрипт генерирует клиентский конфигурационный файл с уникальными данными и сохраняет его в указанную директорию с заданным именем.&lt;/p&gt;</description>
    </item>
    <item>
      <title>VMware VCSA Certificates Expired</title>
      <link>https://shapkin.me/posts/vcsa-certificate-expired/</link>
      <pubDate>Mon, 24 Oct 2022 22:55:36 +0300</pubDate>
      <guid>https://shapkin.me/posts/vcsa-certificate-expired/</guid>
      <description>&lt;p&gt;Внезапно VCSA 6.7 перестал авторизовывать, как доменного пользователя, так и локального администратора.&#xA;После перезагрузки в web интерфейсе постоянно висела 503 ошибка:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http20NamedPipeServiceSpecE:0x00007f3d18008430] _serverNamespace = / action = Allow _pipeName =/var/run/vmware/vpxd-webserver-pipe)&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Первым делом иду в логи, а именно /var/log/vmware/vpxd/vpxd.log и нахожу там следующие строки:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;2022-10-24T14:37:37.776Z error vpxd[04614] [Originator@6876 sub=vmomi.soapStub[6630]] Resetting stub adapter for server &amp;lt;cs p:00007f9628783750, TCP:vcsa.domain.com:443&amp;gt; : service state request failed: N7Vmacore3Ssl18SSLVerifyExceptionE(SSL Exception: Verification parameters:&#xA;--&amp;gt; PeerThumbprint: BA:E3:25:18:AB:62:50:74:62:A9:19:CF:DB:1C:85:FF:FA:77:E7:5B&#xA;--&amp;gt; ExpectedThumbprint: &#xA;--&amp;gt; ExpectedPeerName: vcsa.domain.com&#xA;--&amp;gt; The remote host certificate has these problems:&#xA;--&amp;gt; &#xA;--&amp;gt; * certificate has expired)&#xA;--&amp;gt; [context]zKq7AVECAAAAAPb1/gANdnB4ZAAA4AArbGlidm1hY29yZS5zbwAAWCUbAP6dGACeQCIAaXEiABtFIgDTSSIAOaIjAHFvIwA6ciMAnVYrAdRzAGxpYnB0aHJlYWQuc28uMAACrY4ObGliYy5zby42AA==[/context]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Открываю браузер и проверяю информацию по сертификату, действительно срок действия истек:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
