DeSoft.ru
236 subscribers
116 photos
10 videos
1 file
213 links
Авторский канал: ИТ, разработка, безопасность, администрирование.

Сайт: desoft.ru
Автор: @y_demin
Download Telegram
🌐 Nmap - одна из самых популярных утилит с открытым исходным кодом для сетевого обнаружения, сканирования портов, определения ОС, сбора сведений об активных службах на хостах. Инструмент нашел свое применение в разных областях сетевого анализа как подручное средство администратора так и мощное оружие пентестера.

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

📝 Для упрощения работы с Nmap и удобного представления результатов существует ряд полезных проектов.

🔹 Zenmap - графическая оболочка для Nmap от разработчиков системы.

🔹 DrawNmap - простой визуализатор результатов сканирования.

🔥 Nmap-did-what — проект с подготовленным python скриптом для парсинга результатов Nmap с сохранением их в SQLite базу данных и docker контейнером Grafana с предварительно настроенной панелью мониторинга для визуализации данных от Nmap, источником для которого и является собранная база.

🔹 Nmap Viewer - еще один вариант визуализатора результатов сканирования Nmap.

🔹 nmap-analyze - автоматизация процесса сравнения результатов сканирования с заданной спецификацией на хост.

🔹 Nmap-Analysis - сравнение нескольких результатов сканирования, автоматическая оценка и интерпретация результатов с помощью AI.

#security #tools #nmap #полезное
👏2👍1
В комментариях к заметке про построение защищенной виртуальной сети подсказали одно из opensource решений для размещения контроллера ZeroTier на собственном сервере с полноценной админкой - ZTNET. Проект развивается уже несколько лет и успел обзавестись расширенной функциональностью по сравнению с базовыми функциями контроллера. Возникновение подобных наработок было лишь вопросом времени, поскольку разработчики ZeroTier не выкладывают в открытый доступ свою панель администратора, но предоставляют исходный код самого контроллера.

🔥 Особенности

Помимо основного назначения - создание и управление виртуальными сетями, система предоставляет целый ряд дополнительных возможностей:

Наличие docker и standalone (под Debian / Ubuntu и FreeBSD) вариантов установки.
Гибкая настройка многопользовательского доступа (роли, группы, организации).
Двухфакторная аутентификация из коробки.
Поддержка OAuth2.
Наличие REST API для интеграции.
Отправка уведомлений по списку событий через Webhook.
Подключение к SMTP серверу для почтовых уведомлений.
Создание организаций со встроенным пользовательским чатом.
BETA версия (на момент публикации v0.7.3).

⚒️ Установка с помощью docker

🔹 Забираем compose файл из репозитория
wget -O docker-compose.yml https://raw.githubusercontent.com/sinamics/ztnet/main/docker-compose.yml


✖️ Запускаю на виртуалке ради теста, поэтому домен и https не прикручиваю. Остается лишь сменить адрес в переменной окружения NEXTAUTH_URL сервиса ztnet на ip виртуалки. В документации подсказывают как это сделать с помощью sed.
sed -i "s|http://localhost:3000|http://$(hostname -I | cut -d' ' -f1):3000|" docker-compose.yml


🔹 Стартуем
docker compose up -d

Через 3000 порт доступна веб панель системы.

❗️ Первый зарегистрированный пользователь получает права администратора.

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

🔖 Standalone варианты установки представлены в документации - Debian / Ubuntu и FreeBSD.

🌐 Создание собственной планеты

Также отмеченным в комментариях был вопрос касательно публичного сервера-координатора или "планеты" от разработчиков ZeroTier, который используется zt контроллером по умолчанию. ZTNET позволяет создать собственную планету и перенаправить задачи организации сетевого взаимодействия на нее.

▪️ Открываем раздел Контроллер ZT - СОЗДАТЬ PLANET. Endpoints заполнится адресом хоста, на котором запущена система. Также можно указать адреса дополнительных резервных серверов, на которых развернут zt контроллер. Важный момент - endpoints должны быть глобальными, т.е. доступными всем клиентам сети.

▪️ Чтобы контроллер подхватил изменения, необходимо перезапустить сервис zerotier, например, так docker restart zerotier.

▪️ Чтобы клиенты смогли использовать созданную планету, скачиваем архив с параметрами - СКАЧАТЬ КОНФИГ, внутри которого найдем файл planet, который и нужно передать всем клиентам сети для применения.

▪️ Файл planet подменяется на стороне клиентского приложения ZeroTier. Инструкция по замене под разные системы здесь.

#vpn #zerotier
🔥3👍2
📦 Подборка простых, но в тоже время функциональных встраиваемых СУБД, для которых не требуется поднимать отдельный сервер. Могут размещаться в одном файле или вовсе в памяти. Доступ через специальное API, отчего получаем высокую скорость и возможности гибкой интеграции.

⚡️ Реляционные

💥 SQLite - самая популярная однофайловая СУБД.

🔥 DuckDB - PostgreSQL совместимая высоко-производительная СУБД.

📝 Документо-ориентированные

▪️ LiteDB

▪️ TinyDB

▪️ LowDB

📚 Key-Value хранилища

▫️ LevelDB - key-value хранилище с хранением на диске.

▫️ SlateDB - key-value хранилище память-s3, минуя диск.

▫️ RocksDB - ответвление от LevelDB с уклоном в производительность / быстрые хранилища.

#db #субд #tools #полезное
👍6
🔗 На фоне обострения ситуации вокруг активной борьбы разработчиков самых передовых браузеров с блокировщиками рекламы и внедрения все новых и новых методов слежки за пользователями, доверие к популярным производителям оказалось подорвано. Специалисты "Лаборатории Касперского" разобрали эту тему в своем блоге.

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

💡 Ниже приведу как предложенные варианты из статьи, так и несколько, на мой взгляд, интересных проектов, на которые стоит обратить внимание, если вопрос смены одного из важнейших инструментов пользователя стал для вас актуален.

Chrome

Arc
Brave
ungoogled-chromium


Mozilla

🔥 Zen Browser
Waterfox
LibreWolf
FireDragon
PaleMoon

#security #browser #полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2👏1
Часто стал замечать, что на практике, вместо того, чтобы воспользоваться обширными возможностями протокола SSH, ищу какие-то узкоспециализированные программы, утилиты, сервисы для реализации того или иного способа подключения, передачи данных, монтирования, прокси, удаленного выполнения команд и прочего.

В данной заметке собрал информацию по работе с SSH-туннелями, дабы освежить и/или обнаружить различные способы применения данного инструмента.

📚 Теоретические и практические гайды по SSH-туннелям

🔸 Развернутая статья про ssh-туннели от Академии Selectel
🔸 Давняя, но не потерявшая своей актуальности, статья от коллег с канала "Записки IT специалиста"
🔸 "SSH туннели на практике"
🔸 "Наглядное руководство по SSH-туннелям"
🔸 Красивый гайд с лабораториями для отработки материала
🔸 Примеры использования ssh-туннелей для решения конкретных задач
🔸 Объемный материал о продвинутых функциях ssh

⚒️ Инструменты автоматизации при работе с SSH

🔹 autossh - утилита для создания и автоматического перезапуска ssh-туннелей в случае разрыва соединения.
▫️ Инструкция 1
▫️ Инструкция 2

🔹 SSH Commander - инструмент для управления ssh-подключениями и параллельного выполнения команд сразу на нескольких серверах.

🔹 boring - менеджер ssh-туннелей для командной строки с поддержкой автоматического переподключения и удобной конфигурацией.

#ssh #полезное
👍3🔥2👏2🤝1
💥 Несколько интересных новостей из мира ИИ

💡 Docker решили не отставать от тренда и выпустили плагин для Docker Desktop для запуска ИИ моделей локально - Docker Model Runner (Quickstart).

Некоторые особенности:
▪️ Поддержка GPU
▪️ Управление из командной строки
▪️ API для интеграции
▪️ Свое хранилище моделей

⚡️ Состоялся релиз нового поколения открытых моделей - Llama 4 (Подробное описание на Хабре).

Ключевые особенности:
▫️ Мультимодальность - нативная поддержка работы с текстовыми и визуальными данными.
▫️ Новая архитектура обработки токенов, которая позволяет задействовать лишь часть параметров модели, что в свою очередь значительно снижает вычислительные затраты при сохранении качества.
▫️ Поддержка контекстного окна в 10 млн токенов.

#ai #news
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
В преддверии анонса нового инструмента из имеющихся наработок, собрал информацию о том, как и где получить ключи доступа для работы с провайдерами языковых моделей.

📌 OpenAI

‼️ Аккаунт для общения с ChatGPT - это не тот же самый аккаунт, который можно использовать для доступа к OpenAI API.

🔹 Если аккаунта на platform.openai.com нет

▪️ Зарегистрировать аккаунт на платформе OpenAI.
▪️ Следовать пошаговой инструкции, которая приведет к генерации секретного ключа, а также сообщит о необходимости пополнить счет хотя бы на 5$ для активации.

🔹 Если аккаунт есть

▪️ Подключить способ оплаты в разделе billing и пополнить счет хотя бы на 5$.
▪️ В разделе API keys создать новый ключ.
▪️ Используем сгенерированный secret key для обращения к функциям ChatGPT через API

‼️ Без указания способа оплаты и пополнения счета взаимодействовать с сервисом не получится.

🔨 Пример работы через openai python sdk
pip install openai

from openai import OpenAI

client = OpenAI(api_key="API KEY")
response = client.responses.create(
model="gpt-4o-mini",
instructions="Ты доктор физико-математических наук",
input="Сколько будет 2+2?",
temperature=0.5,
)

print(response.output_text)


📌 Grok

С Grok та же история:
▫️ Регистрируем аккаунт на x.ai.
▫️ В разделе billing подключаем способ оплаты и пополняем на сумму от 5$.
▫️ В разделе API Keys генерируем новый ключ доступа.
▫️ Обращаться к API можно через openai. Пример работы через openai python sdk.

📌 YandexGPT

▫️ Регистрируем аккаунт в Yandex Cloud.
▫️ В Yandex Cloud Billing создаем и подключаем платежный аккаунт.
▫️ В консоли управления в разделе "Облако" создаем новый каталог.
Запоминаем id каталога (идентификатор каталога указан сверху, рядом с именем каталога).
▫️ В консоли управления выбираем созданный каталог
▫️ В списке сервисов открываем Identity and Access Management
▫️ "Создать сервисный аккаунт" с назначением ему роли ai.languageModels.user.
▫️ Выбираем в списке вновь созданный сервисный аккаунт
▫️ "Создать новый ключ" - "Создать API-ключ"
▫️ Заполняем области действия ключа - для работы с языковыми моделями должен быть указан параметр yc.ai.languageModels.execute.
Запоминаем секретный ключ.

🔨 Пример работы через yandex cloud ml sdk
pip install yandex-cloud-ml-sdk

from __future__ import annotations
from yandex_cloud_ml_sdk import YCloudML

messages = [
{
"role": "system",
"text": "Ты специалист по информационной безопасности",
},
{
"role": "user",
"text": "На сколько надежным является пароль 12345?",
},
]

sdk = YCloudML(
folder_id="ID каталога",
auth="API KEY",
)

result = (
sdk.models.completions("yandexgpt").configure(temperature=0.5).run(messages)
)

for alternative in result:
print(alternative)


#ai #проекты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👏3
Пропустил по публикациям некоторое время, тестировали заготовку проекта на стыке агрегатора новостных источников и ИИ помощников. Родился следующий прототип.

🔥 DS Compost - это агрегатор Telegram-каналов и новостных лент со встроенным ИИ-помощником для удобного чтения статей и их автоматизированной обработки с помощью языковых моделей.

📌 Основные возможности
▫️ Сбор публикаций из открытых Telegram-каналов в единую новостную ленту
▫️ Преобразование контента выбранной новости с помощью ИИ для последующего использования / публикации в своем канале
▫️ Интеграция с ChatGPT и Grok
▫️ Индивидуальные промпты под каждый канал для обработки контента
▫️ Сохранение новостей в избранное
▫️ Ведение истории обработки новостей
▫️ Простая настройка и быстрое взаимодействие.
▪️ Добавляете ссылку на канал - новостная лента пополняется актуальными постами.
▪️ Добавляете ключ провайдера языковой модели - преобразовываете новости в один клик.

📌 Где найти ключи для работы с провайдерами ИИ моделей писал выше.

💡 Далее, у инструмента вижу несколько путей развития - уходить в сторону полноценного агрегатора с поддержкой RSS фидов, категориями, статусами и архивацией, в том числе на мобильном устройстве, или же двигаться по пути продвинутой работы с контентом, менеджментом постов, отложенных публикаций, рассылок и аналитическими функциями. Увидим, вырастет ли это во что-то полноценное или же пойдет в стол, как это обычно бывает 😉

#проекты #ai #rss
🔥6👍2
Опробовал в деле представленный прототип для обработки новостных публикаций через Grok. Получилось вполне неплохо, поработать немного над промптом, добавить уникальности, и будет вполне годный пересказчик дабы разбавить сухость и однотипность статей.

Несколько примеров

———————————————————————
Google представила бесплатный AI-инструмент Stitch для создания веб-интерфейсов

Google Labs выпустила новый сервис под названием Stitch, который помогает разрабатывать интерфейсы для веб-сайтов и мобильных приложений. Этот инструмент способен генерировать HTML и CSS, опираясь на текстовые описания или загруженные изображения, что упрощает процесс создания дизайна даже для новичков.

Пользователи могут настраивать свои проекты, меняя цвета и используя текстовые команды для корректировки. Stitch поддерживает экспорт в Figma и предоставляет отформатированный код для дальнейшей работы. Однако некоторые пользователи отмечают, что сгенерированные дизайны порой выглядят слишком стандартно и лишены оригинальности.

Сервис предоставляется бесплатно, но, к сожалению, недоступен для пользователей с российскими IP-адресами.

———————————————————————
Китайский стартап Flowith представил ИИ-агента NEO

Компания Flowith из Китая представила своего нового ИИ-агента NEO, который демонстрирует выдающиеся результаты, превосходя такие решения, как Manus и Operator. NEO способен выполнять более 1000 операций подряд и удерживать контекст объемом до 10 миллионов токенов.

Стоит отметить, что NEO не является полностью самостоятельной разработкой. В его основе лежат модели o3, o4-mini, GPT-4.1, Claude 3.7 Sonnet, Gemini 2.5 Pro Preview и Grok 3. Для генерации изображений агент использует DALLE-3, Flux 1.1 Pro и Recraft V3, а для создания видео — Veo 2 и Kling V2.

На данный момент NEO доступен в закрытой бета-версии с бесплатным доступом на первые две недели.

#dscompost #ai #news
👍5
Разбирался на днях с настройкой тестового домашнего сервера на базе Proxmox. Последний раз разворачивал еще на 6 версии гипервизора, текущая уже 8.4. Помониторил актуальные туториалы, чтобы найти больше информации о появившихся за это время нововведениях, а также накопившихся практиках установки и настройки.

🌐 Аккумулирую в сборник авторских роликов / плейлистов на данную тему

🔹 Стандартный набор полезных скриптов

🔹 Построение инфраструктуры с помощью Proxmox на базе ALT Linux. Глубоко, подробно, в деталях.

🔹 Руководство по установке, поднятие и настройка полезных сервисов на Proxmox

🔹 Настройка proxmox после установки, примеры, шаблоны, best practices

🔹 Еще один плейлист по Proxmox на русском. Есть что полезного подчерпнуть.

🔹 Развернуть AI модели локально на Proxmox с установкой, настройкой и пробросом дисков и видеокарты

#proxmox #полезное
👍4
💥 Павел Дуров объявил об интеграции Telegram с Grok Илона Маска

Из основных фишек, планируемых к выпуску уже в ближайших обновлениях мессенджера:

▫️ Общение с Grok в поиске
▫️ Помощь в создании и проверке постов
▫️ Модерация групп, чатов, каналов
▫️ Факт-чекинг
▫️ Генерация аватаров и 3d-анимаций

Эх.. чуть-чуть не дождались вы расширенной версии DS Compost 😁

#news
😁4🔥1
🔥 Новость разлетелась про мессенджер MAX от VK. Что известно:

▫️ Копия Telegram: чаты, группы, реакции, стикеры.
▫️ Проект поддерживает государство, включая Минцифры.
▫️ В планах объединить мессенджер и Госуслуги, по аналогии с китайским WeChat.

Взял на пробу. Первые впечатления очень даже положительные.

Работает шустро
Привычное управление и интерфейс
В помощниках GigaChat для запросов, работы с текстом, изображениями, транскрибацией аудио и видео
Полный набор клиентов (веб, десктоп, мобилка)

Beta версия
До Telegram по функциональности еще далековато (каналы, боты, платежи, покупки, реклама в планах стоят, но не завезли пока)

🔎 Нагрузки маловато на систему и возможности только базовые открыты, чтобы делать какие-то выводы, но даже в таком виде легко заменит Whatsapp, так что наблюдаем, тестируем, переводим домовые чатики на отечественную платформу 😄

#news
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2👎1
⚠️ Сегодня обновил клиента Telegram desktop до версии 5.15 на Windows 10 x64 и обнаружил неприятный баг.

🔎 При попытке открыть контекстное меню (ПКМ) на собственном сообщении в приватной группе клиент экстренно завершает работу.

В личных сообщениях и в публичных группах на своих, а также на сообщениях других пользователей контекстное меню срабатывает корректно. Точно такое же повторилось и на desktop клиенте под Linux. Если есть кто на macOS, можно тоже попробовать.

В support закинул информацию. Ожидаем hotfix.

upd: А вот и hotfix подъехал. В 5.15.1 поправили 💪

#telegram
👍4
Для централизованного сбора, управления и аналитики логов существуют серьезные решения, целые стеки, такие как PLG (Promtail, Loki, Grafana) или EFK / ELK (Elasticsearch, Kibana, Fluentd / Logstash). Однако, всегда стоит вопрос в целесообразности их применения, а также действительная необходимость в такой обширной функциональности в относительно небольших проектах.

💻 Мне зачастую не хватало простого и быстрого решения для элементарного просмотра логов с нескольких совместно трудящихся сервисов. И такое решение нашлось - легковесная self-hosted система мониторинга логов из docker контейнеров - dozzle.

Одиночный контейнер с доступом к docker.sock и все логи начинают сыпаться в кучу в реальном времени с удобным представлением в едином окне веб приложения.

❗️ Стоит отметить, что возможности собирать логи из файлов нет - только из sysout syserr потоков контейнеров по аналогии с командой docker logs.
❗️ Хранилища логов тоже нет, поэтому проанализировать полную историю не получится.

🔸 Готовим пользователя
Генерируем параметры доступа для базовой аутентификации в dozzle
docker run -it --rm amir20/dozzle generate testuser --password testpassword --email test@test.test --name "Test User" > data/users.yml


Получаем в выходном файле структуру вида
users:
testuser:
email: test@test.test
name: Test User
password: $2a$11$GstVlSugO7SmT0EV/RkU2ubm2qhXfuC1lWGd8FYIrV/Lg2cjKnro.
filter: ""

где password - bcrypt hash от пароля.

🔸 Заполняем compose
Итоговый compose будет выглядеть следующим образом
services:
dozzle:
image: amir20/dozzle:latest
container_name: dozzle
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ${HOME}/services/dozzle/data:/data
ports:
- 8080:8080
environment:
DOZZLE_AUTH_PROVIDER: simple
DOZZLE_ENABLE_ACTIONS: true
DOZZLE_NO_ANALYTICS: true
healthcheck:
test: ["CMD", "/dozzle", "healthcheck"]
interval: 3s
timeout: 30s
retries: 5
start_period: 30s

${HOME}/services/dozzle/data - каталог с созданным ранее users.yml
DOZZLE_AUTH_PROVIDER: simple - базовая аутентификация
DOZZLE_ENABLE_ACTIONS: true - включаем кнопки управления контейнерами (старт, стоп, перезапуск) в ui
DOZZLE_NO_ANALYTICS: true - отключаем сбор и отправку аналитики, потому что
Dozzle collects anonymous user configurations using a simple beacon written in Go.
Dozzle sends anonymous data to DigitalOcean, where it is written to a flat file for processing.


🔸 Запускаем
docker compose up -d

Идем в веб приложение на 8080 и наблюдаем статистику использования ресурсов, ленту логов с поиском и даже сплит-окна.

🔎 Из дополнительных возможностей

▪️ Подключение к удаленным хостам через агентов
▪️ Группировка контейнеров с помощью labels
▪️ Фильтрация списка отслеживаемых контейнеров

#logs #tools #selfhosted
👍4🔥2👏1
Продолжил настройку тестового сервера на базе Proxmox (подборку туториалов см. здесь). В версии 8.1 была добавлена поддержка SDN (Software Defined Networks) или программно-определяемые сети. SDN работает на программном уровне и обеспечивает централизованный контроль и управление сетью, что привносит гибкость в принятии решений при построении и обслуживании виртуальной инфраструктуры.

Лишнего сетевого оборудования в наличии не осталось, да и сетевая карта у сервера только одна, так что решил опробовать SDN для изоляции нескольких групп виртуальных машин и контейнеров друг от друга в рамках всего одной ноды.

📌 Установка

🔹 Ставим сетевой пакет для поддержки SDN (по умолчанию установлен на версиях 8.1 и выше)
apt update
apt install libpve-network-perl

Проверяем наличие следующей записи в конце конфигурационного файла /etc/network/interfaces
source /etc/network/interfaces.d/*

🔹 Для поддержки DHCP в SDN proxmox использует dnsmasq. Устанавливаем и отключаем сервис по умолчанию.
apt install dnsmasq
systemctl disable --now dnsmasq

🔹 Перезагружаемся. Проверяем наличие раздела SDN в параметрах дата-центра proxmox.

📌 Создание виртуальной сети
Для рассматриваемого случая мне достаточно было настроить самый простой вариант сети на базе изолированного моста.

🔹 Идем в раздел SDN - Zones и добавляем новую зону типа Simple.
▪️ В advanced не забываем проставить галочку automatic DHCP, если ожидаем работу DHCP-сервера в заданной сетевой зоне.

🔹 В разделе SDN - VNets добавляем новую сеть в созданную ранее зону.
▪️ Тут же станет доступной опция создания подсети в соседнем окне. Задаем адрес сети и шлюз (в моем случае 192.168.50.1/24 и 192.168.50.1).
▪️ Для того, чтобы хосты подсети имели доступ в интернет, включаем SNAT (Source-NAT).
▪️ На вкладке DHCP Ranges можно настроить диапазон назначаемых адресов.

🔹 В разделе SDN применяем все внесенные изменения (Apply). Новая зона появится в списке SDN сетей, а для подключения к виртуальной сети в списке устройств станет доступен новый мост с именем этой сети.

📚 Дополнительные материалы по теме

▪️ Официальный туториал от разработчиков Proxmox
▪️ Большая статья по настройке Proxmox кластера на VDS, в том числе с конфигурацией зоны SDN VLAN

P. S. В качестве альтернативы для такой простой задачи можно было использовать логическую сегментацию с помощью VLAN. Достаточно добавить vlan теги в параметрах своего роутера, включить vlan aware и указать теги vlan в параметрах сетевого оборудования виртуалок, что позволит быстро и просто разграничить доступ.

#proxmox
👍7
🚀 Если вы до сих пор используете ИИ модель по умолчанию, которую предложит чат, или просто самую свежую версию для любых задач, то рекомендую к просмотру ролик, где автор рассказывает о предназначении каждой из моделей ChatGPT, описывает задачи, для которых лучше использовать ту или иную версию, подчеркивает их плюсы и минусы.

🌐 Видео

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

🌐 Видео

#ai
👍3