Перейти к содержанию

Операционные системы

Операционные системы, кроссплатформенные программы, системы. Unix, Linux, Windows, MacOS и т д.

25 Темы 53 Сообщения

Подкатегории


  • Раздел «Операционные системы Windows»: обсуждение Windows 10/11, Server, установки, обновлений, оптимизации. Решение ошибок, настройка PowerShell, WSL, Hyper-V. Советы по безопасности, драйверам, автоматизации. Обмен опытом, кейсы, лучшие практики.

    4 14
    4 Темы
    14 Сообщения
    kirilljsxK
    [image: 1766992094132-a86f243d-7562-4cd2-89cc-f6e181470d32-image.webp] Для повышения конфиденциальности и безопасности в интернете Windows 11 позволяет использовать DNS через HTTPS (DoH) для шифрования DNS-запросов, которые ваш компьютер отправляет во время просмотра веб-страниц или выполнения любых других действий в интернете. Вот как это настроить. Зашифрованный DNS обеспечивает большую конфиденциальность и безопасность. Каждый раз, когда вы посещаете веб-сайт, используя доменное имя (например, “google.com”), ваш компьютер отправляет запрос на сервер системы доменных имен (DNS) . DNS-сервер принимает доменное имя и находит соответствующий IP-адрес в списке. Он отправляет IP-адрес обратно на ваш компьютер, который затем использует этот адрес для подключения к сайту. Традиционно процесс получения доменного имени происходил в сети без шифрования. Любой промежуточный этап мог привести к перехвату доменных имен посещаемых вами сайтов. При использовании DNS через HTTPS , также известного как DoH, обмен данными между вашим компьютером и DNS-сервером с поддержкой DoH осуществляется в зашифрованном виде. Никто не сможет перехватить ваши DNS-запросы, чтобы отслеживать посещаемые вами адреса или изменять ответы от DNS-сервера. Сначала выберите поддерживаемый бесплатный DNS-сервис. Начиная с момента выхода Windows 11, DNS через HTTPS в Windows 11 работает только с определенным жестко заданным списком бесплатных DNS-сервисов (вы можете сами увидеть этот список, выполнив команду netsh dns show encryption в окне терминала ). Вот текущий список поддерживаемых адресов служб DNS IPv4 по состоянию на ноябрь 2023-2025 года: Основной DNS-сервер Google: 8.8.8.8 Дополнительный DNS-сервер Google: 8.8.4.4 Основной DNS-сервер Cloudflare: 1.1.1.1 Вторичный DNS-сервер Cloudflare: 1.0.0.1 Основной DNS-сервер Quad9: 9.9.9.9 Вторичный DNS-сервер Quad9: 149.112.112.112 Для IPv6 ниже приведен список поддерживаемых адресов DNS-служб: Основной DNS-сервер Google: 2001:4860:4860::8888 Вторичный DNS-сервер Google: 2001:4860:4860::8844 Основной DNS-сервер Cloudflare: 2606:4700:4700::1111 Вторичный DNS-сервер Cloudflare: 2606:4700:4700::1001 Основной DNS-сервер Quad9: 2620:fe::fe Вторичный DNS-сервер Quad9: 2620:fe::fe:9 Когда придёт время включить DoH в разделе ниже, вам нужно будет выбрать две пары этих DNS-серверов — основной и дополнительный для IPv4 и IPv6 — для использования с вашим ПК под управлением Windows 11. В качестве бонуса, использование этих серверов, скорее всего, ускорит работу в интернете. Далее, включите DNS через HTTPS в Windows 11. Для начала настройки DNS через HTTPS откройте приложение «Параметры», нажав Windows+i на клавиатуре. Или вы можете щелкнуть правой кнопкой мыши кнопку «Пуск» и выбрать «Параметры» в появившемся специальном меню. [image: 1766992811604-12cac677-91a6-4fab-8c93-fe3ec42e340e-image.webp] В настройках нажмите «Сеть и Интернет» на боковой панели. В параметрах сети и Интернета выберите в списке название вашего основного интернет-соединения, например, «Wi-Fi» или «Ethernet». (Не нажимайте «Свойства» в верхней части окна — это не позволит зашифровать ваши DNS-соединения.) [image: 1766993281383-48c8d56a-6495-40b4-bd88-49647266a58c-image.webp] На странице свойств сетевого подключения выберите «Свойства оборудования». [image: 1766993307973-56326869-7531-4faf-be3b-e11c3f1e8190-image.webp] На странице свойств оборудования Wi-Fi или Ethernet найдите параметр «Назначение DNS-сервера» и нажмите кнопку «Изменить» рядом с ним. [image: 1766993890782-dab89642-2ce5-4ffe-aa56-2b34e024e1ab-image.webp] В появившемся окне с помощью выпадающего меню выберите «Ручные» настройки DNS. Затем переведите переключатель «IPv4» в положение «Вкл.». [image: 1766993385085-c919f6c3-a0fc-4b4f-a837-1e46e223cf7b-image.webp] [image: 1766993447667-4bd33eb1-1648-4962-9b22-49dd28a51f28-image.webp] В разделе IPv4 в поле «Предпочитаемый DNS» введите адрес основного DNS-сервера, выбранный вами в предыдущем разделе (например, «8.8.8.8»). Аналогично, в поле «Альтернативный DNS» введите адрес дополнительного DNS-сервера (например, «8.8.4.4»). Если вы не видите параметры шифрования DNS, значит, вы редактируете настройки DNS для вашей сети Wi-Fi. Убедитесь, что вы выбрали тип подключения в разделе «Настройки» > «Сеть и Интернет», а затем сначала нажмите «Свойства оборудования». [image: 1766993513170-e2dcb9f4-7b2c-4efd-9e92-6fc476890adb-image.webp] В том же окне установите параметр “DNS по протоколу HTTPs” в положение “Вкл.”. [image: 1766993558906-d8eeb992-897e-4891-a46e-de40c6b3ff11-image.webp] После этого повторите этот процесс с IPv6. Переведите переключатель IPv6 в положение «Вкл.», затем скопируйте основной IPv6-адрес из раздела выше и вставьте его в поле «Предпочитаемый DNS». Далее скопируйте соответствующий дополнительный IPv6-адрес и вставьте его в поле «Альтернативный DNS». Убедитесь, что DNS Over HTTPs включен, затем нажмите «Сохранить». [image: 1766993630427-f0f50a92-7290-4106-87b0-d6297268861d-image.webp] Вернувшись на страницу свойств оборудования Wi-Fi или Ethernet, вы увидите список ваших DNS-серверов, рядом с каждым из которых будет стоять отметка “(Зашифровано)”. Это все, что вам нужно сделать. Закройте приложение «Настройки», и всё готово. С этого момента все ваши DNS-запросы будут конфиденциальными и безопасными.
  • macOS Sonoma, Ventura: настройка, обновления, совместимость с M1/M2. Time Machine, iCloud, Terminal, Homebrew. Виртуализация (Parallels, VirtualBox), скрипты (AppleScript, Automator), безопасность (Gatekeeper, FileVault). Кейсы разработки (Xcode), оптимизация, решение ошибок.

    1 6
    1 Темы
    6 Сообщения
    AladdinA
    [image: 1759930060956-068ebba3-eb3a-4703-abd9-433684ca1200-image.webp]
  • Обсуждение дистрибутивов (Ubuntu, Debian, CentOS), настройки ядра, работы с терминалом, пакетными менеджерами (apt, yum), скриптами (Bash/Python). Решение проблем, виртуализация (KVM, Docker), безопасность (SELinux, iptables), серверная адмистрация. Советы, кейсы, помощь новичкам

    6 13
    6 Темы
    13 Сообщения
    MugiwaraM
    Firewall (брандмауэр) — это охранник на входе вашего сервера. Его задача — пропускать только нужный трафик и блокировать всё остальное. Представьте, что ваш сервер — это офис: Без firewall: двери открыты всем. Заходит кто угодно, включая злоумышленников. С firewall: охранник на входе проверяет каждого. Допускает только тех, у кого правильные документы (разрешённые подключения). По умолчанию в Linux установлена система iptables — это мощный инструмент фильтрации трафика на уровне ядра. Но iptables имеет сложный синтаксис. Поэтому появился ufw (Uncomplicated Firewall) — упрощённый интерфейс над iptables, который переводит простые команды в сложные iptables-правила. Важные концепции Что такое портЭто канал связи. Каждое приложение слушает трафик на своём порту. Типы портов: 0–1023 — системные (зарезервированные) порты. Требуют прав администратора. 22 — SSH (удалённое управление) 80 — HTTP (веб-сайты без шифрования) 443 — HTTPS (веб-сайты с шифрованием) 21 — FTP (передача файлов, устаревший) 25, 587 — SMTP (отправка почты) 110, 143 — POP3, IMAP (получение почты) 53 — DNS (переводит имена в IP-адреса) 1024–49151 — зарегистрированные порты. Используют приложения. 49152–65535 — динамические (ephemeral) порты. Система назначает их временно. TCP и UDP — разница Трафик по сети может идти двумя протоколами: Характеристика TCP UDP Надёжность Гарантирует доставку всех пакетов в правильном порядке Пакеты могут потеряться, но быстро Скорость Медленнее (из-за проверок) Быстрее Когда использовать SSH, HTTP, HTTPS, FTP, Email — где важна целостность данных Онлайн-игры, видеозвонки, DNS — где важна скорость Пример Вы отправляете письмо — оно должно дойти полностью Вы смотрите видео — потеря пары кадров некритична Важно: TCP-порт 22 отличается от UDP-порта 22. Это разные каналы! Stateful firewall (с отслеживанием состояния) UFW и iptables работают как stateful firewalls. Это означает, что они запоминают установленные соединения и разрешают ответные пакеты без дополнительных правил. Пример: Вы подключаетесь к серверу SSH (порт 22). После проверки первого пакета firewall запоминает это соединение. Ответный трафик от сервера пропускается автоматически, даже если нет явного разрешающего правила для него. Это значит, что вам не нужно писать два правила — одно для входящего, одно для исходящего трафика для каждого соединения. Архитектура iptables UFW работает над iptables, поэтому важно понимать его структуру. iptables ├── Таблицы (tables) │ ├── filter (фильтрация трафика) — **используется в 99% случаев** │ ├── nat (преобразование адресов) │ ├── mangle (изменение пакетов) │ ├── raw (исключения из отслеживания) │ └── security (правила безопасности) │ └── Цепи (chains) — последовательности правил ├── INPUT (входящий трафик) ├── OUTPUT (исходящий трафик) └── FORWARD (форвардинг через машину, как роутер) Таблица filter Таблица filter — это то, где вы выполняете классическую фильтрацию: INPUT — пакеты, пришедшие на ваш сервер Внешний хост → [Твой сервер] (INPUT правила применяются здесь) Используется для блокировки/разрешения входящих подключений (SSH, HTTP, HTTPS). OUTPUT — пакеты, отправляемые вашим сервером [Твой сервер] → (OUTPUT правила применяются здесь) → Внешний хост По умолчанию разрешены все исходящие пакеты. Можно запретить, если нужна максимальная безопасность. FORWARD — пакеты, которые проходят через вашу машину (используется только если вы настраиваете маршрутизацию) Сеть A → [Твой сервер как роутер] → (FORWARD правила) → Сеть B Для обычного сервера FORWARD не используется. Порядок применения правил Правила проверяются сверху вниз до первого совпадения. Как только найдено правило, применяется его действие и дальше проверок не идёт. Важно: порядок правил критичен! Правило 1: DENY из 10.0.0.37 Правило 2: ALLOW из сети 10.0.0.0/24 Если 10.0.0.37 подключится, сработает правило 1 и соединение заблокируется. Правило 2 никогда не сработает для этого IP. Если поменять местами: Правило 1: ALLOW из сети 10.0.0.0/24 Правило 2: DENY из 10.0.0.37 Тогда 10.0.0.37 будет разрешен по правилу 1, правило 2 игнорируется. UFW — интерфейс для новичков Начало работы с UFW UFW по умолчанию отключен. Перед включением обязательно добавьте правило для SSH (иначе заблокируете себя!): sudo ufw allow 22 sudo ufw enable Проверить статус: sudo ufw status verbose Вывод будет примерно такой: Status: active Default: deny incoming, allow outgoing, disabled routed Это означает: deny incoming — по умолчанию все входящие пакеты блокируются allow outgoing — исходящий трафик разрешён disabled routed — форвардинг отключен Основной синтаксис UFW sudo ufw allow <PORT>[/<PROTOCOL>] [from <IP|NETWORK>] [to <IP>] [comment "КОММЕНТАРИЙ"] sudo ufw deny <PORT>[/<PROTOCOL>] [from <IP|NETWORK>] [to <IP>] [comment "КОММЕНТАРИЙ"] sudo ufw delete allow <PORT>[/<PROTOCOL>] [from <IP|NETWORK>] где: <PORT> — номер порта (22, 80, 443) <PROTOCOL> — tcp или udp (если не указать, применяется к обоим) <IP|NETWORK> — конкретный IP или подсеть (192.168.1.0/24) comment — описание правила (очень полезно!) Примеры правил UFW Разрешить входящий SSH со всех IP: sudo ufw allow 22/tcp comment "SSH access" или просто: sudo ufw allow ssh UFW знает имена популярных сервисов (ssh, http, https, ftp). Разрешить HTTP и HTTPS (веб-сервер): sudo ufw allow 80/tcp comment "HTTP" sudo ufw allow 443/tcp comment "HTTPS" или за раз (в версиях поновее): sudo ufw allow 80,443/tcp Запретить трафик на порт 23 (старый Telnet — небезопасен): sudo ufw deny 23/tcp comment "Block Telnet" Разрешить SSH только с конкретного IP: sudo ufw allow from 192.168.1.100 to any port 22 comment "SSH from office" Разрешить SSH с целой подсети: sudo ufw allow from 192.168.1.0/24 to any port 22 comment "SSH from internal network" Запретить конкретный IP, но разрешить остальных из подсети: sudo ufw allow from 192.168.1.0/24 to any port 22 comment "Allow network" sudo ufw insert 1 deny from 192.168.1.50 to any port 22 comment "Block one host" Вставляем правило блокировки в позицию 1 (самое начало), чтобы оно проверилось первым. Ограничить количество подключений (защита от brute-force SSH): sudo ufw limit 22/tcp comment "Rate limit SSH" Это ограничит соединения: максимум 6 подключений за 30 секунд. После превышения есть пауза перед следующей попыткой. Разрешить трафик на диапазон портов (пассивный FTP): sudo ufw allow 40000:50000/tcp comment "Passive FTP" Разрешить входящие соединения только на интерфейс eth0: sudo ufw allow in on eth0 from 10.0.0.0/24 to any port 22 Используется, если на машине несколько сетевых интерфейсов. Блокировать исходящий трафик на конкретный IP (продвинутое правило): sudo ufw deny out on eth0 to 8.8.8.8 comment "Block outgoing to Google DNS" Просмотр правил Список правил в неупорядоченном виде: sudo ufw status Вывод: Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 443/tcp ALLOW IN Anywhere Список с номерами (нужно для удаления): sudo ufw status numbered Вывод: To Action From -- ------ ---- [ 1] 22/tcp ALLOW IN Anywhere [ 2] 80/tcp ALLOW IN Anywhere [ 3] 443/tcp ALLOW IN Anywhere Подробный список с информацией о логировании: sudo ufw status verbose Удаление правил По номеру (проще): sudo ufw status numbered sudo ufw delete 2 После удаления номера остальных правил сдвигаются вверх! По полной спецификации: sudo ufw delete allow 80/tcp Спецификация должна точно совпадать с исходным правилом. Очистить все правила и отключить firewall: sudo ufw reset Подтвердите. Внимание — все правила удалятся! Логирование UFW Включить логирование: sudo ufw logging on Отключить: sudo ufw logging off Просмотреть логи: sudo tail -f /var/log/ufw.log Логи обновляются в реальном времени. Практический сценарий: настройка веб-сервера Представим, вам нужен веб-сервер с SSH-доступом. Вот как его настроить: # Добавляем правило для SSH (ОБЯЗАТЕЛЬНО ПЕРВЫМ!) sudo ufw allow 22/tcp comment "SSH access" # Включаем firewall sudo ufw enable # Добавляем HTTP sudo ufw allow 80/tcp comment "HTTP" # Добавляем HTTPS sudo ufw allow 443/tcp comment "HTTPS" # Проверяем результат sudo ufw status numbered Вывод: To Action From -- ------ ---- [ 1] 22/tcp ALLOW IN Anywhere [ 2] 80/tcp ALLOW IN Anywhere [ 3] 443/tcp ALLOW IN Anywhere Всё остальное блокируется автоматически! Хотим запретить HTTP (оставить только HTTPS): sudo ufw delete allow 80/tcp Результат: To Action From -- ------ ---- [ 1] 22/tcp ALLOW IN Anywhere [ 2] 443/tcp ALLOW IN Anywhere iptables — мощь и сложность Если UFW не справляется — нужен iptables. Это база под UFW. Просмотр iptables-правил Список всех правил в filter-таблице: sudo iptables -L -v -n Флаги: -L — list (показать) -v — verbose (подробно) -n — numeric (показывать IP вместо имён хостов, быстрее) Вывод: Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 Chain FORWARD (policy ACCEPT) ... Chain OUTPUT (policy ACCEPT) ... Список с номерами строк (для удаления): sudo iptables -L -v -n --line-numbers Просмотреть таблицу NAT: sudo iptables -t nat -L -v -n Просмотреть таблицу mangle: sudo iptables -t mangle -L -v -n Добавление правил в iptables Синтаксис: sudo iptables -A CHAIN -p PROTOCOL --dport PORT -j ACTION где: -A CHAIN — добавить в цепь (INPUT, OUTPUT, FORWARD) -p PROTOCOL — протокол (tcp, udp, icmp) --dport PORT — дестинационный порт (куда идёт пакет) -j ACTION — действие (ACCEPT, DROP, REJECT) Разрешить входящий SSH (порт 22): sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT Разрешить входящий HTTP (порт 80): sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT Запретить входящий telnet (порт 23): sudo iptables -A INPUT -p tcp --dport 23 -j DROP Разрешить входящий трафик только с конкретного IP: sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 22 -j ACCEPT флаг -s — source (источник) Разрешить входящий трафик из подсети: sudo iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 22 -j ACCEPT Разрешить исходящий DNS (используется везде для преводл URL в IP): sudo iptables -A OUTPUT -p udp --dport 53 -j ACCEPT Разрешить ответные пакеты для уже установленных соединений: sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT флаг -m conntrack — модуль отслеживания соединений --ctstate ESTABLISHED,RELATED — пакеты из установленного соединения или связанные с ним Это критичное правило для stateful firewall! Практическое правило: начальная безопасная конфигурация # Разрешить loopback (сам с собой) sudo iptables -A INPUT -i lo -j ACCEPT sudo iptables -A OUTPUT -o lo -j ACCEPT # Разрешить ответные пакеты установленных соединений sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT sudo iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT # Разрешить SSH sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT # Разрешить HTTP и HTTPS sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT # Разрешить DNS (и входящий, и исходящий) sudo iptables -A OUTPUT -p udp --dport 53 -j ACCEPT sudo iptables -A INPUT -p udp --sport 53 -j ACCEPT # Заблокировать всё остальное (по умолчанию) sudo iptables -P INPUT DROP sudo iptables -P FORWARD DROP sudo iptables -P OUTPUT ACCEPT Последние три строки — политики по умолчанию. -P — set policy. Вставка и удаление правил в iptables Вставить в начало цепи (проверится первым): sudo iptables -I INPUT 1 -p tcp --dport 22 -j ACCEPT флаг -I вместо -A; 1 — позиция Удалить правило по номеру: sudo iptables -L -v -n --line-numbers # сначала смотрим номера sudo iptables -D INPUT 3 # удаляем 3-е правило из INPUT флаг -D — delete Удалить правило по полной спецификации: sudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT Сохранение iptables-правил Важно! Правила iptables хранятся в памяти. При перезагрузке они теряются! Сохранить текущие правила: sudo iptables-save > /etc/iptables/rules.v4 Загрузить правила при загрузке (Ubuntu/Debian): Установите пакет iptables-persistent: sudo apt-get install iptables-persistent Во время установки вас спросят, сохранять ли текущие правила. Выберите “Yes”. Правила автоматически загружатся при загрузке. Вручную загрузить правила: sudo iptables-restore < /etc/iptables/rules.v4 UFW vs iptables — что выбрать? Задача UFW iptables Базовая фильтрация на сервере Используй это Слишком сложно Простые правила для SSH, HTTP, HTTPS Идеально Много букв Нужна максимальная гибкость Ограничено Полный контроль Сложное преобразование адресов (NAT) Нет Да Вы новичок Начни с этого Страшно Вы опытный администратор Можно Предпочтительно Практический совет: Начните с UFW. Если потребуется что-то специфичное — UFW позволяет добавлять кастомные iptables-правила параллельно. Типичные ошибки и как их избежать Ошибка 1: Включить firewall, забыв добавить SSH sudo ufw enable # ОЙ! SSH не открыт! # Теперь не сможете подключиться удалённо... Решение: Всегда первым правилом добавляйте SSH: sudo ufw allow 22 sudo ufw enable Ошибка 2: Неправильный порядок правил sudo ufw allow from 192.168.1.0/24 to any port 22 sudo ufw deny from 192.168.1.50 to any port 22 IP 192.168.1.50 будет разрешен (первое правило срабатывает). Решение: Вставляйте более специфичные правила в начало: sudo ufw insert 1 deny from 192.168.1.50 to any port 22 Ошибка 3: Забыть указать протокол sudo ufw allow 22 # Разрешит ТАК И ДРУГОЙ, и UDP и TCP Иногда нужен конкретный: sudo ufw allow 22/tcp Ошибка 4: Забыть о IPv6 UFW автоматически добавляет правила для IPv6 (v6), но если отключите IPv6 в системе, сообщите UFW: sudo nano /etc/default/ufw # Найдите строку IPV6=yes, измените на no sudo ufw reload Полезные команды Проверить, какие приложения слушают какие порты: sudo netstat -tlnp # или более современно: sudo ss -tlnp Вывод покажет: LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=1234,fd=3)) LISTEN 0 128 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=5678,fd=4)) Проверить логи UFW: sudo tail -50 /var/log/ufw.log Проверить статус сервиса UFW: sudo systemctl status ufw Перезагрузить правила UFW (без перезагрузки): sudo ufw reload Итого: пошаговая инструкция для новичка Шаг 1: Добавить SSH (ОБЯЗАТЕЛЬНО!) sudo ufw allow 22/tcp comment "SSH" Шаг 2: Включить firewall sudo ufw enable Шаг 3: Добавить остальные правила по мере надобности sudo ufw allow 80/tcp comment "HTTP" sudo ufw allow 443/tcp comment "HTTPS" Шаг 4: Проверить статус sudo ufw status verbose Шаг 5: Просмотреть логи, если что-то работает неправильно sudo tail -f /var/log/ufw.log Шаг 6: Если что-то сломалось — отключить sudo ufw disable После разбора проблемы включить обратно. Полезные источники для дальшейшего изучения Официальная документация UFW: https://help.ubuntu.com/community/UFW ArchWiki про iptables: https://wiki.archlinux.org/title/Iptables man-страницы (в терминале): man ufw, man iptables
  • Все о популярных программах: Word, Excel, Photoshop и других. Советы, инструкции, обсуждение функций, лайфхаки и помощь для пользователей офисных и креативных приложений.

    14 20
    14 Темы
    20 Сообщения
    kirilljsxK
    Ох, ну и большая же инструкция по yt-dlp…