ru
Feedback
Системный администратор

Системный администратор

Открыть в Telegram

Канал для системных администраторов. Linux, Windows, Active Directory, GPO, PowerShell. Виртуализация Hyper-V, VMWare. Облака Azure, AWS. По всем вопросам @evgenycarter

Больше
2 062
Подписчики
-124 часа
-217 дней
-9830 день
Архив постов
Топ полезных команд Отправить тестовое письмо: echo "test" | mail -s "Test Subject" user@gmail.com Выполнить PHP функцию в консоли: php -r "echo phpinfo();" | grep date.timezone Отключить спящий режим на ubuntu server: sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target Для проверки набора переменных BASH_ENV: $ env | grep BASH_ENV Замер скорости диска: dd if=/dev/zero of=testfile bs=4k count=1310720 dd if=testfile of=/dev/null bs=4k count=1310720 Обновить locate: /usr/libexec/locate.updatedb 👉 @i_linux

Примеры использования команды grep в Linux Поиск файлов с помощью команды grep # dpkg -l | grep -i python Команда dpkg -l выводит на экран установленные пакеты с расширением *.deb. Результат вывода с помощью символа передается по конвейеру команде grep. При этом опция -i позволяет команде игнорировать регистр в названиях. Фильтрация содержимого файлов с помощью команды grep (игнорирование закомментированных строк) # grep –v "#"  /etc/apache2/sites-available/default-ssl Опция –v указывает команде, что на экран нужно выводить те строки, в которых нет искомого выражения. Обнаружение всех файлов с расширением .mp3 с помощью команды grep # find . –name "*.mp3" | grep –i "ABC" | grep –vi "remix" find — утилита поиска файлов в файловой системе; . — указывает, что поиск следует вести относительно текущего рабочего каталога; –name — проверяет название файлов на соответствие заданному шаблону; "*.mp3" — шаблон, соответствующий файлам искомого формата; | — объединяет команды в конвейер (вывод первой команды передается на ввод второй — и так далее); grep с опцией –i — поиск по выводу команды find с игнорированием регистра; "ABC" — шаблон, по которому осуществляется поиск; grep –vi — поиск по выводу предыдущей команды grep и исключение результатов, соответствующих заданному шаблону; "remix" — шаблон, по которому осуществляется поиск. Отображение строк до или после строки с результатом поиска # ifconfig | grep –A 4 eth0 -A (от англ. After) — указанное количество строк до шаблона; -B (от англ. Before) — указанное количество строк после шаблона. Выведение заданного числа всех соседних строк с помощью команды grep # ifconfig | grep -C 2 lo В том случае, если Вы точно не знаете, какие именно соседние строки (до или после строки, содержащей шаблон) Вам нужны — воспользуйтесь командой grep с опцией -C. Следующая комбинация команд выведет на экран по 2 строки до и после строчки вывода команды ifconfig, содержащей шаблон lo: Подсчет числа строк, содержащих искомое выражение # ifconfig | grep -c inet6 В некоторых случаях Вам могут понадобится не сами строчки, включающие заданное выражение, а их общее количество. В таком случае воспользуйтесь опцией -c. Следующая комбинация команд выведет на экран количество строк в выводе команды ifconfig, включающих шаблон inet6. 👉 @i_linux

+5
Уроки по Linux Команда AWK bash скрипты по-взрослому. Редактируем текст в linux c SED GREP регулярные выражения. Поиск в Linux Менеджер пакетов apt. Установка из ppa virtualbox Запуск задач по расписанию linux. Cron и его маленький секрет Процессы Linux. От рождения до смерти. Делаем процесс милым (nice, renice) источник 👉 @i_linux

Разжёванный курс по 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 👉 @i_linux

Команды для управления процессами в Linux 👉 @i_linux
Команды для управления процессами в Linux 👉 @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 👉 @i_linux
Шпаргалка по работе с Tmux 👉 @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 Система хранения данных – один из тех кардинальных компонентов, без которых ваш сервер не может обойтись, и поэтому требует к себе пристального внимания, несмотря ни на что. Это краткое руководство по внедрению 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

Настройка нескольких внешних IP адресов на MikroTik источник 👉 @i_linux

+6
Безопасность ОС Linux Разграничение доступа в Linux: SUID/SGID-приложения Аутентификация в Linux: Хранение истории паролей Аутентификация в Linux: Защита от перебора паролей Настройка Suricata в режиме IPS средствами NFQ в Linux Поиск руткитов в Linux: chkrootkit Поиск руткитов в Linux: rkhunter Обнаруживаем реальный rootkit средствами chkrootkit и rkhunter источник 👉 @i_linux

Измерение пропускной способности на MikroTik с помощью Bandwidth test источник 👉 @i_linux

Проброс и перенаправление портов в iptables Проброс трафика за NAT или проброс трафика на другой сервер Чаще всего проброс тр
Проброс и перенаправление портов в iptables Проброс трафика за NAT или проброс трафика на другой сервер Чаще всего проброс трафика используется, если мы находимся в локальной сети и от внешнего мира отделены шлюзом. Для того, чтобы открыть доступ для локальных служб (ssh, web, ftp), нам необходимо пробросить порты. Поскольку в качестве шлюза мы будем использовать сервер на Linux, то осуществлять данные действия будем с помощью iptables. https://telegra.ph/Probros-i-perenapravlenie-portov-v-iptables-09-26 👉 @i_linux

+7
Дисковая и файловая подсистемы Диски в 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