21.09.2025
Эта статья собрана как «шпаргалка» для SOHO/SMB-сетей: частые проблемы, их симптомы, причины, быстрые решения и чек-листы диагностики. Подойдёт как для инженеров, так и для админов, кто поддерживает связку MikroTik ↔ Keenetic.
📑 Навигация
1) EoIP «замирает» при передаче больших файлов
Симптомы: SMB/FTP зависает, скорость «пилит», RDP рвётся.
Причины: неверный MTU/MSS, fast-path с IPsec, ошибки NAT/Firewall.
19.09.2025
Введение
WP-CLI — это официальная утилита командной строки для WordPress. Она позволяет управлять сайтом без входа в админ-панель: устанавливать плагины, обновлять ядро, управлять пользователями и даже выполнять миграции базы. Такой подход экономит время, позволяет автоматизировать задачи и особенно полезен администраторам, которые ведут несколько проектов.
В этой статье разберём, что такое WP-CLI, как его установить и приведём практические примеры команд.
Что такое WP-CLI?
WP-CLI (WordPress Command Line Interface) — это инструмент на PHP для работы с WordPress через терминал. Он охватывает почти все задачи, доступные в графической панели, а иногда даёт даже больше возможностей:
18.09.2025
Введение
Netplan — это утилита для декларативной настройки сети в Linux (Ubuntu, Debian и производные).
Обычно её используют для простых случаев вроде Ethernet или Wi-Fi, но она умеет гораздо больше:
- туннельные интерфейсы (IPIP, GRE, VXLAN, WireGuard),
- VLAN,
- мосты (bridges),
- связки интерфейсов (bonding).
Эти возможности позволяют строить сложные сетевые топологии — от домашних VPN до дата-центров и облачных окружений.
Туннельные интерфейсы
Туннели инкапсулируют пакеты одного протокола в другой. Используются для VPN, межсерверных соединений или изоляции сетей.
17.09.2025
Введение
Представьте: ping работает, DNS отвечает, порты открыты, mtr не показывает потерь, а curl возвращает ошибки вроде connection reset by peer или SSL handshake failed. Проблема явно есть, но стандартные утилиты бессильны.
В такие моменты остаётся посмотреть на сам трафик — то есть “послушать провода”. Этот процесс называют packet sniffing или анализом пакетов. В статье мы разберём, how to использовать три ключевых инструмента: tcpdump, sngrep и Wireshark.
tcpdump — Ухо вашего сервера 👂
tcpdump — это стандарт де-факто для захвата пакетов в Unix-системах. Он показывает “сырые” данные прямо в консоли и умеет писать дампы в файл для последующего анализа в Wireshark.
16.09.2025
Введение
До этого момента мы использовали простые утилиты для конкретных задач:
ping проверял связь,traceroute показывал маршрут,ipconfig и arp помогали с локальной сетью,telnet и nc стучались в порты.
Это как иметь отдельный молоток, отвёртку и ключ. Но иногда нужен многофункциональный инструмент. Сегодня рассмотрим три таких “комбайна”:
mtr — ping и traceroute на стероидах,nmap — универсальный сканер сети,curl — браузер в командной строке.
mtr — Трассировка в реальном времени 🚀
Что делает?
Объединяет возможности ping и traceroute. В реальном времени показывает задержку и процент потерь пакетов для каждого узла на пути.
15.09.2025
Введение
IP-адрес сервера — это почтовый адрес многоквартирного дома. Но чтобы попасть в нужную квартиру, нужно знать номер двери. В сетях такими дверями являются порты.
- HTTP работает на порту 80.
- HTTPS — на порту 443.
- Почта, базы данных и другие сервисы слушают свои собственные порты.
Если порт закрыт или на нём никто не отвечает, сайт не откроется, даже если сервер “жив”.
Сегодня научимся проверять доступность портов с помощью telnet, nc, а также посмотрим, что слушает ваш собственный компьютер с помощью netstat и ss.
14.09.2025
Введение
Вы выполнили все проверки из прошлых статей:
- Компьютер имеет правильный IP-адрес (
ipconfig). - Роутер отвечает (
ping 192.168.1.1). - Пинг до публичного адреса (
ping 8.8.8.8) проходит.
Казалось бы, интернет работает! Но в браузере google.com не открывается. 🤔
Добро пожаловать в самую частую причину подобных проблем — сбои DNS.
Что такое DNS? 📖
Интернет оперирует IP-адресами (например, 142.250.184.110), но людям удобнее использовать имена (google.com).
DNS (Domain Name System) — это глобальная “телефонная книга”, которая переводит доменные имена в IP-адреса.
Если DNS не работает — вы не попадёте на сайт, даже при исправном соединении.
13.09.2025
Введение
В прошлой статье мы научились докрикиваться до удалённых серверов с помощью ping и отслеживать путь пакетов с помощью traceroute. Но что, если ping google.com не проходит, а traceroute обрывается на первом же шаге?
Это явный признак того, что проблема рядом: в вашем компьютере, сетевом кабеле или домашнем роутере. Прежде чем звонить в техподдержку, проверим нашу собственную локальную сеть.
Сегодня мы изучим два инструмента, которые служат «паспортом» и «адресной книгой» компьютера в сети: ipconfig (или ifconfig/ip a) и arp.
11.09.2025
В этой инструкции разберём, как поднять OpenVPN-сервер на Ubuntu и подключить к нему роутер Keenetic. Такой сценарий удобен, если нужно дать доступ к домашней сети или пробросить сервисы (например, PBX или веб-сервер) через VPN.
1. Подготовка Ubuntu-сервера
1.1 Установка пакетов
sudo apt update
sudo apt install -y openvpn easy-rsa iptables-persistent
1.2 Создание PKI (Easy-RSA v3)
make-cadir ~/easy-rsa
cd ~/easy-rsa
./easyrsa init-pki
./easyrsa build-ca nopass
Серверные ключи
./easyrsa gen-req server nopass
./easyrsa sign-req server server
./easyrsa gen-dh
Клиентские ключи (для Keenetic)
./easyrsa gen-req keenetic nopass
./easyrsa sign-req client keenetic
TLS-ключ (именно tls-auth, а не tls-crypt)
openvpn --genkey secret ta.key
1.3 Разложить ключи
10.09.2025
В предыдущей статье мы развернули базовый сервер Jitsi Meet с помощью Docker.
Теперь разберём, как защитить ваш сервер, включить авторизацию и оптимизировать работу для стабильных видеозвонков.
Авторизация: доступ только по приглашению
По умолчанию Jitsi Meet позволяет любому пользователю создавать комнаты. Чтобы ограничить доступ — включим Secure Domain.
- Откройте файл
.env и найдите секцию Prosody (XMPP-сервер).ENABLE_AUTH=1
AUTH_TYPE=internal
Здесь internal означает, что пользователи будут храниться локально.
Установите модуль авторизации:
docker compose exec prosody prosodyctl register user1 meet.jitsi StrongPassword
docker compose exec prosody prosodyctl register user2 meet.jitsi StrongPassword
Перезапустите контейнеры: