Секреты сисадмина | DevOps, Linux, SRE
25.2K subscribers
663 photos
18 videos
441 files
605 links
Крупнейший справочник системного администратора.

Сотрудничество: @max_excel

РКН: vk.cc/cHhGTz
Download Telegram
Media is too big
VIEW IN TELEGRAM
Разжёванный курс по Linux для чайников

В этом видеокурсе на примерах и практике автор подробно разбирает основные темы Linux.

0:00:10 Знакомство с Линукс (теория)
2:17:17 Командная оболочка
2:56:51 stdout и stderr (перенаправление в файл)
3:37:33 Команды (cр, mv, head, tail, wc, grep, cat, маски)
5:39:11 Права пользователей (chmod, inode и т. д.)
6:35:02 SUD (sudo, passwd, stat)
7:39:17 Регулярные выражения

Смотреть это видео на youtube: youtu.be/adcijRTI_8E

#СекретыСисадмина
Команда curl (синтаксис и примеры использования)

Сurl – утилита командной строки для скачивания и загрузки данных. Она выросла из проекта шведского программиста Даниэля Стенберга. Изначально в середине 90-х, на заре развития Интернета, он разрабатывал бота, который должен был загружать с веб-страницы курсы валют и сообщать пользователям IRC эквивалент шведских крон в долларах США.

Со временем проект развивался, появлялась поддержка различных протоколов и новые функции. Теперь curl используется для передачи любых данных и ряда других полезных задач. Рассмотрим основные моменты работы с этим инструментом.

#СекретыСисадмина

📁 Скачать/Download 👇
Как заставить пользователя изменить пароль при следующем входе в систему

Существует несколько способов:

Использование команды passwd
sudo passwd --expire [username]

Использование команды chage
sudo chage --lastday 0 [username]

Срок действия паролей
chage -l
Будет выведена следующая информация:
Когда пароль был последний раз изменен;
Дата окончания действия пароля;
Сколько дней осталось до окончания действия пароля;
Когда учетная запись пользователя будет закончена;
Минимальное кол-во дней между итерацией смены пароля;
Максимальное кол-во дней между итерацией смены пароля.

Заставляем пользователя менять пароль каждые 90 дней
sudo chage -M 90

Задаем срок жизни учетной записи (до 12 июня 2023)
sudo chage -E 2023-06-12 serg
sudo chage -E 2023-06-12 oleg

Сколько времени на смену пароля?
В примере даем Борису 10 дней на смену пароля с момента как пароль заэкспайрился
sudo chage -I 10 boris

Уведомление о смене пароля заранее
Через 25 дней истекает срок годности пароля Бориса
sudo chage -W 25 boris

Защищаемся от частой смены паролей пользователя
Минимальное количество дней между сменой паролей
sudo chage -m 25 boris

Удалить ограничение в днях
sudo chage -m 0 sergey

#СекретыСисадмина
Курс "Развертывание виртуальной сетевой лаборатории EVE-NG"

• Обзор виртуальной сетевой лаборатории EVE-NG
• Установка
• Установка образов Cisco Dynamips
• Установка образов Cisco IoL
• Установка образов Cisco vIOS
• Установка образов Cisco ASA
• Установка образов Mikrotik RouterOS
• Использование VirtualPC
• Установка образов Linux
• Установка образов VMWare Workstation (Windows Server)
• Подключение топологии к сети Интернет
• Сетевая лаборатория EVE-NG

👉 Смотреть видео

#СекретыСисадмина
Файловый сервер SFTPGo

Полнофункциональный и высококонфигурируемый SFTP-сервер с дополнительной поддержкой HTTP/S, FTP/S и WebDAV. Поддерживается несколько видов хранилищ: локальная файловая система, зашифрованная локальная файловая система, S3 (совместимое) Object Storage, Google Cloud Storage, Azure Blob Storage, SFTP.

Смотреть

#СекретыСисадмина
Как восстановить Windows к исходному состоянию, и почему для этого больше не нужен install.wim

Все ноутбуки и планшеты обладают решением для отката к фабричному состоянию. Оно называется Push-Button Reset (PBR), т.е. сброс нажатием кнопки. Давайте посмотрим на его эволюцию в последние годы.

#СекретыСисадмина

📁 Скачать/Download 👇
Bash Массивы

Кроме обычных переменных, bash также различает массивы. Обратите внимание, что синтаксис для доступа к n-ному элементу отличается от синтаксиса, принятого в С.

х=() - Определение пустого массива
х[0]='а' - Присваивание элементов массива
х[1]='b' - Присваивание элементов массива
х[2]='с' - Присваивание элементов массива
х=('а' 'b' 'с') - Краткий вариант записи четырех предыдущих строк
echo ${x[l]} - Считывание элемента массива
echo ${x[@]} - Считывание всех элементов массива

Для программистов исключительно важны массивы ассоциативных элементов, которые стали поддерживаться в bash, начиная с версии 4.0. Не забудьте, что массив сначала требуется специально объявить как ассоциативный с помощью declare -A.

declare -Ay - Определение пустого массива ассоциативных элементов
y[abc]=123 - Присваивание элемента ассоциативного массива
y[efg]=xxx - Присваивание элемента ассоциативного массива
у=( [abc]=123 [efg]=xxx ) - Краткий вариант записи двух предыдущих строк
echo ${y[abc]} - Считывание одного элемента массива

Еще одно важное нововведение версии 4.0 заключается в том, что с помощью команды mapfile можно построчно преобразовать текстовый файл в элементы обычного массива:
mapfile z < текстовый_файл


#СекретыСисадмина
Переменные среды в Windows

В данной статье показаны действия, с помощью которых можно узнать список переменных в операционной системе Windows.

Переменные среды необходимы для указания абсолютных путей к папкам, часто используются в пакетных (командных) файлах. К примеру, если неизвестна буква системного диска, то всегда можно использовать переменную %systemdrive%, возвращающую букву диска, на котором установлена Windows.

#СекретыСисадмина

📁 Скачать/Download 👇
Как пробросить порт в Linux на другой сервер

Необходимо пробросить с 8821 порта сервера 10.10.10.10 на 21 порт сервера 12.12.12.12:

iptables -A FORWARD --dst 10.10.10.10 -p tcp --dport 8821 -j ACCEPT

iptables -A FORWARD --src 10.10.10.10 -p tcp --sport 8821 -j ACCEPT

iptables -t nat -A PREROUTING -d 10.10.10.10 -p tcp --dport 8821 -j DNAT --to-destination 12.12.12.12:21

iptables -t nat -A POSTROUTING -d 12.12.12.12 -p tcp --dport 21 -j SNAT --to-source 10.10.10.10:8821

#СекретыСисадмина
Монтирование NFS

Network File System (NFS) — протокол доступа к файловым системам по сети.

#СекретыСисадмина

📁 Скачать/Download 👇
Клонирование виртуальных машин KVM

Для клонирования ВМ можно использовать простую команду virt-clone. Это утилита командной строки для клонирования существующих образов виртуальных машин с использованием библиотеки "libvirt". Она скопирует образы дисков любой существующей ВМ и определит нового гостя с идентичной конфигурацией виртуального оборудования. Элементы, которые требуют уникальности, будут обновлены, чтобы избежать столкновения между старыми и новыми ВМ.

#СекретыСисадмина

📁 Скачать/Download 👇
Знали ли вы, что можно открывать man-страницы из Vim?

- leader K - Нажмите курсором на любом слове, чтобы открыть man-страницу для этой команды.
- :Man command - Открыть man-страницу этой команды.

#СекретыСисадмина
🗑 Bash-совет дня: safe_rm — «корзина» для удаляемых файлов

Сколько раз вы случайно удаляли важный конфиг? Можно сделать rm более дружелюбным — вместо мгновенного уничтожения файлы будут складываться в «корзину» и автоматически очищаться спустя 30 дней.


#!/usr/bin/env bash
# safe_rm — перемещает удаляемые файлы в локальную «корзину»

TRASH_DIR="$HOME/.local/share/Trash/files" # куда складываем
mkdir -p "$TRASH_DIR"

stamp=$(date +%Y-%m-%d_%H-%M-%S)

for item in "$@"; do
if [[ ! -e $item ]]; then
printf '⚠️ %s: no such file or directory\n' "$item" >&2
continue
fi
mv -- "$item" "$TRASH_DIR/$(basename "$item")_$stamp"
done

# авто-очистка файлов, которым больше 30 дней
find "$TRASH_DIR" -type f -mtime +30 -delete 2>/dev/null


Быстрый старт:


sudo install -m 755 safe_rm /usr/local/bin/
echo "alias rm='safe_rm'" >> ~/.bashrc && source ~/.bashrc


Проверяем:


touch important.cfg
rm important.cfg
ls ~/.local/share/Trash/files # Файл на месте 🎉


Лайфхак:
> Хотите разные сроки хранения? Меняйте -mtime +30 на нужное количество дней.
> Регулярные выражения в find позволяют тоньше выбирать, что чистить (например, только логи *_$(date +%Y-%m-*)).

#СекретыСисадмина
Http logs viewer 💪

Онлайн-инструмент для визуализации логов Apache. Он позволяет:

* Загружать и анализировать логи Apache в реальном времени.
* Получать сводную информацию о трафике, ошибках, IP-адресах и запросах.
* Фильтровать и искать по логам по дате, коду ответа, URL и другим параметрам.
* Использовать инструмент прямо из браузера, без необходимости установки.

Подходит для быстрого анализа логов при отладке или расследовании инцидентов.

Читать

#СекретыСисадмина
Облачные решения: как снизить затраты и повысить эффективность?

Приглашаем на бесплатный вебинар Слёрма 11 июня в 17:00.

Обсудим:

🔹 Типичные ошибки при работе с облачными сервисами и их влияние на бизнес.
🔹 Настройку сетевых сервисов и контроль доступа.
🔹 Как неправильный выбор ресурсов может привести к сбоям.
🔹 Почему резервное копирование — обязательная часть стратегии.

Покажем практику и кейсы с фокусом на эффективность.

Присоединяйтесь, будем учиться контролировать затраты на облачные сервисы и брать от них максимум!

Регистрация в один клик 👈

erid: 2W5zFJG7MpC