💥 WireGuard: Быстрая настройка через systemd без ifupdown и Netplan
Хочешь минимализм без танцев с бубном? Вот как быстро поднять WireGuard-туннель чисто через systemd — особенно удобно на серверах без NetworkManager.
📌 1. Создай конфиг
⚠️ Убедись, что
📌 2. Активируй через systemd:
👉 Это создаст интерфейс
📌 3. Проверка статуса:
Покажет активные пиры, handshake, трафик и т.д.
💡 Трюк:
Если используешь
🧠 Когда использовать:
– Минималистичные серверы без NM и Netplan
– Контейнеры и чёткие systemd-based системы
– Желание поднять VPN при boot без сторонних скриптов
Сохрани, пригодится 😉
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
Хочешь минимализм без танцев с бубном? Вот как быстро поднять WireGuard-туннель чисто через systemd — особенно удобно на серверах без NetworkManager.
📌 1. Создай конфиг
/etc/wireguard/wg0.conf:
[Interface]
Address = 10.0.0.1/24
PrivateKey = <your_private_key>
ListenPort = 51820
[Peer]
PublicKey = <peer_pub_key>
AllowedIPs = 10.0.0.2/32
⚠️ Убедись, что
chmod 600 wg0.conf — приватный ключ должен быть защищён.📌 2. Активируй через systemd:
systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0
👉 Это создаст интерфейс
wg0 и применит всё из конфига.📌 3. Проверка статуса:
wg show
Покажет активные пиры, handshake, трафик и т.д.
💡 Трюк:
Если используешь
systemd-networkd, можешь вместо wg-quick собрать туннель через .netdev и .network — это даёт больше контроля и не требует wg-quick.🧠 Когда использовать:
– Минималистичные серверы без NM и Netplan
– Контейнеры и чёткие systemd-based системы
– Желание поднять VPN при boot без сторонних скриптов
Сохрани, пригодится 😉
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
👍3🔥2
🎉 Поздравляем с Днём системного администратора!
Фразы, которые сисадмин говорит вслух:
— Сейчас посмотрим.
— Уже почти готово.
— Попробуйте ещё раз.
И фразы, которые он думает:
— Перезагрузите уже наконец...
— Нет, принтер не сломан.
— Да, пароль действительно нужно вводить правильно.
Пусть сегодня никто не отвлекает по пустякам, а мониторинг будет скучным.
Фразы, которые сисадмин говорит вслух:
— Сейчас посмотрим.
— Уже почти готово.
— Попробуйте ещё раз.
И фразы, которые он думает:
— Перезагрузите уже наконец...
— Нет, принтер не сломан.
— Да, пароль действительно нужно вводить правильно.
Пусть сегодня никто не отвлекает по пустякам, а мониторинг будет скучным.
👍8❤6
💡 Как быстро сбросить зависший SSH-сеанс без ожидания таймаута
Иногда SSH-соединение замирает (например, при потере сети), и попытка закрыть его обычным
🔧 Решение: спец-последовательность OpenSSH
Нажми Enter, затем
🔍 Как это работает
👉 Другие полезные комбинации:
-
-
-
⚠️ Работает только в интерактивных SSH-сессиях, не в скриптах.
🧠 Зачем знать:
- Мгновенное закрытие зависших сессий
- Удобно при обрывах VPN/моб. сети
- Не нужен
Сохрани, пригодится в дороге или на выезде 🚀
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
Иногда SSH-соединение замирает (например, при потере сети), и попытка закрыть его обычным
Ctrl+C не работает. Не жди таймаута — есть правильный способ разорвать зависший сеанс.🔧 Решение: спец-последовательность OpenSSH
Нажми Enter, затем
~. (тильда + точка) — и SSH сразу завершится:
<Enter>~.
🔍 Как это работает
~. — escape-последовательность, встроенная в OpenSSH-клиент. Работает только в начале новой строки.👉 Другие полезные комбинации:
-
~? — список доступных escape-команд-
~# — переслать локальный порт (вручную)-
~& — фоновый режим⚠️ Работает только в интерактивных SSH-сессиях, не в скриптах.
🧠 Зачем знать:
- Мгновенное закрытие зависших сессий
- Удобно при обрывах VPN/моб. сети
- Не нужен
kill -9 на терминалеСохрани, пригодится в дороге или на выезде 🚀
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
👍2
⚠️ systemd-networkd и маршруты: частая ошибка с static routes
Если ты настраиваешь сеть через
📄 Пример
🔍 Типичная ошибка:
❌ Без
📌 Зачем и когда это нужно:
— Когда нужно направить часть трафика (например, к VPN или другим подсетям) в обход основного маршрута.
— systemd сам не всегда умеет «додумать», как доставить пакет, если маршрут не полный.
🧪 Проверь после старта:
💡Проверяй
Сохрани, чтобы не отлаживать сеть часами 😬
А ты правильно пишешь
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
Если ты настраиваешь сеть через
systemd-networkd и вручную прописываешь маршруты, будь внимателен: непрописанный gateway может сломать всё подключение.📄 Пример
.network файла с правильным static route:
[Match]
Name=eth0
[Network]
Address=192.168.1.10/24
Gateway=192.168.1.1
[Route]
Destination=10.10.0.0/16
Gateway=192.168.1.1
🔍 Типичная ошибка:
[Route]
Destination=10.10.0.0/16
❌ Без
Gateway или PreferredSource маршрут будет нерабочим или странно себя вести.📌 Зачем и когда это нужно:
— Когда нужно направить часть трафика (например, к VPN или другим подсетям) в обход основного маршрута.
— systemd сам не всегда умеет «додумать», как доставить пакет, если маршрут не полный.
🧪 Проверь после старта:
networkctl status eth0
ip route show dev eth0
💡Проверяй
journalctl -u systemd-networkd — там видно, почему не применились маршруты.Сохрани, чтобы не отлаживать сеть часами 😬
А ты правильно пишешь
[Route]?#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
👍3
🚀 Подборка полезных IT каналов в Max
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
https://max.ru/channel_win_sysadmin Системный Администратор Windows
https://max.ru/channel_linux_admin Linux: Системный администратор
https://max.ru/channel_linuxmod Linux
https://max.ru/channel_i_linux Системный администратор
https://max.ru/channel_devopslib DevOps, SRE, Sysadmin
https://max.ru/channel_devops_star DevOps Star (Звезда Девопса)
Excel лайфхак 📌
https://xn--r1a.website/Excel_lifehack Excel лайфхак
Английский с нуля 🇬🇧
https://max.ru/UchuEnglish
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://max.ru/channel_DevLab1C 1С:Предприятие 8
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
https://max.ru/channel_cpp_geek C++ geek
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Rust📌
https://max.ru/channel_rust_lib
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
https://max.ru/channel_java_geek Java Geek
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии в IT📌
https://max.ru/progjob
https://max.ru/channel_rabotait
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Городские📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
https://max.ru/channel_krasnodar_novosty Краснодар Новости
https://max.ru/channel_novosibirsk_novosti Новосибирск
https://max.ru/channel_samara_novosti Новости Самары
https://max.ru/channel_ekaterinburg_novosti Новости Екатеринбурга
https://max.ru/channel_kazan_novosti Новости Казани
https://max.ru/channel_omsk_novosti Новости Омска
https://max.ru/channel_moskva_24 Москва 24
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
https://max.ru/channel_win_sysadmin Системный Администратор Windows
https://max.ru/channel_linux_admin Linux: Системный администратор
https://max.ru/channel_linuxmod Linux
https://max.ru/channel_i_linux Системный администратор
https://max.ru/channel_devopslib DevOps, SRE, Sysadmin
https://max.ru/channel_devops_star DevOps Star (Звезда Девопса)
Excel лайфхак 📌
https://xn--r1a.website/Excel_lifehack Excel лайфхак
Английский с нуля 🇬🇧
https://max.ru/UchuEnglish
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://max.ru/channel_DevLab1C 1С:Предприятие 8
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
https://max.ru/channel_cpp_geek C++ geek
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Rust📌
https://max.ru/channel_rust_lib
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
https://max.ru/channel_java_geek Java Geek
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии в IT📌
https://max.ru/progjob
https://max.ru/channel_rabotait
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Городские📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
https://max.ru/channel_krasnodar_novosty Краснодар Новости
https://max.ru/channel_novosibirsk_novosti Новосибирск
https://max.ru/channel_samara_novosti Новости Самары
https://max.ru/channel_ekaterinburg_novosti Новости Екатеринбурга
https://max.ru/channel_kazan_novosti Новости Казани
https://max.ru/channel_omsk_novosti Новости Омска
https://max.ru/channel_moskva_24 Москва 24
MAX
Системный Администратор | Sysadmin Windows & Linux Server. …
Купить рекламу: https://telega.in/m/i_odmin
Блог практикующего админа. Настройка Windows Server, Active Directory (AD), GPO и терминальных серверов (RDP). Раб…
Блог практикующего админа. Настройка Windows Server, Active Directory (AD), GPO и терминальных серверов (RDP). Раб…
🤮1
🛡️ Быстрая проверка iptables-правил с логированием трафика
Нужно быстро понять, почему пакет не доходит? Добавь временное логирование в iptables — это упростит отладку.
💡 Шаги:
1. Вставь логирующее правило перед DROP:
👉 Меняй
2. Проверь логи (обычно
3. Удалить правило после отладки:
📌 Зачем и когда:
— Удобно при отладке фаервола, особенно при сложных правилах.
— Можно логировать и FORWARD/OUTPUT.
— Не забудь убрать, чтобы не заспамить логи!
💥 Лайфхак: добавь
🧠 Сохрани, пригодится при разборе сетевых траблов.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
Нужно быстро понять, почему пакет не доходит? Добавь временное логирование в iptables — это упростит отладку.
💡 Шаги:
1. Вставь логирующее правило перед DROP:
iptables -I INPUT -s 192.168.0.100 -j LOG --log-prefix "DROP DEBUG: " --log-level 4
👉 Меняй
-s и -j под нужное направление/адрес. 2. Проверь логи (обычно
dmesg или syslog):
dmesg | grep "DROP DEBUG"
# или
grep "DROP DEBUG" /var/log/syslog
3. Удалить правило после отладки:
iptables -D INPUT -s 192.168.0.100 -j LOG --log-prefix "DROP DEBUG: " --log-level 4
📌 Зачем и когда:
— Удобно при отладке фаервола, особенно при сложных правилах.
— Можно логировать и FORWARD/OUTPUT.
— Не забудь убрать, чтобы не заспамить логи!
💥 Лайфхак: добавь
-m limit чтобы не заливать логи:
-m limit --limit 5/min
🧠 Сохрани, пригодится при разборе сетевых траблов.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
👍2
🔥 WireGuard через systemd: автоподключение при старте + автоматический рестарт
WireGuard крут, но не всегда подключается сам при перезагрузке. Особенно, если интерфейс поднимается раньше, чем сеть. Решение — systemd-сервис с зависимостями.
📌 Настраиваем правильный автозапуск
1. Создай кастомный systemd unit:
2. Вставь следующее:
3. Перезапусти демон systemd:
4. Включи автозапуск:
5. Проверь статус:
🧠 Зачем это нужно?
-
-
⚠️ Без этого юнита туннель часто не поднимается после ребута на headless-серверах.
💡 Совет: проверь DNS внутри туннеля — в
Сохрани, пригодится 👇
#Linux@linux_odmin #VPN@linux_odmin #Systemd@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
WireGuard крут, но не всегда подключается сам при перезагрузке. Особенно, если интерфейс поднимается раньше, чем сеть. Решение — systemd-сервис с зависимостями.
📌 Настраиваем правильный автозапуск
1. Создай кастомный systemd unit:
sudo systemctl edit wg-quick@wg0
2. Вставь следующее:
[Unit]
Description=WireGuard via wg-quick for %i
After=network-online.target
Wants=network-online.target
[Service]
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
3. Перезапусти демон systemd:
sudo systemctl daemon-reexec
4. Включи автозапуск:
sudo systemctl enable wg-quick@wg0
5. Проверь статус:
systemctl status wg-quick@wg0
🧠 Зачем это нужно?
-
After=network-online.target гарантирует, что интерфейс поднимется после появления сети.-
Restart=on-failure полезен, если туннель может не подняться с первого раза (например, из-за временного недоступного пира).⚠️ Без этого юнита туннель часто не поднимается после ребута на headless-серверах.
💡 Совет: проверь DNS внутри туннеля — в
wg0.conf можно указать DNS=..., если используешь resolvconf или systemd-resolved.Сохрани, пригодится 👇
#Linux@linux_odmin #VPN@linux_odmin #Systemd@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
👍4🔥1
Диагностика “висящих” TCP-соединений: как быстро найти виновника
Когда приложение “подвисает”, а сеть вроде работает — проверь состояние TCP-соединений. Часто помогает ss.
Команда:
Покажет TCP-соединения в TIME-WAIT на 80/443 портах. Много? Возможно, приложение не успевает освобождать сокеты.
А если хочется увидеть, кто держит ESTABLISHED соединения:
Флаг -p покажет PID/имя процесса — удобно для отладки.
Ограничь количество TIME-WAIT через sysctl, если сервер под нагрузкой:
Когда использовать:
– Приложение “висит” при подключении;
– Подозрение на сетевое истощение ресурсов;
– Нужна быстрая отладка без лишнего софта.
Сохрани, пригодится в бою.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
Когда приложение “подвисает”, а сеть вроде работает — проверь состояние TCP-соединений. Часто помогает ss.
Команда:
ss -o state time-wait '( sport = :http or sport = :https )'Покажет TCP-соединения в TIME-WAIT на 80/443 портах. Много? Возможно, приложение не успевает освобождать сокеты.
А если хочется увидеть, кто держит ESTABLISHED соединения:
ss -tp state establishedФлаг -p покажет PID/имя процесса — удобно для отладки.
Ограничь количество TIME-WAIT через sysctl, если сервер под нагрузкой:
sysctl -w net.ipv4.tcp_tw_reuse=1
sysctl -w net.ipv4.tcp_fin_timeout=15Когда использовать:
– Приложение “висит” при подключении;
– Подозрение на сетевое истощение ресурсов;
– Нужна быстрая отладка без лишнего софта.
Сохрани, пригодится в бою.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
👍2
🔐 Fail2Ban для защиты SSH: настройка за 2 минуты
SSH — первая цель сканеров и брутфорсеров. Один fail2ban-джейл — и атаки больше не проблема.
🛠 Минимальная настройка fail2ban для SSH:
1. Установи fail2ban (если ещё нет):
2. Создай кастомную конфигурацию:
3. Включи и настрой SSH-защиту в
4. Перезапусти fail2ban:
5. Проверка работы:
👀 Что это даёт:
– Блокирует IP после нескольких неудачных попыток входа.
– Автоматическая защита от брутфорса 24/7.
– Простая интеграция с iptables/nftables.
💡 Трюк: Используй
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
SSH — первая цель сканеров и брутфорсеров. Один fail2ban-джейл — и атаки больше не проблема.
🛠 Минимальная настройка fail2ban для SSH:
1. Установи fail2ban (если ещё нет):
apt install fail2ban # Debian/Ubuntu
dnf install fail2ban # RHEL/AlmaLinux
2. Создай кастомную конфигурацию:
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
3. Включи и настрой SSH-защиту в
jail.local:
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log # или /var/log/secure на RHEL
maxretry = 5
bantime = 1h
findtime = 10m
4. Перезапусти fail2ban:
systemctl restart fail2ban
5. Проверка работы:
fail2ban-client status sshd
👀 Что это даёт:
– Блокирует IP после нескольких неудачных попыток входа.
– Автоматическая защита от брутфорса 24/7.
– Простая интеграция с iptables/nftables.
💡 Трюк: Используй
bantime = 3600m и recidive-джейл для агрессивных нарушителей.#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
📲 Мы в MAX
👉 @linux_odmin
👍4❤1