Linux Terminal Basics
Working with Text
Working with Files
Paths, Storage and System Monitoring
Users, Groups, Aliases and Functions
источник
👉 @sys_adminos
Working with Text
Working with Files
Paths, Storage and System Monitoring
Users, Groups, Aliases and Functions
источник
👉 @sys_adminos
👍2❤1
🚀 MEETUPxSPRINT OFFER для инженеров технической поддержки от YADRO
Хочешь узнать, как устроена техническая поддержка в одной из ведущих технологических компаний России? Приходи на онлайн-митап от YADRO! Расскажем, покажем, ответим на любые вопросы — и дадим возможность попасть в команду всего за 3 дня!
🔥 Программа митапа:
✔️ Сервисная служба YADRO: основные ресурсы и направления
Василий Бронников, Руководитель отдела техподдержки решений
✔️ Наши продукты: уникальные характеристики и возможности
Андрей Антоненко, Ведущий инженер техподдержки TATLIN
✔️ Реальные кейсы: как команды решают сложные задачи
Дмитрий Сафонов, Руководитель группы L1-поддержки TATLIN.UNIFIED
🔥 Что тебя ждёт:
➖ Реальные кейсы и инсайты из практики техподдержки
➖ Доклады от инженеров YADRO: продукты, процессы, особенности
➖ Живое общение с командой и ответы на вопросы о работе и технологиях
👨💻 А если ты задумываешься о новой работе — у тебя есть возможность быстро попасть в команду YADRO и получить оффер за 3 дня. Для этого нужно пройти короткий тест. Сделать это можно уже сейчас, а также во время или после митапа — выбирай, как тебе удобно (но заявки принимаем до 6 июля).
📌 Тест можно пройти по ссылке.
➖➖➖
🗓 26 июня, начало в 19:00 мск, четверг
🌐 ОНЛАЙН
✅ Регистрация на мероприятие
Реклама. ООО "ЭВРОНЕ.РУ". ИНН 3663057399. erid: 2VtzqwySHG2
Хочешь узнать, как устроена техническая поддержка в одной из ведущих технологических компаний России? Приходи на онлайн-митап от YADRO! Расскажем, покажем, ответим на любые вопросы — и дадим возможность попасть в команду всего за 3 дня!
🔥 Программа митапа:
Василий Бронников, Руководитель отдела техподдержки решений
Андрей Антоненко, Ведущий инженер техподдержки TATLIN
Дмитрий Сафонов, Руководитель группы L1-поддержки TATLIN.UNIFIED
🔥 Что тебя ждёт:
➖ Реальные кейсы и инсайты из практики техподдержки
➖ Доклады от инженеров YADRO: продукты, процессы, особенности
➖ Живое общение с командой и ответы на вопросы о работе и технологиях
👨💻 А если ты задумываешься о новой работе — у тебя есть возможность быстро попасть в команду YADRO и получить оффер за 3 дня. Для этого нужно пройти короткий тест. Сделать это можно уже сейчас, а также во время или после митапа — выбирай, как тебе удобно (но заявки принимаем до 6 июля).
📌 Тест можно пройти по ссылке.
➖➖➖
🗓 26 июня, начало в 19:00 мск, четверг
🌐 ОНЛАЙН
✅ Регистрация на мероприятие
Реклама. ООО "ЭВРОНЕ.РУ". ИНН 3663057399. erid: 2VtzqwySHG2
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Совет по Linux 💡
Как удалить пустой каталог рекурсивно с помощью команды find:
👉 @sys_adminos
Как удалить пустой каталог рекурсивно с помощью команды find:
find . -type d -empty -delete
👉 @sys_adminos
👍2
15 супер полезных примеров команды find в Linux
Практические примеры, которые приведены в этой статье, помогут вам освоить очень эффективную и крайне полезную команду find.
Она используется для поиска файлов и папок через командную строку Linux.
Команда find — одна из самых мощных и широко применимых команд. При этом она крайне объёмная и насчитывает более 50 опций, в которых легко запутаться, особенно в сочетании с командами exec или xargs.
Если вы сисадмин или разработчик, избежать команды find при работе с командной строкой не получится. Так что давайте научимся её не бояться и пользоваться её возможностями в полной мере.
Для этого разберём самые распространённые случаи практического применения команды find. Но для начала покажу вам синтаксис и принцип работы с командой.
Поиск файлов и папок по имени
find . -name SEARCH_NAME
Поиск только файлов или только папок
Поиск без учёта регистра
Поиск файлов по расширению
Поиск файлов в заданной папке
Поиск файлов в нескольких папках
Поиск пустых файлов и папок
Поиск крупных и мелких файлов (поиск по размеру файла)
https://habr.com/ru/companies/first/articles/593669/
👉 @sys_adminos
Практические примеры, которые приведены в этой статье, помогут вам освоить очень эффективную и крайне полезную команду find.
Она используется для поиска файлов и папок через командную строку Linux.
Команда find — одна из самых мощных и широко применимых команд. При этом она крайне объёмная и насчитывает более 50 опций, в которых легко запутаться, особенно в сочетании с командами exec или xargs.
Если вы сисадмин или разработчик, избежать команды find при работе с командной строкой не получится. Так что давайте научимся её не бояться и пользоваться её возможностями в полной мере.
Для этого разберём самые распространённые случаи практического применения команды find. Но для начала покажу вам синтаксис и принцип работы с командой.
Поиск файлов и папок по имени
find . -name SEARCH_NAME
Поиск только файлов или только папок
find . -type f -name SEARCH_NAME
Поиск без учёта регистра
find . -type f -iname SEARCH_NAME
Поиск файлов по расширению
find . -type f -name "*.cpp"
Поиск файлов в заданной папке
abhishek@LHB:~/Examples$ find ./new -name mystuff
./new/mystuff
Поиск файлов в нескольких папках
find ./location1 /second/location -type f -name "pattern"
Поиск пустых файлов и папок
find . -empty
Поиск крупных и мелких файлов (поиск по размеру файла)
find . -size +1G
https://habr.com/ru/companies/first/articles/593669/
👉 @sys_adminos
👍1
«Где быстро развернуть стенд под тест новой сборки, чтобы не угореть по времени и бюджету?»
Это один из самых частых вопросов в жизни сисадмина.
Облако кажется очевидным решением, пока не начинаешь работать с кастомной ОС, нестандартной сетевой схемой или нетипичным ПО. Тут начинается боль: ограничения по гипервизору, отсутствие root-доступа к железу…
В таких случаях спасает Yandex BareMetal. Это аренда физических серваков с полной свободой действий:
➤ Парк из тысяч серверов готовых конфигураций с RAM от 128 до 256 Гб и скоростью сети от 1 до 25 Гб/сек
➤ Установка любой ОС: из образов или своей
➤ Удобное управление по API или через KVM и SSH
➤ Необходимые мощности можно получить в течение 25 минут
Аренда на день, месяц или год со скидкой до 15%. Удобно, когда задача нестандартная, а инфраструктуру под это держать не хочется.
Тут найдете много инструкций, которые помогут загрузить свою ОС и пошагово настроить сетевую связность и подключить backup → Попробовать BareMetal
Это один из самых частых вопросов в жизни сисадмина.
Облако кажется очевидным решением, пока не начинаешь работать с кастомной ОС, нестандартной сетевой схемой или нетипичным ПО. Тут начинается боль: ограничения по гипервизору, отсутствие root-доступа к железу…
В таких случаях спасает Yandex BareMetal. Это аренда физических серваков с полной свободой действий:
➤ Парк из тысяч серверов готовых конфигураций с RAM от 128 до 256 Гб и скоростью сети от 1 до 25 Гб/сек
➤ Установка любой ОС: из образов или своей
➤ Удобное управление по API или через KVM и SSH
➤ Необходимые мощности можно получить в течение 25 минут
Аренда на день, месяц или год со скидкой до 15%. Удобно, когда задача нестандартная, а инфраструктуру под это держать не хочется.
Тут найдете много инструкций, которые помогут загрузить свою ОС и пошагово настроить сетевую связность и подключить backup → Попробовать BareMetal
Трюки терминала Bash
Полезные комбинации клавиш (хоткеи) и небольшие хитрости, которые сделают Вашу работу в Linux более эффективной.
Горячие клавиши" Bash с Ctrl
Изменить заглавные на строчные и наоборот
Запустить предыдущую команду ещё раз
Запустить команду из истории по номеру (например, 53)
Запускает последнюю команду и меняет какой-то параметр. Например, меняем
Важно: предыдущая команда заменит только первое вхождение "aaa". Если вы хотите заменить все вхождения, используйте
Запустить последнюю команду, которая начинается с...
Например, до этого в истории команд была команда cat filename:
— запускает
Указание файлов по шаблону в Bash
Полезные переменные окружения Bash
Короткие переменные:
Более длинные, но тоже полезные переменные:
👉 @sys_adminos
Полезные комбинации клавиш (хоткеи) и небольшие хитрости, которые сделают Вашу работу в Linux более эффективной.
Горячие клавиши" Bash с Ctrl
Ctrl + n
— то же самое, что и стрелка вниз.Ctrl + p
— то же самое, что и стрелка вверх.Ctrl + r
— поиск по предыдущим командам из истории команд (history). Продолжайте нажимать Ctrl + r
, чтобы искать дальше. Ctrl + Shift + r
— поиск в другую сторону.Ctrl + s
— остановить вывод в терминал.Ctrl + q
— восстановить вывод в терминал после Ctrl + s.Ctrl + a
— перейти к началу строки (аналог клавиши Home).Ctrl + e
— перейти к концу строки (аналог клавиши End).Ctrl + d
— если вы ввели что-то, то Ctrl + d
удаляет символ под курсором. В противном случае означает конец ввода и завершает текущую сессию Bash.Ctrl + k
— удалить весь текст от курсора до конца строки.Ctrl + x + backspace
— удалить весь текст от начала строки до курсора.Ctrl + t
— переставить символ до курсора на символ под курсором. Нажмите Esc + t
для перестановки двух слов до курсора.Ctrl + w
— удалить слово до курсора; затем Ctrl + y, чтобы вставить его.Ctrl + u
— удалить строку перед курсором; Ctrl + y для вставки его.Ctrl + _
— отменить ввод.Ctrl + l
— очищает окно терминала. То же самое, что и clear.Ctrl + x + Ctrl + e
— запускает редактор, определённый в переменной $EDITOR
, для ввода команды. Полезно для многострочных команд.Изменить заглавные на строчные и наоборот
Esc + u
— преобразовать буквы от курсора до конца строки в заглавные буквы.Esc + l
— преобразовать буквы от курсора до конца строки в нижний регистр.Esc + c
— заменить букву под курсором на заглавную.Запустить предыдущую команду ещё раз
Запустить команду из истории по номеру (например, 53)
!53
!!
— запуск последней команды.sudo !!
— запустить предыдущую команду с sudo.Запускает последнюю команду и меняет какой-то параметр. Например, меняем
"aaa" на "bbb":
# Последняя команда: echo 'aaa'
$ ^aaa^bbb
$ echo 'bbb'
bbb
Важно: предыдущая команда заменит только первое вхождение "aaa". Если вы хотите заменить все вхождения, используйте
:&
:^aaa^bbb^:&
# или
!!:gs/aaa/bbb/
Запустить последнюю команду, которая начинается с...
Например, до этого в истории команд была команда cat filename:
!cat
# или
!c
— запускает
cat filename
ещё раз.Указание файлов по шаблону в Bash
/etc/pa*wd
→ /etc/passwd
— символ *
означает "несколько любых символов"./b?n/?at
→ /bin/cat
— символ ?
означает "один любой символ".ls -l [a-z]*
— вывести список файлов, содержащих только буквы латинского алфавита. В квадратных скобках []
перечисляются символы, которые будут искаться. А символ *
после []
означает "хоть сколько раз".ls {*.sh,*.py}
— вывести все .sh и .py файлы. {}
используется для группировки нескольких шаблонов по принципу "или".Полезные переменные окружения Bash
Короткие переменные:
$0
— оболочка командной строки или путь до запускаемого файла.$1
, $2
, $3
, ... — аргументы запуска скрипта.$#
— число аргументов, переданных в скрипт из терминала.$?
— код завершения последней команды.$-
— текущие опции, установленные для оболочки.$$
— идентификатор текущего процесса.$!
— идентификатор процесса, завершённого последним.Более длинные, но тоже полезные переменные:
$DESKTOP_SESSION
— текущий менеджер дисплеев.$EDITOR
— редактор текста по умолчанию.$LANG
— используемый системой язык.$PATH
— список директорий, в которых будут искаться исполняемые файлы.$PWD
— текущая директория.$SHELL
— текущая оболочка командной строки.$USER
— имя текущего пользователя.$HOSTNAME
— имя текущего хоста (компьютера).👉 @sys_adminos
👍4
Zenith - что-то вроде top или htop, но с диаграммами с возможностью масштабирования, использованием CPU, GPU, сети и диска.
Особенности
Дополнительные графики использования ЦП, памяти, сети и дисков
Быстрый просмотр свободного места на диске, IP-адресов сетевых карт, частоты процессора
Выделение основных пользователей ЦП, памяти и диска
Процент заряда батареи, время зарядки или разрядки, потребляемая мощность
Таблица процессов с возможностью фильтрации по типу верхней части, включающая использование диска каждым процессом
Изменение приоритета процесса
Представления диаграмм с возможностью масштабирования (с поддержкой прокрутки назад во времени)
Управление процессами с помощью сигналов
Сохранение данных о производительности между запусками
Метрики использования GPU для графических процессоров NVIDIA (с --features nvidia), включая использование GPU для каждого процесса
Графики свободного места на диске
Учет задержек (в Linux при запуске zenith с правами root)
Установка на дистрибутивы Linux на базе Debian/Ubuntu (64-бит)
https://github.com/bvaisvil/zenith
👉 @sys_adminos
Особенности
Дополнительные графики использования ЦП, памяти, сети и дисков
Быстрый просмотр свободного места на диске, IP-адресов сетевых карт, частоты процессора
Выделение основных пользователей ЦП, памяти и диска
Процент заряда батареи, время зарядки или разрядки, потребляемая мощность
Таблица процессов с возможностью фильтрации по типу верхней части, включающая использование диска каждым процессом
Изменение приоритета процесса
Представления диаграмм с возможностью масштабирования (с поддержкой прокрутки назад во времени)
Управление процессами с помощью сигналов
Сохранение данных о производительности между запусками
Метрики использования GPU для графических процессоров NVIDIA (с --features nvidia), включая использование GPU для каждого процесса
Графики свободного места на диске
Учет задержек (в Linux при запуске zenith с правами root)
Установка на дистрибутивы Linux на базе Debian/Ubuntu (64-бит)
sudo apt install curl
curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get
https://github.com/bvaisvil/zenith
👉 @sys_adminos
👍4
apt-get — команда для управления пакетами программного обеспечения в дистрибутивах, основанных на Debian
Команда apt-get предназначена для работы с утилитой «apt», являющейся стандартной утилитой для управлении пакетами программного обеспечения в дистрибутиве Debian, а также основанных на нем дистрибутивах (Ubuntu, Linux Mint, ...).
Вы можете использовать apt-get для установки и удаления пакетов программного обеспечения из вашей системы (группами или по одному), а также обновления системных списков пакетов программного обеспечения из подключенных на данный момент репозиториев.
Примеры использования
Установка пакета программного обеспечения:
Переустановка пакета программного обеспечения:
Удаление пакета программного обеспечения:
Удаление пакета программного обеспечения со всему файлами конфигурации:
Поиск пакета программного обеспечения:
Обновление списков пакетов программного обеспечения из подключенных репозиториев (файлов с расширением .deb):
Обновление системы (полезно для поддержания программного обеспечения в актуальном состоянии):
Обновление дистрибутива (утилита попытается загрузить и установить пакеты программного обеспечения из состава новой версии дистрибутива):
Вывод короткого списка всех доступных параметров команды:
Механизм автодополнения команд
Для активации механизма автодополнения команд apt-get по клавише Tab следует добавить строку
в файл .bashrc из вашей домашней директории. После этого при вводе такой команды, как «apt-get install a» и нажатии клавиши Tab командная оболочка Bash попытается подставить имя пакета программного обеспечения.
Дополнительная информация
Попробуйте выполнить команду:
Вы должны будете увидеть следующий вывод:
Использование в других дистрибутивах
Если утилиты из комплекта поставки apt-get совместимы с вашим дистрибутивом, вы сможете воспользоваться штатным менеджером пакетов вашего дистрибутива для установки их в вашу систему. После окончания процесса установки вы сможете использовать приведенные выше команды для управления пакетами программного обеспечения дистрибутива.
Устранение неполадок в дистрибутивах, использующих пакеты RPM
В некоторых случаях после исполнения команды apt-get будет выводиться сообщение о невозможности блокировки определенной директории. Большинство проблем, вызывающих подобное поведение, решается путем исполнения следующей последовательности команд:
👉 @sys_adminos
Команда apt-get предназначена для работы с утилитой «apt», являющейся стандартной утилитой для управлении пакетами программного обеспечения в дистрибутиве Debian, а также основанных на нем дистрибутивах (Ubuntu, Linux Mint, ...).
Вы можете использовать apt-get для установки и удаления пакетов программного обеспечения из вашей системы (группами или по одному), а также обновления системных списков пакетов программного обеспечения из подключенных на данный момент репозиториев.
Примеры использования
Установка пакета программного обеспечения:
# apt-get install <имя пакета>
Переустановка пакета программного обеспечения:
# apt-get install --reinstall <имя пакета>
Удаление пакета программного обеспечения:
# apt-get remove <имя пакета>
Удаление пакета программного обеспечения со всему файлами конфигурации:
# apt-get --purge remove <имя пакета>
Поиск пакета программного обеспечения:
# apt-cache search <имя пакета>
Обновление списков пакетов программного обеспечения из подключенных репозиториев (файлов с расширением .deb):
# apt-get update
Обновление системы (полезно для поддержания программного обеспечения в актуальном состоянии):
# apt-get upgrade
Обновление дистрибутива (утилита попытается загрузить и установить пакеты программного обеспечения из состава новой версии дистрибутива):
# apt-get dist-upgrade
Вывод короткого списка всех доступных параметров команды:
# apt-get --help
Механизм автодополнения команд
Для активации механизма автодополнения команд apt-get по клавише Tab следует добавить строку
source /etc/bash_completion
в файл .bashrc из вашей домашней директории. После этого при вводе такой команды, как «apt-get install a» и нажатии клавиши Tab командная оболочка Bash попытается подставить имя пакета программного обеспечения.
Дополнительная информация
Попробуйте выполнить команду:
apt-get moo
Вы должны будете увидеть следующий вывод:
(__)
(oo)
/------/
/ | ||
* /---/
...."Have you mooed today?"…
Использование в других дистрибутивах
Если утилиты из комплекта поставки apt-get совместимы с вашим дистрибутивом, вы сможете воспользоваться штатным менеджером пакетов вашего дистрибутива для установки их в вашу систему. После окончания процесса установки вы сможете использовать приведенные выше команды для управления пакетами программного обеспечения дистрибутива.
Устранение неполадок в дистрибутивах, использующих пакеты RPM
В некоторых случаях после исполнения команды apt-get будет выводиться сообщение о невозможности блокировки определенной директории. Большинство проблем, вызывающих подобное поведение, решается путем исполнения следующей последовательности команд:
rm /var/lock/rpm/transaction
rm /var/lib/rpm/__db*
rm /var/cache/apt/archives/lock
👉 @sys_adminos
👍3
Media is too big
VIEW IN TELEGRAM
Компьютерные сети. Введение, OSI
Преподаватель: Климанов Максим Михайлович
Таймкоды:
00:00:00 - Начало
00:00:09 - Организационные вопросы
00:34:25 - Начало курса: локальные и глобальные сети
00:43:56 - Классификация используемого оборудования (физический уровень), модели стевого взаимодействия (OSI)
01:01:16 - Канальный уровень
01:03:28 - Сетевой уровень
01:05:57 - Транспортный уровень
01:10:04 - Сессионный уровень
01:11:59 - Уровень представлений
01:13:18 - Уровень приложений
источник
👉 @sys_adminos
Преподаватель: Климанов Максим Михайлович
Таймкоды:
00:00:00 - Начало
00:00:09 - Организационные вопросы
00:34:25 - Начало курса: локальные и глобальные сети
00:43:56 - Классификация используемого оборудования (физический уровень), модели стевого взаимодействия (OSI)
01:01:16 - Канальный уровень
01:03:28 - Сетевой уровень
01:05:57 - Транспортный уровень
01:10:04 - Сессионный уровень
01:11:59 - Уровень представлений
01:13:18 - Уровень приложений
источник
👉 @sys_adminos
👍2
Media is too big
VIEW IN TELEGRAM
Компьютерные сети. Топология и Ethernet
Преподаватель: Климанов Максим Михайлович
Таймкоды:
00:02:24 - Сетевые топологии (физические)
00:07:45 - Развитие топологий и сред Ethernet
00:15:25 - Витая пара, ее категории и маркировка
00:35:40 - Hub-ы и связанная с ними топология
00:40:05 - Логика передачи данных в первых сетях Ethernet (CSMA/CD)
01:03:55 - Структура кадра, инкапсуляция/декапсуляция
источник
👉 @sys_adminos
Преподаватель: Климанов Максим Михайлович
Таймкоды:
00:02:24 - Сетевые топологии (физические)
00:07:45 - Развитие топологий и сред Ethernet
00:15:25 - Витая пара, ее категории и маркировка
00:35:40 - Hub-ы и связанная с ними топология
00:40:05 - Логика передачи данных в первых сетях Ethernet (CSMA/CD)
01:03:55 - Структура кадра, инкапсуляция/декапсуляция
источник
👉 @sys_adminos
👍2
Nginxpwner - это простой инструмент для поиска распространенных неправильных конфигураций и уязвимостей Nginx.
Install:
Install using Docker
Run the image
https://github.com/stark0de/nginxpwner
👉 @sys_adminos
Install:
cd /opt
git clone https://github.com/stark0de/nginxpwner
cd nginxpwner
chmod +x install.sh
./install.sh
Install using Docker
git clone https://github.com/stark0de/nginxpwner
cd nginxpwner
sudo docker build -t nginxpwner:latest .
Run the image
sudo docker run -it nginxpwner:latest /bin/bash
https://github.com/stark0de/nginxpwner
👉 @sys_adminos
👍2
SSH авторизация в Linux по сертификату / ключу
Ещё одна мастхев практика - доступ к линукс серверам через SSH по ключу / сертификату, чтобы исключить возможность подбора пароля и сократить количество лишних движений в ежедневной рутине.
Настройка Linux для работы с SSH
Обычно по-умолчанию всё и так включено и работает, убедитесь что:
Служба/демон/сервис ssh/sshd включена и работает
Указанный порт в файле /etc/ssh/sshd_config разрешен в фаерволе
Если летит sshd shuts down with “No supported key exchange algorithms” error, ставим UsePAM yes в /etc/ssh/
sshd_config и после этого sudo systemctl restart sshd
Создаем папку, где будут храниться ПУБЛИЧНЫЕ части ключей:
Потом мы запишем содержимое публичной части ключа в authorized_keys.
Генерируем пару SSH
После генерации ключей по-умолчанию будут создано 2 файла:
id_rsa - приватная часть ключа, которой ни с кем нельзя делиться
id_rsa.pub - публичная часть ключа, содержимое которой нужно перенести на удаленный сервер
Генерируем пару SSH ключей на Windows 10
RSA Ключи с длиной 2048:
RSA Ключи с длиной 4096:
ED25519 Ключи (топовый на данный момент формат, взамен RSA
С указанием пути куда сохранить пару ключей:
ВАЖНО: Удаляем у сгенеренного паблик ключа группу ВСЕ и себе даём Полные права.
Ярлык для SSH подключения в Windows 10
ПКМ по пустому месту на рабочем столе > Создать > Ярлык > Расположение:
Генерируем пару SSH ключей на Linux
RSA Ключи с длиной 2048:
RSA Ключи с длиной 4096:
ED25519 Ключи (топовый на данный момент формат, взамен RSA
Копируем публичную часть ключа на другой хост с использованием SSH-Copy-ID
Копируем публичную часть ключа на другой хост с использованием SSH
Если каким-то магическим образом SSH-Copy-ID нет, используем OneLiner и делаем тоже самое через SSH:
Отключение SSH авторизации по паролю
В файле /etc/ssh/sshd_config:
На компьютерах под управлением Ubuntu или Debian можно использовать следующую команду:
На компьютерах под управлением CentOS/Fedora этот демон носит имя sshd:
Остальное по SSH
Чтобы вести лог подключений к SSH необходимо в файле /etc/ssh/sshd_config выставить значение LogLevel VERBOSE и перезапустить службу SSH service ssh restart
Траблшутинг SSH
На удаленном сервере сервере:
Разрешаем в фаерволе iptables тестовый порт 2222
Запускаем отдельный экземпляр SSH на 2222 порту и пробуем конектиться
/usr/sbin/sshd -d -p 2222
На клиенте в ярлыке или команде SSH можно добавить -v для verbose и читать что там не так + лог SSH на самом сервере.
👉 @sys_adminos
Ещё одна мастхев практика - доступ к линукс серверам через SSH по ключу / сертификату, чтобы исключить возможность подбора пароля и сократить количество лишних движений в ежедневной рутине.
Настройка Linux для работы с SSH
Обычно по-умолчанию всё и так включено и работает, убедитесь что:
Служба/демон/сервис ssh/sshd включена и работает
Указанный порт в файле /etc/ssh/sshd_config разрешен в фаерволе
Если летит sshd shuts down with “No supported key exchange algorithms” error, ставим UsePAM yes в /etc/ssh/
sshd_config и после этого sudo systemctl restart sshd
Создаем папку, где будут храниться ПУБЛИЧНЫЕ части ключей:
Потом мы запишем содержимое публичной части ключа в authorized_keys.
Генерируем пару SSH
После генерации ключей по-умолчанию будут создано 2 файла:
id_rsa - приватная часть ключа, которой ни с кем нельзя делиться
id_rsa.pub - публичная часть ключа, содержимое которой нужно перенести на удаленный сервер
Генерируем пару SSH ключей на Windows 10
RSA Ключи с длиной 2048:
RSA Ключи с длиной 4096:
ED25519 Ключи (топовый на данный момент формат, взамен RSA
С указанием пути куда сохранить пару ключей:
ВАЖНО: Удаляем у сгенеренного паблик ключа группу ВСЕ и себе даём Полные права.
Ярлык для SSH подключения в Windows 10
ПКМ по пустому месту на рабочем столе > Создать > Ярлык > Расположение:
Генерируем пару SSH ключей на Linux
RSA Ключи с длиной 2048:
RSA Ключи с длиной 4096:
ED25519 Ключи (топовый на данный момент формат, взамен RSA
Копируем публичную часть ключа на другой хост с использованием SSH-Copy-ID
Копируем публичную часть ключа на другой хост с использованием SSH
Если каким-то магическим образом SSH-Copy-ID нет, используем OneLiner и делаем тоже самое через SSH:
Отключение SSH авторизации по паролю
В файле /etc/ssh/sshd_config:
На компьютерах под управлением Ubuntu или Debian можно использовать следующую команду:
На компьютерах под управлением CentOS/Fedora этот демон носит имя sshd:
Остальное по SSH
Чтобы вести лог подключений к SSH необходимо в файле /etc/ssh/sshd_config выставить значение LogLevel VERBOSE и перезапустить службу SSH service ssh restart
Траблшутинг SSH
На удаленном сервере сервере:
Разрешаем в фаерволе iptables тестовый порт 2222
Запускаем отдельный экземпляр SSH на 2222 порту и пробуем конектиться
/usr/sbin/sshd -d -p 2222
На клиенте в ярлыке или команде SSH можно добавить -v для verbose и читать что там не так + лог SSH на самом сервере.
👉 @sys_adminos
👍3👎1
MyDumper
Что такое MyDumper?
Инструмент для логического резервного копирования MySQL. Он состоит из 2 инструментов:
- mydumper, который отвечает за экспорт последовательной резервной копии баз данных MySQL
- myloader считывает резервную копию из mydumper, подключается к целевой базе данных и импортирует ее.
Оба инструмента используют возможности многопоточности.
MyDumper имеет открытый исходный код и поддерживается сообществом, он не является продуктом Percona, MariaDB или MySQL.
Зачем нам нужен MyDumper?
- Параллелизм (следовательно, скорость) и производительность (исключение дорогостоящих процедур преобразования набора символов, эффективный код в целом)
- Удобство управления выводом (отдельные файлы для таблиц, метаданных дампа и т. д., удобство просмотра/разборки данных)
- Согласованность - поддерживает моментальный снимок во всех потоках, обеспечивает точное положение master и slave журналов и т.д.
- Управляемость - поддерживает PCRE для указания включений и исключений баз данных и таблиц
Как установить
RedHat / Centos
Ubuntu / Debian
FreeBSD
MacOS
https://github.com/mydumper/mydumper
👉 @sys_adminos
Что такое MyDumper?
Инструмент для логического резервного копирования MySQL. Он состоит из 2 инструментов:
- mydumper, который отвечает за экспорт последовательной резервной копии баз данных MySQL
- myloader считывает резервную копию из mydumper, подключается к целевой базе данных и импортирует ее.
Оба инструмента используют возможности многопоточности.
MyDumper имеет открытый исходный код и поддерживается сообществом, он не является продуктом Percona, MariaDB или MySQL.
Зачем нам нужен MyDumper?
- Параллелизм (следовательно, скорость) и производительность (исключение дорогостоящих процедур преобразования набора символов, эффективный код в целом)
- Удобство управления выводом (отдельные файлы для таблиц, метаданных дампа и т. д., удобство просмотра/разборки данных)
- Согласованность - поддерживает моментальный снимок во всех потоках, обеспечивает точное положение master и slave журналов и т.д.
- Управляемость - поддерживает PCRE для указания включений и исключений баз данных и таблиц
Как установить
RedHat / Centos
release=$(curl -Ls -o /dev/null -w %{url_effective} https://github.com/mydumper/mydumper/releases/latest | cut -d'/' -f8)
yum install https://github.com/mydumper/mydumper/releases/download/${release}/mydumper-${release:1}.el7.x86_64.rpm
yum install https://github.com/mydumper/mydumper/releases/download/${release}/mydumper-${release:1}.el8.x86_64.rpm
Ubuntu / Debian
apt-get install libatomic1
release=$(curl -Ls -o /dev/null -w %{url_effective} https://github.com/mydumper/mydumper/releases/latest | cut -d'/' -f8)
wget https://github.com/mydumper/mydumper/releases/download/${release}/mydumper_${release:1}.$(lsb_release -cs)_amd64.deb
dpkg -i mydumper_${release:1}.$(lsb_release -cs)_amd64.deb
FreeBSD
pkg install mydumper
MacOS
brew install mydumper
https://github.com/mydumper/mydumper
👉 @sys_adminos
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Корпоративная сеть на MikroTik
Введение
Установка
Базовая настройка
VPN
Firewall
Резервирование каналов
Отказоустойчивость (VRRP)
Блокировка сайтов
VLAN
Troubleshooting
источник
👉 @sys_adminos
Введение
Установка
Базовая настройка
VPN
Firewall
Резервирование каналов
Отказоустойчивость (VRRP)
Блокировка сайтов
VLAN
Troubleshooting
источник
👉 @sys_adminos
👍3🔥1