tag:blogger.com,1999:blog-38444337668037090242024-02-28T01:47:02.580+03:00Magic Cookies"Есть люди, которым труднее других. И на них обязанность быть лучше. Другим сходит с рук, а им нет… Это вроде бы каждый обязан. Но если человек решился жить по мечте, то он обязан вдвойне. Потому что большинство по мечте жить трусит… Или благоразумие мешает. А те, кто живет по мечте, — они вроде примера. Или укора". Олег Куваев.2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.comBlogger1097125tag:blogger.com,1999:blog-3844433766803709024.post-38241239559101201932024-02-28T01:46:00.005+03:002024-02-28T01:46:26.847+03:00ПОЛЕЗНЫЕ КОМАНДЫ ДЛЯ ТЕРМИНАЛЬНОГО СЕРВЕРА<p> Источник: <a href="https://winrcmd.wordpress.com/2019/03/18/userful-commands-for-termserver/" target="_blank">здесь</a></p><ul style="background-color: white; border: 0px; box-sizing: border-box; color: #404040; font-family: Lato, sans-serif; font-size: 16px; list-style-image: initial; list-style-position: initial; margin: 0px 0px 1.5em 1em; outline: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">query</li><li style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">qwinsta (query session)</li><li style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">quser (query user)</li><li style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">mstsc (RDS shadow)</li><li style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">msg</li><li style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">change logon</li><li style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">shutdown</li></ul>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-49770261028232551782024-02-28T00:40:00.008+03:002024-02-28T00:41:42.171+03:00Переименовать контроллер домена<p> <span style="background-color: white; color: #1a1a1a; font-family: "courier new", courier, monospace; font-size: 14px;">netdom computername srv2.test.local /add:dc2.test.local</span></p><p><span style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px;">Эта команда добавит серверу дополнительное доменное имя и зарегистрирует его в DNS. Для проверки откроем оснастку ADSIEdit и в свойствах сервера найдем атрибут </span><strong style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; outline: none;">msDS-AdditionalDnsHostName</strong><span style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px;">. Именно в этом атрибуте должно быть прописано новое имя.</span></p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;">Теперь сделаем новое имя основным. Для этого выполним команду:</p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;"><span style="font-family: "courier new", courier, monospace; outline: none;">netdom computername srv2.test.local /makeprimary:dc2.test.local</span></p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;">Обратите внимание, что для применения изменений необходима перезагрузка сервера.<span></span></p><a name='more'></a><p></p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;">После перезагрузки произойдет смена имени. Для проверки откроем ADSIEdit и убедимся в том, что имя DC2 стало основным, а SRV2 — дополнительным.</p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;">Поскольку старое имя SRV2 нам больше не нужно, окончательно удалим его командой:</p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;"><span style="font-family: "courier new", courier, monospace; outline: none;">netdom computername dc2.test.local /remove:srv2.test.local</span></p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;">Имя сервера успешно изменено, но это еще не все. После переименования контроллера домена требуется обновить Distributed File System (DFS) или File Replication Service (FRS) Replication member object. Этот объект необходимо обновить с новым именем для того, чтобы контроллер смог реплицировать папку SYSVOL.</p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;"><span style="font-family: "courier new", courier, monospace; outline: none;"></span></p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;">Для этого открываем оснастку Active Directory Users and Computers и в меню View отмечаем пункт Advanced Features.</p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;">Затем переходим в раздел <strong style="outline: none;">System -></strong> <strong style="outline: none;">DFSR-GlobalSettings -></strong> <strong style="outline: none;">Domain System Volume -></strong> <strong style="outline: none;">Topology, </strong>находим объект <strong style="outline: none;">msDFSR-Member</strong> со старым именем и переименовываем его.</p><p style="background-color: white; color: #1a1a1a; font-family: Verdana; font-size: 14px; margin: 16px 0px 0px; outline: none;">На этом переименование закончено, остается только убедиться в том, что изменения реплицировались на все контроллеры домена.</p><p>Источник: <a href="https://windowsnotes.ru/activedirectory/kak-pravilno-pereimenovat-kontroller-domena/" target="_blank">здесь</a><br /></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-49004389313398732512024-02-27T22:07:00.001+03:002024-02-27T22:07:10.672+03:00Исправление раскладки клавиатуры на терминальном сервере<p><span style="background-color: white; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 15px;">когда в терминальном сеансе переключаешь язык, он переключается на языковой панели, но ввод всё равно происходит на старом языке</span></p><p><span style="background-color: white; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 15px;"><span style="color: #2b00fe;">powershell.exe «Set-WinUserLanguageList -LanguageList ru-RU,en-US -Force»</span></span></p><p><span style="background-color: white; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 15px;">Через GPO ярлык на батник на раб.стол. «Исправление раскладки»</span></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-32950994604393794352024-02-27T21:14:00.003+03:002024-02-27T21:16:41.039+03:00подключение USB webcamera к Linux<p> <span face="Verdana, Tahoma, Arial, "Trebuchet MS", sans-serif, Georgia, Courier, "Times New Roman", serif" style="background-color: #fafcfe; color: #222222; font-size: 12px;">kmod-video-uvc mjpg-streamer</span></p><p><span face="Verdana, Tahoma, Arial, "Trebuchet MS", sans-serif, Georgia, Courier, "Times New Roman", serif" style="background-color: #fafcfe; color: #222222; font-size: 12px;"><br /></span></p><p><span face="Verdana, Tahoma, Arial, "Trebuchet MS", sans-serif, Georgia, Courier, "Times New Roman", serif" style="background-color: #fafcfe; color: #222222; font-size: 12px;">https://usbip.sourceforge.net/</span></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-61470937637312564042024-02-27T20:57:00.008+03:002024-02-27T22:02:37.890+03:00теневое подключение для непривилегированных пользователей (shadow remote terminal services connection)<p> <span face="Lato, sans-serif" style="background-color: white; color: #404040; font-size: 16px;">На каждом сервере, где необходимо осуществлять подключения, необходимо выполнить следующую команду (запустить cmd или powershell от имени администратора):</span></p><pre class="wp-block-preformatted" style="background: rgb(242, 242, 242); border: 0px; box-sizing: border-box; color: #404040; font-family: "Courier 10 Pitch", Courier, monospace; font-size: 1.4rem; line-height: 1.7143; margin-bottom: 1.5em; margin-top: 0px; max-width: 100%; outline: 0px; overflow-x: scroll; padding: 1em; text-wrap: wrap; vertical-align: baseline;">wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName='RDP-Tcp') CALL AddAccount 'Domain\Group_Name',2</pre><p style="background-color: white; border: 0px; color: #404040; font-family: Lato, sans-serif; font-size: 16px; margin: 0px 0px 1.5em; outline: 0px; padding: 0px; vertical-align: baseline;">где</p><blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow" style="background-color: white; border-bottom-color: initial; border-bottom-style: initial; border-image: initial; border-left-color: rgb(242, 242, 242); border-left-style: solid; border-right-color: initial; border-right-style: initial; border-top-color: initial; border-top-style: initial; border-width: 0px 0px 0px 2px; box-sizing: border-box; color: #404040; font-family: Lato, sans-serif; font-size: 16px; font-style: italic; margin: 0px; outline: 0px; overflow-wrap: break-word; padding: 0px 0px 0px 1em; quotes: "" ""; vertical-align: baseline;"><p style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px 0px 1.5em; outline: 0px; padding: 0px; vertical-align: baseline;">Domain — имя вашего домена</p><p style="border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px 0px 1.5em; outline: 0px; padding: 0px; vertical-align: baseline;">Group_Name — имя группы, в которой состоят пользователи, которым необходимо дать доступ</p></blockquote><p><br /></p><p>Источник: <a href="https://habr.com/ru/articles/494300/" target="_blank">https://habr.com/ru/articles/494300/</a></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-10785603556330436712024-02-23T00:52:00.004+03:002024-02-23T01:10:24.047+03:00RDP shadow connection черный экран<h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Problem" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Problem</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">If you are an administrator who uses shadow view to remotely view or control user sessions on Windows Server 2022, you may encounter a problem where the shadow view shows a black screen instead of the user’s desktop. This can be frustrating and prevent you from providing remote assistance or monitoring user activity. In this article, we will explain what causes this problem and how to fix it using various methods.<span></span></p><a name='more'></a><p></p><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="What_is_Shadow_View_and_How_Does_It_Work" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">What is Shadow View and How Does It Work?</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Shadow view is a feature of Remote Desktop Services (RDS) that allows administrators to remotely connect to user sessions on Windows computers. This feature is similar to Remote Assistance and can be used to provide technical support, troubleshoot problems, or monitor user behavior. Shadow view can be configured to allow full control or view-only access to the user’s session, with or without the user’s permission.</p><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">To use shadow view, you need to enable Remote Desktop (RDP) on the user’s computer, add your account to the local Administrators group on the user’s computer, and configure the shadow connection mode through Group Policy or registry settings. You also need to allow incoming shadow connection traffic through Windows Defender Firewall by enabling the File and Printer Sharing (SMB-In) and Remote Desktop – Shadow (TCP-In) rules.</p><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">To initiate a shadow view connection, you can use the Server Manager console, the Remote Desktop Services Manager tool, or the mstsc command with the /shadow parameter. You need to specify the session ID or the user name of the session you want to connect to. You can also use the /control or /noConsentPrompt switches to control the user’s session or bypass the user’s permission.</p><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="What_Causes_the_Black_Screen_Issue_in_Shadow_View" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">What Causes the Black Screen Issue in Shadow View?</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">There are several possible reasons why the shadow view shows a black screen instead of the user’s desktop. Some of the common causes are:</p><ul style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">The user’s session is locked or disconnected. If the user has locked or disconnected their session, you will not be able to see their desktop in the shadow view. You can try to unlock or reconnect the user’s session using the Remote Desktop Services Manager tool or the qwinsta and rwinsta commands.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">The user’s session is running in a different display mode. If the user’s session is running in a different display mode than the default one, such as spanned or multi-monitor mode, you may not be able to see their desktop in the shadow view. You can try to change the display mode of the user’s session using the Remote Desktop Services Manager tool or the tscon command.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">The user’s session is using a different graphics driver. If the user’s session is using a different graphics driver than the default one, such as WDDM or XDDM, you may not be able to see their desktop in the shadow view. You can try to change the graphics driver of the user’s session using the Group Policy setting Use WDDM graphics display driver for Remote Desktop Connections or the registry value UseWDDM under HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">The user’s session is corrupted or has a profile issue. If the user’s session is corrupted or has a profile issue, such as a missing or damaged registry hive, you may not be able to see their desktop in the shadow view. You can try to delete and recreate the user’s profile using the User Profiles control panel or the delprof2 tool.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">The firewall is blocking the shadow connection traffic. If the firewall is blocking the shadow connection traffic, you will not be able to establish a shadow view connection to the user’s session. You need to make sure that the firewall is allowing the ports that the shadow connection uses, which are 139/TCP, 445/TCP, and a range of dynamic RPC ports (from 49152 to 65535). You can check and modify the firewall rules using the Windows Defender Firewall control panel or the netsh advfirewall command.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">The certificate is invalid or expired. If the certificate that the Remote Desktop Gateway uses to secure the shadow connection is invalid or expired, you will not be able to establish a shadow view connection to the user’s session. You need to make sure that the certificate is valid and up to date, and that it matches the name or IP address of the Remote Desktop Gateway. You can check and renew the certificate using the Remote Desktop Gateway Manager tool or the certreq command.</li></ul><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="How_to_Fix_the_Black_Screen_Issue_in_Shadow_View" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">How to Fix the Black Screen Issue in Shadow View?</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Depending on the cause of the problem, you can try one or more of the following methods to fix the black screen issue in shadow view:</p><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Solution_1_Unlock_or_reconnect_the_users_session" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Solution 1: Unlock or reconnect the user’s session</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">If the user’s session is locked or disconnected, you can try to unlock or reconnect it using the Remote Desktop Services Manager tool or the qwinsta and rwinsta commands. To do this, follow these steps:</p><ol style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Open the Remote Desktop Services Manager tool from the Administrative Tools menu or by running tsadmin.msc.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the left pane, expand the server name and click Sessions.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the right pane, right-click the user’s session and select Connect or Remote Control.</li></ol><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Alternatively, you can open a command prompt and run the following commands:</p><ul style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: inherit; font-weight: 700; margin: 0px; padding: 0px; vertical-align: baseline;">qwinsta /server:<server_name></span> to list the sessions on the server.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: inherit; font-weight: 700; margin: 0px; padding: 0px; vertical-align: baseline;">rwinsta /server:<server_name> <session_id></span> to reset the session with the specified ID.</li></ul><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Solution_2_Change_the_display_mode_of_the_users_session" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Solution 2: Change the display mode of the user’s session</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">If the user’s session is running in a different display mode than the default one, such as spanned or multi-monitor mode, you can try to change it to the default mode using the Remote Desktop Services Manager tool or the tscon command. To do this, follow these steps:</p><ol style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Open the Remote Desktop Services Manager tool from the Administrative Tools menu or by running tsadmin.msc.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the left pane, expand the server name and click Sessions.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the right pane, right-click the user’s session and select Properties.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the Session Properties dialog box, click the Remote Control tab.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Under Display mode, select Default and click OK.</li></ol><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Alternatively, you can open a command prompt and run the following command:</p><ul style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: inherit; font-weight: 700; margin: 0px; padding: 0px; vertical-align: baseline;">tscon <session_id> /dest:console</span> to switch the session to the default display mode.</li></ul><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Solution_3_Change_the_graphics_driver_of_the_users_session" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Solution 3: Change the graphics driver of the user’s session</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">If the user’s session is using a different graphics driver than the default one, such as WDDM or XDDM, you can try to change it to the default one using the Group Policy setting Use WDDM graphics display driver for Remote Desktop Connections or the registry value UseWDDM under HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services. To do this, follow these steps:</p><ol style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Open the Group Policy Editor tool from the Administrative Tools menu or by running gpedit.msc.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the left pane, navigate to Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Session Host > Remote Session Environment.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the right pane, double-click the Use WDDM graphics display driver for Remote Desktop Connections setting.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the Use WDDM graphics display driver for Remote Desktop Connections dialog box, select Enabled or Disabled depending on the graphics driver you want to use and click OK.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Alternatively, you can open a registry editor and navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the right pane, right-click an empty space and select New > DWORD (32-bit) Value.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Name the new value UseWDDM and set its data to 1 or 0 depending on the graphics driver you want to use.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Restart the user’s session for the changes to take effect.</li></ol><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Solution_4_Delete_and_recreate_the_users_profile" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Solution 4: Delete and recreate the user’s profile</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">If the user’s session is corrupted or has a profile issue, such as a missing or damaged registry hive, you can try to delete and recreate the user’s profile using the User Profiles control panel or the delprof2 tool. To do this, follow these steps:</p><ol style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Open the User Profiles control panel from the System Properties dialog box or by running sysdm.cpl.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the User Profiles dialog box, select the user’s profile and click Delete.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Alternatively, you can download and run the delprof2 tool from https://helgeklein.com/free-tools/delprof2-user-profile-deletion-tool/.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Run the following command to delete the user’s profile: <span style="border: 0px; box-sizing: inherit; font-weight: 700; margin: 0px; padding: 0px; vertical-align: baseline;">delprof2 /u /id:<user_name></span></li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Log on to the user’s computer again to create a new profile.</li></ol><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Solution_5_Allow_the_shadow_connection_traffic_through_the_firewall" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Solution 5: Allow the shadow connection traffic through the firewall</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">If the firewall is blocking the shadow connection traffic, you need to allow the ports that the shadow connection uses, which are 139/TCP, 445/TCP, and a range of dynamic RPC ports (from 49152 to 65535). You can check and modify the firewall rules using the Windows Defender Firewall control panel or the netsh advfirewall command. To do this, follow these steps:</p><ol style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Open the Windows Defender Firewall control panel from the Control Panel or by running firewall.cpl.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the left pane, click Advanced settings.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the Windows Defender Firewall with Advanced Security window, click Inbound Rules in the left pane.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the right pane, scroll down and find the File and Printer Sharing (SMB-In) and Remote Desktop – Shadow (TCP-In) rules.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Right-click each rule and select Enable Rule.</li></ol><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Alternatively, you can open a command prompt and run the following commands to enable the firewall rules:</p><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">xxx- netsh advfirewall firewall set rule name=“File and Printer Sharing (SMB-In)” new enable=yes – netsh advfirewall firewall set rule name=“Remote Desktop – Shadow (TCP-In)” new enable=yes</p><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Solution_6_Check_and_renew_the_certificate" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Solution 6: Check and renew the certificate</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">If the certificate that the Remote Desktop Gateway uses to secure the shadow connection is invalid or expired, you need to check and renew the certificate using the Remote Desktop Gateway Manager tool or the certreq command. To do this, follow these steps:</p><ol style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Open the Remote Desktop Gateway Manager tool from the Administrative Tools menu or by running tsgateway.msc.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the left pane, expand the server name and click Properties.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">In the Properties dialog box, click the SSL Certificate tab.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">Under Installed certificate, click View to check the details of the certificate, such as the expiration date, the subject name, and the issuer name.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;">If the certificate is invalid or expired, click Select Existing Certificate or Import Certificate to choose or import a new certificate that matches the name or IP address of the Remote Desktop Gateway.</li></ol><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Alternatively, you can open a command prompt and run the following commands to request and install a new certificate from a certification authority (CA):</p><ul style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; list-style-image: initial; list-style-position: initial; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: inherit; font-weight: 700; margin: 0px; padding: 0px; vertical-align: baseline;">certreq -new request.inf request.req</span> to create a certificate request file based on the request.inf file that contains the information about the certificate, such as the subject name, the key size, and the extensions.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: inherit; font-weight: 700; margin: 0px; padding: 0px; vertical-align: baseline;">certreq -submit -config <CA_server_name><CA_name> request.req cert.cer</span> to submit the certificate request file to the CA and save the issued certificate file as cert.cer.</li><li style="border: 0px; box-sizing: inherit; margin: 0px 0px 10px 30px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: inherit; font-weight: 700; margin: 0px; padding: 0px; vertical-align: baseline;">certreq -accept cert.cer</span> to install the certificate on the local computer.</li></ul><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Frequently_Asked_Questions_FAQs" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Frequently Asked Questions (FAQs)</span></h2><h3 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h3-font-size,1.4999625rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Question: How do I enable shadow view on Windows Server 2022?</h3><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Answer: You need to enable Remote Desktop (RDP) on the user’s computer, add your account to the local Administrators group on the user’s computer, and configure the shadow connection mode through Group Policy or registry settings. You also need to allow incoming shadow connection traffic through Windows Defender Firewall by enabling the File and Printer Sharing (SMB-In) and Remote Desktop – Shadow (TCP-In) rules.</p><h3 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h3-font-size,1.4999625rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Question: How do I initiate a shadow view connection on Windows Server 2022?</h3><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Answer: You can use the Server Manager console, the Remote Desktop Services Manager tool, or the mstsc command with the /shadow parameter. You need to specify the session ID or the user name of the session you want to connect to. You can also use the /control or /noConsentPrompt switches to control the user’s session or bypass the user’s permission.</p><h3 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h3-font-size,1.4999625rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Question: How do I end a shadow view connection on Windows Server 2022?</h3><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">Answer: You can use the Ctrl+* shortcut to end the shadow view connection. You can also use the Remote Desktop Services Manager tool or the tsdiscon command to disconnect the user’s session.</p><h2 style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: var(--mv-trellis-h2-font-size,1.6875rem); margin-bottom: var(--mv-trellis-gutter-small,10px); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;"><span id="Summary" style="border: 0px; box-sizing: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Summary</span></h2><p style="background-color: white; border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin-bottom: calc(18px + var(--mv-trellis-gutter-small,10px)); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;">In this article, we have explained what shadow view is and how it works, what causes the black screen issue in shadow view, and how to fix it using various methods. We hope that this article has helped you to troubleshoot and resolve the black screen issue in shadow view on Windows Server 2022. If you have any questions or feedback, please leave a comment below.</p><p><em style="border: 0px; box-sizing: inherit; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; font-size: 20px; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: inherit; font-weight: 700; margin: 0px; padding: 0px; vertical-align: baseline;">Disclaimer</span>: This article is for informational purposes only and does not constitute professional advice. Please consult a qualified IT expert before making any changes to your system. We are not responsible for any damage or loss caused by following the instructions in this article.</em> </p><p>Источник: </p><p><a href="https://pupuweb.com/how-fix-black-screen-shadow-view-active-sessions-windows-server-2022/#How_to_Fix_the_Black_Screen_Issue_in_Shadow_View" target="_blank">https://pupuweb.com/how-fix-black-screen-shadow-view-active-sessions-windows-server-2022/#How_to_Fix_the_Black_Screen_Issue_in_Shadow_View</a><br /></p><p><br /></p><p>Нетрадиционные способы лечения:</p><p><a href="https://www.reddit.com/r/sysadmin/comments/11pzji9/server_2022_remote_app_issues/" target="_blank">https://www.reddit.com/r/sysadmin/comments/11pzji9/server_2022_remote_app_issues/</a></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-65020359639378828502023-04-27T16:57:00.006+03:002023-04-27T16:57:43.985+03:00Комплексные системы развертывания приманок, управляющие платформы deception-системы<p> <span style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px;">Одного-двух ханипотов может быть недостаточно, особенно если речь идет о защите больших корпоративных сетей. Приманки становятся действительно эффективными, когда их много, ведь тогда хакер быстрее найдет одну из них. В идеале информацию с приманок нужно собирать и анализировать в режиме реального времени. В ответ на этот запрос появились deception-системы — программы для массового развертывания и управления приманками. Мы подробно рассказывали об этом</span><a href="https://habr.com/ru/companies/bastion/articles/680820/" style="color: #548eaa; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">в одной из наших статей</u></a><span style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px;">. В основном это готовые коммерческие решения, но это не значит, что не существует рабочих open source альтернатив. Возможно, они не такие функциональные и удобные, но свою функцию выполняют.<span></span></span></p><a name='more'></a><p></p><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 32px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/telekom-security/tpotce" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">T-Pot</u></a> — платформа для развертывания и контроля за ханипотами на базе Debian 11 и<a href="https://www.docker.com/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Docker</u></a>. Поддерживает многие из перечисленных ниже приманок: dionaea, Conpot, DDoSPot, Dicompot, HellPot, Log4Pot — больше 20 разных видов ханипотов. Кроме того, T-Pot работает с рядом вспомогательных утилит для визуализации и картирования атак. В паре с<a href="https://github.com/intelowlproject/GreedyBear" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">GreedyBear</u></a> она позволяет легко анализировать зафиксированные киберугрозы.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/bhdresh/Dejavu" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">DejaVU</u></a> — deception-платформа для развертывания приманок в облаках AWS и внутренних сетях. Предлагает 14 серверных приманок, от MySQL и TELNET до HONEYCOMB, различные приманки-клиенты, например, SSDP, позволяет разбрасывать хлебные крошки в виде файлов, HoneyHash и учетных записей Kerberoast.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/seccome/Ehoney" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Ehoney</u></a> — система управления приманками с имитацией SSH, Http, Redis, Telnet, Mysql, RDP, RTSP, ModBus и заявкой на звание полноценной deception-системы. Утверждается, что Ehoney позволяет отслеживать действия злоумышленников в реальном времени, прогнозировать их и активно противодействовать, замедляя атаку при помощи распространения новых ложных целей.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/OWASP/Python-Honeypot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">OWASP Honeypot</u></a> — еще одна комплексная система управления приманками на базе контейнеров Docker. Эта система предлагает автоматизированный процесс настройки, фиксирует веб и сетевые атаки. Она создана известным сообществом безопасников, однако с октября 2021 года не получала серьезных обновлений и все еще находится на ранней стадии разработки.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/decoymini/DecoyMini" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">DecoyMini</u></a> — система управления приманками, которая поддерживает быстрое развертывание групп приманок в один клик, использует виртуальные IP-адреса, поддерживает основные операционные системы (Windows, CentOS/Ubuntu/Debian/Kali , Raspberry Pi), поддерживает Docker.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/hacklcx/HFish" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">HFish</u></a> — кросс-платформенная система управления приманками с низким и средним уровнем взаимодействия. Предлагает более 40 видов ханипотов, имитирующих базовые сетевые службы, CRM, NAS, веб-серверы, точки доступа Wi-Fi, беспроводные точки доступа, коммутаторы и маршрутизаторы, почтовые сервера, IoT-устройства.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/honeytrap/honeytrap" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Honeytrap</u></a> — агент-серверная система для запуска, мониторинга и управления приманками. Развертывает сети сенсоров из приманок с низким уровнем взаимодействия и при необходимости быстро обновляет их до ханипотов высокого уровня. Интегрируется с cowrie и glutton, взаимодействует с Elasticsearch, Splunk, Raven Server, Slack, Kafka.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/qeeqbox/chameleon" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Chameleon</u></a> — 19 настраиваемых приманок для мониторинга сетевого трафика, действий ботов и учетных данных (DNS, HTTP Proxy, HTTP, HTTPS, SSH, POP3, IMAP, SMTP, RDP, VNC, SMB, SOCKS5, Redis, TELNET, Postgres, MySQL, MSSQL). Предлагает графический интерфейс на базе Grafana для мониторинга результатов их работы.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://communityhoneynetwork.readthedocs.io/en/stable/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Community Honey Network</u></a> — хорошо документированный управляющий сервер в комплекте с готовыми скриптами развертывания приманок на базе Docker и Docker Compose. Позволяет установить и отслеживать работу таких приманок, как Cowrie, Dionaea, ssh-auth-logger, Conpot, RDPhoney, UHP.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/pwnlandia/mhn" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">MHN</u></a> — централизованный сервер для управления и сбора данных с приманок<a href="https://snort.org/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Snort</u></a>,<a href="https://www.cowrie.org/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Cowrie</u></a>,<a href="https://dionaea.readthedocs.io/en/latest/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Dionaea</u></a> и<a href="https://github.com/mushorg/glastopf" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">glastopf</u></a>. Выводит данные с них в удобный веб-интерфейс. Предоставляет REST API.<a href="https://github.com/MattCarothers/mhn-core-docker" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Существует и в версии для работы в Docker</u></a>.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/thinkst/opencanary" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">OpenCanary</u></a> — это демон, который запускает несколько версий ханипотов. Может имитировать Linux Web Server, Windows Server, MySQL Server и MSSQL-сервера. Собирает оповещения в системном журнале и отправляет на электронную почту.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/p1r06u3/opencanary_web" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">opencanary_web</u></a> — еще одна платформа для управления ханипотами, собранная из Tornado, Vue, Mysql, APScheduler и Nginx.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/philcryer/prickly-pete" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">prickly-pete</u></a> — скрипт, который использует Docker для быстрого запуска приманок:<a href="https://pypi.python.org/pypi/Conpot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">contpot</u></a>,<a href="https://github.com/cowrie/docker-cowrie" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">cowrie</u></a>,<a href="https://hub.docker.com/r/jondkelley/honeypress" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">HoneyPress</u></a>,<a href="https://hub.docker.com/r/anfa/gate" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">gate</u></a>,<a href="https://hub.docker.com/r/jekil/udpot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">udpot</u></a>. В совокупности они позволяют имитировать 16 разных веб-сервисов.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/qeeqbox/honeypots" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Honeypots</u></a> — 30 приманок низко-высокого уровня для мониторинга сетевого трафика, активности ботов и учетных данных в одном пакете PyPI. Имитируют dhcp, dns, elastic, ftp, http proxy, https proxy, http, https, imap, ipp, irc, ldap, memcache, mssql, mysql, ntp, oracle, pjl, pop3, postgres, rdp, redis, sip, smb, smtp, snmp, socks5, ssh, telnet, vnc.</p></li></ul><h3 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 1.125rem; font-weight: 500; line-height: 1.4375rem; margin: 32px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Веб-приманки</h3><p style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Здесь перечислены более простые, отдельные ханипоты, которые имитируют веб-сайты и сервисы. Они поддерживают разные протоколы, например, HTTP, HTTPS, FTP, SSH и т. д. У некоторых есть встроенная аналитика для отслеживания и анализа активности на приманке, но они не сравнятся по сложности с deception-системами.</p><h4 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 16px; font-weight: 500; line-height: 1.25rem; margin: 32px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Многопротокольные веб-приманки</h4><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 24px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/DinoTools/dionaea" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Dionaea</u></a> — многопротокольная приманка, которая охватывает все — от FTP до SIP (атаки на VoIP). Первоначально разработана для сбора образцов вредоносных программ. Dionaea имеет модульную архитектуру и использует Python в качестве языка сценариев для эмуляции протоколов. Она может имитировать выполнение полезной нагрузки вредоносного ПО с помощью<a href="https://github.com/buffer/libemu" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">LibEmu</u></a>.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/bocajspear1/honeyhttpd" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">HoneyHTTPD</u></a> — утилита для создания веб-приманок на основе Python. Она позволяет легко настраивать поддельные веб-серверы и веб-службы, отвечать на уровне протокола HTTP теми данными, которыми вы захотите, и записывать переданные серверу запросы.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/evilsocket/medusa" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">medusa</u></a> — быстрая и безопасная многопротокольная приманка, которая может имитировать ssh, telnet, http, https или любой другой tcp, а также udp-серверы.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/mushorg/glastopf" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Glastopf</u></a> — первый из четырех проектов австрийского НКО MushMush Foundation — приманка на базе Python, имитирующая внедрение файлов при помощи песочницы PHP и HTML-инъекции через POST-запросы. В настоящее время не обновляется, однако ее разработчики предлагают альтернативы:</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/mushorg/snare" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">SNARE</u></a> и<a href="https://github.com/mushorg/tanner" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">TANNER</u></a> — по первой ссылке расположен репозиторий датчика веб-приманки, аналогичной Glastopf и способной преобразовывать веб-страницы в поверхности для атак. TANNER — "мозг" этой ловушки. Каждое событие, отправленное из SNARE в TANNER, оценивается, и TANNER решает, как должна реагировать приманка. Такие динамические ответы помогают поддерживать маскировку.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/fofapro/fapro" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">fapro</u></a> — кросс-платформенная утилита для симуляции сетевых служб. Она создана, чтобы поддерживать как можно больше протоколов — более 50 штук — и глубокое взаимодействие с ними.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/ivre/masscanned" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Masscanned</u></a> — приманка с низким уровнем взаимодействия, ориентированная на сетевые сканеры и ботов. Отвечает на их запросы по различным протоколам. Интегрируется с IVRE и позволяет собирать черные списки IP-адресов, подобно тому как это делает<a href="https://www.greynoise.io/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">GreyNoise</u></a>.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/chaitin/mimicry" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Mimicry</u></a> — приманка, рассчитанная на активный обман и имитацию уязвимостей в веб-приложениях. Позволяет оперативно подменить Webshell, ReverseShell/BindShell на приманку.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/johnnykv/heralding" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Heralding</u></a> — простая приманка, которая собирает учетные данные. Поддерживает протоколы: ftp, telnet, ssh, http, https, pop3, pop3s, imap, imaps, smtp, vnc, postgresql и socks5.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://honeydb-agent-docs.readthedocs.io/en/latest/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Honeydb-agent</u></a> — небольшая программа-приманка, которую можно легко развернуть в системах Linux и Windows. Может запускать многочисленные эмуляции сетевых служб при помощи подключаемых плагинов. Может работать в автономном режиме или как часть глобальной мониторинговой сети<a href="https://honeydb.io/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">HoneyDB</u></a>.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/mariocandela/beelzebub" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Beelzebub</u></a> — фреймворк для создания SSH, HTTP и TCP-ханипотов, который можно настроить с помощью yaml. Интегрируется с RabbitMQ и OpenAPI ChatBot GPT-3.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/aelth/ddospot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">DDoSPot</u></a> — это приманка на основе UDP для отслеживания и мониторинга распределенных DDoS-атак. Эмулирует DNS, NTP, SSDP, CHARGEN, случайные UDP-сервера.</p></li></ul><h4 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 16px; font-weight: 500; line-height: 1.25rem; margin: 32px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">SSH-приманки</h4><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 24px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/cowrie/cowrie" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Cowrie</u></a> — приманка SSH и Telnet со средним и высоким уровнем взаимодействия. Предназначена для регистрации попыток брутфорса. В разных режимах работает как прокси-сервер для SSH и telnet или эмулирует систему UNIX с полноценной фейковой файловой системой. Хорошо работает в паре с<a href="https://github.com/deroux/longitudinal-analysis-cowrie" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Longitudinal Analysis</u></a> для обработки журналов.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/jaksi/sshesame" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">sshesame</u></a> — простой в настройке поддельный SSH-сервер, который позволяет подключиться любому, и регистрирует SSH-соединения и активность, не выполняя на самом деле никаких команд и запросов.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/mushorg/glutton" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Mushorg / Glutton</u></a> — SSH и TCP-прокси, который работает как MITM между злоумышленником и сервером и позволяет шпионить за его действиями.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/regit/pshitt" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">pshitt</u></a> — легковесный поддельный SSH-сервер, предназначенный для сбора аутентификационных данных, отправленных злоумышленниками. Сохраняет в JSON логины и пароли, используемые программным обеспечением для перебора SSH.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/droberson/ssh-honeypot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">SSH Honeypot</u></a> — еще одно решение для сбора базовых сведений об атаке. Прослушивает входящие ssh-соединения и регистрирует IP-адрес, имя пользователя и пароль, которые использует клиент.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/fffaraz/fakessh" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">FakeSSH</u></a> — докенизированный SSH-сервер-приманка с низким уровнем взаимодействия, написанный на Go. Регистрирует попытки входа в систему, но всегда отвечает, что пароль неверен.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/random-robbie/docker-ssh-honey" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">docker-ssh-honey</u></a> — еще одна простая приманка с аналогичной FakeSSH функциональностью.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/justinazoff/ssh-auth-logger" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">ssh-auth-logger</u></a> — регистрирует все попытки аутентификации в виде json, не взаимодействует со злоумышленником.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/sjinks/ssh-honeypotd" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">ssh-honeypotd</u></a> — SSH-приманка с низким уровнем взаимодействия, написанная на C.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/wisepythagoras/honeyshell" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Honeyshell</u></a> — написанная на Go SSH-приманка. Собирает логины и пароли.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/skeeto/endlessh" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Endlessh</u></a> — коварная штука, которая открывает сокет и притворяется сервером SSH, который очень медленно отправляет SSH-баннер. Способна удерживать клиентов в течение нескольких часов или даже дней. Значительно замедляет и даже парализует работу ботов и сканеров.</p></li></ul><h4 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 16px; font-weight: 500; line-height: 1.25rem; margin: 32px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Приманки, имитирующие базы данных</h4><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 24px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/oguimbal/pg-server" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">pg-server</u></a> — эмулятор сервера БД Postgres, прокси и приманка.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/jekil/UDPot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">dns.py</u></a> — скрипт для создания приманки DNS, которая регистрирует все запросы к базе данных SQLite и имеет настраиваемый уровень интерактивности.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/sjinks/mysql-honeypotd" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">mysql-honeypotd</u></a> —MySQL-приманка с низким уровнем взаимодействия, написанная на C.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/cypwnpwnsocute/RedisHoneyPot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">RedisHoneyPot</u></a> — интерактивная приманка с высоким уровнем взаимодействия для протокола Redis. Написана на Golang. Умеет имитировать выполнение команд ping, info, set, get, del, exists, keys, flushall, flushdb, save, select, dbsize, config, slaveof.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/Plazmaz/MongoDB-HoneyProxy" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">MongoDB-HoneyProxy</u></a> — прокси-приманка для mongod, которая регистрирует трафик на фиктивном сервере.</p></li></ul><h4 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 16px; font-weight: 500; line-height: 1.25rem; margin: 32px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">RDP</h4><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 24px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/tothi/ad-honeypot-autodeploy" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">ad-honeypot-autodeploy</u></a> — ловушка с высоким уровнем взаимодействия — намеренно небезопасный уязвимый домен Windows. Работает в виртуальной машине на базе<a href="https://libvirt.org/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">libvirt</u></a> с<a href="https://www.qemu.org/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">QEMU</u></a>/<a href="https://www.linux-kvm.org/page/Main_Page" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">KVM</u></a>, но его можно развернуть и в облаке. Состоит из Windows Server 2016 в качестве контроллера домена и машины на базе Windows 10 (21H2). На ней включены службы RDP и WinRM.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/gosecure/pyrdp" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">pyrd</u></a> — инструмент и библиотека для Python 3 позволяющая реализовать атаку MITM против подключающегося к приманке злоумышленника. Позволяет просматривать подключения в режиме реального времени и постфактум.</p></li></ul><h4 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 16px; font-weight: 500; line-height: 1.25rem; margin: 32px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Электронная почта</h4><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 24px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/shiva-spampot/shiva" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">SHIVA Spampot</u></a> — релейная спам-приманка, написанная на Python 3. Состоит из пары Docker-контейнеров, где один — это ресивер — SMTP-сервер, который принимает все отправленные ему электронные письма, а второй — анализатор, который разбирает .eml и файл метаданных и извлекает из писем различные идентификаторы: информацию о получателях, URL-адреса, вложения, тело письма Информация индексируется в Elasticsearch/OpenSearch для более удобного поиска и анализа.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/lukeraymonddowning/honey#manually-running-honey-checks" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Honey</u></a> — пакетное решение для борьбы со спамом для Laravel, которое сочетает в себе ханипот, систему блокировки спамерских адресов и reCAPTCHA. Скорее средство активного противодействия спаму, чем инструмент для исследования.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/yvesago/imap-honey" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">imap-honey</u></a> — простая IMAP и SMTP-приманка, написанная на Golang.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/phin3has/mailoney" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Mailoney</u></a> — еще одна SMTP-приманка с базовой функциональностью. Давно не получала крупных обновлений.</p></li></ul><h4 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 16px; font-weight: 500; line-height: 1.25rem; margin: 32px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Различные веб-приманки</h4><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 24px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/bartnv/portlurker" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">portlurker</u></a> — утилита для прослушивания портов на Rust с базовым логированием в SQLite.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/eymengunay/EoHoneypotBundle" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">EoHoneypotBundle</u></a> — узкоспециализированный ханипот для форм Symfony2. Создает формы с дополнительным скрытым от пользователя полем, которое, тем не менее, находят роботы. Робот заполняет невидимое поле, отправляет форму и выдает себя.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/msurguy/Honeypot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Laravel Application Honeypot</u></a> — еще одна ловушка для ботов, построенная вокруг невидимого поля для ввода. На этот раз для Laravel. Создает скрытый DIV с полем-приманкой, например, «my_name».</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/spatie/laravel-honeypot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">laravel-honeypot</u></a> — аналогичная Laravel-приманка для спама, отправленного через веб-формы.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/jamesturk/django-honeypot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">django-honeypot</u></a> — приложение Django, добавляющее поля-приманки в веб-формы.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/dmpayton/django-admin-honeypot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">django-admin-honeypot</u></a> — поддельный экран входа в Django, который уведомляет о попытках несанкционированного доступа.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/christophe77/express-honeypot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Express honeypot</u></a> — RFI и LFI-приманка для ботов и вредоносных программ, которые сканируют веб-сайты и пытаются загрузить оттуда файлы. Написана на javascript и использует фреймворк Express.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/yunginnanet/HellPot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">HellPot</u></a> — приманка, которая генерирует бесконечный поток данных, напоминающих загрузку реального веб-сайта, и отправляет его тем клиентам, которые игнорируют robots.txt. Предполагается, что они будут (страдать) ждать загрузки вечно.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/LogoiLab/honeyup" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">honeyup</u></a>— ханипот, имитирующий дырявый веб-сайт.</p></li></ul><h2 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 1.25rem; font-weight: 500; line-height: 1.625rem; margin: 56px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Различные приманки для внутренних сетей</h2><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 24px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/mushorg/conpot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Conpot</u></a> — еще один проект MushMush Foundation — приманка предназначенная для сбора информации о мотивах и методах злоумышленников, действующих во внутренних сетях промышленных предприятий (АСУ ТП). Написана на Python, имитирует ICS/SCADA, поддерживает Modbus, DNP-IP, SML и другие промышленные протоколы. Дает возможности для настройки приманок, в частности, время их отклика может быть искусственно увеличено, чтобы имитировать работу под постоянной нагрузкой.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/xiecat/goblin" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Goblin</u></a> — фишинговый инструмент для блютимминга. Может быть использован в качестве ханипота или средства активного противодействия атаке. Основан на обратном прокси.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/stamparm/hontel" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">hontel</u></a> — ханипот для службы Telnet. Первоначально разработан для работы в среде Ubuntu/Debian, но его можно адаптировать под любой Linux.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/shafr/esp-canary" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">esp-canary</u></a> — простой датчик, который оповещает об обращениях или сканировании. Предназначен для ESP-8266 или ESP-32, подключается к локальной сети по Wi-Fi, основан на Tomcat.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/BinaryDefense/log4j-honeypot-flask" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">log4j-honeypot-flask</u></a> — приманка, сообщающая о том, сканирует ли злоумышленник внутреннюю сеть на наличие log4j CVE-2021-44228.</p></li></ul><h3 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 1.125rem; font-weight: 500; line-height: 1.4375rem; margin: 32px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Токены и хлебные крошки</h3><p style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Honeytoken — это некие фейковые данные, которые можно использовать для обмана и обнаружения хакеров. Это могут быть логины и пароли, номера карт или куски кода. Когда злоумышленники находят и пытаются использовать эти данные, они тем самым выдают себя. Существуют отдельные инструменты для их создания и распространения:</p><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 32px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/thinkst/canarytokens" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Canarytokens</u></a> — работает по принципу, напоминающему Tracking Pixel, с помощью которых отслеживают открытие электронных писем. Только канарейка делает то же самое для файлов, запросов к базам данных и многого другого. Это позволяет вам устанавливать ловушки в ваших системах, а не создавать отдельные приманки.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/spacesiren/spacesiren" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">SpaceSiren</u></a> — менеджер токенов и система оповещения о вторжениях для AWS. Поддерживает высокие нагрузки и позволяет управлять тысячами токенов.</p></li></ul><h2 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 1.25rem; font-weight: 500; line-height: 1.625rem; margin: 56px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Другие приманки</h2><p style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Сюда попало все, что трудно распределить по другим разделам:</p><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 32px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/DShield-ISC/dshield" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">dshield</u></a> — набор скриптов для настройки Raspberry Pi в качестве сенсора DShield — глобальной системы мониторинга атак на базе журналов брандмауэра. Она получает журналы от добровольцев со всего мира и использует их для анализа глобальных тенденций. Используется в качестве механизма сбора данных для SANS<a href="https://en.wikipedia.org/wiki/Internet_Storm_Center" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> <u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Internet Storm Center</u></a><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> </u>(ISC).</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/huuck/ADBHoney" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">ADBHoney</u></a> — приманка с низким уровнем взаимодействия, которая имитирует устройство Android, на котором запущен серверный процесс Android Debug Bridge (ADB). Может помочь обнаружить вредоносное ПО для Android, развертывающее майнеры на телефонах и смарт-телевизорах.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/rabbitstack/fibratus" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Fibratus</u></a>— инструмент для исследования и отслеживания ядра Windows. Он позволяет перехватывать общесистемные события, такие как жизненный цикл процесса, ввод-вывод файловой системы, изменения реестра или сетевые запросы и так далее. Не требует драйверов и стороннего ПО для работы. Потенциально позволяет использовать в качестве приманки с высоким уровнем взаимодействия любую машину на Windows.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="http://libvmi.com/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">vmitools</u></a><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"> </u>— библиотека, упрощающая мониторинг низкоуровневых сведений о работающей виртуальной машине. Позволяет легко контролировать низкоуровневые детали работы виртуальной машины, просматривая ее память, перехватывая аппаратные события и доступ к регистрам vCPU.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://buffer.github.io/thug/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Thug</u></a> — ханипот с низким уровнем взаимодействия на базе Python. Используется для имитации поведения пользовательских приложений, взаимодействующих с вредоносным контентом. Проще говоря, Thug прикидывается не защищенным браузером. Позволяет изучать атаки на стороне клиента. Реализует гибридный подход, сочетающий статический/динамический анализ угроз.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/SentryPeer/SentryPeer" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">SentryPeer</u></a> — ханипот для VoIP АТС. Принимает телефонные звонки от злоумышленников и сохраняет IP-адрес, с которого они пришли, и номер, на который они пытались позвонить.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/andrewmichaelsmith/bluepot" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">bluepot</u></a> — Linux-утилита, написанная на Java и предназначенная для приема и хранения любого вредоносного ПО, отправленного по Bluetooth.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/sa7mon/miniprint" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">miniprint</u></a> — приманка-принтер со средним взаимодействием. Выглядит, как стандартный сетевой принтер, который случайно попал в общедоступный интернет. Поддерживает полнофункциональную виртуальную файловую систему, в которой злоумышленники могут читать и записывать файлы и каталоги, сохраняет задания на печать в формате PostScript, ведет журнал.</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://github.com/YJesus/AntiRansom" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><u style="quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">AntiRansom</u></a> — это инструмент, способный обнаруживать и останавливать атаки программ-вымогателей с использованием приманок. Сначала Anti Ransom создает случайную папку-приманку с множеством бесполезных случайных документов (Excel, PDF), а затем следит за папкой в ожидании изменений. Когда они обнаружены, AntiRansom пытается определить, какой процесс несет за них ответственность и останавливает его.</p></li></ul><h2 style="-webkit-font-smoothing: antialiased; background-color: white; color: #111111; font-family: "Fira Sans", sans-serif; font-size: 1.25rem; font-weight: 500; line-height: 1.625rem; margin: 56px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">Другие авторские подборки инструментов, связанных с информационной безопасностью</h2><ul style="background-color: white; color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 16px; margin-top: 24px; padding-inline-start: 32px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><li style="line-height: 1.5rem; margin: 0px 0px 6px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://habr.com/ru/companies/bastion/articles/711064/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">20+ open source утилит для шифрования файлов на (почти) любой случай жизни</a>;</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://habr.com/ru/companies/bastion/articles/651869/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">70+ бесплатных инструментов для компьютерной криминалистики (форензики)</a>;</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://habr.com/ru/companies/bastion/articles/676310/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">99+ бесплатных инструментов для анализа зловредов</a>;</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://habr.com/ru/companies/bastion/articles/688972/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">150+ хакерских поисковых систем и инструментов</a>;</p></li><li style="line-height: 1.5rem; margin: 12px 0px 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><p style="font-size: 1rem; line-height: 1.5rem; margin: 0px; padding: 0px; quotes: "«" "»"; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;"><a href="https://habr.com/ru/companies/bastion/articles/701520/" style="background-color: initial; color: #548eaa; quotes: "«" "»"; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, color 0.2s ease-in-out 0s, text-decoration 0.2s ease-in-out 0s, background-color 0.2s ease-in-out 0s, -webkit-text-decoration 0.2s ease-in-out 0s;">20+ хакерских операционных систем для атаки и защиты</a>.</p></li></ul><div><span style="color: #111111; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif;">Источник: <a href="https://habr.com/ru/companies/bastion/articles/731172/" target="_blank">здесь</a></span></div>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-91651656619178692742023-02-21T19:44:00.009+03:002023-02-21T19:44:58.820+03:00Жопа с ручкой<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjFyiRcWK4apwJMcJDHuuGHxDWudkKNV8uvTFWL50ejSgUm_fEseA3oGPmvTbG3RLI3_gNhwa5rDH4m0hy4sgsDDfdzx3qjPCLKRFwms7JHLImuWgAF_CqcyA1NmYNVbT_iOQjBG4UqIdSe5866oI_Lhwu8Nz4HY3LjtYvk6gVNm0FWfAXGC400mCSg" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="912" data-original-width="1532" height="238" src="https://blogger.googleusercontent.com/img/a/AVvXsEjFyiRcWK4apwJMcJDHuuGHxDWudkKNV8uvTFWL50ejSgUm_fEseA3oGPmvTbG3RLI3_gNhwa5rDH4m0hy4sgsDDfdzx3qjPCLKRFwms7JHLImuWgAF_CqcyA1NmYNVbT_iOQjBG4UqIdSe5866oI_Lhwu8Nz4HY3LjtYvk6gVNm0FWfAXGC400mCSg=w400-h238" width="400" /></a></div><br /><br /><br /><p></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-56672732855433249782023-02-21T13:15:00.004+03:002024-01-26T13:43:49.622+03:00Интересные docker-контейнеры<p class="MsoNormal"><b><span lang="EN-US" style="font-size: 12pt; line-height: 107%; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">deck-chores </span></b><span lang="EN-US" style="font-size: 12pt; line-height: 107%; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">- Job scheduler for Docker containers, configured via
container labels. <a href="https://hub.docker.com/r/funkyfuture/deck-chores">https://hub.docker.com/r/funkyfuture/deck-chores</a><o:p></o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size: 12pt; line-height: 107%; mso-ansi-language: EN-US; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Syncthing</span></b><span lang="EN-US" style="font-size: 12pt; line-height: 107%;"> is a </span>continuous file synchronization program. It
synchronizes files between two or more computers. <a href="https://github.com/syncthing/syncthing">https://github.com/syncthing/syncthing</a></p><p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"><b><span face=""Calibri",sans-serif" lang="EN-US" style="color: #24292f; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;">AdGuard Home</span></b><span face="Calibri, sans-serif" lang="EN-US" style="color: #24292f;"> is a network-wide software for blocking ads and
tracking. After you set it up, it'll cover ALL your home devices, and you don't
need any client-side software for that.</span></p>
<p style="background: white; box-sizing: border-box; margin: 0cm 0cm 12pt;"><span face=""Calibri",sans-serif" lang="EN-US" style="color: #24292f; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;">It operates as a DNS server
that re-routes tracking domains to a “black hole”, thus preventing your devices
from connecting to those servers. <a href="https://github.com/AdguardTeam/AdGuardHome">https://github.com/AdguardTeam/AdGuardHome</a><o:p></o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US">trudesk</span></b><span lang="EN-US">. self-hosted task management platform. Open
Source Help Desk, </span>замена <span lang="EN-US">redmine</span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://www.blackvoid.club/trudesk-self-hosted-task-management-platform/">https://www.blackvoid.club/trudesk-self-hosted-task-management-platform/</a><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://github.com/polonel/trudesk">https://github.com/polonel/trudesk</a><o:p></o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US">Bitwarden</span></b><span lang="EN-US"> unified self-hosted password
manager</span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://www.blackvoid.club/bitwarden-unified-self-host-deployment/">https://www.blackvoid.club/bitwarden-unified-self-host-deployment/</a><o:p></o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US">Outline</span></b><span lang="EN-US"> - wiki for growing teams. <a href="https://www.blackvoid.club/outline-wiki-for-growing-teams/">https://www.blackvoid.club/outline-wiki-for-growing-teams/</a></span></p>
<p class="MsoNormal"><b><span lang="EN-US">Telegraf</span></b><span lang="EN-US"> – telegram bot. <a href="https://www.blackvoid.club/grafana-8-influxdb-2-telegraf-2021-monitoring-stack/">https://www.blackvoid.club/grafana-8-influxdb-2-telegraf-2021-monitoring-stack/</a></span></p>
<p class="MsoNormal"><b><span lang="EN-US">Authelia</span></b><span lang="EN-US"> - SSO and 2FA portal</span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://www.blackvoid.club/authelia-sso-and-2fa-portal/">https://www.blackvoid.club/authelia-sso-and-2fa-portal/</a><o:p></o:p></span></p><p class="MsoNormal"><a href="https://www.authelia.com/integration/openid-connect/outline/" target="_blank">https://www.authelia.com/integration/openid-connect/outline/</a><br /></p><p class="MsoNormal"><a href="https://www.smarthomebeginner.com/docker-authelia-tutorial/" target="_blank">https://www.smarthomebeginner.com/docker-authelia-tutorial/</a><br /></p>
<p class="MsoNormal"><b><span lang="EN-US">Rocket.Chat</span></b><span lang="EN-US"> - SLACK alternative
(with MongoDB as backend)</span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://www.blackvoid.club/rocket-chat-slack-alternative-with-mongodb-as-backend/">https://www.blackvoid.club/rocket-chat-slack-alternative-with-mongodb-as-backend/</a><o:p></o:p></span></p>
<p><b><span lang="EN-US">Joplin</span></b><span lang="EN-US"> - free your notes – </span>замена <b><span lang="EN-US">Evernotes</span></b></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-ansi-language: EN-US;"><a href="https://joplinapp.org/">https://joplinapp.org/</a><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-ansi-language: EN-US;"><a href="https://habr.com/ru/post/681712/">https://habr.com/ru/post/681712/</a><o:p></o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US">ProjectSend</span></b><span lang="EN-US"> – share your files</span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-ansi-language: EN-US;"><a href="https://www.projectsend.org/">https://www.projectsend.org/</a><o:p></o:p></span></p><p class="MsoNormal"><b>ERP DoliBarr</b></p><p class="MsoNormal"><a href="https://www.dolibarr.org/#features">https://www.dolibarr.org/#features</a><br /></p><p class="MsoNormal"><b>Planka </b>(kanban доска)</p><p class="MsoNormal"><a href="https://iamninja.ru/2023/10/25/planka-open-source-kanban-%D0%B4%D0%BE%D1%81%D0%BA%D0%B0/">https://iamninja.ru/2023/10/25/planka-open-source-kanban-%D0%B4%D0%BE%D1%81%D0%BA%D0%B0/</a><br /></p><p class="MsoNormal"><b>Memos</b></p><p class="MsoNormal"><a href="https://www.usememos.com/docs" target="_blank">https://www.usememos.com/docs</a><br /></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-590497798285817762023-02-21T12:33:00.005+03:002023-02-21T12:33:41.890+03:00Контейнер - сервис сокращенных ссылок<p>Источник: <a href="https://www.blackvoid.club/docker-top-10-images-and-solutions/" target="_blank">Здесь</a> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgtYicuthbYEaq8EDS0ghyQnjoVz7nLG4sh-hAZ2IB1l7oVUUUt8mg4VrowvR_co1VD0xB74Gnxv9TKJSuI24IXsD8GQ_ypzNahG2aW-3V9V3qZ9LLBurp-wmiLKo6zZY-SReLgs5Vo_xMYs--J3Li-Zg-yxpWlocrDjMywVpcyP68ineSMFmVeUFwg" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="608" data-original-width="1063" height="183" src="https://blogger.googleusercontent.com/img/a/AVvXsEgtYicuthbYEaq8EDS0ghyQnjoVz7nLG4sh-hAZ2IB1l7oVUUUt8mg4VrowvR_co1VD0xB74Gnxv9TKJSuI24IXsD8GQ_ypzNahG2aW-3V9V3qZ9LLBurp-wmiLKo6zZY-SReLgs5Vo_xMYs--J3Li-Zg-yxpWlocrDjMywVpcyP68ineSMFmVeUFwg" width="320" /></a></div><span><a name='more'></a></span><div class="separator" style="clear: both; text-align: center;"><br /></div><p></p><pre style="background: rgb(14, 16, 18); border-radius: 5px; border: 1px solid rgb(0, 0, 0); box-sizing: inherit; color: var(--whitegrey); font-family: monospace, monospace; font-size: 1.4rem; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: 1.5em; margin-bottom: 3em; margin-top: 1.5em; max-width: 100%; min-width: 100%; overflow-x: auto; padding: 20px; vertical-align: baseline;"><code style="background: transparent; border-radius: 3px; border: 0px; box-sizing: inherit; color: white; font-family: monospace, monospace; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">* self-hosted; open source
* docker image: https://hub.docker.com/u/shlinkio
* URL: https://shlink.io
* GIT: https://github.com/shlinkio/shlink</code></pre>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-30647009430936366412023-02-21T12:30:00.003+03:002023-02-21T12:30:24.872+03:00Заметки с синхронизацией и JWT<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEirQmAlG5wzH3oEUCxs0P5Wm86y_C660HA0mNBox3rpU-ewtN8I2XIguiDohDDdCeeCN9-y1trb-a4uP59c92I4V54Tp1ev6OK1uEN8MUXv6EIliJ9NpKE8lN39v__33m28b5loYK0jS0l4KHh0xew7bpY_HQ3IUUiIz1E1NgnqnkdZxae-L5pyyTnv" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="752" data-original-width="983" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEirQmAlG5wzH3oEUCxs0P5Wm86y_C660HA0mNBox3rpU-ewtN8I2XIguiDohDDdCeeCN9-y1trb-a4uP59c92I4V54Tp1ev6OK1uEN8MUXv6EIliJ9NpKE8lN39v__33m28b5loYK0jS0l4KHh0xew7bpY_HQ3IUUiIz1E1NgnqnkdZxae-L5pyyTnv" width="314" /></a></div><br /><p></p>standardnote/standalone repository<p>Источник: <a href="https://www.blackvoid.club/standard-notes-docker-self-hosted-alternative/" target="_blank">здесь</a></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-42885416113172912712022-10-05T11:01:00.004+03:002022-10-05T11:01:43.787+03:00Nginx: basic auth через Samba AD<p> </p><h2 id="vvedenie" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Введение</h2><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">В данной статье описаны принцип работы и настройка basic auth в Nginx через Samba Active Directory.<span></span></p><a name='more'></a><p></p><h2 id="primenenie-i-printsip-raboty" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Применение и принцип работы</h2><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Необходимость такого решения возникла в результате закрытия всех внутренних ресурсов от посторонних глаз. Но на каждый проект заводить отдельные .htpasswd файлы или делать один общий, а потом где-то хранить логин и пароль не очень хотелось – со временем проектов станет много и администрировать учётки станет не очень удобно. Тут-то на помощь и пришёл вариант использования Nginx с имеющейся Samba в качестве контроллера домена.</p><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Для Nginx существует модуль <a href="https://nginx.org/en/docs/http/ngx_http_auth_request_module.html" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">ngx_http_auth_request_module</a>.</p><blockquote class="wp-block-quote is-style-quote" style="background: rgb(239, 244, 245); border-bottom-color: rgb(90, 128, 177); border-left: none !important; border-radius: 0px 6px 6px 0px; border-right-color: rgb(90, 128, 177); border-top-color: rgb(90, 128, 177); box-sizing: border-box; clear: both; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 35px 0px 35px -70px; overflow-wrap: break-word; padding: 20px 30px 20px 70px; position: relative;"><p style="box-sizing: border-box; margin: 12px 0px;">Модуль <code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">ngx_http_auth_request_module</code> (1.5.4+) предоставляет возможность авторизации клиента, основанной на результате подзапроса. Если подзапрос возвращает код ответа 2xx, доступ разрешается. Если 401 или 403 — доступ запрещается с соответствующим кодом ошибки. Любой другой код ответа, возвращаемый подзапросом, считается ошибкой.</p></blockquote><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">То есть работа модуля основана на подзапросах к какому-либо стороннему сервису, который обращается к Active Directory, и возвращается к Nginx с ответом. Таковым сервисом является демон, написанный на Python, и называется <a href="https://github.com/nginxinc/nginx-ldap-auth" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">ldap‑auth daemon</a>. Поддерживает работу Python 2 и 3 версии.</p><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">На <a href="https://www.nginx.com/blog/nginx-plus-authenticate-users/" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">сайте Nginx</a> изображена схема работы при использовании модуля авторизации и коннектора на Python:</p><div class="wp-block-image" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 1em;"><figure class="aligncenter" style="box-sizing: border-box; clear: both; display: table; margin: 0px auto;"><img alt="The NGINX Plus reference implementation for LDAP authentication includes the ldap-auth daemon and a sample backend daemon" src="https://cdn-1.wp.nginx.com/wp-content/uploads/2016/02/ldap-auth-components.jpg" style="border-radius: inherit; border-style: none; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom;" /></figure></div><h2 id="Nginx:basicauthчерезSambaAD-Необходимыезависимости" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Необходимые зависимости</h2><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Модуль ngx_http_auth_request_module, согласно документации, не включен в сборку по умолчанию, но в пакетах из репозитория Nginx данный модуль присутствует. Для проверки необходимо вывести список всех модулей Nginx:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">nginx -V 2>&1 | tr ' ' '\n' | grep with-http_auth_request_module</code></pre><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Для работы демона ldap‑auth daemon необходима библиотека python-ldap – установить её можно через пакетный менеджер python – pip. Но для этого потребуется установить на сервер следующие зависимости:<ul style="box-sizing: border-box; list-style: none; margin: 0px 0px 0px 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">компилятор языка C</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">непосредственно python3</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">openldap-devel </li></ul></li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Помимо этого пригодится также пакет openldap-clients для тестирования подключения к LDAP-серверу в дальнейшем. Итого на сервер, где расположен Nginx, необходимо установить:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">yum install python3 gcc python3-devel openldap-devel
</code></pre><h2 id="sozdanie-polzovatelya-active-directory" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Создание пользователя Active Directory</h2><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Для возможности обращения в AD с помощью ldap‑auth daemon необходима сервисная учётная запись с правами на чтение дерева.</p><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Для создания в Microsoft AD или Samba можно воспользоваться оснасткой dsa.msc. Или же через консоль сервера в случае с Samba:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">samba-tool user add nginx</code></pre><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Также необходимо отключить срок действия учетной записи:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">samba-tool user setexpiry nginx --noexpiry</code></pre><h3 id="proverka-svyazannosti-s-ad" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 1.3em; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Проверка связанности с AD</h3><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Рекомендуется проверить напрямую через утилиту ldapsearch, есть ли возможность подключиться к AD с помощью созданной УЗ. Команда ниже выведет объекты дерева:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">ldapsearch -v -D "nginx@domain.local" -w "PASSWORD" -b "DC=domain,DC=local" -H "ldap://10.10.4.30" | head -n 40
</code></pre><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Если ошибок не возникло, можно переходить к установке демона.</p><h2 id="Nginx:basicauthчерезSambaAD-Установкаnginx-ldap-auth" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Установка nginx-ldap-auth bare metal</h2><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Демон потребляет мало ресурсов, поэтому его допустимо установить на тот же сервер, где запущен Nginx:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">curl -o /usr/bin/nginx-ldap-auth-daemon.py https://raw.githubusercontent.com/nginxinc/nginx-ldap-auth/master/nginx-ldap-auth-daemon.py
chmod +x /usr/bin/nginx-ldap-auth-daemon.py</code></pre><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Выполнить пробный запуск, задав адрес и порт:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">/usr/bin/python3 /usr/bin/nginx-ldap-auth-daemon.py --host 127.0.0.1 --port 8080
</code></pre><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Обратиться к демону через curl. В логах должно появиться что-то подобное:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">curl localhost:8080
Start listening on 127.0.0.1:8080...
127.0.0.1 - - [02/Apr/2021 17:14:08] using username/password from authorization header
127.0.0.1 - - [02/Apr/2021 17:14:08] "GET / HTTP/1.1" 401 -</code></pre><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Убедившись, что запуск выполняется корректно, для удобного последующего запуска логично будет создать systemd-юнит:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">cat > /etc/systemd/system/nginx-ldap-auth.service << EOF
[Unit]
Description=LDAP authentication helper for Nginx
After=network.target network-online.target
[Service]
Type=simple
User=nginx-ldap-auth
Group=nginx-ldap-auth
WorkingDirectory=/var/run
ExecStart=/usr/bin/python3 /usr/bin/nginx-ldap-auth-daemon.py --host 127.0.0.1 --port 8080
KillMode=process
KillSignal=SIGINT
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF</code></pre><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Стоит обратить внимание – в конфиге юнита указан отдельный пользователь nginx-ldap-auth, от имени которого будет запускаться демон. Необходимо создать данного пользователя:</p><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">adduser nginx-ldap-auth --no-create-home --shell=/bin/false
</code></pre><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Выполнить запуск демона через systemd:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">systemctl daemon-reload && systemctl start nginx-ldap-auth && systemctl enable nginx-ldap-auth
</code></pre><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">Проверить логи:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">journalctl -u nginx-ldap-auth.service -f</code></pre><h2 id="zapusk-v-docker" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Запуск в Docker</h2><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">На <a href="https://github.com/nginxinc/nginx-ldap-auth/blob/master/Dockerfile" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">гитхабе </a>представлен Dockerfile для сборки Docker-образа nginx-ldap-auth. Я немного его изменил, добавив:</p><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">non-root пользователя для запуска приложения в контейнере</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">временную зону Europe/Moscow</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">3 версию питона по умолчанию в entrypoint</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">аргументы CMD</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">ARG PYTHON_VERSION=3.9
FROM python:${PYTHON_VERSION}-alpine
RUN \
addgroup -S nginx-ldap-auth && \
adduser -S nginx-ldap-auth -G nginx-ldap-auth && \
cp -r /usr/share/zoneinfo/Europe/Moscow /etc/localtime && echo Europe/Moscow > /etc/timezone && \
apk --no-cache add openldap-dev && \
apk --no-cache add --virtual build-dependencies build-base && \
pip3 install python-ldap && \
apk del build-dependencies
COPY nginx-ldap-auth-daemon.py /usr/src/app/
WORKDIR /usr/src/app/
EXPOSE 8888
USER nginx-ldap-auth
ENTRYPOINT ["python3", "/usr/src/app/nginx-ldap-auth-daemon.py"]
CMD ["--host", "0.0.0.0", "--port", "8888"]</code></pre><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Таким образом, можно выполнять запуск командой ниже:</p><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">docker build -t nginx-ldap-auth .
docker run --name nginx-ldap-auth -p 8888:8888 -d nginx-ldap-auth</code></pre><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">А при необходимости запуска на порту, отличном от дефолтного 8888, можно изменить аргументы CMD при старте:</p><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">docker run --name nginx-ldap-auth -p 8888:888<span style="box-sizing: border-box; font-weight: bolder;">7</span> -d nginx-ldap-auth <span style="box-sizing: border-box; font-weight: bolder;">--host 0.0.0.0 --port 8887</span></code></pre><h3 id="ispolzuemye-zagolovki" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 1.3em; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Используемые заголовки</h3><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Демон nginx-ldap-auth успешно запущен, но перед дальнейшей настройкой непосредственно самого Nginx, необходимо убедиться, что запросы корректно приходят в Active Directory от nginx-ldap-auth. Для этого понадобится curl и специальные HTTP-заголовки, в которых будет передаваться вся необходимая информация для подключения к LDAP.</p><figure class="wp-block-table" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 1em; overflow-x: auto;"><div class="table-responsive" style="box-sizing: border-box; overflow-x: auto; width: 670px;"><table style="border-collapse: collapse; border-spacing: 0px; border: 1px solid rgb(204, 204, 204); margin: 20px 0px; width: 670px;"><thead style="box-sizing: border-box;"><tr style="box-sizing: border-box;"><th scope="col" style="background: rgb(238, 238, 238); border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px; text-align: left;">Параметры LDAP</th><th scope="col" style="background: rgb(238, 238, 238); border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px; text-align: left;">HTTP Header</th><th scope="col" style="background: rgb(238, 238, 238); border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px; text-align: left;">Описание</th></tr></thead><tbody style="box-sizing: border-box;"><tr style="box-sizing: border-box;"><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">basedn</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">X-Ldap-BaseDN</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;">База поиска. В большинстве случаев соответствует суффиксу каталога. Если необходимо просто авторизовать пользователя, то не нужно указывать дополнительные группы, в которые этот пользователь входит (для этого используется template). Например, <code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;"><span style="box-sizing: border-box; font-weight: bolder;">dc=domain,dc=local или cn=Users,dc=domain,dc=local</span></code></td></tr><tr style="box-sizing: border-box;"><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">binddn</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">X-Ldap-BindDN</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;">Для выполнения операции поиска в каталоге используется BIND DN, в данном параметре указывается непосредственно уникальное имя пользователя каталога. Например, <code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;"><span style="box-sizing: border-box; font-weight: bolder;">cn=root,dc=domain,dc=local</span></code></td></tr><tr style="box-sizing: border-box;"><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">bindpasswd</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">X-Ldap-BindPass</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;">Пароль пользователя </td></tr><tr style="box-sizing: border-box;"><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">cookiename</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">X-CookieName</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;">Авторизация на основе файлов кук, необязательный параметр. При использовании basic auth игнорируется.</td></tr><tr style="box-sizing: border-box;"><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">realm</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">X-Ldap-Realm</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;">Имя realm, необязательный параметр, используется по умолчанию значение <span style="box-sizing: border-box; font-weight: bolder;">Restricted.</span></td></tr><tr style="box-sizing: border-box;"><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">template</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">X-Ldap-Template</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;">Шаблон, по которому будет происходить выборка. Можно настраивать различные конфигурации. Например, для OpenLDAP подойдет такой шаблон: <span style="box-sizing: border-box; font-weight: bolder;">(cn=%(username)s), а для AD – (SAMAccountName=%(username)s)</span> – это базовый шаблон, который просто выполняет поиск пользователя по каталогу.</td></tr><tr style="box-sizing: border-box;"><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">url</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;"><code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">X-Ldap-URL</code></td><td style="border: 1px solid rgb(204, 204, 204); box-sizing: border-box; padding: 7px 12px;">Адрес подключения к LDAP-серверу. Например, ldap://10.10.4.30:389 или ldaps://10.10.4.30:636</td></tr></tbody></table></div></figure><h3 id="Nginx:basicauthчерезSambaAD-Проверкаработы" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 1.3em; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Проверка работы</h3><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Определившись с заголовками, можно выполнить проверку через curl, передав минимальные параметры: адрес AD, наименование домена, логин\пароль и простой шаблон:</p><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">curl --location --request GET 'http://localhost:8080' \
--header 'X-Ldap-URL: ldap://10.10.4.30' \
--header 'X-Ldap-BaseDN: DC=domain,DC=local' \
--header 'X-Ldap-BindDN: nginx@domain.local' \
--header 'X-Ldap-BindPass: STRONG_PASS' \
--header 'X-Ldap-Template: (SAMAccountName=%(username)s)' -vv -u nginx:STRONG_PASS
</code></pre><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">В ответ должен поступить 200 код, т.е. подключение успешно устанавливается от имени созданного пользователя:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">* About to connect() to localhost port 8080 (#0)
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 8080 (#0)
* Server auth using Basic with user 'nginx'
> GET / HTTP/1.1
> Authorization: Basic efVnsdfuZ2DpQaEFhDFsdxM0tMZVRmdWfg0
> User-Agent: curl/7.29.0
> Host: localhost:8080
> Accept: */*
> X-Ldap-URL: ldap://10.10.4.30
> X-Ldap-BaseDN: DC=domain,DC=local
> X-Ldap-BindDN: nginx@domain.local
> X-Ldap-BindPass: STRONG_PASS
> X-Ldap-Template: (SAMAccountName=%(username)s)
>
* HTTP 1.0, assume close after body
< HTTP/1.0 200 OK
< Server: BaseHTTP/0.6 Python/3.6.8
< Date: Mon, 05 Apr 2021 10:01:42 GMT
<
* Closing connection 0</code></pre><blockquote class="wp-block-quote is-style-warning" style="background: rgb(255, 244, 212); border-bottom-color: rgb(90, 128, 177); border-left: none !important; border-radius: 0px 6px 6px 0px; border-right-color: rgb(90, 128, 177); border-top-color: rgb(90, 128, 177); box-sizing: border-box; clear: both; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 35px 0px 35px -70px; overflow-wrap: break-word; padding: 20px 30px 20px 70px; position: relative;"><p style="box-sizing: border-box; margin: 12px 0px;">В случае ошибки вида Error while binding as search user: {‘msgtype’: 97, ‘msgid’: 1, ‘result’: 8, ‘desc’: ‘<span style="box-sizing: border-box; font-weight: bolder;">Strong(er) authentication required</span>‘, ‘ctrls’: [], ‘info’: ‘BindSimple: Transport encryption required.’} необходимо добавить в конфиг smb.conf строку “ldap server require strong auth = no”, <span style="box-sizing: border-box; font-weight: bolder;">но делать так для production не рекомендуется.</span></p></blockquote><h2 id="Nginx:basicauthчерезSambaAD-КонфигурацияNginx" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Конфигурация Nginx</h2><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Наконец, можно выполнять настройку веб-сервера. Для удобства будет создана директория, в которой необходимо расположить конфиг для авторизации через AD – так его будет удобно подключать в необходимый контекст. Ну, или разместить по своему усмотрению:</p><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">mkdir -p /etc/nginx/conf.d/nginx-ldap-auth
cat > /etc/nginx/conf.d/nginx-ldap-auth/nginx-ldap-auth.conf << EOF
location = /auth {
internal;
#proxy_cache auth_cache;
proxy_cache_valid 200 10m;
proxy_cache_key "$http_authorization$cookie_nginxauth";
proxy_pass_request_body off;
proxy_set_header Content-Length "";
proxy_pass http://127.0.0.1:8080;
proxy_set_header X-Ldap-URL "ldap://10.10.4.30:389";
proxy_set_header X-Ldap-BaseDN "DC=domain,DC=local";
proxy_set_header X-Ldap-BindDN "nginx@domain.local";
proxy_set_header X-Ldap-BindPass "STRONG_PASS";
proxy_set_header X-Ldap-Template "(SAMAccountName=%(username)s)";
}
EOF</code></pre><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">В файле nginx-ldap-auth.conf описан location, в котором настроено:</p><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">наименование location – в данном случае /auth</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">кеширование 200 кода (через пробел можно добавить и другие коды) ответа в течение 10 минут</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">проксирование запросов на локальный адрес, где слушает nginx-ldap-auth</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">передача HTTP-заголовков для LDAP</li></ul><blockquote class="wp-block-quote is-style-warning" style="background: rgb(255, 244, 212); border-bottom-color: rgb(90, 128, 177); border-left: none !important; border-radius: 0px 6px 6px 0px; border-right-color: rgb(90, 128, 177); border-top-color: rgb(90, 128, 177); box-sizing: border-box; clear: both; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 35px 0px 35px -70px; overflow-wrap: break-word; padding: 20px 30px 20px 70px; position: relative;"><p style="box-sizing: border-box; margin: 12px 0px;">Если раскомментировать директиву “proxy_cache auth_cache”, то необходимо в nginx.conf в контексте http указать директиву proxy_cache_path cache/ keys_zone=auth_cache:10m; – она задаёт путь и другие параметры кэша. Данные кэша хранятся в файлах.</p></blockquote><blockquote class="wp-block-quote is-style-warning" style="background: rgb(255, 244, 212); border-bottom-color: rgb(90, 128, 177); border-left: none !important; border-radius: 0px 6px 6px 0px; border-right-color: rgb(90, 128, 177); border-top-color: rgb(90, 128, 177); box-sizing: border-box; clear: both; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 35px 0px 35px -70px; overflow-wrap: break-word; padding: 20px 30px 20px 70px; position: relative;"><p style="box-sizing: border-box; margin: 12px 0px;">Поскольку тело запроса отбрасывается для подзапросов аутентификации, необходимо отключить директиву “proxy_pass_request_body”, а также установить для заголовка Content-Length пустую строку</p></blockquote><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">И в завершение осталось подключить в нужном контексте “server” location для авторизации через Active Directory – выделено жирным:</li></ul><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">
server {
server_name example.com
location / {
<span style="box-sizing: border-box; font-weight: bolder;">auth_request /auth;</span>
proxy_pass http://10.16.0.14:81;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
autoindex on;
}
<span style="box-sizing: border-box; font-weight: bolder;">include /etc/nginx/conf.d/nginx-ldap-auth/nginx-ldap-auth.conf;</span>
}
}</code></pre><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">В вышеописанном конфигурационном файле к обычному “location /” добавляется “auth_request /auth;” и после подключается ранее сформированный файл nginx-ldap-auth.conf. Далее остаётся проверить синтаксис и выполнить релоад Nginx:</p><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">nginx -t && nginx -s reload
</code></pre><h3 id="isklyuchenie-dlya-basic-auth" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 1.3em; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Исключение для basic auth</h3><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Удобным может тот случай, когда для доверенных адресов какую-либо авторизацию на веб-сервере можно вообще убрать – на помощь приходит директива “satisfy any”:</p><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">location / {
satisfy any;
allow 10.10.1.0/24;
auth_request /auth;
proxy_pass http://10.16.0.14:81;</code></pre><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Если пользователь пришёл с адреса из подсети 10.10.1.0/24, то satisfy разрешает доступ, если все (<code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">all</code>) или хотя бы один (<code style="box-sizing: border-box; font-family: monospace, monospace; font-size: 1em;">any</code>) из модулей <a href="https://nginx.org/ru/docs/http/ngx_http_access_module.html" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">ngx_http_access_module</a>, <a href="https://nginx.org/ru/docs/http/ngx_http_auth_basic_module.html" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">ngx_http_auth_basic_module</a>, <a href="https://nginx.org/ru/docs/http/ngx_http_auth_request_module.html" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">ngx_http_auth_request_module</a> или <a href="https://nginx.org/ru/docs/http/ngx_http_auth_jwt_module.html" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">ngx_http_auth_jwt_module</a> разрешают доступ и в таком случае пароль вводить не понадобится.</p><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Удобно сделать white-лист и подключать его через include:</p><pre class="wp-block-code" style="background: rgb(245, 247, 249); border-color: rgb(52, 152, 219); border-style: solid; border-width: 1px 1px 1px 8px; box-sizing: border-box; color: #666666; direction: ltr; font-family: "andale mono", "lucida console", monospace; font-size: 14px; font-stretch: normal; font-variant-east-asian: normal; font-variant-numeric: normal; line-height: 19px; margin-bottom: 5px; margin-top: 5px; max-height: 200px; overflow: visible scroll; padding: 10px;"><code style="box-sizing: border-box; display: block; font-family: inherit; font-size: 1em; overflow-wrap: break-word; white-space: pre-wrap;">location / {
<span style="box-sizing: border-box; font-weight: bolder;">satisfy any;</span>
<span style="box-sizing: border-box; font-weight: bolder;">include /etc/nginx/conf.d/whitelist_ip.conf;</span>
auth_request /auth;
proxy_pass http://10.16.0.14:81;
}</code></pre><h2 id="zaklyuchenie" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Заключение</h2><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">По сути вся настройка сводится к тому, что команда Nginx предоставила <a href="https://www.nginx.com/blog/nginx-plus-authenticate-users/" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">готовое решение</a> и описала общие принципы настройки, что очень удобно. К тому же, для большего удобства предоставлены Dockerfile для сборки образов и запуска nginx-ldap-auth в контейнере.</p><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Из минусов мне видится два и причём весьма существенных:</p><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">если пропадёт сетевая связанность до сервера с AD или сам сервер падёт смертью храбрых, то клиент на Nginx не сможет авторизоваться и в ответ получит 500 код. Для серьезных решений это может быть критичным моментом и стоит это учитывать. Но в теории Nginx сейчас крайне функционален и наверняка можно обыграть этот нюанс с использованием модуля njs или хитрых конструкций из директив.</li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;">аутентификация в AD происходит по протоколу LDAP, а это по сути большая дыра. В идеале использовать хотя бы NTLM или Kerberos.</li></ul><p style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; margin: 0px 0px 25px;">Также есть <a href="https://github.com/kvspb/nginx-auth-ldap" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">форк</a>, в котором есть возможность использования нескольких LDAP-серверов, что в теории должно нивелировать описанный выше минус. Но на практике не проверял.</p><h2 id="ispolzuemye-istochniki" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.1; margin: 1.5em 0px 0.5em; overflow-wrap: break-word;">Используемые источники</h2><ul style="background-color: white; box-sizing: border-box; color: #333333; font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 17px; list-style: none; margin: 1.7em 0px 1.8em 1em; padding: 0px;"><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;"><a href="https://www.nginx.com/blog/nginx-plus-authenticate-users/" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">https://www.nginx.com/blog/nginx-plus-authenticate-users/</a></li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;"><a href="http://nginx.org/en/docs/http/ngx_http_auth_request_module.html" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">http://nginx.org/en/docs/http/ngx_http_auth_request_module.html</a></li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;"><a href="https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-subrequest-authentication/" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-subrequest-authentication/</a></li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;"><a href="https://winitpro.ru/index.php/2021/03/22/nginx-active-directory-ldap-autentifikaciya/" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">https://winitpro.ru/index.php/2021/03/22/nginx-active-directory-ldap-autentifikaciya/</a></li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;"><a href="https://github.com/kvspb/nginx-auth-ldap" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">https://github.com/kvspb/nginx-auth-ldap</a></li><li style="box-sizing: border-box; margin: 0.7em 0px; padding-left: 40px;"><a href="https://github.com/nginxinc/nginx-ldap-auth" style="background-color: transparent; box-sizing: border-box; color: #428bca; cursor: pointer; text-decoration-line: none;">https://github.com/nginxinc/nginx-ldap-auth</a></li></ul><div><span style="color: #333333; font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif;"><span style="font-size: 17px;">Источник: <a href="https://it-lux.ru/nginx-basic-auth-samba-ad/" target="_blank">здесь</a></span></span></div>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-18863860961054638672022-07-25T09:18:00.001+03:002022-07-25T09:18:09.509+03:00Agile games<p> <span style="color: rgb(var(--color_14)); font-size: 25px;">Немного про свой набор игр</span></p><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; margin: 0px; outline: 0px; padding: 0px; pointer-events: auto; vertical-align: baseline;">Он пока не полный, но вдруг кому-то будет полезно. Все игры, которые я применяю, обязательно сопровождаются пояснениями - какая механика, применимая в жизни, была "отыграна". Все они не мои, кроме отрисовки карт для Agile Animal Farm. Как и всякий тренер, я адаптирую игры к командам.</p><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; margin: 0px; outline: 0px; padding: 0px; pointer-events: auto; vertical-align: baseline;"><span class="wixGuard" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span></span></span></p><a name='more'></a><p></p><ul class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; pointer-events: auto; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://www.crisp.se/gratis-material-och-guider/multitasking-name-game" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-weight: bold; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Multitasking Name Game</span></a></span> - про то, что многозадачность это не есть хорошо. <span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://www.kalenov.com/_files/ugd/7c492e_0535f7fe35f04bf7b55f3817e8b39dbf.pdf" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Русский перевод</a></span>. Потребует 30 минут вашего времени.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="http://www.leansimulations.org/2014/04/variations-of-lean-penny-game.html" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Penny Game (Coin Game)</a></span> - про поток и вытягивание, мы делали несколько модификаций для разных целей </p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Конфетное планирование - показать наше умение легко оценивать сравнительно, поесть конфет</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://www.agileverse.ru/scrumpuzzle/ru" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Scrum puzzle - игра про Scrum</a></span>, которая позволяет внимательно в нем разобраться, если у вас есть время. Зафиксировали <span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://www.agileverse.ru/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Agile Verse</a></span></p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://runevent.ru/snowflakes/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Снежинки или игра на Customer Development</a></span> - когда нужно потренироваться быть терпимым к собственному непониманию потребностей пользователя. Обратите внимание, что ценность игры в обсуждении - вопросы в разделе рефлексии в описании правил.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="http://tastycupcakes.org/es/2016/06/paint-the-story-point/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Paint the Story Point</a></span> и <span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="http://www.dayleyagile.com/2009/03/story-point-epiphany/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Zoo Points</a></span> (из книги Mike Cohn “Agile Estimation and Planning”) для тренировки относительной оценки - в «попугаях»/StoryPoints. В первой много про переоценку задач и декомпозицию, во второй больше про командную оценку (тестировщики, разработчики, дизайнеры планируют вместе). </p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://www.dropbox.com/sh/uvv6pvi453f00zu/AACu2ZA8izGBFmQkuwmA8PUaa?dl=0" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Agile Animal Farm</a></span> - про важность вовлеченности для результата. В моей рисовке. </p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Ball Point Game или её вариация <span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="http://www.slideshare.net/lvivstartup/lviv-pmday-2016-s-vladimir-ivanov-enterprise-agile-pasta" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Agile Pasta</a></span> - про самоорганизацию, PDCA и прочие Kaidzen</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="http://www.solutionsiq.com/docs/Spec-Writing-Game.pdf" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Игра в спецификации</a></span> - для понимания важности коротких коммуникаций, в последнее время реже, вошло в культуру. Как вариант "Парная игра в спецификации"</p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Игра обычно ведется в 3 кона по 1-2 минуты. Можно играть как в правилах командами, а можно парами.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Подготовка - 2 человека спиной к спине. Один заказчик, второй исполнитель. Заказчик рисует картинку - передает ее в закрытую другому заказчику по кругу (чтобы у каждого заказчика была чужая картинка).</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Первый кон - время делается пополам. Заказчик описывает ожидаемый результат, исполнитель рисует. Главное - поворачиваться и подсматривать иным способом заказчику нельзя, только рассказывать, разработчик пытается нарисовать.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Второй кон - 30 секундные итерации. Разработчику можно показывать результат. Заказчику все еще нельзя показывать картинку, но можно говорить, что не так. </p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Если хочется, то третий кон - «парная разработка»</p></li></ul></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">"Выход из подземелья" - про то, как несоблюдение даже минимального набора правил по передачи информации приводит к ее полной потере.</p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">скотчем или как-то иначе размечается поле на квадраты. 3 на 4 хватает.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">ведущий рисует схему безопасной дорожки и никому не показывает</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">все становятся спиной к квадратам кроме первого</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">все происходит молча</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Один ход: </p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">стоящий первым хлопает по плечу следующего, после чего тот поворачивается</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">стоящий первым делает шаг - если квадрат безопасный, то поднимает палец вверх, если нет, то вниз</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">если ведущий показал пальцем вниз (игрок ошибся), то игрок уходит и повторяем с начала</p></li></ul></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">повторить до перехода всех участников</p></li></ul></li></ul><ul class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; pointer-events: auto; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="http://xp123.com/articles/scrum-from-hell/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Daily Scrum from Hell (</a><a href="http://xp123.com/articles/scrum-from-hell/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Стендап-алле!</a><a href="http://xp123.com/articles/scrum-from-hell/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">)</a></span>- чтобы дать людям посмотреть со стороны на то, как они могут мешать стендапу, даже из благих побуждений. </p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Цель: Попрактиковать стендап с дисфункциями</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Время: 15-20 минут</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Упражнение для группы 6-8 участников которые стендапятся, и какого-то количества наблюдателей, которые сидят и смотрят.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Background: Расскажите о Стендапе, чтобы участники понимали смысл трех вопросов и хода встречи, опишите типовые проблемы и поведение в которых оно проявляется.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Подготовка: Подготовьте набор карта, каждая из которых содержит секретную цель:</p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Говорите глядя исключительно на СкрамМастера (игнорируйте всех остальных, кроме случая, когда вам задают вопрос напрямую)</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Опоздайте</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Скрытое затруднение: Упомяните о затруднении, не рассказывайте о нем явно</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Говорун: начните с фразы «Я просто наблюдатель», а потом расскажите о вещах не имеющих значения для группы</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Тихушник: как наблюдатель, просто скажите «Пасс» или «Я просто посмотрю» когда прийдет ваша очередь</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Задавайте уточняющие вопросы каждому чья очередь говорить</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Болтайте о всякой ерунде, пока не прийдет ваша очередь</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Постарайтесь перевести встречу на другую тему</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Попробйте решить проблему одного из участников</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Начните еще оду ветку разговоров </p></li></ul></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Ход игры:</p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Представьте, что вы команда которая делает интернет-магазин, за пару минут придумайте, какую работу вы делаете и как вы будете отвечать на 3 вопроса</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Я дам вам карточки с секретными ролями, которые прошу отиграть в процессе стендапа</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Если Скрам-мастер конкретно указал на особенность, тогда можно перестать отигрывать</p></li></ul></li></ul></li></ul><h6 class="font_6" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_13)); font-size: 22px; line-height: normal; margin: 0px; outline: 0px; padding: 0px; pointer-events: auto; vertical-align: baseline;"> </h6><h6 class="font_6" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_13)); font-size: 22px; line-height: normal; margin: 0px; outline: 0px; padding: 0px; pointer-events: auto; vertical-align: baseline;">Management 3.0</h6><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; margin: 0px; outline: 0px; padding: 0px; pointer-events: auto; vertical-align: baseline;"><a href="https://management30.com/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Management 3.0</a> от Юргена Аппело содержит множество практических инструментов, которыми я пользуюсь. Недавно, в рамках ребрендинга, русские версии материалов исчезли, поэтому я соберу здесь русские версии карточек для печати и описание своего опыта работы с ними. Пока есть:</p><ul class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 40px; outline: 0px; padding: 0px 0px 0px 1.3em; pointer-events: auto; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Delegation Poker</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Kudo Cards</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Change Agent Game</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Moving Motivators</p></li></ul><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; margin: 0px; outline: 0px; padding: 0px; pointer-events: auto; vertical-align: baseline;">Игра Change Agent Game переведена мной, буду благодарен за обратную связь.</p><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; margin: 0px; outline: 0px; padding: 0px; pointer-events: auto; vertical-align: baseline;"><span class="wixGuard" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"></span></p><ul class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); font-size: 15px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; pointer-events: auto; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://management30.com/product/delegation-poker/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Delegation Poker</a></span> (<span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://www.kalenov.com/_files/ugd/7c492e_f25cf45cd218461795e41ae49a20a5ff.pdf" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Delegation Poker на русском</a></span>)- про то, что степеней делегирования больше чем 2. На реальных задачах</p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Специфика делегирования:</p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Делегирование не бинарно</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Делегирование это двухсторонний процесс</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Делегирование зависит от контекста</p></li></ul></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Правила игры можно адаптировать, например, «начинающий» руководитель команды может носить с собой карты, чтобы явно показывать степень делегирования, когда он ставит задачу, чтобы не забыть поговорить об этом.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Не забывайте много разговаривать в процессе.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Организуйте участников в группы по 3-7 (5+-2) человек. У каждого должны быть карточки с цифрами от 1 до 7. Вы можете распечатать готовый набор или сделать их в процессе из стикеров или визиток. Если вы используете самодельные карты, то сделайте так, чтобы описание уровней было у участников перед глазами. Например, выведите на проектор.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Шаги игры:</p><ul style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; line-height: normal; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0px 0.5em; outline: 0px; padding: 0px 0px 0px 1.3em; vertical-align: baseline;"><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Один человек вытягивает ситуацию (если вы подготовились и предварительно их заготовили) или рассказывает историю из собственного опыта. Эту историю удобно заканчивать вопросом: «Какого уровня ответственности вы ожидаете от них, при...». (Пример: Вы хотите вовлечь текущих участников команды в подбор и найм новых сотрудников. Какого уровня ответственности вы ожидаете от них, при принятии решения о найме)</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Каждый игрок «втёмную» (не показывая другим игрокам) выкладывает собственную оценку степени делегирования.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Когда все выложили карты - открываем их</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Все получают столько очков, сколько написано на их карте, кроме оставшихся в меньшинстве. Делать это не обязательно. Не всегда нужна конкуренция, чтобы обсудить важные вопросы делегирования.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Участники с наименьшим и наибольшим номером объясняют свой выбор</p></li></ul></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Повторить со следующей историей.</p></li></ul></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://management30.com/practice/kudo-cards/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Kudo Cards</a></span> (<span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://www.kalenov.com/_files/ugd/7c492e_5021d57515764d75856d2e76c28d06ba.pdf" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Kudo Cards на русском)</a></span> - карточки для благодарностей. Они веселые и располагающие.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://management30.com/product/change-management-game/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">The Change Agent Game</a></span> (<span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://drive.google.com/file/d/1D2CzNpnOFpVLWfbVPN2NCQjf3D1XNWjq/view" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">русская версия карт</a></span>) - практическая сборка из многих подходов к проведению орг. изменений. Когда кто-то из коллег произносит фразу "А давайте это поменяем", перемешиваю карты и говорю - вытяни 5 любых и ответь себе на вопросы по этому изменению (аналогично, для себя :) ). Если группа планирует какое-то изменение, то тянем по 3-5 карт, один отвечает на вопрос с карты, потом обсуждение. Можно еще поиграть в режиме обмена опытом - каждый вспоминает какое-то успешное изменение и рассказывает о нем по вытянутым картам.</p></li><li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><p class="font_8" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgb(var(--color_14)); line-height: normal; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://management30.com/practice/moving-motivators/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Moving Motivators</a></span> (<span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: underline; vertical-align: baseline;"><a href="https://www.kalenov.com/_files/ugd/7c492e_5f66f5a761fb4989b17df3f030c046e5.pdf" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; cursor: pointer; margin: 0px; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;" target="_blank">Moving Motivators</a></span> на русском) - мотиваторы, собранные из трех книг по мотивации, которые позволяют поговорить о том, хорошо ли нам нам было работать на встречах один на один, составить мотивационный профиль команды и даже проверить - хорош ли ваш соцпакет :)</p></li></ul><div><span style="font-size: 15px;"><br /></span></div><div><span style="font-size: 15px;">Источник: <a href="https://www.kalenov.com/games" target="_blank">здесь</a></span></div>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-38631636423393215442022-07-22T10:34:00.005+03:002022-07-22T10:34:48.741+03:00Управление проектами<p> <span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">Женщина приходит на приём к психологу. Врач сидит за столом</span></p><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">и не отрываясь пишет чего-то в журнале.</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">- Раздевайтесь - говорит врач не переставая напряжённо писать.</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">- Простите? - удивляется пациентка.</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white;"><span style="color: #212121; font-family: Roboto, Open Sans, helvetica, arial, sans-serif;"><span style="font-size: 14px;">- Женщина, разденьтесь, положите одежду на стул и ложитесь на кушетку -</span></span></span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">говорит психолог продолжая писать.</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">Она снимает одежду, остаётся в белье и недоумевая сидит на стуле. Через</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">минуту:</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white;"><span style="color: #212121; font-family: Roboto, Open Sans, helvetica, arial, sans-serif;"><span style="font-size: 14px;">- Женщина, я просил раздеться и лечь, а не сидеть одетой. Не отвлекайте меня</span></span></span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">от работы - раздражаясь говорит доктор.</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">Женщина, краснея, раздевается, наконец догола и прикрываясь ложится на</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">кушетку, удивляясь методам современной психологии.</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">Доктор перестаёт писать, раздевается прямо за столом, потом подходит к</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">лежащей пациентке и трахает её. Закончив и одевшись он возвращается за свой</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">журнал.</span><br style="-webkit-tap-highlight-color: transparent; background-color: white; background-repeat: no-repeat; box-sizing: border-box; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px; margin: 0px; padding: 0px;" /><span style="background-color: white; color: #212121; font-family: Roboto, "Open Sans", helvetica, arial, sans-serif; font-size: 14px;">- Ну, я свои проблемы решил. Что у Вас?</span>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-56448991512444253152022-06-03T13:40:00.002+03:002022-06-03T13:40:59.233+03:00"насрать" пишется слитно, а "в жопу" - раздельно2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-78024992754490905182022-04-01T15:15:00.002+03:002022-04-01T15:15:16.405+03:00Российские альтернативы зарубежным сервисам<p> <span style="background-color: #fcfcfc; color: #3c3c3c; font-family: GraphikLC-Medium; font-size: 30px;">Вместо Zoom и Google Meet</span></p><p class="stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://webinar.ru/products/meetings/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">Webinar Meetings</span></a> — российская платформа для проведения онлайн-встреч разного формата. Позволяет подключать до 100 спикеров и до 10 тыс. участников и предлагает широкий функционал: загрузку и демонстрацию контента, интерактивные инструменты для работы с ним, запись трансляций, формирование архива и статистики по присутствию и охвату. Конференции до 15 участников бесплатны. Далее — 4796 рублей в месяц за тариф с лимитом 30 участников и 9596 рублей за тариф с лимитом 150 участников.<span></span></p><a name='more'></a><p></p><p class="stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://telemost.yandex.ru/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">«Яндекс. Телемост»</span></a> — простое решение для тех, кто пользуется почтой «Яндекса». Зайти на видеовстречу можно по ссылке, которая доступна в течение 24 часов. Конференции не ограничены по времени, но есть ограничение по количеству участников — максимум 35 человек. Явный минус — отсутствие чата.</p><p class="stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://calls.mail.ru/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">«Видеозвонки Mail.ru»</span></a> — для пользователей почты Mail.ru. Организатор создаёт видеовстречу и отправляет участникам ссылку на неё. На конференции может присутствовать до 100 человек. Ограничений по времени нет. Есть чат и функция демонстрации экрана.</p><p class="stk-theme_40573__mb_15 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 45px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://mind.com/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">Mind</span></a> — платформа для видеоконференций. К звонку может присоединиться до 200 докладчиков с видео или до 1000 участников с включённым микрофоном. На конференции можно демонстрировать экран, проводить запись и делиться ей и совместно работать на онлайн-доске.</p><p class=" stk-theme_40573__style_font_style-1596623452874 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "KazimirText-Regular"; --stk-f--b_size: 30px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "GraphikLC-Medium"; --stk-f--i_size: 30px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "GraphikLC-Medium"; --stk-f_height: 40px; --stk-f_size: 30px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: GraphikLC-Medium; font-size: 30px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 40px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;">Вместо Trello и Notion</p><p class="stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://weeek.net/ru" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">Weeek</span></a> — многофункциональный таск-менеджер с гибкой структурой. Предлагает более 50 различных возможностей. Например, можно работать в режимах календаря, канбан-досок и списка, настраивать уведомления, создавать корпоративную базу знаний, отслеживать время выполнения задач, расставлять уровни приоритетов. Платный тариф начинается от 6 человек — 590 рублей за пользователя.</p><p class="stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://ru.yougile.com/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">YouGile</span></a> — таск-трекер для проектов в виде agile-доски. Команды до 10 человек могут пользоваться им бесплатно. Если участников больше, то каждый пользователь будет стоить 333 рублей в месяц. Внутри таск-трекера можно общаться в личных и групповых чатах. Платформа позволяет настраивать роли и доступ участников, выгружать отчёты и срезы по проектам.</p><p class="stk-reset wp-exclude-emoji stk-theme_40573__mb_15" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 45px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://pyrus.com/ru" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">Pyrus</span></a> — low-code-платформа для управления задачами и бизнес-процессами. В бесплатной версии количество пользователей и задач не ограничено. Тариф с возможностью автоматизировать бизнес-процессы (например, интегрировать внешние сервисы) стоит 279 рублей за пользователя в месяц. Внутри каждой задачи есть чат для обсуждения.</p><p class=" stk-theme_40573__style_font_style-1596623452874 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "KazimirText-Regular"; --stk-f--b_size: 30px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "GraphikLC-Medium"; --stk-f--i_size: 30px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "GraphikLC-Medium"; --stk-f_height: 40px; --stk-f_size: 30px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: GraphikLC-Medium; font-size: 30px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 40px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;">Вместо Photoshop и Illustrator</p><p class="stk-reset wp-exclude-emoji stk-theme_40573__mb_15" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 45px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://alivecolors.com/ru/index.php" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">AliveColors</span></a> — графический редактор с широким инструментарием. Интерфейс будет привычен для пользователей Photoshop. Бесплатная версия имеет ограничения. Подписка на версию PRO стоит 250 рублей в месяц, или 2250 рублей в год. Также можно купить бессрочную лицензию за 9 тыс. рублей.</p><p class=" stk-theme_40573__style_font_style-1596623452874 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "KazimirText-Regular"; --stk-f--b_size: 30px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "GraphikLC-Medium"; --stk-f--i_size: 30px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "GraphikLC-Medium"; --stk-f_height: 40px; --stk-f_size: 30px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: GraphikLC-Medium; font-size: 30px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 40px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;">Вместо Slack</p><p class=" stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://www.pachca.com/messenger" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">«Пачка»</span></a> — корпоративный мессенджер, в котором есть групповые чаты и каналы, менеджер-задач и кабан-доски. Продукт позиционируется как российский аналог Slack. Начать работу на платформе могут команды от 5 человек с тарифом 199 рублей в месяц за сотрудника. Если участников больше 100, то каждый обойдётся в 99 рублей в месяц. Мессенджер доступен на Android и iOS и в веб-версии.</p><p class="stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://dlg.im/ru/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">Dialog</span></a> — корпоративный мессенджер для совместной работы. В нём можно создавать групповые чаты и каналы, обмениваться файлами, совершать аудио- и видеозвонки, оперативно находить документы с помощью поиска и настраивать чат-боты. Мессенджер интегрируется с системой корпоративной безопасности. Стоимость рассчитывается по запросу.</p><p class="stk-theme_40573__mb_15 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 45px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://www.cybrus.ru/ru/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">«Сибрус»</span></a> — защищённый корпоративный мессенджер со всем необходимым функционалом. На платформе доступны групповые чаты, аудио- и видеоконференции, обмен файлами. Для команд до 10 человек базовый функционал доступен бесплатно на год. Далее — 179 рублей за пользователя в месяц, если в команде не больше 150 участников, и 267 рублей за пользователя в месяц — без ограничений.</p><p class="stk-theme_40573__mb_15 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 45px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://tada.team/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">Tada</span></a> — корпоративный мессенджер с функциями таск-менеджера. Помимо базовых функций (звонков, сообщений и обмена файлами) платформа позволяет расшифровывать аудиосообщения до 15 секунд в текст. Любое сообщение можно превратить в задачу в один клик. Базовый план рассчитывается по цене 349 рублей в месяц за пользователя.</p><h4 class=" stk-theme_40573__style_small_header stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "KazimirText-Regular"; --stk-f--b_size: 25px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "GraphikLC-Medium"; --stk-f--i_size: 25px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "GraphikLC-Medium"; --stk-f_height: 41px; --stk-f_size: 25px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: GraphikLC-Medium; font-size: 25px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-weight: 400; height: auto; image-rendering: auto; inset: auto; line-height: 41px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;">Вместо Microsoft Office</h4><p class="stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://myoffice.ru/products/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">«МойОфис»</span></a> — мультипродуктовая платформа для общения и совместной работы с документами в облаке и офлайн на любых устройствах. Компания предлагает программы для работы с текстами, таблицами, презентациями, для анализа данных и подготовки отчётности.</p><p class=" stk-theme_40573__mb_15 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 45px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://r7-office.ru/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">«P7-офис»</span></a> — набор офисных приложений, состоящий из редакторов текста, таблиц и презентаций. Компания предлагает решения для частных лиц, организаций и учебных заведений. Облачный офис работает из браузера и не требует установки ПО. Данные хранятся на защищённом сервере российского провайдера.</p><h4 class=" stk-theme_40573__style_small_header stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "KazimirText-Regular"; --stk-f--b_size: 25px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "GraphikLC-Medium"; --stk-f--i_size: 25px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "GraphikLC-Medium"; --stk-f_height: 41px; --stk-f_size: 25px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: GraphikLC-Medium; font-size: 25px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-weight: 400; height: auto; image-rendering: auto; inset: auto; line-height: 41px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;">Вместо Getty Images и Depositphotos</h4><p class="stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px 0px 30px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://lori.ru/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">«Лори»</span></a> — крупнейший российский фотобанк с 29 разными рубриками для бизнеса, СМИ и рекламы. Стоимость фотографии зависит от размера, лицензии и тиража — от 200 до 3600 рублей за фото. Можно также приобрести так называемые «пакеты» изображений: вписав нужное количество, пользователь получает релевантное предложение. Кроме этого, на фотостоке есть видеоролики.</p><p class="stk-theme_40573__mb_2 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><a class="stk-reset" href="https://www.pressfoto.ru/" rel="nofollow" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font: inherit; height: auto; image-rendering: auto; inset: auto; letter-spacing: inherit; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: 0px; mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-decoration-line: none; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: inherit; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;" target="_blank"><span class="stk-reset" style="-webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px; border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: inherit; columns: auto auto; content: normal; cursor: pointer; filter: none; float: none; font-family: var(--stk-f--b_family),"stk"; font-size: var(--stk-f--b_size); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: var(--stk-f--b_weight); height: auto; image-rendering: auto; inset: auto; letter-spacing: var(--stk-f--b_spacing); line-height: var(--stk-f_height); list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; text-transform: var(--stk-f--b_transform); transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; word-spacing: normal; z-index: auto;">Pressfoto</span></a> предлагает миллионы фотографий, иллюстраций, векторных картинок и видео. На сайте доступно более 80 подборок. Стоимость — от 60 до 6000 рублей за фото в зависимости от размера, лицензии и тиража. Можно оформить подписку на месяц по количеству изображений.</p><p class="stk-theme_40573__mb_2 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;"><br /></p><p class="stk-theme_40573__mb_2 stk-reset wp-exclude-emoji" data-ce-tag="paragraph" style="--stk-f--b_family: "GraphikLC-Medium"; --stk-f--b_size: 18px; --stk-f--b_spacing: 0px; --stk-f--b_transform: none; --stk-f--b_weight: 400; --stk-f--i_family: "KazimirText-Regular"; --stk-f--i_size: 18px; --stk-f--i_style: regular; --stk-f--i_weight: 400; --stk-f_family: "KazimirText-Regular"; --stk-f_height: 29px; --stk-f_size: 18px; --stk-f_spacing: 0px; --stk-f_weight: 400; -webkit-font-smoothing: antialiased; -webkit-mask: none; animation: 0s ease 0s 1 normal none running none; background: 0px 0px rgb(252, 252, 252); border-radius: 0px; border: 0px; box-shadow: none; box-sizing: content-box; clear: none; clip: auto; color: #3c3c3c; columns: auto auto; content: normal; cursor: inherit; filter: none; flex: 0 0 auto; float: none; font-family: KazimirText-Regular; font-size: 18px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; height: auto; image-rendering: auto; inset: auto; line-height: 29px; list-style: none; margin: 0px; mask: none; max-height: none; max-width: none; min-height: var(--stk-f_height); mix-blend-mode: normal; opacity: 1; outline: 0px; overflow-wrap: break-word; overflow: visible; padding: 0px; pointer-events: all; position: static; quotes: none; table-layout: auto; text-align-last: auto; text-overflow: clip; text-shadow: none; text-size-adjust: none; transform-origin: 50% 50% 0px; transform: none; transition: none 0s ease 0s; vertical-align: baseline; visibility: visible; width: auto; word-break: normal; z-index: auto;">Источник: <a href="https://incrussia.ru/understand/russian-services/" target="_blank">здесь</a></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-31437703960833257992022-03-29T17:01:00.017+03:002022-03-29T17:43:38.531+03:00Ипортозамещение ПО<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEibMOquAB_OYJD2vXDVJhWccIro4D3wU2PZcpSV6wZJYl7trWp5cyrsgv35PAEsBPUxxtFqBcuN1ilE1ZQnafPOTaK4labksBNwKKYTzzXjwuGD3PZo16fs_5uDzhrjvuEYNOh6RCiMhcqKLQFAEbKty8MBPT9S1bGJNigbq_tWgnz3H6dIvSaj-8Oo" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="3297" data-original-width="1877" height="1041" src="https://blogger.googleusercontent.com/img/a/AVvXsEibMOquAB_OYJD2vXDVJhWccIro4D3wU2PZcpSV6wZJYl7trWp5cyrsgv35PAEsBPUxxtFqBcuN1ilE1ZQnafPOTaK4labksBNwKKYTzzXjwuGD3PZo16fs_5uDzhrjvuEYNOh6RCiMhcqKLQFAEbKty8MBPT9S1bGJNigbq_tWgnz3H6dIvSaj-8Oo=w596-h1041" width="596" /></a></div><br /><p></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-66033497126232234462022-03-16T18:14:00.007+03:002022-03-16T18:14:49.573+03:00Let nginx start if upstream host is unavailable or down<p>Источник: <a href="https://sandro-keil.de/blog/let-nginx-start-if-upstream-host-is-unavailable-or-down/" target="_blank">здесь</a></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-74795858307004674322022-03-14T11:05:00.025+03:002022-10-25T12:09:27.015+03:00Импортозамещение ПО<p>Сразу оговорюсь: информация не для рекламы решений, список составляю для себя. В списке могут быть как отечественные решения, так и opensource.<span></span></p><a name='more'></a><p></p><p><b>Виртуализация</b></p><p><b></b></p><div class="separator" style="clear: both; text-align: left;"><b><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjkUYtZjXbSjiISUnRQqPR9sknruz6b-_CzTJTx66VxSUu7ubPQh7OYMdLJ9PV0VVa2r2og8UO5gPIFz3irry8JHMTWh5i51Agk22l6rgA6s4Abs2-D9guXezK_9FmjruezlY9HrS_iTjckaqmKp742OgI09gcOVQHskBrWT3KiTQj4jTCdBhqgii7s" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="963" data-original-width="1307" height="236" src="https://blogger.googleusercontent.com/img/a/AVvXsEjkUYtZjXbSjiISUnRQqPR9sknruz6b-_CzTJTx66VxSUu7ubPQh7OYMdLJ9PV0VVa2r2og8UO5gPIFz3irry8JHMTWh5i51Agk22l6rgA6s4Abs2-D9guXezK_9FmjruezlY9HrS_iTjckaqmKp742OgI09gcOVQHskBrWT3KiTQj4jTCdBhqgii7s" width="320" /></a></b></div><b><br /></b><b>BI</b><p></p><p></p><p class="MsoNormal"><a href="https://ru.visiology.su/products/why-visiology">https://ru.visiology.su/products/why-visiology</a></p><p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"><a href="https://cloud.yandex.ru/services/datalens">https://cloud.yandex.ru/services/datalens</a></p><p class="MsoNormal"><o:p></o:p></p><div><a href="https://datafinder.ru/products/fine-bi" target="_blank">Fine BI</a> (Китай)<br /></div><div><br /></div><b>Трекеры</b> <div><br /></div><div>yougile.com</div><div>redmine.org<br /><p></p><p><b>ВКС</b></p><p><a href="https://www.videomost.com/videomost-saas" target="_blank"><span style="color: #2288bb;">Видеомост</span></a><o:p></o:p></p><p><a href="https://messenger-express.com/" target="_blank">eXpress</a></p><p><a href="https://www.samoware.ru/" target="_blank"><span style="color: #2288bb;">Samoware</span></a><o:p></o:p></p><p><a href="https://pruffme.com/"><span style="color: #2288bb;">Pruffme</span></a>
обзор <a href="https://vc.ru/marketing/376883-chem-zamenit-zoom-miro-i-drugie-zarubezhnye-servisy" target="_blank"><span style="color: #2288bb;">здесь</span></a><o:p></o:p></p><p class="MsoNormal"><a href="https://telemost.yandex.ru/">Яндекс.Телемост</a><o:p></o:p></p><p><a href="https://istock.link/" target="_blank"><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">Istok.Link Messenger</span></a><span lang="EN-US"> <o:p></o:p></span></p><p><span lang="EN-US"><a href="https://habr.com/ru/company/dcmiran/blog/494672/" target="_blank">Jitsi Meet</a> (opensource)</span></p><p><a href="https://mind.com/" target="_blank"><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">Mind</span></a><span lang="EN-US"><o:p></o:p></span></p><p class="MsoNormal"><a href="https://openmeetings.apache.org/" target="_blank"><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">Apache OpenMeetings</span></a><span lang="EN-US"> </span></p><p class="MsoNormal"><a href="https://rocket.chat/"><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">Rocket.Chat</span></a></p><p class="MsoNormal"><a href="https://iva-tech.ru/catalog/product-iva-connect/">IVA Connect</a></p><p class="MsoNormal"><span lang="EN-US"><a href="https://www.spreed.me/">Spreed<span lang="RU">.</span>ME</a></span><span lang="EN-US"> </span>в том числе в составе <span lang="EN-US">QNAP</span></p><p class="MsoNormal"><a href="https://pikabu.ru/story/delaem_sobstvennoe_oblako_owncloudlets_encrypt_5168269" target="_blank"><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">Nextcloud</span><span lang="EN-US" style="color: #2288bb;"> </span><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">Talk</span></a>, здесь<span lang="EN-US"> </span><a href="https://habr.com/ru/post/349556/"><span style="color: #2288bb;">по-простому</span></a></p><p class="MsoNormal"><o:p></o:p></p><p class="MsoNormal">Битрикс24 (модуль видеоконференций)</p><p class="MsoNormal"><a href="https://webinar.ru/products/meetings" target="_blank"><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">Meetings</span></a><span lang="EN-US"> </span>от<span lang="EN-US"> </span><a href="https://webinar.ru/"><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">webinar.ru</span></a></p><p class="MsoNormal"><a href="https://virtualroom.ru/" target="_blank"><span lang="EN-US" style="color: #2288bb; mso-ansi-language: EN-US;">Virtual Room</span></a></p><div><a href="https://express.ms/#section-download" target="_blank">Российская платформа корпоративных коммуникаций <b>express.ms</b></a><br /></div><div><br /></div><div>Первая форма <a href="https://1forma.ru/1f-teams" target="_blank">1F Teams</a></div><div><br /></div><div><a href="https://protei.ru/products/protei_unicom" target="_blank">ПРОТЕЙ Юником — отечественная платформа унифицированных коммуникаций (Unified Commnunications)</a><br /></div><div><br /></div><div><br /></div><div><b>Офис</b></div>OnlyOffice<br />Р7 офис<div><span style="background-color: white; font-family: Roboto, Tahoma; font-size: 16px;"><br /></span></div><div><span style="background-color: white; font-family: Roboto, Tahoma; font-size: 16px;"><span face=""Verdana Pro Light",sans-serif" style="font-size: 12pt; mso-ansi-language: RU; mso-bidi-font-family: Calibri; mso-bidi-language: AR-SA; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: EN-US;">АСМОграф вместо </span></span><span face="Verdana Pro Light, sans-serif">Microsoft Visio</span></div><p><span face=""Arial",sans-serif" style="font-size: 10pt; mso-ansi-language: RU; mso-bidi-language: AR-SA; mso-fareast-font-family: Calibri; mso-fareast-language: RU; mso-fareast-theme-font: minor-latin;"><b><br /></b></span></p><p><b style="font-size: 10pt;">СЭД, BPM, CRM</b></p>ELMA365<div><br /></div><div><br /></div><div>Коммуникационные платформы</div><div><br /></div><div>https://www.communigate.ru/main/purchase/download.html</div><div>https://www.samoware.ru/</div><div><br /></div><div><br /></div></div>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-76280696364861646962022-03-01T20:24:00.007+03:002022-03-01T20:25:25.618+03:00Rest API test tools<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgDlYiFqom_6nXp3c1AILfHywpKCRIxOprGGtf-uMJ9A0UR6_pfusN3Fh4O4hwvo2o5aWJUCGjqxXJAS4BHSFyu1zmusBxFVl4rYKOe5yRjU4Vf08l5IAvCS05NiWSJZUlcL-EUQ8STEtLdACGAf5r1CqGLFVvJh-z9hKAjFaV8OYTtHV4GDIRBhM7H=s1564" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="789" data-original-width="1564" height="201" src="https://blogger.googleusercontent.com/img/a/AVvXsEgDlYiFqom_6nXp3c1AILfHywpKCRIxOprGGtf-uMJ9A0UR6_pfusN3Fh4O4hwvo2o5aWJUCGjqxXJAS4BHSFyu1zmusBxFVl4rYKOe5yRjU4Vf08l5IAvCS05NiWSJZUlcL-EUQ8STEtLdACGAf5r1CqGLFVvJh-z9hKAjFaV8OYTtHV4GDIRBhM7H=w400-h201" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><p></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-52704929244852089262022-03-01T20:21:00.003+03:002022-03-01T20:21:17.411+03:00Построение высокодоступного кластерного хранилища на базе GlusterFS<p><br /></p><h4 style="background: rgb(255, 255, 255); color: #669999;">§ Введение</h4><p>В данном руководстве я покажу как можно использовать <a href="http://en.wikipedia.org/wiki/GlusterFS" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: #0000cc; text-decoration-line: none;">GlusterFS</a> для построения высокодоступного отказоустойчивого кластерного хранилища на базе двух серверов под управлением Ubuntu 8.04 LTS Server Edition. Хранимая информация будет реплицироваться и распространяться по всем серверам, которые выступят неким подобием RAID 10. Например, имея 4 сервера с емкостью диска 100 Гбайт, эффективное дисковое пространство в кластере составит 200 Гбайт. В случая выхода из строя одного из узлов, данные тем не менее остаются доступны и будут реплицироваться на другой работающий узел.<span></span></p><a name='more'></a><p></p><p>GlusterFS — кластерная файловая система, которая может достигать объемов в несколько петтабайт. Доступ возможен посредством Infiniband RDMA или TCP/IP. Единицы хранения могут быть построены на любой даже дешевой и ненадежной аппаратной платформе.</p><h4 style="background: rgb(255, 255, 255); color: #669999;">§ Установка</h4><p>В первую очередь необходимо установить нужный комплект ПО:<br /></p><pre><code>$ sudo apt-get install sshfs build-essential flex bison byacc vim wget </code></pre><br /><span style="background-color: white;">После этого из исходных кодов понадобится собрать и установить </span><a href="http://en.wikipedia.org/wiki/Filesystem_in_Userspace" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: #0000cc; text-decoration-line: none;">FUSE</a><span style="background-color: white;">:</span><br /><pre><code>$ wget http://europe.gluster.org/glusterfs/fuse/fuse-2.7.4glfs11.tar.gz
$ tar -zxvf fuse-2.7.4glfs11.tar.gz
$ cd fuse-2.7.4glfs11
$ ./configure && make && sudo make install</code></pre><br /><span style="background-color: white;">Теперь установим GlusterFS (также из исходных кодов):</span><br /><pre><code>$ wget http://ftp.gluster.com/pub/gluster/glusterfs/2.0/LATEST/glusterfs-2.0.0rc2.tar.gz
$ tar -zxvf glusterfs-2.0.0rc2.tar.gz
$ cd glusterfs-2.0.0rc2
$ ./configure && make && sudo make install</code></pre><br /><span style="background-color: white;">Поправим расположение библиотек:</span><br /><pre><code>ln -sf /usr/local/lib/* /usr/lib/</code></pre><br /><span style="background-color: white;">Создадим директории:</span><br /><pre><code>$ mkdir /mnt/glusterfs
$ mkdir /data/
$ mkdir /data/export
$ mkdir /data/export-ns
$ mkdir /etc/glusterfs/</code></pre><p></p><h4 style="background: rgb(255, 255, 255); color: #669999;">§ Настройка сервера</h4><p>Следует знать, что GlusterFS работает по принципу "клиент/сервер". Сделаем наши узлы и сервером и клиентом одновременно.<br />Начнем с конфигурирования серверной части. Настройку необходимо провести для всех узлов. Необходимо текстовым редактором открыть файл <code>/etc/glusterfs/glusterfs-server.vol</code> и занести в него следующее содержимое:<br /></p><pre><code>volume posix
type storage/posix
option directory /data/export
end-volume
volume locks
type features/locks
subvolumes posix
end-volume
volume brick
type performance/io-threads
option thread-count 8
subvolumes locks
end-volume
volume posix-ns
type storage/posix
option directory /data/export-ns
end-volume
volume locks-ns
type features/locks
subvolumes posix-ns
end-volume
volume brick-ns
type performance/io-threads
option thread-count 8
subvolumes locks-ns
end-volume
volume server
type protocol/server
option transport-type tcp
option auth.addr.brick.allow *
option auth.addr.brick-ns.allow *
subvolumes brick brick-ns
end-volume
</code></pre><br /><span style="background-color: white;">После выполнить команду</span><pre><code>glusterfsd -f /etc/glusterfs/glusterfs-server.vol</code></pre><span style="background-color: white;">для запуска серверной части.</span><p></p><h4 style="background: rgb(255, 255, 255); color: #669999;">§ Настройка клиента</h4><p>В нашем примере используются следующие соглашения узлы:<br /></p><pre><code>server1 : 192.168.0.1
server2 : 192.168.0.2
server3 : 192.168.0.3
server4 : 192.168.0.4</code></pre><span style="background-color: white;">и т.д..</span><br /><span style="background-color: white;">Необходимо создать конфигурацию также на всех узлах (по аналогии с настройкой серверов), отредактировав файл </span><code>/etc/glusterfs/glusterfs-client.vol</code><span style="background-color: white;"> следующим образом:</span><br /><pre><code>volume brick1
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.1
option remote-subvolume brick
end-volume
volume brick2
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.2
option remote-subvolume brick
end-volume
volume brick1-ns
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.1
option remote-subvolume brick-ns
end-volume
volume brick2-ns
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.2
option remote-subvolume brick-ns
end-volume
volume afr1
type cluster/afr
subvolumes brick1 brick2
end-volume
volume afr-ns
type cluster/afr
subvolumes brick1-ns brick2-ns
end-volume
volume unify
type cluster/unify
option scheduler rr # round robin
option namespace afr-ns
subvolumes afr1
end-volume
</code></pre><br /><span style="background-color: white;">Представленная конфигурация может быть использована для случая двух узлов (RAID 1). Для создания RAID 10 из четырех узлов следует использовать другую настройку:</span><br /><pre><code>volume brick1
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.1
option remote-subvolume brick
end-volume
volume brick2
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.2
option remote-subvolume brick
end-volume
volume brick3
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.3
option remote-subvolume brick
end-volume
volume brick4
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.4
option remote-subvolume brick
end-volume
volume brick1-ns
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.1
option remote-subvolume brick-ns
end-volume
volume brick2-ns
type protocol/client
option transport-type tcp/client
option remote-host 192.168.0.2
option remote-subvolume brick-ns
end-volume
volume afr1
type cluster/afr
subvolumes brick1 brick4
end-volume
volume afr2
type cluster/afr
subvolumes brick2 brick3
end-volume
volume afr-ns
type cluster/afr
subvolumes brick1-ns brick2-ns
end-volume
volume unify
type cluster/unify
option scheduler rr # Round-robin
option namespace afr-ns
subvolumes afr1 afr2
end-volume
</code></pre><br /><span style="background-color: white;">Остается лишь смонтировать файловые системы и пользоваться!</span><br /><code>$ glusterfs -f /etc/glusterfs/glusterfs-client.vol /mnt/glusterfs</code><p></p><h4 style="background: rgb(255, 255, 255); color: #669999;">§ Тестирование</h4><p>После того, как хранилище подключено в папку /mnt/glusterfs было проведено несколько тестов, включая имитацию сбоя (путем временного отключения одного из узлов). Оказалось, система после замены узла восстанавливается быстро и эффективно (новые данные реплицируются при первом запросе информации).</p><p>Источник: <a href="https://masters.donntu.org/2009/fvti/filenko/library/tez1.htm" target="_blank">Здесь</a></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-15121785609561404612022-02-08T10:07:00.020+03:002023-02-08T10:10:51.310+03:00Mikrotik: оповещение при регистрации устройства в сети<p> <span style="background-color: white; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">Задача стояла следующая: когда сотрудник приходит в офис - оповещать сисадмина об этом знаменательном событии. Так как сейчас все повсеместно пользуются смартфонами, то при появлении на работе сотрудника - его смартфон автоматически регистрируется в Wi-Fi сети предприятия (конечно, если у него он всегда включен). Значит по этому событию мы можем сделать оповещение.<span></span></span></p><a name='more'></a><p></p><span style="background-color: white; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">Для этого создаем скрипт:</span><br style="background-color: white; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: white; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;"># вводим локальную переменную с MAC-адресом смартфона сотрудника:</span><div><span style="background-color: white; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;"><br /></span></div><div><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:local MAC CC:CC:CC:CC:CC:CC;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:local time [/system clock get time];</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:local hour [: pick [/system clock get time] 0 2];</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:if ($hour >= 9 and $hour <= 18) do={:local MACdetect [interface wireless registration-table find mac-address=$MAC];</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:if ([:len $MACdetect]>0) do {:do {:local nameADR [/ip firewall address-list get value-name=list [find address=123.123.123.123]]} on-error={/ip firewall address-list add dynamic=yes address=123.123.123.123 list=timer timeout=08:00:00; :beep frequency=500 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=500 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=500 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=400 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 400ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=600 length=200ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 100ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=500 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=400 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 400ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=600 length=200ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 100ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=500 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 1000ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=750 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=750 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=750 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=810 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 400ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=600 length=200ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 100ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=470 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=400 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 400ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=600 length=200ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 100ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:beep frequency=500 length=500ms;</span><br style="color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;" /><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">:delay 1000ms;}}} </span></div><div><span style="background-color: #eff4fe; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;"><br /></span></div><div><span style="background-color: white; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;">Скрипт помещаем в Scheduler на отработку каждые 30 секунд. Данный метод можно применять для отслеживания подключения ноутбука или компьютера по wifi. Для отслеживания включения компьютера по проводу в Router OS есть уже встроенный функционал.</span></div><div><span style="background-color: white; color: #666666; font-family: "Trebuchet MS", Trebuchet, Verdana, sans-serif; font-size: 13.2px;"><br /></span></div><div><span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="background-color: white; font-size: 13.2px;">Источник: <a href="https://mikrotik-ukraine.blogspot.com/2016/01/blog-post_19.html" target="_blank">здесь</a></span></span></div>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-1649124772903594052022-01-24T20:08:00.005+03:002022-01-24T20:09:16.255+03:00Чукчи<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjbQjrgk9M0NebhoNN-vl-Q6aVajZU3YMsWvALtJCxGFHmOCIAb0OuheJF4ELKsQ2PnuUSXMt4t7AZsEa3nbruWPDGvWMtltA6jjvSM63qA9stBVdeFt6r6L3mcCnNLvqAlqDQuxxWHfEuLJ-FEqHiDxJpApe44pUsn62TgS9F8pOrdAyxzgayFj1oI=s4624" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4624" data-original-width="3472" height="320" src="https://blogger.googleusercontent.com/img/a/AVvXsEjbQjrgk9M0NebhoNN-vl-Q6aVajZU3YMsWvALtJCxGFHmOCIAb0OuheJF4ELKsQ2PnuUSXMt4t7AZsEa3nbruWPDGvWMtltA6jjvSM63qA9stBVdeFt6r6L3mcCnNLvqAlqDQuxxWHfEuLJ-FEqHiDxJpApe44pUsn62TgS9F8pOrdAyxzgayFj1oI=s320" width="240" /></a></div><span><a name='more'></a></span><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgWa-r-GCXfXRbZfkbqdZuyBe1Qj6t-ZlQ8-7P-Sawv0ZH0vcpNGH40ZChUg2IvrmO8FXnR7FxhmOkC1cDdT9H68-oSWbv-ww60ndMlf_suVnXV9pVhiwEOy-Zz5xfw_b4w3Oy8uHC24jTVifogRfin5_1eFvoxToxu6fs0hD9tG0UjpI45cZbZOinu=s4624" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="3472" data-original-width="4624" height="240" src="https://blogger.googleusercontent.com/img/a/AVvXsEgWa-r-GCXfXRbZfkbqdZuyBe1Qj6t-ZlQ8-7P-Sawv0ZH0vcpNGH40ZChUg2IvrmO8FXnR7FxhmOkC1cDdT9H68-oSWbv-ww60ndMlf_suVnXV9pVhiwEOy-Zz5xfw_b4w3Oy8uHC24jTVifogRfin5_1eFvoxToxu6fs0hD9tG0UjpI45cZbZOinu=s320" width="320" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEiRK8sjdixZE02ZKWRTq9Klwzc9yN2_s_4ydS8XLybadMmzNuX3HBQqBTRlh7g2f_YYZDqLBV_DtUG6RzI2UFhVjRMVijj0tJxnPEImpfG--RshjaUxZkXWJwp6QWPhg4YIvondGnTUpdftzd95tBPG2YIV8yhOYJTsYJCDFawfSmSA045fzXKIEgpP=s4624" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4624" data-original-width="3472" height="320" src="https://blogger.googleusercontent.com/img/a/AVvXsEiRK8sjdixZE02ZKWRTq9Klwzc9yN2_s_4ydS8XLybadMmzNuX3HBQqBTRlh7g2f_YYZDqLBV_DtUG6RzI2UFhVjRMVijj0tJxnPEImpfG--RshjaUxZkXWJwp6QWPhg4YIvondGnTUpdftzd95tBPG2YIV8yhOYJTsYJCDFawfSmSA045fzXKIEgpP=s320" width="240" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEi3mq8cNmgcAe-ZpUPOnNWbGMDyrHGZuQAopKKZ50eGdGH1eg8XxuJZonLEvbPN4uh72fVOjn5J-07em0kQTURD3SLDEZul87VIbPcOQiBbsZ4D1k6TLOreL5whNqyBNm9KFmuSvpfV0C4xzURlsBbX98VSilHPJ52vybsNibi-m1iMX8WvrwhlB99B=s4624" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4624" data-original-width="3472" height="320" src="https://blogger.googleusercontent.com/img/a/AVvXsEi3mq8cNmgcAe-ZpUPOnNWbGMDyrHGZuQAopKKZ50eGdGH1eg8XxuJZonLEvbPN4uh72fVOjn5J-07em0kQTURD3SLDEZul87VIbPcOQiBbsZ4D1k6TLOreL5whNqyBNm9KFmuSvpfV0C4xzURlsBbX98VSilHPJ52vybsNibi-m1iMX8WvrwhlB99B=s320" width="240" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgvfbwU_YOZOUxRx5ZkZbIQdA9rrq9UL0Wt93Bpa2CAqX_FHnEK8osG-cqCqu-eGBzXGYS8nUodZCR0krjIEc6oqnw7lbsajZajrzcfQp5hM5JMrr9lOevZj7hAdJvoa_YiVWcMN8-rz9yI0vdkWHu3lznqBbRhjtKxxyL5C8n0hC4vsnFJ0xnQf79k=s4624" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4624" data-original-width="3472" height="320" src="https://blogger.googleusercontent.com/img/a/AVvXsEgvfbwU_YOZOUxRx5ZkZbIQdA9rrq9UL0Wt93Bpa2CAqX_FHnEK8osG-cqCqu-eGBzXGYS8nUodZCR0krjIEc6oqnw7lbsajZajrzcfQp5hM5JMrr9lOevZj7hAdJvoa_YiVWcMN8-rz9yI0vdkWHu3lznqBbRhjtKxxyL5C8n0hC4vsnFJ0xnQf79k=s320" width="240" /></a></div><br /> <p></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-30935332479348238522021-12-28T18:38:00.000+03:002021-12-28T18:38:08.342+03:00.NET Интернет магазин на контейнерах<p> </p><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLyt5I-xUPCONikg52dvLnR0e8Jue8a4BQHQM37SizB-7PLgw09bGlBkI2e5otCKeOYoHS58eUoXmWlQJ79fmI5xJljH2J5kLcv-FeZ0YEvzR_f58LkoToLKFnkOcb8mjBOqE5odS2nj0/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="548" data-original-width="974" height="388" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLyt5I-xUPCONikg52dvLnR0e8Jue8a4BQHQM37SizB-7PLgw09bGlBkI2e5otCKeOYoHS58eUoXmWlQJ79fmI5xJljH2J5kLcv-FeZ0YEvzR_f58LkoToLKFnkOcb8mjBOqE5odS2nj0/w692-h388/image.png" width="692" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><span style="text-align: left;">Источник: </span><a href="https://github.com/dotnet-architecture/eShopOnContainers" style="text-align: left;" target="_blank">https://github.com/dotnet-architecture/eShopOnContainers</a></div>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0tag:blogger.com,1999:blog-3844433766803709024.post-82753322322531903822021-12-24T10:23:00.003+03:002021-12-24T10:23:34.598+03:00.Net core Windows/Linux service<p> ...</p><h3 style="background-color: white; box-sizing: border-box; color: #555555; font-family: "Roboto Slab"; font-size: 24px; font-weight: 300; line-height: 1.2; margin-bottom: 13px; margin-top: 26px;">Installing On Linux</h3><p style="background-color: white; box-sizing: border-box; color: #555555; font-family: Roboto; font-size: 16px; margin: 0px 0px 13px;">To be honest, I don’t have a hell of a lot of experience with Linux. But the general gist is…</p><p style="background-color: white; box-sizing: border-box; color: #555555; font-family: Roboto; font-size: 16px; margin: 0px 0px 13px;">Instead of installing <span class="lang:default decode:true crayon-inline " style="box-sizing: border-box;">Microsoft.Extensions.Hosting.WindowsServices</span> , you need to install <span class="lang:default decode:true crayon-inline " style="box-sizing: border-box;">Microsoft.Extensions.Hosting.Systemd</span> . And then instead of calling <span class="lang:default decode:true crayon-inline " style="box-sizing: border-box;">UseWindowsService()</span> you’ll instead call <span class="lang:default decode:true crayon-inline " style="box-sizing: border-box;">UseSystemd()</span> .</p><p style="background-color: white; box-sizing: border-box; color: #555555; font-family: Roboto; font-size: 16px; margin: 0px 0px 13px;">Obviously your dotnet publish and installation commands will vary, but more or less you can create a “Windows Service” that will also run on Linux!</p><p style="background-color: white; box-sizing: border-box; color: #555555; font-family: Roboto; font-size: 16px; margin: 0px 0px 13px;">...</p><p>Источник: <a href="https://dotnetcoretutorials.com/2019/12/07/creating-windows-services-in-net-core-part-3-the-net-core-worker-way/" target="_blank">https://dotnetcoretutorials.com/2019/12/07/creating-windows-services-in-net-core-part-3-the-net-core-worker-way/</a></p>2Uhttp://www.blogger.com/profile/17497770935878665153noreply@blogger.com0