LinuxSkill - Сводки с прода и Шпаргалки
Следим за новостями Linux, DevOps и ИБ, чтобы быть готовым к любым факапам. Бонусом — плотные шпаргалки и чеклисты для ежедневной работы в терминале. 📩 По всем вопросам: @chorapov Зеркало в MAX: https://max.ru/LinuxSkill РКН https://vk.cc/cMUwm4
Show more📈 Analytical overview of Telegram channel LinuxSkill - Сводки с прода и Шпаргалки
Channel LinuxSkill - Сводки с прода и Шпаргалки (@linuxskill) in the Russian language segment is an active participant. Currently, the community unites 10 739 subscribers, ranking 11 132 in the Technologies & Applications category and 59 542 in the Russia region.
📊 Audience metrics and dynamics
Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 10 739 subscribers.
According to the latest data from 03 September, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -51 over the last 30 days and by -1 over the last 24 hours, overall reach remains high.
- Verification status: Not verified
- Engagement rate (ER): The average audience engagement rate is 11.67%. Within the first 24 hours after publication, content typically collects 4.94% reactions from the total number of subscribers.
- Post reach: On average, each post receives 1 253 views. Within the first day, a publication typically gains 531 views.
- Reactions and interaction: The audience actively supports content: the average number of reactions per post is 4.
- Thematic interests: Content is focused on key topics such as docker, linux, bash, devops, скрипт.
📝 Description and content policy
The author describes the resource as a platform for expressing subjective opinions:
“Следим за новостями Linux, DevOps и ИБ, чтобы быть готовым к любым факапам.
Бонусом — плотные шпаргалки и чеклисты для ежедневной работы в терминале.
📩 По всем вопросам: @chorapov
Зеркало в MAX: https://max.ru/LinuxSkill
РКН https://vk.cc/cMUwm4”
Thanks to the high frequency of updates (latest data received on 04 September, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.
rm /var/log/nginx/access.log. Это привело к потере дескриптора файла, и Nginx перестал записывать логи. Не повторяй эту ошибку!
Безопасные способы зачистки логов:
1. Перезапись файла:
sudo > /var/log/nginx/access.log
- Этот метод сохраняет дескриптор файла, и Nginx продолжает запись.
2. Обрезка файла:
sudo truncate -s 0 /var/log/nginx/access.log
- Уменьшает размер файла до нуля, сохраняя дескриптор.
3. Сигнал процессу:
sudo kill -USR1 <pid>
- Отправляет сигнал процессу Nginx, чтобы он закрыл текущий лог и открыл новый.
Используй эти методы, чтобы избежать проблем с логами. Помни, сначала думай, а потом действуй!
📩 Завтра: Вопрос №15 из теста Linux Essentials Certification
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Как ограничить скорость на Mikrotik и спасти сеть от перегрузки — инструкция, которую ты ждал
🧠 - Ускоряем OpenVPN на MikroTik до максимума: настройки, о которых не говорят
🧠 - Btrfs или XFS? Команды для управления файловыми системами в Linux
#Linux_Mastery @LinuxSkill #Nginx #логи :> /dev/tcp/yourdomain.com/80
:> /dev/tcp/yourdomain.com/443
- Если порт открыт, команда завершится без вывода. Статус можно проверить через echo $?.
2. Добавление таймаута:
timeout 5s bash -c ':> /dev/tcp/yourdomain.com/80'
timeout 5s bash -c ':> /dev/tcp/yourdomain.com/443'
- Таймаут в 5 секунд поможет избежать долгого ожидания.
3. Что такое :>?
- Это сокращенная версия команды true, которая всегда возвращает успешный код.
4. Отправка UDP запросов:
:> /dev/udp/localhost/8888
- Синтаксис: /dev/протокол/хост/порт.
5. Получение времени с NIST Time Server:
cat </dev/tcp/time.nist.gov/13
- Аналогично можно получить время с других NTP серверов.
6. Использование nc для проверки портов:
nc -zv yourdomain.com 80
- nc или netcat позволяет быстро проверить порты с выводом результата.
Эти методы помогут тебе тестировать порты без сторонних утилит. Пользуйся на здоровье и увидимся в следующем посте!
📩 Завтра: Как правильно зачистить логи Nginx: Избегай ошибок
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Настрой автосборку RAID с MDADM и забудь о проблемах с дисками
🧠 - Секреты команды cd: автоматизация и удобство в одном флаконе
🧠 - Сделай свои файлы неуязвимыми с командой chattr
#Linux_Mastery @LinuxSkill #Bash #curl #wget$var без кавычек — скорее всего, ты (пока что) просто везучий.
Давай разберёмся, когда и зачем переменные в shell-скриптах нужно оборачивать в кавычки.
### Общее правило:
> Оборачивай переменные в двойные кавычки, если не хочешь сюрпризов от пробелов, пустых значений и спецсимволов.
---
### Когда кавычки обязательны:
1. Значение может быть пустым:
[ "$var" = "value" ]
2. Есть пробелы:
xdg-open "$URL"
3. В переменной спецсимволы (*, &, ?):
wget "$link"
---
### Пример бага:
file="My documents/report.pdf"
rm $file # ❌ Попытка удалить два файла: 'My' и 'documents/report.pdf'
rm "$file" # ✅ Удаляется нужный файл
---
### Когда кавычки можно опустить:
- $?, $#, $0 — безопасны без кавычек.
- Внутри арифметических или логических выражений:
if [ "$?" -eq 0 ]; then ...
Вывод:
Используй кавычки по умолчанию. Это просто и защищает от десятков потенциальных багов.
🌳 Ветка: https://stackoverflow.com/questions/10067266/when-to-wrap-quotes-around-a-shell-variable
📩 Завтра: Секреты Bash: Как тестировать порты без curl и wget!
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Откройте для себя мир Управления Службами в Linux с нашей серией статей
🧠 - Контейнер в контейнере? Да это как матрёшка для айтишников: открываешь, а там ещё больше проблем… но зато все свои!
🧠 - Секретная Команда nsenter! Управляй Контейнерами как Хакер
#stackoverflow @LinuxSkill #Linux #ShellScripting #Quotes #SysAdmin #DevOpsapt. Эти "паразиты" могут тянуть за собой кучу лишнего, но я покажу, как от них избавиться. Давай разберемся!
Проблема с Recommended packages:
Когда ты устанавливаешь программу, например, Midnight Commander (mc), вместе с ней могут устанавливаться дополнительные пакеты, которые не всегда нужны:
apt install mc
- Вместе с mc могут установиться mailcap и unzip, которые не обязательны для работы программы.
Как избежать установки "паразитов":
Чтобы установить только необходимые пакеты, используй флаг --no-install-recommends:
apt install mc --no-install-recommends
- Это установит только libssh2-1, mc, и mc-data, без лишних пакетов.
Как глобально отключить Recommended packages:
1. Создай файл /etc/apt/apt.conf.d/99norecommends:
sudo nano /etc/apt/apt.conf.d/99norecommends
2. Вставь в него:
APT::Install-Recommends "false";
Теперь apt не будет устанавливать рекомендованные пакеты по умолчанию.
Как установить рекомендованные пакеты для конкретного случая:
Если тебе все-таки нужны рекомендованные пакеты для конкретной программы, используй:
apt-get install mc --install-recommends
Теперь ты знаешь, как контролировать установку пакетов и избегать лишнего. Пользуйся на здоровье и делись своими успехами! 🥳
📩 Завтра: Вопрос №12 из теста Linux Essentials Certification
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Забудь про начало! Как Tac покажет тебе всё важное с последней строки
🧠 - Не знал про эту команду? Вот как uname спасет твой Linux!
🧠 - Ты точно в курсе всех файлов? Vdir покажет больше, чем ты ожидал!
#Linux_Mastery @LinuxSkill sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bkp
Основные настройки:
1. Жестко прописываем IP адрес SSH сервера:
ListenAddress 192.168.1.100 # ip ag-dc-1
ListenAddress 192.168.1.101 # ip ag-dc-2
2. Изменяем порт SSH сервера:
Port 54322
3. Включаем только протокол второй версии:
Protocol 2
4. Ограничиваем время и количество попыток авторизации:
LoginGraceTime 10s
MaxAuthTries 2
5. Включаем разделение прав пользователей:
UsePrivilegeSeparation yes
6. Ограничиваем список доступа по SSH:
AllowUsers adminguideru root@192.168.1.100 root@192.168.1.101
7. Отключаем пустые пароли и доверенные хосты:
PermitEmptyPasswords no
IgnoreRhosts yes
HostbasedAuthentication no
Проверка и завершение:
1. Перезапуск SSH сервера:
sudo systemctl restart ssh sshd
2. Проверка подключения через Putty:
- Убедись, что можешь подключиться с админской машины с помощью сертификата.
3. Ограничение IP адресов:
sudo nano /etc/hosts.allow
- Добавь IP адреса всех участников локальной сети.
4. Проверка авторизации по паролю:
sudo nano /etc/ssh/sshd_config
- Убедись, что PasswordAuthentication установлено в no.
5. Перезагрузка хостов:
- Если что-то пошло не так, восстанови конфигурацию из бэкапа:
sudo cp /etc/ssh/sshd_config.bkp /etc/ssh/sshd_config
Теперь твой сервер защищен, и ты можешь быть уверен в безопасности своих данных. Радуйся, ведь теперь напакостить по SSH сможешь только ты сам!
📩 Завтра:
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Секреты qemu-img, которые сэкономят твой диск
🧠 - Забудь про файлы, они исчезнут
🧠 - Наконец-то! Как стать суперпользователем без риска оказаться в тюрьме!
#Linux_Mastery @LinuxSkill$@ в shell скрипте, то сегодня мы разберем эту загадку и покажем, как использовать его для передачи параметров.
$@ представляет собой все параметры, переданные скрипту. Например, если ты вызовешь скрипт так:
./someScript.sh foo bar
то $@ будет равно foo bar.
Когда внутри someScript.sh ты используешь:
umbrella_corp_options "$@"
каждый параметр будет передан в umbrella_corp_options в двойных кавычках. Это позволяет передавать параметры с пробелами, как единое целое.
Пример использования:
Если ты вызовешь:
./someScript.sh foo bar "boo far"
то $@ в двойных кавычках будет содержать три аргумента: "foo", "bar" и "boo far".
Использование $@ в shell скриптах позволяет легко и безопасно передавать параметры, включая те, которые содержат пробелы. Попробуй сам и убедись, насколько это удобно!
🌳 Ветка: https://stackoverflow.com/questions/9994295/what-does-mean-in-a-shell-script
📩 Завтра: Защити свой сервер: Настройка безопасности SSH на Linux
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Текстовый редактор Nano — как работать с файлами на минималках и не страдать!
🧠 - Почувствуй себя цифровым рентгенологом — откроем файлы насквозь с Od!
🧠 - Давно занимался спортом? Нет? Ну вот, пора хотя бы пароли сменить!
#stackoverflow @LinuxSkill #Linux #ShellScripting #SysAdmin #DevOps/etc/fail2ban/jail.conf.
- Настройка времени блокировки через директиву ban-time.
3. Настройка ограничения скорости запросов (02:15):
- Добавление директивы для ограничения скорости обработки HTTP-запросов.
- Настройка зоны разделяемой памяти для IP-адресов.
- Перезагрузка Fail2Ban.
4. Тестирование и логирование (04:07):
- Запуск теста на IP-адрес для проверки логирования.
- Логирование ошибок и запросов.
5. Добавление правил для фильтра (05:15):
- Настройка правил для блокировки IP-адресов на 300 секунд при превышении лимита запросов.
6. Защита от DOS-атак (06:52):
- Настройка модуля для ограничения числа запросов.
- Проверка и раскомментирование регулярного выражения.
7. Проверка работы Fail2Ban (08:37):
- Тестирование блокировки IP-адреса при превышении лимита запросов.
- Проверка работы через VPN.
Fail2Ban — это простой и эффективный способ защиты от DoS-атак. Настройте его на своем сервере и убедитесь в его надежности!
Источник: https://www.youtube.com/watch?v=rBKvXaDsFvM
📩 Завтра: Что означает $@ в shell скрипте?
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Текстовый редактор Nano — как работать с файлами на минималках и не страдать!
🧠 - Почувствуй себя цифровым рентгенологом — откроем файлы насквозь с Od!
🧠 - Давно занимался спортом? Нет? Ну вот, пора хотя бы пароли сменить!
#Linux_youtube @LinuxSkill #Linux #Fail2Ban #DoSProtection #SysAdmin #DevOps#!/bin/bash
# Сканирование портов конкретного хоста
echo "Введите адрес хоста для сканирования:"
read host
echo "Сканирование портов для хоста $host..."
nmap $host
- Этот скрипт позволяет быстро сканировать порты указанного хоста.
2. Проверка статуса веб-сервера:
#!/bin/bash
# Проверка статуса веб-сервера по HTTP статус-коду
url="http://example.com" # Замените example.com на реальный URL
status_code=$(curl -o /dev/null -s -w "%{http_code}\n" $url)
if [ $status_code -eq 200 ]; then
echo "Веб-сервер $url работает нормально (HTTP статус 200)"
else
echo "Веб-сервер $url имеет проблемы (HTTP статус $status_code)"
fi
- Проверяет доступность веб-сервера по HTTP статус-коду.
3. Поиск изменений в файлах (интегритет):
#!/bin/bash
# Проверка интегритета файлов в заданной директории
directory="/var/www/html" # Замените на директорию, которую нужно отслеживать
hash_file="hashes.txt"
# Генерируем хэши файлов и сохраняем их для последующего сравнения
find $directory -type f -exec sha256sum "{}" + > $hash_file
# Функция, которая проверяет хэши
check_hashes() {
sha256sum -c $hash_file
}
# Вызываем функцию
check_hashes
- Следит за изменениями в файлах, проверяя их хэши.
4. Автоматическое создание бэкапов логов:
#!/bin/bash
# Автоматическое создание бэкапов логов
log_path="/var/log/apache2" # Замените на путь к вашей папке с логами
backup_path="/backup/apache2"
# Создаем каталог для бэкапа, если он не существует
mkdir -p $backup_path
# Архивируем и перемещаем логи
tar -czvf $backup_path/log-$(date +%F).tar.gz $log_path
- Автоматически создает резервные копии логов.
5. Мониторинг и оповещение об активности в логах:
#!/bin/bash
# Мониторинг и оповещение о подозрительной активности в логах
log_file="/var/log/auth.log" # Замените на путь к вашему лог-файлу
pattern="Failed password" # Замените на паттерн, который вы хотите отслеживать
# Чтение новых строк из лог-файла
tail -fn0 $log_file | \
while read line ; do
echo "$line" | grep "$pattern" > /dev/null
if [ $? = 0 ]; then
# Отправляем уведомление
echo "Подозрительная активность: $line"
# Здесь может быть команда для отправки уведомления, например, через mailx
fi
done
- Следит за логами и оповещает о подозрительной активности.
Эти скрипты — лишь начало. В реальных сценариях тебе понадобятся более сложные проверки и интеграции. Всегда тестируй скрипты в безопасной среде перед их использованием в продакшене. 🛡️
Ссылка на источник https://timcore.ru/2024/03/07/pjat-skriptov-na-bash-kotorye-mogut-ispolzovatsja-dlja-avtomatizacii-rutinnyh-zadach-v-kiberbezopasnosti/
📩 Завтра: Вопрос №10 из теста Linux Essentials Certification
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Введение в Команду Head
🧠 - Навигация по Сетевым Интерфейсам с Ifconfig
🧠 - Мастерство Слияния Файлов с Join
#Linux_Mastery @LinuxSkill