Шпаргалка по правам доступа на Linux. Проще некуда
Сохраняй себе на стену 🏻🏻
Статистика ВК сообщества "Сетевое администрирование. Сисадмин и Mikrotik"
Сообщество - где собираются профессионалы!
Количество постов 1 136
Частота постов 32 часа 30 минут
ER
111.97
Нет на рекламных биржах
Графики роста подписчиков
Лучшие посты
Стандартные инструменты для диагностики системы 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 — универсальный инструмент для сбора и анализа данных о системе (сотни различных источников скомбинированные вместе)
#tools #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 — универсальный инструмент для сбора и анализа данных о системе (сотни различных источников скомбинированные вместе)
#tools #linux
Сегодня последняя пятница июля, а это значит, что сегодня отмечается День Системного Администратора!
Что бы сервера стояли крепко, что бы линки не рвались, а железо не горело!
И главное: Зарплата не пинг - пусть растет.
Всех кто в теме - Поздравляем!
Что бы сервера стояли крепко, что бы линки не рвались, а железо не горело!
И главное: Зарплата не пинг - пусть растет.
Всех кто в теме - Поздравляем!
Как происходит передача пакета в сети (объяснение для домохозяек)
🏻PC1. (Прикладной уровень) “Мне нужно передать данные на 192.168.1.2 на порт 2099, надежность доставки не требуется!”.
🏻PC1. (Транспортный уровень) “Окей, подойдёт UDP протокол, давай сюда свои данные”.
🏻PC1. (Прикладной уровень) “На, держи! [0xFF,0xFF, 0x01, …., 0x2E, 0x47]” — произвольные 16-ричные данные. (далее <данные>)
🏻PC1. (Транспортный уровень) “Отлично. Прикреплю-ка я к ним заголовок UDP, чтобы не потерять пакет. В заголовке зафиксируем некоторые данные и номера портов. Какой там свободный? UDP:42133! Отлично. А порт назначения UDP:2099. Такой заголовок и прикрепим. Спускаем пакет дальше, на сетевой уровень. (Пакет: [<заголовок транспортного уровня><данные>]
🏻PC1. (Сетевой уровень) “Получил ваш пакет, куда передавать? На IP:192.168.1.2? Прикреплю к этому заголовку ещё и информацию сетевого уровня. Ну и свой обратный IP: 192.168.1.1 и ещё некоторую информацию от себя… Эй, канальный уровень! Тут для тебя пакет!”. [<заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC1. (Канальный уровень) “Оп-па. Пакет. А куда доставить? Смотрим по заголовку… Такс, на 192.168.1.2. Хммм.. Не помню адреса MAC, связанного с этим IP, гляну в таблице коммутации apr… Хм. Нет такого адреса у меня пока. Будем запрашивать у среды. Пакет пока отложим.”
(парковка пакета)
🏻PC1. (Канальный уровень) “Эй, среда! Есть в сети кто-то с 192.168.1.2? Ответьте на мой MAC: 0001.43B7.623C! У меня для вас пакет! Физический уровень, передай это плз.!”
🏻PC1. (Физический уровень) Рассылается вышеуказанный широковещательный пакет всем станциям (на адрес FFFF.FFFF.FFFF)arp
Каждая станция в широковещательном домене получит этот пакет и проигнорирует его в том случае, если её IP отличается от IP в этом пакете. Станция же, чей IP-адрес совпадает с указанным ответит встречным пакетом.
🏻SWITCH. “Я получил кадр со стороны порта 1. Анализирую назначение. О! Широковещательный кадр. Отправлю его на все остальные порты кроме того, откуда он пришёл. На всякий случай запомню, что на первом порту у меня [0001.43B7.623C]”.
🏻PC3. (Физический) “Я получил широковещательный кадр. Канальный, передаю”.
🏻PC3. (Канальный) “Получил. Эй, сетевой! там спрашивают IP 192.168.1.2, а у нас 192.168.1.3. Игнорируем.”
🏻PC2. (Физический) “Я получил широковещательный кадр. Канальный! Передаю тебе”.
🏻PC2. (Канальный уровень) “Понял! О! Это для меня! Физический, телеграфируй обратно следующее: Послушай, 0001.43B7.623C! Это я! У меня IP адрес 192.168.1.2! Запомни мой MAC 0004.9A41.0966 у себя в таблице коммутации. И не забудь про пакет!”.
🏻SWITCH. “Я получил кадр со стороны порта 2. для MAC: 0001.43B7.623C. Судя по таблице, он у меня на стороне порта 1. Передам кадр в этот порт. А попутно сохраню адрес 0004.9A41.0966 как адрес на стороне порта 2, пригодится”.
🏻PC1. (Канальный уровень) “Нашёлся обладатель адреса 192.168.1.2. Теперь я прикреплю к пакету адрес назначения [0004.9A41.0966], а так же свой обратный MAC [0001.43B7.623C] и отдам на физический уровень для передачи. Физический! Держи пакет!”. [<заголовок канального уровня><заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC1. (Физический уровень) “Ок.”
🏻SWITCH. “Оп-па, получил кадр для MAC: 0004.9A41.0966. Он у меня со стороны порта 2. Посылаю кадр туда”.
🏻PC2. (Физический уровень) “Принял кадр. Передаю на канальный уровень”. [<заголовок канального уровня><заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC2. (Канальный) “Так, пришел пакет от 0001.43B7.623C. Действительно для меня. А в нем какие-то данные протокола IP. Это не моя тема, я уберу заголовок своего уровня и отдам выше, на сетевой”.[<заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC2. (Сетевой) “Какой-то пакет от IP 192.168.1.1, а в нем какие-то данные транспортного уровня. Пакет для IP: 192.168.1.2, передам в соответствующий интерфейс, пусть там разбираются транспортники”.[<заголовок транспортного уровня><данные>]
🏻PC2. (Транспортный) “Пришел пакет от сетевого, там данные для порта 2099, висит какой-то сервис, ждёт пакет. Передайте!” [<данные>]
🏻PC2. (Прикладной) “Урра! Данные для меня!. Спасибо за внимание”
🏻PC1. (Прикладной уровень) “Мне нужно передать данные на 192.168.1.2 на порт 2099, надежность доставки не требуется!”.
🏻PC1. (Транспортный уровень) “Окей, подойдёт UDP протокол, давай сюда свои данные”.
🏻PC1. (Прикладной уровень) “На, держи! [0xFF,0xFF, 0x01, …., 0x2E, 0x47]” — произвольные 16-ричные данные. (далее <данные>)
🏻PC1. (Транспортный уровень) “Отлично. Прикреплю-ка я к ним заголовок UDP, чтобы не потерять пакет. В заголовке зафиксируем некоторые данные и номера портов. Какой там свободный? UDP:42133! Отлично. А порт назначения UDP:2099. Такой заголовок и прикрепим. Спускаем пакет дальше, на сетевой уровень. (Пакет: [<заголовок транспортного уровня><данные>]
🏻PC1. (Сетевой уровень) “Получил ваш пакет, куда передавать? На IP:192.168.1.2? Прикреплю к этому заголовку ещё и информацию сетевого уровня. Ну и свой обратный IP: 192.168.1.1 и ещё некоторую информацию от себя… Эй, канальный уровень! Тут для тебя пакет!”. [<заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC1. (Канальный уровень) “Оп-па. Пакет. А куда доставить? Смотрим по заголовку… Такс, на 192.168.1.2. Хммм.. Не помню адреса MAC, связанного с этим IP, гляну в таблице коммутации apr… Хм. Нет такого адреса у меня пока. Будем запрашивать у среды. Пакет пока отложим.”
(парковка пакета)
🏻PC1. (Канальный уровень) “Эй, среда! Есть в сети кто-то с 192.168.1.2? Ответьте на мой MAC: 0001.43B7.623C! У меня для вас пакет! Физический уровень, передай это плз.!”
🏻PC1. (Физический уровень) Рассылается вышеуказанный широковещательный пакет всем станциям (на адрес FFFF.FFFF.FFFF)arp
Каждая станция в широковещательном домене получит этот пакет и проигнорирует его в том случае, если её IP отличается от IP в этом пакете. Станция же, чей IP-адрес совпадает с указанным ответит встречным пакетом.
🏻SWITCH. “Я получил кадр со стороны порта 1. Анализирую назначение. О! Широковещательный кадр. Отправлю его на все остальные порты кроме того, откуда он пришёл. На всякий случай запомню, что на первом порту у меня [0001.43B7.623C]”.
🏻PC3. (Физический) “Я получил широковещательный кадр. Канальный, передаю”.
🏻PC3. (Канальный) “Получил. Эй, сетевой! там спрашивают IP 192.168.1.2, а у нас 192.168.1.3. Игнорируем.”
🏻PC2. (Физический) “Я получил широковещательный кадр. Канальный! Передаю тебе”.
🏻PC2. (Канальный уровень) “Понял! О! Это для меня! Физический, телеграфируй обратно следующее: Послушай, 0001.43B7.623C! Это я! У меня IP адрес 192.168.1.2! Запомни мой MAC 0004.9A41.0966 у себя в таблице коммутации. И не забудь про пакет!”.
🏻SWITCH. “Я получил кадр со стороны порта 2. для MAC: 0001.43B7.623C. Судя по таблице, он у меня на стороне порта 1. Передам кадр в этот порт. А попутно сохраню адрес 0004.9A41.0966 как адрес на стороне порта 2, пригодится”.
🏻PC1. (Канальный уровень) “Нашёлся обладатель адреса 192.168.1.2. Теперь я прикреплю к пакету адрес назначения [0004.9A41.0966], а так же свой обратный MAC [0001.43B7.623C] и отдам на физический уровень для передачи. Физический! Держи пакет!”. [<заголовок канального уровня><заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC1. (Физический уровень) “Ок.”
🏻SWITCH. “Оп-па, получил кадр для MAC: 0004.9A41.0966. Он у меня со стороны порта 2. Посылаю кадр туда”.
🏻PC2. (Физический уровень) “Принял кадр. Передаю на канальный уровень”. [<заголовок канального уровня><заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC2. (Канальный) “Так, пришел пакет от 0001.43B7.623C. Действительно для меня. А в нем какие-то данные протокола IP. Это не моя тема, я уберу заголовок своего уровня и отдам выше, на сетевой”.[<заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC2. (Сетевой) “Какой-то пакет от IP 192.168.1.1, а в нем какие-то данные транспортного уровня. Пакет для IP: 192.168.1.2, передам в соответствующий интерфейс, пусть там разбираются транспортники”.[<заголовок транспортного уровня><данные>]
🏻PC2. (Транспортный) “Пришел пакет от сетевого, там данные для порта 2099, висит какой-то сервис, ждёт пакет. Передайте!” [<данные>]
🏻PC2. (Прикладной) “Урра! Данные для меня!. Спасибо за внимание”
Как происходит передача пакета в сети (объяснение для домохозяек)
🏻PC1. (Прикладной уровень) “Мне нужно передать данные на 192.168.1.2 на порт 2099, надежность доставки не требуется!”.
🏻PC1. (Транспортный уровень) “Окей, подойдёт UDP протокол, давай сюда свои данные”.
🏻PC1. (Прикладной уровень) “На, держи! [0xFF,0xFF, 0x01, …., 0x2E, 0x47]” — произвольные 16-ричные данные. (далее <данные>)
🏻PC1. (Транспортный уровень) “Отлично. Прикреплю-ка я к ним заголовок UDP, чтобы не потерять пакет. В заголовке зафиксируем некоторые данные и номера портов. Какой там свободный? UDP:42133! Отлично. А порт назначения UDP:2099. Такой заголовок и прикрепим. Спускаем пакет дальше, на сетевой уровень. (Пакет: [<заголовок транспортного уровня><данные>]
🏻PC1. (Сетевой уровень) “Получил ваш пакет, куда передавать? На IP:192.168.1.2? Прикреплю к этому заголовку ещё и информацию сетевого уровня. Ну и свой обратный IP: 192.168.1.1 и ещё некоторую информацию от себя… Эй, канальный уровень! Тут для тебя пакет!”. [<заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC1. (Канальный уровень) “Оп-па. Пакет. А куда доставить? Смотрим по заголовку… Такс, на 192.168.1.2. Хммм.. Не помню адреса MAC, связанного с этим IP, гляну в таблице коммутации apr… Хм. Нет такого адреса у меня пока. Будем запрашивать у среды. Пакет пока отложим.”
(парковка пакета)
🏻PC1. (Канальный уровень) “Эй, среда! Есть в сети кто-то с 192.168.1.2? Ответьте на мой MAC: 0001.43B7.623C! У меня для вас пакет! Физический уровень, передай это плз.!”
🏻PC1. (Физический уровень) Рассылается вышеуказанный широковещательный пакет всем станциям (на адрес FFFF.FFFF.FFFF)arp
Каждая станция в широковещательном домене получит этот пакет и проигнорирует его в том случае, если её IP отличается от IP в этом пакете. Станция же, чей IP-адрес совпадает с указанным ответит встречным пакетом.
🏻SWITCH. “Я получил кадр со стороны порта 1. Анализирую назначение. О! Широковещательный кадр. Отправлю его на все остальные порты кроме того, откуда он пришёл. На всякий случай запомню, что на первом порту у меня [0001.43B7.623C]”.
🏻PC3. (Физический) “Я получил широковещательный кадр. Канальный, передаю”.
🏻PC3. (Канальный) “Получил. Эй, сетевой! там спрашивают IP 192.168.1.2, а у нас 192.168.1.3. Игнорируем.”
🏻PC2. (Физический) “Я получил широковещательный кадр. Канальный! Передаю тебе”.
🏻PC2. (Канальный уровень) “Понял! О! Это для меня! Физический, телеграфируй обратно следующее: Послушай, 0001.43B7.623C! Это я! У меня IP адрес 192.168.1.2! Запомни мой MAC 0004.9A41.0966 у себя в таблице коммутации. И не забудь про пакет!”.
🏻SWITCH. “Я получил кадр со стороны порта 2. для MAC: 0001.43B7.623C. Судя по таблице, он у меня на стороне порта 1. Передам кадр в этот порт. А попутно сохраню адрес 0004.9A41.0966 как адрес на стороне порта 2, пригодится”.
🏻PC1. (Канальный уровень) “Нашёлся обладатель адреса 192.168.1.2. Теперь я прикреплю к пакету адрес назначения [0004.9A41.0966], а так же свой обратный MAC [0001.43B7.623C] и отдам на физический уровень для передачи. Физический! Держи пакет!”. [<заголовок канального уровня><заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC1. (Физический уровень) “Ок.”
🏻SWITCH. “Оп-па, получил кадр для MAC: 0004.9A41.0966. Он у меня со стороны порта 2. Посылаю кадр туда”.
🏻PC2. (Физический уровень) “Принял кадр. Передаю на канальный уровень”. [<заголовок канального уровня><заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC2. (Канальный) “Так, пришел пакет от 0001.43B7.623C. Действительно для меня. А в нем какие-то данные протокола IP. Это не моя тема, я уберу заголовок своего уровня и отдам выше, на сетевой”.[<заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC2. (Сетевой) “Какой-то пакет от IP 192.168.1.1, а в нем какие-то данные транспортного уровня. Пакет для IP: 192.168.1.2, передам в соответствующий интерфейс, пусть там разбираются транспортники”.[<заголовок транспортного уровня><данные>]
🏻PC2. (Транспортный) “Пришел пакет от сетевого, там данные для порта 2099, висит какой-то сервис, ждёт пакет. Передайте!” [<данные>]
🏻PC2. (Прикладной) “Урра! Данные для меня!. Спасибо за внимание ^_^”
🏻PC1. (Прикладной уровень) “Мне нужно передать данные на 192.168.1.2 на порт 2099, надежность доставки не требуется!”.
🏻PC1. (Транспортный уровень) “Окей, подойдёт UDP протокол, давай сюда свои данные”.
🏻PC1. (Прикладной уровень) “На, держи! [0xFF,0xFF, 0x01, …., 0x2E, 0x47]” — произвольные 16-ричные данные. (далее <данные>)
🏻PC1. (Транспортный уровень) “Отлично. Прикреплю-ка я к ним заголовок UDP, чтобы не потерять пакет. В заголовке зафиксируем некоторые данные и номера портов. Какой там свободный? UDP:42133! Отлично. А порт назначения UDP:2099. Такой заголовок и прикрепим. Спускаем пакет дальше, на сетевой уровень. (Пакет: [<заголовок транспортного уровня><данные>]
🏻PC1. (Сетевой уровень) “Получил ваш пакет, куда передавать? На IP:192.168.1.2? Прикреплю к этому заголовку ещё и информацию сетевого уровня. Ну и свой обратный IP: 192.168.1.1 и ещё некоторую информацию от себя… Эй, канальный уровень! Тут для тебя пакет!”. [<заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC1. (Канальный уровень) “Оп-па. Пакет. А куда доставить? Смотрим по заголовку… Такс, на 192.168.1.2. Хммм.. Не помню адреса MAC, связанного с этим IP, гляну в таблице коммутации apr… Хм. Нет такого адреса у меня пока. Будем запрашивать у среды. Пакет пока отложим.”
(парковка пакета)
🏻PC1. (Канальный уровень) “Эй, среда! Есть в сети кто-то с 192.168.1.2? Ответьте на мой MAC: 0001.43B7.623C! У меня для вас пакет! Физический уровень, передай это плз.!”
🏻PC1. (Физический уровень) Рассылается вышеуказанный широковещательный пакет всем станциям (на адрес FFFF.FFFF.FFFF)arp
Каждая станция в широковещательном домене получит этот пакет и проигнорирует его в том случае, если её IP отличается от IP в этом пакете. Станция же, чей IP-адрес совпадает с указанным ответит встречным пакетом.
🏻SWITCH. “Я получил кадр со стороны порта 1. Анализирую назначение. О! Широковещательный кадр. Отправлю его на все остальные порты кроме того, откуда он пришёл. На всякий случай запомню, что на первом порту у меня [0001.43B7.623C]”.
🏻PC3. (Физический) “Я получил широковещательный кадр. Канальный, передаю”.
🏻PC3. (Канальный) “Получил. Эй, сетевой! там спрашивают IP 192.168.1.2, а у нас 192.168.1.3. Игнорируем.”
🏻PC2. (Физический) “Я получил широковещательный кадр. Канальный! Передаю тебе”.
🏻PC2. (Канальный уровень) “Понял! О! Это для меня! Физический, телеграфируй обратно следующее: Послушай, 0001.43B7.623C! Это я! У меня IP адрес 192.168.1.2! Запомни мой MAC 0004.9A41.0966 у себя в таблице коммутации. И не забудь про пакет!”.
🏻SWITCH. “Я получил кадр со стороны порта 2. для MAC: 0001.43B7.623C. Судя по таблице, он у меня на стороне порта 1. Передам кадр в этот порт. А попутно сохраню адрес 0004.9A41.0966 как адрес на стороне порта 2, пригодится”.
🏻PC1. (Канальный уровень) “Нашёлся обладатель адреса 192.168.1.2. Теперь я прикреплю к пакету адрес назначения [0004.9A41.0966], а так же свой обратный MAC [0001.43B7.623C] и отдам на физический уровень для передачи. Физический! Держи пакет!”. [<заголовок канального уровня><заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC1. (Физический уровень) “Ок.”
🏻SWITCH. “Оп-па, получил кадр для MAC: 0004.9A41.0966. Он у меня со стороны порта 2. Посылаю кадр туда”.
🏻PC2. (Физический уровень) “Принял кадр. Передаю на канальный уровень”. [<заголовок канального уровня><заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC2. (Канальный) “Так, пришел пакет от 0001.43B7.623C. Действительно для меня. А в нем какие-то данные протокола IP. Это не моя тема, я уберу заголовок своего уровня и отдам выше, на сетевой”.[<заголовок сетевого уровня><заголовок транспортного уровня><данные>]
🏻PC2. (Сетевой) “Какой-то пакет от IP 192.168.1.1, а в нем какие-то данные транспортного уровня. Пакет для IP: 192.168.1.2, передам в соответствующий интерфейс, пусть там разбираются транспортники”.[<заголовок транспортного уровня><данные>]
🏻PC2. (Транспортный) “Пришел пакет от сетевого, там данные для порта 2099, висит какой-то сервис, ждёт пакет. Передайте!” [<данные>]
🏻PC2. (Прикладной) “Урра! Данные для меня!. Спасибо за внимание ^_^”
10 полезных навыков системного администратора за 2021 год
1. Linux
Более 70% серверов во всем мире работает на операционный системах семейства Linux. Это позволяет с уверенностью сказать, что почти любому системному администратору рано или поздно придется работать в этой операционной системе. А с появлением Windows Subsystem for Linux (WSL) - грань между Windows и Linux еще больше размывается. Выход .Net Core, позволяющий писать приложения на C# сразу на обе платформы, также сильно способствует тому, что многие разработчики станут еще больше создавать приложения для Linux.
2. Python
Основной инструмент системного администратора - это скриптовые языки. С их помощью можно решать множество проблем, причем достаточно интересными способами. Но тем не менее, встречается достаточно много ситуаций, когда ограничения скриптовых языков не позволяют эффективно решить поставленную задачу. В этих случаях Python станет очень ценным и полезным инструментом любого системного инженера.
3. Zabbix
Постоянный контроль за состоянием ИТ-инфраструктуры - это не столько ручной труд, сколько грамотная настройка автоматизированных систем мониторинга и оповещения. Важно не только вовремя понять, что возникла проблема, но и немедленно оповестить ответственных специалистов. Навыку работы с Zabbix и Prometheus, а так же средствами визуализации (например Grafana), нужно учиться. Однако результат превзойдет все ожидания.
4. Ansible
Наиболее популярная система управления конфигурации Linux, не требующая установки агента на целевые системы. Системный администратор готовит YAML-файл, так называемый плейбук, в котором описывается то, в каком состоянии должна быть система в каждый момент времени. Ansible обрабатывает такой плейбук, проверяет ресурсы и приводит их в соответствие плейбуку. Навык подготовки таких плейбуков позволяет системного администратору вывести управление Linux-серверами на качественно новый уровень.
5. Vmware ESXi
Виртуализация уже давно стала стандартом для построения современных ИТ-систем. Так что владение инструментами и навыками для управления гипервизором ESXi крайне необходимы любому системному администратору.
6. Veeam Backup & Replication
Самое ценное в работе любой компании - это информация. Неважно защищать не только от утечки, но и от внезапной потери. Так что, любому системному администратору приходится решать задачу резервного копирования. Можно воспользоваться разными инструментами, но лучше всех из них выделяется - именно Veeam Backup & Replication. Его чаще выбирают профессиональные системные администраторы для создания собственных систем резервного копирования.
7. Kubernets
Контейнеризация приложений - это тренд последних нескольких лет, поэтому задачи управления, автоматизации, развертывания и масштабирования нужно решать наиболее эффективными способами. Одним из таких способов и является Kubernetes. Навык работы с этим программным продуктом незаменим в 2021 году.
8. Netfilter
Наверное, каждому системному администратору рано или поздно приходиться сталкиваться с необходимостью фильтрации и перенаправления трафика в своей сети. Файрвол Netfilter встроен в ядро Linux 2.4 и управляется при помощи утилиты iptables. Знание механизмов работы дает системному администратору возможность полного контроля над сетью.
9. rclone
Вместе с резервным копированием часто встает задача синхронизации локального и облачного хранилища. Весьма скромная утилита rclone обладает прекрасными возможностями, что бы эту задачу решить максимально эффективно. Умение пользоваться rclone позволит вам сэкономить много времени и сил.
10. Terraform
Управление ИТ-инфраструктурой можно реализовать в полном соответствии с подходом IaC (Infrastructure-as-Code), декларативно описывая каждый элемент с помощью кода. Подробный подход применим для молниеносного развертывания приложений и сократит возможность появления человеческих ошибок при управлении сложными проектами.
1. Linux
Более 70% серверов во всем мире работает на операционный системах семейства Linux. Это позволяет с уверенностью сказать, что почти любому системному администратору рано или поздно придется работать в этой операционной системе. А с появлением Windows Subsystem for Linux (WSL) - грань между Windows и Linux еще больше размывается. Выход .Net Core, позволяющий писать приложения на C# сразу на обе платформы, также сильно способствует тому, что многие разработчики станут еще больше создавать приложения для Linux.
2. Python
Основной инструмент системного администратора - это скриптовые языки. С их помощью можно решать множество проблем, причем достаточно интересными способами. Но тем не менее, встречается достаточно много ситуаций, когда ограничения скриптовых языков не позволяют эффективно решить поставленную задачу. В этих случаях Python станет очень ценным и полезным инструментом любого системного инженера.
3. Zabbix
Постоянный контроль за состоянием ИТ-инфраструктуры - это не столько ручной труд, сколько грамотная настройка автоматизированных систем мониторинга и оповещения. Важно не только вовремя понять, что возникла проблема, но и немедленно оповестить ответственных специалистов. Навыку работы с Zabbix и Prometheus, а так же средствами визуализации (например Grafana), нужно учиться. Однако результат превзойдет все ожидания.
4. Ansible
Наиболее популярная система управления конфигурации Linux, не требующая установки агента на целевые системы. Системный администратор готовит YAML-файл, так называемый плейбук, в котором описывается то, в каком состоянии должна быть система в каждый момент времени. Ansible обрабатывает такой плейбук, проверяет ресурсы и приводит их в соответствие плейбуку. Навык подготовки таких плейбуков позволяет системного администратору вывести управление Linux-серверами на качественно новый уровень.
5. Vmware ESXi
Виртуализация уже давно стала стандартом для построения современных ИТ-систем. Так что владение инструментами и навыками для управления гипервизором ESXi крайне необходимы любому системному администратору.
6. Veeam Backup & Replication
Самое ценное в работе любой компании - это информация. Неважно защищать не только от утечки, но и от внезапной потери. Так что, любому системному администратору приходится решать задачу резервного копирования. Можно воспользоваться разными инструментами, но лучше всех из них выделяется - именно Veeam Backup & Replication. Его чаще выбирают профессиональные системные администраторы для создания собственных систем резервного копирования.
7. Kubernets
Контейнеризация приложений - это тренд последних нескольких лет, поэтому задачи управления, автоматизации, развертывания и масштабирования нужно решать наиболее эффективными способами. Одним из таких способов и является Kubernetes. Навык работы с этим программным продуктом незаменим в 2021 году.
8. Netfilter
Наверное, каждому системному администратору рано или поздно приходиться сталкиваться с необходимостью фильтрации и перенаправления трафика в своей сети. Файрвол Netfilter встроен в ядро Linux 2.4 и управляется при помощи утилиты iptables. Знание механизмов работы дает системному администратору возможность полного контроля над сетью.
9. rclone
Вместе с резервным копированием часто встает задача синхронизации локального и облачного хранилища. Весьма скромная утилита rclone обладает прекрасными возможностями, что бы эту задачу решить максимально эффективно. Умение пользоваться rclone позволит вам сэкономить много времени и сил.
10. Terraform
Управление ИТ-инфраструктурой можно реализовать в полном соответствии с подходом IaC (Infrastructure-as-Code), декларативно описывая каждый элемент с помощью кода. Подробный подход применим для молниеносного развертывания приложений и сократит возможность появления человеческих ошибок при управлении сложными проектами.
Немного IT аналогий:
1. Протокол UDP: Это как почта России. Пакеты отправляются, но нифига не гарантирует их доставку.
2. Сжатие: У тебя отрезают левую руку на входе, а на выходе - пришивают клонированную правую (и зеркально повернутую, разумеется). То же с ногами и вообще со всем, что имеет регулярную структуру.
3. Коррекция ошибок: К спине пришивают твою же фотографию. Если на выходе ты не похож, то тебе корректируют лицо.
4. Время жизни пакета: Все перемещения по коридору - пока горит спичка. Не успел - умри героем.
5. DNS: Чтобы узнать, где колодец в деревне Гадюкино, ты сначала идешь к президенту, потом к губернатору и т. д.
7. Динамический IP: Каждое утро все меняются паспортами.
9. Текст-ориентированный протокол: Вместо тебя отправляют твой словесный портрет.
10. MIME-код: Справка, что ты не верблюд.
11. Пинги: Иди посмотри, Иван Петрович не ушел еще?.
12. Маскарадинг: Один паспорт на всю семью.
13. IPv4: Паспорт.
14. IPv6: Китайский паспорт.
15. OSI: Чистое поле. Нужно перейти от одного края к другому. Строится огромная арка, внутри арки мостовая, посреди мостовой кладут ж/д полотно, к рельсам приваривают сваи и на них ставят огромную гранитную глыбу с туннелем внутри, в туннеле прокладывают трубу диаметром полметра, по которой ты и ползешь пока горит спичка к президенту (сжатый и с коррекцией ошибок).
#itfun
1. Протокол UDP: Это как почта России. Пакеты отправляются, но нифига не гарантирует их доставку.
2. Сжатие: У тебя отрезают левую руку на входе, а на выходе - пришивают клонированную правую (и зеркально повернутую, разумеется). То же с ногами и вообще со всем, что имеет регулярную структуру.
3. Коррекция ошибок: К спине пришивают твою же фотографию. Если на выходе ты не похож, то тебе корректируют лицо.
4. Время жизни пакета: Все перемещения по коридору - пока горит спичка. Не успел - умри героем.
5. DNS: Чтобы узнать, где колодец в деревне Гадюкино, ты сначала идешь к президенту, потом к губернатору и т. д.
7. Динамический IP: Каждое утро все меняются паспортами.
9. Текст-ориентированный протокол: Вместо тебя отправляют твой словесный портрет.
10. MIME-код: Справка, что ты не верблюд.
11. Пинги: Иди посмотри, Иван Петрович не ушел еще?.
12. Маскарадинг: Один паспорт на всю семью.
13. IPv4: Паспорт.
14. IPv6: Китайский паспорт.
15. OSI: Чистое поле. Нужно перейти от одного края к другому. Строится огромная арка, внутри арки мостовая, посреди мостовой кладут ж/д полотно, к рельсам приваривают сваи и на них ставят огромную гранитную глыбу с туннелем внутри, в туннеле прокладывают трубу диаметром полметра, по которой ты и ползешь пока горит спичка к президенту (сжатый и с коррекцией ошибок).
#itfun
Шпаргалка по фаерволу 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
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
10 важных навыков системного администратора
0. Знание TCP/IP, модели OSI
Без этих знаний вообще никуда и никак.
Знание сетевой модели передачи данных, представленных в цифровом виде. Модель описывает способ передачи данных от источника информации к получателю. В модели предполагается прохождение информации через четыре уровня, каждый из которых описывается правилом (протоколом передачи). Наборы правил, решающих задачу по передаче данных, составляют стек протоколов передачи данных, на которых базируется Интернет.
1. Linux
Более 70% серверов во всем мире работает на операционный системах семейства Linux. Это позволяет с уверенностью сказать, что почти любому системному администратору рано или поздно придется работать в этой операционной системе. А с появлением Windows Subsystem for Linux (WSL) - грань между Windows и Linux еще больше размывается. Выход .Net Core, позволяющий писать приложения на C# сразу на обе платформы, также сильно способствует тому, что многие разработчики станут еще больше создавать приложения для Linux.
2. Docker
Программное обеспечение для автоматизации развёртывания и управления приложениями в средах с поддержкой контейнеризации, контейнеризатор приложений. Позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, который может быть развёрнут на любой Linux-системе с поддержкой контрольных групп в ядре, а также предоставляет набор команд для управления этими контейнерами.
3. Kubernets
Контейнеризация приложений - это тренд последних нескольких лет, поэтому задачи управления, автоматизации, развертывания и масштабирования нужно решать наиболее эффективными способами. Одним из таких способов и является Kubernetes. Навык работы с этим программным продуктом незаменим и 2022 году.
4. Python
Основной инструмент системного администратора - это скриптовые языки. С их помощью можно решать множество проблем, причем достаточно интересными способами. Но тем не менее, встречается достаточно много ситуаций, когда ограничения скриптовых языков не позволяют эффективно решить поставленную задачу. В этих случаях Python станет очень ценным и полезным инструментом любого системного инженера.
5. Zabbix
Постоянный контроль за состоянием ИТ-инфраструктуры - это не столько ручной труд, сколько грамотная настройка автоматизированных систем мониторинга и оповещения. Важно не только вовремя понять, что возникла проблема, но и немедленно оповестить ответственных специалистов. Навыку работы с Zabbix и Prometheus, а так же средствами визуализации (например Grafana), нужно учиться. Однако результат превзойдет все ожидания.
6. Ansible
Наиболее популярная система управления конфигурации Linux, не требующая установки агента на целевые системы. Системный администратор готовит YAML-файл, так называемый плейбук, в котором описывается то, в каком состоянии должна быть система в каждый момент времени. Ansible обрабатывает такой плейбук, проверяет ресурсы и приводит их в соответствие плейбуку. Навык подготовки таких плейбуков позволяет системного администратору вывести управление Linux-серверами на качественно новый уровень.
7. Vmware ESXi
Виртуализация уже давно стала стандартом для построения современных ИТ-систем. Так что владение инструментами и навыками для управления гипервизором ESXi крайне необходимы любому системному администратору.
8. Veeam Backup & Replication
Самое ценное в работе любой компании - это информация. Неважно защищать не только от утечки, но и от внезапной потери. Так что, любому системному администратору приходится решать задачу резервного копирования. Можно воспользоваться разными инструментами, но лучше всех из них выделяется - именно Veeam Backup & Replication. Его чаще выбирают профессиональные системные администраторы для создания собственных систем резервного копирования.
9. English
Знание английского языка, это совершенно обязательный навык. Пополнять свой личный багаж знаний лучше из первоисточников, язык ИТ сегодня – это английский.
P.S. Добавляйте в комментарии свои навыки и знания, которые Вы считаете важными для данной профессии в IT.🏻
0. Знание TCP/IP, модели OSI
Без этих знаний вообще никуда и никак.
Знание сетевой модели передачи данных, представленных в цифровом виде. Модель описывает способ передачи данных от источника информации к получателю. В модели предполагается прохождение информации через четыре уровня, каждый из которых описывается правилом (протоколом передачи). Наборы правил, решающих задачу по передаче данных, составляют стек протоколов передачи данных, на которых базируется Интернет.
1. Linux
Более 70% серверов во всем мире работает на операционный системах семейства Linux. Это позволяет с уверенностью сказать, что почти любому системному администратору рано или поздно придется работать в этой операционной системе. А с появлением Windows Subsystem for Linux (WSL) - грань между Windows и Linux еще больше размывается. Выход .Net Core, позволяющий писать приложения на C# сразу на обе платформы, также сильно способствует тому, что многие разработчики станут еще больше создавать приложения для Linux.
2. Docker
Программное обеспечение для автоматизации развёртывания и управления приложениями в средах с поддержкой контейнеризации, контейнеризатор приложений. Позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, который может быть развёрнут на любой Linux-системе с поддержкой контрольных групп в ядре, а также предоставляет набор команд для управления этими контейнерами.
3. Kubernets
Контейнеризация приложений - это тренд последних нескольких лет, поэтому задачи управления, автоматизации, развертывания и масштабирования нужно решать наиболее эффективными способами. Одним из таких способов и является Kubernetes. Навык работы с этим программным продуктом незаменим и 2022 году.
4. Python
Основной инструмент системного администратора - это скриптовые языки. С их помощью можно решать множество проблем, причем достаточно интересными способами. Но тем не менее, встречается достаточно много ситуаций, когда ограничения скриптовых языков не позволяют эффективно решить поставленную задачу. В этих случаях Python станет очень ценным и полезным инструментом любого системного инженера.
5. Zabbix
Постоянный контроль за состоянием ИТ-инфраструктуры - это не столько ручной труд, сколько грамотная настройка автоматизированных систем мониторинга и оповещения. Важно не только вовремя понять, что возникла проблема, но и немедленно оповестить ответственных специалистов. Навыку работы с Zabbix и Prometheus, а так же средствами визуализации (например Grafana), нужно учиться. Однако результат превзойдет все ожидания.
6. Ansible
Наиболее популярная система управления конфигурации Linux, не требующая установки агента на целевые системы. Системный администратор готовит YAML-файл, так называемый плейбук, в котором описывается то, в каком состоянии должна быть система в каждый момент времени. Ansible обрабатывает такой плейбук, проверяет ресурсы и приводит их в соответствие плейбуку. Навык подготовки таких плейбуков позволяет системного администратору вывести управление Linux-серверами на качественно новый уровень.
7. Vmware ESXi
Виртуализация уже давно стала стандартом для построения современных ИТ-систем. Так что владение инструментами и навыками для управления гипервизором ESXi крайне необходимы любому системному администратору.
8. Veeam Backup & Replication
Самое ценное в работе любой компании - это информация. Неважно защищать не только от утечки, но и от внезапной потери. Так что, любому системному администратору приходится решать задачу резервного копирования. Можно воспользоваться разными инструментами, но лучше всех из них выделяется - именно Veeam Backup & Replication. Его чаще выбирают профессиональные системные администраторы для создания собственных систем резервного копирования.
9. English
Знание английского языка, это совершенно обязательный навык. Пополнять свой личный багаж знаний лучше из первоисточников, язык ИТ сегодня – это английский.
P.S. Добавляйте в комментарии свои навыки и знания, которые Вы считаете важными для данной профессии в IT.🏻
Сохрани себе на стену - 10 примеров команды Netstat в Linux 🏻
Команда Netstat отображает различные сетевые данные, такие как сетевые подключения, таблица маршрутизации, статистики интерфейсов, маскированные соединения, многоадресное пространство. Рассмотрим 10 практических примеров команды NetStat:
1. Список всех портов (как прослушиваемые, так и не прослушиваемые порты)
# netstat -a "Список всех портов"
# netstat -at "Список всех портов TCP"
# netstat -au "Перечисление всех UDP-портов"
2. Список сокетов, которые находятся в состояние прослушивания:
# netstat -l "Список только прослушивающих портов"
# netstat -lt "Список только прослушивающихся TCP"
# netstat -lu "Список только прослушивающихся UDP портов"
# netstat -lx "Список только прослушивающихся портов UNIX"
3. Показать статистику для каждого протокола
# netstat -s "Показать статистику для всех портов"
# netstat -st "Для TCP портов"
# netstat -su "Для UDP портов"
4. PID и названий программ
# netstat -p
Может быть объединена с любым другим вариантом netstat. Это добавит «PID/Название программы» на выходе netstat. Это очень полезно при отладке, чтобы определить, какая программа работает на определенном порту.
5. Не разрешать хост, порт и имя пользователя в выводе
Если вы не хотите отображать имя хоста, порт или пользователя, используйте netstat с опцией -n. Это будет отображаться в цифрах, и не разрешать имя хоста, имя порта, имя пользователя.
# netstat -an
Если вы не хотите один из этих трех пунктов (порт или хост, или пользователя), используйте следующие команды.
# netsat -a –numeric-ports
# netsat -a –numeric-hosts
# netsat -a –numeric-users
6. Непрерывная печать информации netstat
# netstat -c
Будет печатать информацию непрерывно каждые несколько секунд.
Выход из печати: Ctrl+C.
7. Найти номера поддерживающей адрес семей в вашей системе
# netstat —verbose
8. Отображение информации о маршрутизации ядра
# netstat -rn
9. Узнать, на каком порту работает программа, например ssh
# netstat -ap | grep ssh
или
Узнать, какой процесс использует определенный порт:
# netstat -an | grep ‘:80’
10. Показать список сетевых интерфейсов
# netstat -I
Отображение расширенной информации об интерфейсах (по аналогии с ifconfig):
# netstat -ie
Команда Netstat отображает различные сетевые данные, такие как сетевые подключения, таблица маршрутизации, статистики интерфейсов, маскированные соединения, многоадресное пространство. Рассмотрим 10 практических примеров команды NetStat:
1. Список всех портов (как прослушиваемые, так и не прослушиваемые порты)
# netstat -a "Список всех портов"
# netstat -at "Список всех портов TCP"
# netstat -au "Перечисление всех UDP-портов"
2. Список сокетов, которые находятся в состояние прослушивания:
# netstat -l "Список только прослушивающих портов"
# netstat -lt "Список только прослушивающихся TCP"
# netstat -lu "Список только прослушивающихся UDP портов"
# netstat -lx "Список только прослушивающихся портов UNIX"
3. Показать статистику для каждого протокола
# netstat -s "Показать статистику для всех портов"
# netstat -st "Для TCP портов"
# netstat -su "Для UDP портов"
4. PID и названий программ
# netstat -p
Может быть объединена с любым другим вариантом netstat. Это добавит «PID/Название программы» на выходе netstat. Это очень полезно при отладке, чтобы определить, какая программа работает на определенном порту.
5. Не разрешать хост, порт и имя пользователя в выводе
Если вы не хотите отображать имя хоста, порт или пользователя, используйте netstat с опцией -n. Это будет отображаться в цифрах, и не разрешать имя хоста, имя порта, имя пользователя.
# netstat -an
Если вы не хотите один из этих трех пунктов (порт или хост, или пользователя), используйте следующие команды.
# netsat -a –numeric-ports
# netsat -a –numeric-hosts
# netsat -a –numeric-users
6. Непрерывная печать информации netstat
# netstat -c
Будет печатать информацию непрерывно каждые несколько секунд.
Выход из печати: Ctrl+C.
7. Найти номера поддерживающей адрес семей в вашей системе
# netstat —verbose
8. Отображение информации о маршрутизации ядра
# netstat -rn
9. Узнать, на каком порту работает программа, например ssh
# netstat -ap | grep ssh
или
Узнать, какой процесс использует определенный порт:
# netstat -an | grep ‘:80’
10. Показать список сетевых интерфейсов
# netstat -I
Отображение расширенной информации об интерфейсах (по аналогии с ifconfig):
# netstat -ie