Linux Skill - Освой Linux c нуля до DevOps – Telegram
Linux Skill - Освой Linux c нуля до DevOps
11.2K subscribers
54 photos
103 videos
482 links
Освой Linux c нуля до DevOps
Подробный гайд по Linux и море других уроков для системных администраторов

📩 По всем вопросам: @chorapov

РКН https://vk.cc/cMUwm4
Download Telegram
Media is too big
VIEW IN TELEGRAM
💥 SSH-туннель: доступ к закрытым портам за минуту

Привет, мастер удалённого доступа!

База данных спрятана за файрволом? Веб-приложение доступно только локально? Автор за 17 минут показывает полный цикл работы с SSH: от создания ключей до магии проброса портов!

🌐 Источник: https://youtu.be/

#Linux_youtube #ssh #security #tunnel #linux #networking
👍21🔥3
💾 Потерял данные? Вот скрипт, который этого не допустит

Привет, хранитель данных!

Делаешь бэкапы вручную? Пора автоматизировать! Готовый bash-скрипт архивирует важные директории и отправляет на удалённый сервер. Настрой раз и спи спокойно.

Скрипт backup.sh

#!/bin/bash

backup_dirs=("/etc" "/home" "/boot")
dest_dir="/backup"
dest_server="server1"
backup_date=$(date +%b-%d-%y)

echo "Starting backup of: ${backup_dirs[@]}"

for i in "${backup_dirs[@]}"; do
sudo tar -Pczf /tmp/$i-$backup_date.tar.gz $i
if [ $? -eq 0 ]; then
echo "$i backup succeeded."
else
echo "$i backup failed."
fi
scp /tmp/$i-$backup_date.tar.gz $dest_server:$dest_dir
if [ $? -eq 0 ]; then
echo "$i transfer succeeded."
else
echo "$i transfer failed."
fi
done

sudo rm /tmp/*.gz
echo "Backup is done."


Как работает скрипт

Переменные:
- backup_dirs — массив директорий для бэкапа
- dest_dir — куда складывать на удалённом сервере
- dest_server — имя/IP целевого сервера
- backup_date — дата в имени архива

Процесс:
1. Архивирует каждую директорию в tar.gz
2. Отправляет по scp на удалённый сервер
3. Проверяет успешность каждого шага
4. Удаляет локальные временные архивы

Пример работы

kabary@handbook:~$ ./backup.sh
Starting backup of: /etc /home /boot
/etc backup succeeded.
etc-Aug-30-20.tar.gz 100% 1288KB 460.1KB/s 00:02
/etc transfer succeeded.
/home backup succeeded.
home-Aug-30-20.tar.gz 100% 2543KB 547.0KB/s 00:04
/home transfer succeeded.
/boot backup succeeded.
boot-Aug-30-20.tar.gz 100% 105MB 520.2KB/s 03:26
/boot transfer succeeded.
Backup is done.


Автоматизация через cron

Добавь в crontab для ежедневного запуска в 3 ночи:
0 3 * * * /home/user/backup.sh >> /var/log/backup.log 2>&1


💡 Совет: настрой SSH-ключи для scp без пароля, иначе скрипт не сработает в cron.

Результат: автоматические бэкапы критически важных данных каждую ночь. Никакой рутины, полная автоматизация.
____________________

Дополнительный материал:
🧠 - От первого контейнера до мощного Swarm: Путешествие Docker в мире DevOps
🧠 - Углубляемся в безопасность Linux: Специальные режимы и их мощь!
🧠 - Разгадываем тайны команды "Apropos": Ваш ключ к миру Linux Man Pages

#Linux_Mastery #bash #backup #automation #sysadmin #noscripts
👍18
Что делает эта команда?

for token in a b c; do
echo -n ${token};
done

Не гугли — напиши в комментах 👇

#linux #bash #вопрос
👍6
Media is too big
VIEW IN TELEGRAM
🔥 Касперский ОС: будущее российской кибербезопасности или долгострой?

Эй, охотник за уязвимостями! Сегодня у нас необычный выпуск.

Немного разбавим поток пользы «таймкиллером». На повестке тема, которая уже вызывает споры: Касперский ОС. Для одних — филиал ФСБ и распил бюджета, для других — уникальная микроядерная архитектура и фундамент кибериммунитета.

🌐 Источник: https://www.youtube.com/watch?v=EaOc31KoFFI

#linux #os #kaspersky #security #architecture
🔥5👀5
Disable Apache configuration files?
Anonymous Quiz
12%
a2enconf
17%
a2dismod
63%
a2disconf
8%
a2enconf
Analyze text for sensitive data (secrets)?
Anonymous Quiz
30%
alien
11%
alex
44%
alias
15%
alpine
Что делает эта команда?

$ sudo adduser testuser
Adding user `testuser' ...
Adding new group `testuser' (1003) ...
Adding new user `testuser' (1003) with group `testuser' ...
Creating home directory `/home/testuser' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:


Не гугли — напиши в комментах 👇

#linux_вопрос #adduser
👍5
Media is too big
VIEW IN TELEGRAM
🔧 Забудь про Helper Scripts — настраиваем Proxmox вручную и понимаем каждый шаг

Привет, цифровой архитектор!
Устал от готовых скриптов, которые делают всё за тебя, но ты не понимаешь, что происходит? Этот свежий гайд Proxmox 8.3 — для тех, кто хочет разобраться в каждом шаге.

#Linux_youtube #proxmox #virtualization #homelab #linux #devops
👍9
🔧 20+ переменных Bash, которые ты точно не использовал

Привет, повелитель скриптов!

Видел скрипты, где пути и настройки вбиты намертво? А потом ломаешь голову, почему они не работают на другой машине. Bash уже всё придумал за тебя — используй зарезервированные переменные.

📂 Навигация и окружение
$DIRSTACK — Содержимое вершины стека каталогов
$OLDPWD — Прежний рабочий каталог
$PATH — Путь поиска программ
$HOME — Домашний каталог пользователя

👤 Информация о пользователе
$UID — Содержит реальный идентификатор, который устанавливается только при логине
$EUID — Эффективный UID. Если вы использовали программу su для выполнения команд от другого пользователя, то эта переменная содержит UID этого пользователя
$GROUPS — Массив групп к которым принадлежит текущий пользователь

🖥️ Информация о системе
$HOSTNAME — hostname машины
$HOSTTYPE — Архитектура машины
$OSTYPE — Тип ОС

⚙️ Работа со скриптами и функциями
$EDITOR — Текстовый редактор по-умолчанию
$FUNCNAME — Имя текущей функции в скрипте
$SECONDS — Время работы скрипта (в сек.)
$$ — PID самого скрипта
$PPID — Идентификатор родительского процесса
$! — PID последнего запущенного в фоне процесса
$? — Содержит код завершения последней команды

📝 Работа с параметрами
$# — Общее количество параметров переданных скрипту
$* — Все аргументы переданные скрипту (выводятся в строку)
$@ — Тоже самое, что и предыдущий, но параметры выводятся в столбик

🔍 Дополнительные переменные
$LC_CTYPE — Внутренняя переменная, которая определяет кодировку символов

🔖 Сохрани шпаргалку — пригодится в каждом скрипте!

#Linux_Mastery #bash #noscripting #linux #automation #devops #sysadmin
👍8🔥3
Что делает эта команда?

$ apropos postfix


Не гугли — напиши в комментах 👇

#linux_вопрос #adduser
Media is too big
VIEW IN TELEGRAM
🔥 Ускоряем MikroTik: Как Bridge + NAT дает 20% прироста скорости

Привет, техноэнтузиаст!
Хочешь выжать максимум из своего "железа" и получить быструю сеть для дома или малого офиса? Этот гайд покажет, как настроить ключевые службы MikroTik с нуля, чтобы получить скорость и безопасность без лишней головной боли
🌐 Источник: Территория электроники

#Linux_youtube #MikroTik #Настройка #Сети #Bridge #NAT #Оптимизация
👍6👎2
List the current user's home directory contents?
Anonymous Quiz
17%
ls -
77%
ls ~
1%
ls =
4%
ls !
👍8👀4
🧠 Квиз: Проверь себя
Что является родоначальником всех процессов (PID 1) в современных дистрибутивах Linux (Debian, Fedora, Ubuntu)?

Не гугли — напиши в комментах 👇 #linux_вопрос
Media is too big
VIEW IN TELEGRAM
🎥 Тестовое видео: Bash от команд до скриптов

Привет, хранитель команд!

Я тут нашел https://notebooklm.google.com. Короче в чем суть. Эта нейронка умеет работать только с теми источниками которые ты ей даешь и ссылается на них. Я закинул мануалы по bash и вот первое пробное видео. Что думаешь?

А завтра покажу аудио-подкаст.
👍14
Audio
🔈 Аудио-подкаст: Bash от Азов до Грабель. Как писать надежные скрипты
👎2👀1
🧠 Квиз: Проверь себя
Какая команда позволяет быстро определить, какой именно юнит (служба) дольше всего замедляет запуск системы?

Эта команда выводит список системных процессов и время их запуска, помогая диагностировать медленный запуск системы

Не гугли — напиши в комментах 👇 #linux_вопрос
👀9👍2
🔑 Уязвимость: Почему добавление в группу Docker равносильно sudo su -

Привет, цифровой архитектор!

Ты, вероятно, сталкивался с советом, как избавиться от постоянного ввода sudo при работе с Docker. Решение простое: добавить своего пользователя в группу docker. Удобно? Да. Но это одна из самых критических ошибок безопасности в Linux!

В этом посте разберем, почему добавлять пользователя в группу docker равносильно вручению ему полных прав root на хост-машине.

📌 Ошибка: Запуск Docker без sudo

Для удобства многие инженеры выполняют всего одну команду:

# Не делай так, если не понимаешь рисков!
sudo usermod -aG docker $(whoami)


С этого момента любой член группы docker может выполнять команды Docker. Но проблема в том, что Docker-демон по умолчанию работает от имени root.

🚨 Почему это критическая уязвимость?

Если пользователь может управлять Docker-демоном без ограничений, он может запустить контейнер, который способен:

1. Смонтировать корневую файловую систему хост-машины (например, /) в контейнер.
2. Получить полный доступ к /etc/shadow (теневой файл паролей) и другим критическим системным файлам.
3. Выполнить любую команду от имени root на хосте.

В результате, член группы docker может легко повысить свои привилегии до суперпользователя, полностью обходя систему sudo.

💡 Вывод: Практика, которая ломает всё

Использование группы docker ломает фундаментальный принцип изоляции привилегий в Linux. Удобство не стоит безопасности.

Если ты используешь это решение, ты должен понимать, что любой злоумышленник, получивший доступ к этой учетной записи, получит безусловный доступ к хост-системе.

#Docker #Security #Linux #SysAdmin #DevOps
👍22👎1
Какая команда используется для добавления права на исполнение файла только его владельцу (owner) в символическом представлении?
Anonymous Quiz
36%
chmod 700 noscript.sh
5%
chmod g+w noscript.sh
47%
chmod u+x noscript.sh
👍7
Какая команда командной строки обычно используется для диагностики системы, которая «вяло реагирует» или «тормозит», выводя список процессов, потребляющих больше всего ресурсов, а также сведения о памяти и CPU?
Anonymous Quiz
10%
df -hT
6%
lsof
81%
top
3%
uname -a
👍12
Коллеги, вчера проводили учения по кибербезопасности. Сценарий провалился с треском. 95% сотрудников не открыли письмо «Вам повышают зарплату!», потому что сочли его нереалистичным. Горжусь вашим скептицизмом. Единственный, кто повёлся, — это гендир. Теперь он требует объяснить, почему это была учебная тревога, а не реальное предложение.
#linux_юмор #кибербезопасность
🔥22👍8