Системный администратор
前往频道在 Telegram
Канал для системных администраторов. Linux, Windows, Active Directory, GPO, PowerShell. Виртуализация Hyper-V, VMWare. Облака Azure, AWS. По всем вопросам @evgenycarter
显示更多2 097
订阅者
-124 小时
-247 天
-13930 天
帖子存档
Разжёванный курс по Linux для чайников. Часть 2
0:10 Введение. Ответы на вопросы.
6:00 Негативный поиск(echo, grep, регулярки)
24:36 Код возврата приложений
31:42 Логическое И, ИЛИ
38:38 Цикл FOR (Однострочная конструкция)
53:07 Перекур
1:05:16 Понятие скрипта. Скрипт файл.
1:15:09 Переменные окружения (SPATH)
1:30:16 Команда hash
1:42:56 /dev/null
1:48:28 Планировщик задач (Сron)
2:09:34 дом зад
2:16:01 вводный урок. Веб-сервисы.
3:17:03 Реш дом зад(логи регулярки)
4:32:27 Разбор дом зад и непонятных вопросов.
4:39:23 Настройка выделенного сервера
7:03:27 SOA и введение в Docker
👉 @i_linux
Разжёванный курс по Linux для чайников. Часть 1
0:10 Знакомство с Линух (теория)
2:17:17 Командная оболочка (pwd, ls, touch, date, rm, mkdir, rmdir)
2:56:51 stdout и stderr (перенаправление в файл)
2:59:23 связь с космосом (зависла трансляция)
3:11:52 конец связи с космосом(продолжение)
3:37:33 Команды (cр, mv, head, tail, wc, less, grep, cat, маски)
5:03:00 режим питания нарушать нельзя(обед)
5:12:05 продолжение
5:39:11 права пользователей (chmod, inode и т. д.)
6:35:02 SUD (sudo, passwd, stat)
7:27:42 перекур
7:39:17 Регулярные выражения
👉 @i_linux
Как удалить файлы в системах Linux или UNIX с помощью команды rm
Как удалить файлы в операционной системе Linux / UNIX / * BSD / AIX / HP-UX с помощью параметров командной строки?
Чтобы удалить или удалить файл или папку в операционной системе Linux, FreeBSD, Solaris, macOS или Unix, используйте команду rm или команду unlink. На этой странице объясняется, как удалить определенный файл в Linux или Unix-подобной системе с помощью параметра командной строки.
https://telegra.ph/Kak-udalit-fajly-v-sistemah-Linux-ili-UNIX-s-pomoshchyu-komandy-rm-10-15
👉 @i_linux
Шпаргалка по работе с Tmux
tmux — это менеджер терминалов, к которому удобно подключаться и отключаться, не теряя при этом процессы и историю. Как screen, только лучше (в первую очередь потому, что использует модель клиент—сервер).
Очень хороший способ запустить tmux:
tmux attach || tmux new — делая так, вы сперва пытаетесь подключиться к уже существующему серверу tmux, если он существует; если такого ещё нет — создаёте новый.
После этого вы попадаете в полноценную консоль.
Ctrl+b d — отключиться. (Точно так же вы отключитесь, если прервётся соединение. Как подключиться обратно и продолжить работу — см. выше.)
В одной сессии может быть сколько угодно окошек:
Ctrl+b c — создать окошко;
Ctrl+b 0...9 — перейти в такое-то окошко;
Ctrl+b p — перейти в предыдущее окошко;
Ctrl+b n — перейти в следующее окошко;
Ctrl+b l — перейти в предыдущее активное окошко (из которого вы переключились в текущее);
Ctrl+b & — закрыть окошко (а можно просто набрать exit в терминале).
В одном окошке может быть много панелей:
Ctrl+b % — разделить текущую панель на две, по вертикали;
Ctrl+b " — разделить текущую панель на две, по горизонтали (это кавычка, которая около Enter, а не Shift+2);
Ctrl+b →←↑↓ — переходить между панелями;
Ctrl+b x — закрыть панель (а можно просто набрать exit в терминале).
Недостаток — непривычным становится скроллинг:
Ctrl+b PgUp — вход в «режим копирования», после чего:
PgUp, PgDown — скроллинг;
q — выход из «режима копирования».
👉 @i_linuxСоздаем логические тома LVM на Linux
Система хранения данных – один из тех кардинальных компонентов, без которых ваш сервер не может обойтись, и поэтому требует к себе пристального внимания, несмотря ни на что.
Это краткое руководство по внедрению LVM на вашем linux-сервере или рабочей станции.
https://telegra.ph/Sozdaem-logicheskie-toma-LVM-na-Linux-10-09
👉 @i_linux
Горячие клавиши для работы в терминале Linux
Перемещение по строке
← , → или Ctrl + b, Ctrl + f Смещение курсора на один символ левее или правее.
Ctrl + →, Ctrl + ←
или
Alt + b, Alt + f Смещение курсора на одно слово влево или вправо
Ctrl + a, Home Установить курсор в начало строки
Ctrl + e, End Установить курсор в конец строки
Ctrl + xx Переход между двумя последними позициями курсора
Сочетания клавиш для редактирования строки в терминале.
Редактирование строки
Tab, Ctr + i Автодополнение команды или пути
Tab, tab или Alt + ?(Shift+/) Представление вариантов автодополнения
Backspace, Ctrl + h Удаление символа перед курсором
Ctrl + d Удалить символ за курсором
Ctrl + w или Alt + Backspace Удалить все символы от курсора до пробела слева
Alt + d, Esc + d Удалить символы от курсора до конца слова
Ctrl + y Вставить слова, которые были удалены с помощью Alt+d, Ctrl+w
Alt + \ Удалить любое количество пробелов вместе, где стоит курсор.
Alt + r, Esc + r Отменить все изменения внесенные в строку
Alt + c Изменить регистр буквы под курсором на заглавный и переместить курсор в конец слова
Alt + u Изменить регистр всех букв от курсора до конца слова на верхний регистр
Alt + l Изменить регистр всех букв от курсора до конца слова на нижний регистр
Alt + t Поменять местами слово под курсором и предыдущее слово
Ctr + t Переместить символ перед курсором под курсор
Ctrl + _(Sift+-) Откат редактирования (Undo)
Сочетания клавиш для просмотра истории команд.
История команд
Ctrl + r Поиск ранее введенной команды в истории
↑, ↓ или Ctrl + p, Ctrl + n Перемещение по истории ранее введенных команд и путей
Ctrl + o Вызвать последнею введенную команду
Alt + . или Esc + . Вставить аргумент команды, выполненной ранее
Alt + < (Shift+,) Повторить первую команду в буфере истории
Сочетания клавиш для управления выводом информации на экран.
Вывод на экран
Ctrl + l Очистка окна терминала
Ctrl + s Заморозить терминал
Ctrl + q Продолжить работу терминала
Ctrl + c Прервать работу терминальной утилиты
Ctrl + z Перевести работу терминальной утилиты в фоновый режим
Ctrl + d Выйти из командной оболочки bash
👉 @i_linuxШпаргалка по фаерволу Mikrotik, пропускаем VPN соединения
1. Разрешить весь VPN-трафик через VPN-соединения:
Надо учитывать, что некоторые виды подключения, например GRE не являются PPP.
/ip firewall filter
add chain=forward comment="Permit all PPP" in-interface=all-ppp
2. Разрешить PPTP-подключение
/ip firewall filter
add chain=input dst-port=1723 protocol=tcp comment="Permit PPTP"
add action=accept chain=input protocol=gre comment="Permit GRE"
3. Разрешить L2TP-подключение
/ip firewall filter
add chain=input dst-port=1701 protocol=udp comment="Permit L2TP"
4. Разрешить IPSec-подключение
/ip firewall filter
add chain=input port=500,4500 protocol=udp comment="Permit IPSec ports 500 and 4500"
add chain=input protocol=ipsec-esp comment="Permit IPSec protocol ipsec-esp"
5. Разрешить OpenVPN-подключение
/ip firewall filter
add action=accept chain=input dst-port=1194 protocol=tcp comment="Permit OpenVPN"
6. Разрешить SSTP-подключение
/ip firewall filter
add action=accept chain=input dst-port=443 protocol=tcp comment="Permit SSTP"
7. Разрешить GRE-подключение
/ip firewall filter
add action=accept chain=input protocol=gre comment="Permit GRE"
8. Разрешить IPIP-подключение
/ip firewall filter
add action=accept chain=input protocol=ipip comment="Permit IPIP"
9. Прохождение IPSec при использовании Fast Track
Fast Track это опция представленная в RouterOS 6.29. С помощью этой опции можно передавать пакеты в обход ядра Linux. За счет этого существенно повышается производительность маршрутизатора.
Включить Fast Track можно следующим образом:
/ip firewall filter add chain=forward action=fasttrack-connection connection-state=established,related
Это позволит пакетам у которых состояние «Established» или «Related» обходить ядро Linux и быть сразу перенаправленным к цели. Такие пакеты не будут проходить ни через одно правило файервола или другое правило обработки пакетов. Конечно, соединение получает состояние «установлено» или «связано» после того, как оно прошло через брандмауэр, поэтому оно по-прежнему будет безопасным.
Как результат появляется недостаток: соединения IPsec так же не будут обработаны. Решить эту проблему можно следующим образом.
Вначале надо пометить соединения IPsec:
/ip firewall mangle
add action=mark-connection chain=forward comment="Mark IPsec" ipsec-policy=out,ipsec new-connection-mark=ipsec
add action=mark-connection chain=forward comment="Mark IPsec" ipsec-policy=in,ipsec new-connection-mark=ipsec
Далее изменить стандартное правило Fast Track так, что бы оно не обрабатывало пакеты IPsec. Изменения внесенные в стандартное правило выделены красным.
/ip firewall filter add action=fasttrack-connection chain=forward comment=FastTrack
connection-mark=!ipsec connection-state=established,related
👉 @i_linuxСтандартные инструменты для диагностики системы Linux
Ядро:
* perf — (в прошлом performance counters for Linux) — доступ к различным внутренним счётчикам ядра; незаменимый инструмент для выполнения профайлинга ядра/операционной системы
* ftrace — трассировщик вызовов функций внутри ядра Linux
* stap — скриптовый язык и инструмент для комплексной диагностики ядра и процессов Linux
* lttng — (Linux Trace Toolkit Next Generation) инструмент для трассировки ядра, программ и библиотек Linux
* bcc (BPF) — (сравнительно) новый и очень мощный инструмент для трассировки и манипуляции ядром Linux, основанный на Berkeley Packet Filter, позволяет делать космические вещи
Ввод/вывод:
* iostat (sysstat) — статистика ввода/вывода по заданному устройству (количество операций записи/чтения в единицу времени, скорость записи/чтения)
* pidstat (sysstat) — нагрузка на процессор, память и устройства от конкретного процесса (заданного по имени или номеру)
* pcstat — использование кэша (какой процент файла попадает в кэш, какой нет)
* lsof — информация об открытых процессом файлах
blktrace
Системные и библиотечные вызовы:
* strace — информация о системных вызовов, выполняемых процессом, позволяет понять или по крайней мере лучше разобраться, почему процесс висит или потребляет много ресурсов
* ltrace — трассировка библиотечных вызовов (которые не обязательно являются системными)
Аппаратные счётчики:
* tiptop — информация о процессах в реальном времени, похожа на top, но в отличие от него данные преимущественно берутся с аппаратных счётчиков
* numastat — просмотр информации об использовании памяти процессами/процессорами в системах с NUMA-архитектурой
Сеть:
* netstat — классический инструмент для просмотра конфигурации сети (сокетов, интерфейсов и так далее)
* ss — socket statistics, позволяет получить информацию об открытых сокетах и их состоянии (похожа на netstat, но умеет больше)
* ethtool — просмотр настроек и состояния ethernet-интерфейса
* snmpget — получение данных по SNMP
* lldptool — настройка LLDP и просмотр данных LLDP
* nicstat — статистика использования сетевой карты (сетевого интерфейса)
* ip — конфигурация и статистика стека TCP/IP Linux
* ifstat — статистика использования сетевого интерфейса в реальном времени
Процессы:
* top — информация о наиболее активных (наиболее ресурсоёмки) процессах + общая информация о системе
* vmstat — данные об использовании виртуальной памяти
* free — информация о свободной памяти, кэше, буферах
* slabtop — информация о заполнении SLAB-кэша
Процессор:
* mpstat (sysstat) — общая информация об использовании процессора (одного или всех процессоров)
* turbostat (kernel-tools) — информация о топологии процессора, частоте, питании, температуре
* rdmsr — (Read from Model Specific Register) чтение из моделезависимых регистров (позволяет оценить использование LLC-кэша и прочее)
Универсальные:
* sar — (system activity report) информация о системной активности в реальном времени (диск, память, процессор и так далее)
* dstat — универсальный инструмент для сбора информации о системе (vmstat, iostat, netstat, ifstat и ещё много других в одном флаконе)
* dmesg — журнал сообщений ядра с момента загрузки системы
* /proc — псевдофайловая система предоставляющая доступ к внутренним данным/счётчикам ядра
* sysdig — универсальный инструмент для сбора и анализа данных о системе (сотни различных источников скомбинированные вместе)
👉 @i_linux
Проверяем доступность портов с использованием nmap/netcat/telnet/nc
Доступность tcp-порта
netcat
netcat [options] host port
сканер портов:
netcat -z -v domain.com 1-1000
запустить netcat на хосте и слушать на tcp порте 4444:
netcat -l 4444
а на другой машине проверить подключение к netcat, запущенному на другом хосте:
netcat domain.com 4444
nc
nc -vt <ip> <port>
telnet
telnet <ip> <port>
nmap
порт 25 tcp: nmap -p25 11.11.11.11
Доступность udp-порта
netcat
netcat -u host port
nc
nc -vu <ip> <port>
nmap
доступность порта udp 53: nmap -sU -p U:53 11.1.11.12
👉 @i_linuxБезопасность ОС Linux
Разграничение доступа в Linux: SUID/SGID-приложения
Аутентификация в Linux: Хранение истории паролей
Аутентификация в Linux: Защита от перебора паролей
Настройка Suricata в режиме IPS средствами NFQ в Linux
Поиск руткитов в Linux: chkrootkit
Поиск руткитов в Linux: rkhunter
Обнаруживаем реальный rootkit средствами chkrootkit и rkhunter
источник
👉 @i_linux
Проброс и перенаправление портов в iptables
Проброс трафика за NAT или проброс трафика на другой сервер
Чаще всего проброс трафика используется, если мы находимся в локальной сети и от внешнего мира отделены шлюзом. Для того, чтобы открыть доступ для локальных служб (ssh, web, ftp), нам необходимо пробросить порты. Поскольку в качестве шлюза мы будем использовать сервер на Linux, то осуществлять данные действия будем с помощью iptables.
https://telegra.ph/Probros-i-perenapravlenie-portov-v-iptables-09-26
👉 @i_linux
Дисковая и файловая подсистемы
Диски в Linux: LVMRAID - Программный RAID-массив средствами LVM (Logical Volume Management)
Диски в Linux: Перенос каталога /home на отдельный раздел/том LVM
Диски в Linux: Основы LVM - Logical Volume Management, Менеджер логических томов
Файловые системы в Linux: Квотирование в XFS
Хранение файлов в Linux: Индексные дескрипторы (inodes)
Хранение файлов в Linux: Жесткие ссылки (hard links)
Резервное сохранение в Linux: Использование утилит копирования
Резервное сохранение в Linux: Возможности жестких ссылок
источник
👉 @i_linux
Контроль оплаты домена через Zabbix
Позвонил клиент, говорит почта не работает. Стал смотреть – домен отключен за не оплату, бухгалтерия забыла оплатить счет. Подумалось, что неплохо бы видеть какие домены в ближайшее время тоже потребуют продления. Будем для этого использовать Zabbix.
На сервере с Zabbix’ом установим Zabbix-агент. Он и будет у нас заниматься проверкой наших доменов.
https://telegra.ph/Kontrol-oplaty-domena-cherez-Zabbix-09-26
👉 @i_linux
Как передаются данные через Интернет?
Какое отношение это имеет к модели OSI? Как TCP/IP вписывается в нее?
7 уровней модели OSI:
Физический уровень
Канальный уровень
Сетевой уровень
Транспортный уровень
Сеансовый уровень
Уровень представления
Прикладной уровень
👉 @i_linux
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
