Системный администратор
26.7K subscribers
3.19K photos
3.2K videos
208 files
3.51K links
Все для системного администратора.

По всем вопросам @evgenycarter

РКН clck.ru/3KoDXp
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Эффект матрицы в терминале Linux


while :;do echo $LINES $COLUMNS $((RANDOM%COLUMNS)) "$(printf "\U$((RANDOM%500+1000))")";sleep 0.05;done|gawk '{a[$3]=0;for(x in a){o=a[x];a[x]=a[x]+1;c=int(rand()*5);if(c==0)col="\033[1;32m";else if(c==1)col="\033[0;32m";else if(c==2)col="\033[1;36m";else if(c==3)col="\033[1;31m";else col="\033[1;37m";printf "\033[%s;%sH%s%s",o,x,col,$4;printf "\033[%s;%sH\033[0m",a[x],x;if(a[x]>=$1)a[x]=0;}}'


📲 Мы в MAX

👉 @i_odmin
🔥11👍4
Какой вариант идеально подойдёт для тебя?

Голосуйте за свой вариант и пишите в комментариях.

❤️ — 1
👍 — 2
⚡️ — 3
👏 — 4
🔥 — 5
🎉 — 6
😁 — 7
😍 — 8
🤩 — 9

📲 Мы в MAX

👉 @i_odmin
🎉90🔥26🤩17😍126😁54👍4🤡3🤬1🎄1
Media is too big
VIEW IN TELEGRAM
Создание SSH ключа, настройка SSH-сервера, клиента, проброс портов

⏱️ Таймкоды:
0:00 Вступление
0:28 Теория про SSH
1:32 Создание ключей
3:48 Подключение
4:43 Добавление ключа
9:42 Настройка сервера
12:19 Настройка клиента
14:00 Проброс порта

источник

📲 Мы в MAX

👉 @i_odmin
👍17🔥1
Media is too big
VIEW IN TELEGRAM
Защита SSH-сервера — порты, ключи, port knocking, iptables

0:00 О port knocking
1:19 Что такое сетевые порты в TCP и UDP?
3:17 Замена стандартного порта SSH-сервера
4:24 Запрет SSH-входа по паролю
4:56 Что делать, если потеряешь SSH-ключи?
6:23 Запрет входа root
6:33 Port knocking и безопасность
8:52 Покупка сервера в Selectel
9:40 Создание SSH-ключа с паролем
11:16 Создание Linux-пользователя
12:43 Разрешаем SSH-вход пользователю
13:47 Базовая настройка SSH-сервера
15:51 Настройка port knocking с knockd, iptables и nmap
25:50 Ещё несколько возможностей iptables
26:30 Как сделать сервер непингуемым?
28:01 Выводы

источник

📲 Мы в MAX

👉 @i_odmin
👍14🔥3
Media is too big
VIEW IN TELEGRAM
ТРАБЛШУТИНГ LINUX // Основные команды, примеры

⏱️ Таймкоды:
0:00 Вступление
0:08 Мониторинг
0:43 Место на дисках
2:39 Состояние дисков
5:15 Нагрузка на диски
5:55 Процессор
8:17 Оперативная память
9:17 Процессы
10:46 Сеть
17:30 Логи

источник

📲 Мы в MAX

👉 @i_odmin
👍124
Media is too big
VIEW IN TELEGRAM
Разбираем SQL на примере PostgreSQL — SELECT, JOIN, GROUP, HAVING, Coalesce и др.

Изучаем классические реляционные базы данных и язык для работы с ними — SQL — на примере топовой открытой СУБД PostgreSQL. Если вас пугает JOIN, вы не понимаете GROUP BY, вас смущает вопрос отличия WHERE от HAVING — смотрите видео полностью и обязательно прорабатывайте все запросы вместе с нами! Мы создадим и изучим работу с базой данных для интернет-магазина, хранящую в себе товары, их фотографии, покупателей и их заказы.

00:00 Зачем знать SQL и базы данных
02:47 Виды баз данных
03:28 Понятие сущностей, проектирование больших систем
06:01 Сущности в реляционных базах данных
06:50 Проектирование схемы БД магазина на бумаге
10:27 Перенос схемы БД в PostgreSQL, создание БД и таблиц
15:50 Заполняем БД данными
17:40 SELECT, получение данных из БД
19:03 JOIN, объединение таблиц
23:25 LEFT JOIN, RIGHT JOIN, INNER JOIN
26:57 Удаление данных их таблиц, обновление данных таблиц
28:23 Пример комплексного запроса с несколькими JOIN
32:31 Группировка данных GROUP BY
34:11 COALESCE
34:47 Сортировка данных, ORDER BY
35:13 HAVING
36:26 LIMIT, OFFSET
38:09 Выводы, итоги

источник

📲 Мы в MAX

👉 @i_odmin
2👍2🔥2
👩‍💻 Администрирование PostgreSQL для начинающих

Часть 1
Эта статья предназначена для системных администраторов, которые хотят научиться работать с PostgreSQL, но не знают, с чего начать.
https://habr.com/ru/articles/841146/

Часть 2
Это вторая часть статьи, в которой мы разберем процессы очистки и перестроения индексов, журнал предзаписи с чекпоинтами, а также логирование.
https://habr.com/ru/articles/843012/

Часть 3
Это третья часть статьи, в которой мы научимся работать с базами, ролями, консолью, а также политиками подключений.
https://habr.com/ru/articles/843076/

Часть 4
Это четвертая часть статьи, в которой мы научимся работать с логическими и физическими резервными копиями, а также сравним алгоритмы сжатия.
https://habr.com/ru/articles/843264/

Часть 5
Это пятая, заключительная часть статьи, в которой я скажу пару слов про расширения, мониторинг, а также подведу некоторые итоги по статье в целом.
https://habr.com/ru/articles/843324/

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥31
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Трюки Vim. Максимизировать текущее окно

Команда <ctrl-w> o полезна тем, что позволяет увеличить одно из ваших окон. Я часто использую её. Но раздражающий момент заключается в том, что нет простого способа вернуться к сложной настройке окон, которую я имел до этого.

Однако для этого есть плагин, и он теперь стал неотъемлемой частью моего рабочего процесса. Плагин vim-maximizer добавляет команду, с помощью которой можно переключать текущее окно в полноэкранный режим. Остальные окна временно убираются с экрана. Когда команда выполняется снова, окна возвращаются на свои исходные места. Это делает его идеальным для того, чтобы лучше рассмотреть текущий файл, а затем вернуть экран к полному контексту со всеми окнами.

После установки плагина я добавил следующую настройку в мой файл .vimrc, которая позволяет использовать <ctrl-w> m (для "максимизации") для переключения туда и обратно:


" maximize current split or return to previous
noremap <C-w>m :MaximizerToggle<CR>


📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41🔥1🤝1
Cамые нужные команд SSH

Запускай команды быстро
Чтобы выполнить всего одну удаленную команду, совсем не обязательно подключаться к SSH, вводить команду, а затем отключаться. Можно сделать это сразу. Например, так можно посмотреть заполненность ФС удаленной машины:
$ ssh user@host df -h
А так — перезагрузить ее:
$ ssh user@host sudo reboot

Составляй списки команд и запускай их разом
Если у тебя есть целый список команд, которые следует выполнить, их можно записать в файл и скормить этот файл SSH:
$ ssh user@host "`cat file.txt`"

Редактируй удаленные файлы локальным редактором
Чтобы отредактировать файл на удаленной машине, не требуется заходить на нее и использовать консольный редактор. На самом деле файл можно открыть в твоем любимом текстовом редакторе на локальной машине (gvim заменяем на свой редактор):
$ gvim scp://user@host//путь/к/файлу

Копируй содержимое удаленного файла в буфер обмена
Если необходимо скопировать содержимое удаленного файла или вывод команды в буфер обмена, не обязательно выводить его на экран или открывать в текстовом редакторе и копировать вручную. Можно использовать следующую команду:
$ ssh user@host cat /путь/к/файлу | xclip
А так можно скопировать вывод команды:
$ ssh user@host uname -a | xclip

Сравнивай удаленный и локальный файл без копирования
Похожий прием можно использовать для сравнения двух файлов:
$ ssh user@host cat /путь/к/удаленному/файлу | diff /путь/к/лoкальному/файлу -

Работай с удаленными файлами с помощью локального файлового менеджера
Не всегда удобно работать с большим количеством файлов с помощью консольных команд или mc, запущенного на удаленной машине. Но всегда можно подключить любой каталог удаленной машины как сетевой диск. Для этого достаточно установить sshfs:
$ sudo apt-get install sshfs
Создать каталог для подключения «сетевого диска»:
$ mkdir remote_files
И подключить его:
$ sshfs user@host:/home/user ~/remote_files/
Теперь все файлы удаленного каталога /home/user будут видны в каталоге ~/remote_files/ и с ними можно работать, как с обычными.

Копируй ключи быстро
Хоть и копирование публичного ключа на удаленный сервер — задача простая, но она требует выполнения нескольких действий вручную. Если тебя это напpягает, скопировать ключ можно в автоматическом режиме:
$ ssh-copy-id user@host
При этом не обязательно копировать основной ключ, с помощью флага -i можно указать любой другой:
$ ssh-copy-id -i ~/my_key.pub user@host

Создай постоянное соединение с машиной
Если в течение дня ты часто подключаешься к одной машине, в том числе на несколько минут или секунд (чтобы просто запустить одну команду, например), есть смысл создать с ней постоянное соединение. Твой комп будет держать соединение открытым и использовать его для каждого подключения к машине. Это намного быстрее и экономичнее с точки зрения трафика и нагрузки на процессор.
Добавь следующие строки в ~/.ssh/config:
Host host
ControlPath ~/.ssh/master-%r@%h:%p
ControlMaster no

А затем создай соединение:
$ ssh -MNf user@host

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍145
🔐 Как работает HTTPS и почему это безопасно?

Когда вы видите в адресной строке значок 🔒 - это означает, что соединение с сайтом защищено. Но как именно данные защищаются?

1) Проверка сертификата сервера

Браузер соединяется с сервером и получает SSL-сертификат.
Он проверяет, выдан ли сертификат доверенным центром (CA).
Если всё ок - продолжаем.


2) Обмен ключами

После проверки браузер и сервер договариваются, каким способом будут шифровать данные.
Создаётся общий секретный ключ - session key.
Этот ключ знают только они.


3) Шифрованный туннель

Теперь весь обмен данными происходит в зашифрованном виде.
Если кто-то перехватит трафик - он увидит лишь набор бессмысленных символов.


Почему это важно?

HTTPS защищает:

* 🔸 Пароли
* 🔸 Личные данные
* 🔸 Платёжную информацию
* 🔸 Сообщения и формы


📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍106👎2🔥1👌1
Запуск команд на удаленном сервере через SSH

Запуск команд на удаленном компьютере через SSH-подключение

Протокол SSH, помимо работы в интерактивном режиме, поддерживает также разовый запуск команд или скриптов на удаленном компьютере под управлением ОС семейства Linux.

Синтаксис команды запуска удаленной команды:

ssh [пользователь]@[сервер] '[команда]'


Если доступ по ssh реализован по ключевой паре, то команда выполнится немедленно. Если нет, то при запросе вводим пароль указанного пользователя и в консоли получаем вывод команды, если таковой имеется.

Например, получим информацию об установленной на удаленном сервере операционной системе:

ssh my_name@192.168.1.77 'uname -a'


Чтобы запустить несколько команд за одно подключение, можно использовать символ “;” в качестве разделителя. Проверим время работы удаленного компьютера, его загрузку и запросим все активные сетевые подключения на удаленном компьютере:

ssh my_name@192.168.1.77 'uptime; netstat -anp tcp'


В случае, если потребуется запустить на удаленном сервере локальный файл скрипта, то потребуется в SSH-подключении вызвать командный интерпретатор в режиме исполнения сценария (например, bash с ключом -s), и на стандартный ввод передать ему файл скрипта. Команда запуска локального скрипта на удаленном компьютере будет выглядеть примерно так:

ssh my_name@192.168.1.77 'bash -s' < /home/user/anycript.sh

В результате скрипт в локальном файл /home/user/anyscript.sh исполнится на удаленном сервере.

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81👌1
Tabby (ранее Terminus) — широко конфигурируемый эмулятор терминала, SSH- и COM-клиент для Windows, macOS и Linux

• Встроенный SSH- и Telnet-клиент и менеджер подключений;
• Встроенный последовательный терминал;
• Темы и цветовые схемы;
• Полностью настраиваемые сочетания клавиш;
• Панели;
• Запоминание вкладок;
• Поддержка PowerShell (and PS Core), WSL, Git-Bash, Cygwin, MSYS2, Cmder и CMD;
• Прямая передача файлов из и в SSH-сессии через Zmodem;
• Полная поддержка Unicode, включая символы двойной ширины;
• Не задыхается при быстром выводе;
• Полноценный опыт работы с shell на Windows, включая дополнение слов и команд по Tab (при помощи Clink);
• Встроенное защищённое хранилище для SSH-ключей и настроек;
• SSH-, SFTP- и Telnet-клиент доступен как веб-приложение (также для самостоятелньного хостинга).

https://github.com/Eugeny/tabby/blob/master/README.ru-RU.md

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍152🔥1😈1
Список полезных команд для работы с telnet, которые могут помочь при подключении и отладке сетевых служб:

Основные команды telnet:
1. Подключение к удаленному хосту:

telnet <hostname> <port>

Пример:

telnet example.com 80

Подключается к хосту example.com на порту 80 (HTTP).

2. Закрытие соединения:
Чтобы завершить сессию, используйте сочетание клавиш:

Ctrl + ] (переход в режим команд)

Затем введите:

quit


3. Отправка текстового запроса после подключения:
Если подключились к порту, например, HTTP-сервера, можно отправить запрос вручную:

GET / HTTP/1.1
Host: example.com

Это выполняет запрос к домашней странице на порту 80.

Встроенные команды telnet (используйте в режиме команд после нажатия Ctrl + ]):

1. help
Показывает список доступных команд telnet:

telnet> help


2. open
Открывает новое соединение с указанным хостом:

telnet> open <hostname> <port>


3. close
Закрывает текущее соединение:

telnet> close


4. display
Показывает текущие параметры подключения:

telnet> display


5. mode
Переключает режим работы telnet (например, line или character):

telnet> mode line


6. send
Отправляет управляющие символы (например, send escape для отправки escape-секвенции):

telnet> send escape


7. status
Показывает статус текущего соединения:

telnet> status


8. set и unset
Настраивают параметры подключения (например, установка режима эхо):

telnet> set echo
telnet> unset echo


Примеры использования telnet:

1. Проверка доступности порта:
Чтобы проверить, открыт ли порт на удаленном сервере:

telnet <hostname> <port>


2. Проверка почтового сервера (SMTP):
Подключение к серверу SMTP:

telnet smtp.example.com 25

Затем можно вручную ввести SMTP-команды, такие как:

EHLO example.com


3. Проверка DNS сервера:
Можно подключиться к DNS-серверу и проверить его ответы:

telnet <dns-server> 53


Эти команды помогут вам для отладки, диагностики и проверки сетевых служб.

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🌚1🗿1
Media is too big
VIEW IN TELEGRAM
Управление и настройка сети в Linux с помощью утилиты nmcli

Вы можете использовать различные инструменты для настройки сетевых подключений, как графических так и консольно командных, графические удобны своей простотой, а командные удобны тем что их можно использовать в различных сценариях, в этом видео вы познакомитесь с консольной утилитой nmcli (Network Manager Command Line Interface)


Настройка интерфейса
con — сокращенно от connection (можно писать сокращенно или полностью)
mod — сокращенно от modify (можно писать сокращенно или полностью)
dev — сокращенно от device (можно писать сокращенно или полностью)
ens33 — имя интерфейса
ipv4.addresses — семейство протокола ipv4


Переименовать имя соединения:
nmcli con mod "Wired connection 1" con-name "lan"

Установка адреса в ручном режиме:
nmcli con mod ens33 ipv4.method manual

Получить IP адрес автоматически через DHCP:
nmcli con mod ens33 ipv4.method auto

Установить IP адрес:
nmcli con mod ens33 ipv4.addresses 192.168.100.25/24

Удалить IP адрес:
nmcli con mod ens33 ipv4.addresses ""

Установить шлюз по умолчанию:
nmcli con mod ens33 ipv4.gateway 20.20.20.1

Удалить шлюз по умолчанию:
nmcli con mod ens33 ipv4.gateway ""

Установить DNS:
nmcli con mod ens33 ipv4.dns 8.8.8.8

Удалить DNS адрес:
nmcli con mod ens33 ipv4.dns ""

Включить интерфейс:
nmcli con up ens33

Выключить интерфейс:
nmcli con down ens33

Добавить дополнительный IP адрес:
nmcli con mod ens33 +ipv4.addresses "192.168.180.189/24"

Удалить IP адрес (второй вариант):
nmcli con mod ens33 -ipv4.addresses "192.168.8.189/24"

Добавить VLAN c тегом 21 на физический интерфейс ens33 (InterVLAN):
nmcli con add type vlan con-name VLAN21 ifname VLAN21 dev ens33 id 21

Установить IP адрес VLAN интерфейсу:
nmcli con mod VLAN21 ipv4.addresses 172.10.10.11/24

Команды диагностики
Cостояние всех интерфейсов:
nmcli dev status

Краткое состоянии всех интерфейсов:
nmcli -t dev

Cостояние физических интерфейсов и их UUID:
nmcli con show

Информация о конкретном интерфейсе:
nmcli dev show ens33

Информация о соединении интерфейса:
nmcli con show ens33

Маршрутизация
Посмотреть таблицу маршрутизации:
ip route

Добавить временный маршрут на сеть 192.168.2.0/24 через 192.168.100.1:
ip route add 192.168.2.0/24 via 192.168.100.1

Изменить временный маршрут:
ip route change 192.168.2.0/24 via 192.168.8.10

Добавить второй временный шлюз для сети 192.168.2.0/24 (балансировка маршрута):
ip route append 192.168.2.0/24 via 192.168.8.11

Удалить временный маршрут на сеть 192.168.2.0/24 через 192.168.8.12:
ip route del 192.168.2.0/24 via 192.168.8.11

Удалить временный маршрут на сеть 192.168.2.0/24 :
ip route del 192.168.2.0/24

Добавить постоянный маршрут на сеть 192.168.2.0/24 через 192.168.8.2 на интерфейсе ens33:
nmcli con mod ens33 +ipv4.routes "192.168.2.0/24 192.168.8.54"
nmcli con up ens33

Удалить маршрут на сеть 192.168.2.0/24 через 192.168.8.2 на интерфейсе ens33:
nmcli con mod ens33 -ipv4.routes "192.168.2.0/24 192.168.8.54"
nmcli con up ens33

Изменить метрику на интерфейсе:
nmcli con mod ens33 ipv4.route-metric 400
nmcli con up ens33

Изменить mtu на интерфейсе:
nmcli con mod ens33 ethernet.mtu 1600
nmcli con up ens33

источник

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥85
Перенос VM с Hyper-V на Proxmox

Перенос виртуальной машины (VM) с Hyper-V на Proxmox включает несколько шагов, поскольку Hyper-V и Proxmox используют разные форматы виртуальных дисков. Hyper-V использует формат VHDX, а Proxmox предпочитает формат QCOW2 или RAW. Основная задача заключается в конвертации дисков и настройке виртуальной машины на новом гипервизоре.

Шаги для переноса VM с Hyper-V на Proxmox

📌1. Подготовка виртуальной машины в Hyper-V

1. Выключите виртуальную машину в Hyper-V.
Чтобы избежать проблем с консистентностью данных, убедитесь, что VM выключена перед экспортом.

2. Экспортируйте виртуальную машину.
Откройте Hyper-V Manager и выполните экспорт виртуальной машины:
- Выберите нужную виртуальную машину.
- Нажмите "Экспортировать" и выберите директорию для сохранения экспортированных файлов.

В результате экспорт сохранит всю конфигурацию виртуальной машины и файлы дисков (обычно в формате VHD или VHDX).

📌2. Конвертация виртуального диска

Proxmox поддерживает несколько форматов виртуальных дисков, таких как QCOW2 и RAW. Вы можете использовать утилиту qemu-img для конвертации формата.

1. Перенесите диск (VHDX/VHD) на сервер Proxmox.
Скопируйте файл виртуального диска с Hyper-V на сервер Proxmox с помощью SCP или другого метода передачи файлов.

Пример использования SCP:

scp /path/to/your/disk.vhdx user@proxmox:/var/lib/vz/images/


2. Установите `qemu-utils` (если он не установлен).
Для конвертации используйте утилиту qemu-img. На Proxmox по умолчанию установлена эта утилита, но если её нет, установите:

apt-get install qemu-utils


3. Конвертируйте VHDX в формат QCOW2 или RAW.
Выполните команду для конвертации:
- В QCOW2:

qemu-img convert -f vhdx -O qcow2 /path/to/your/disk.vhdx /var/lib/vz/images/VMID/vm-disk.qcow2

- В RAW:

qemu-img convert -f vhdx -O raw /path/to/your/disk.vhdx /var/lib/vz/images/VMID/vm-disk.raw


- /path/to/your/disk.vhdx — путь к вашему файлу VHDX.
- /var/lib/vz/images/VMID/vm-disk.qcow2 — путь, куда будет сохранен новый виртуальный диск, с указанием идентификатора VM (`VMID`).

📌3. Создание новой VM на Proxmox

1. Создайте новую виртуальную машину на Proxmox.
В интерфейсе Proxmox:
- Нажмите "Создать VM".
- Укажите настройки (например, процессоры, память, сетевые адаптеры), соответствующие параметрам вашей VM на Hyper-V.
- На этапе создания жесткого диска выберите небольшой размер временного диска (он не будет использоваться).

2. Подмените созданный диск на сконвертированный.
После создания VM:
- Перейдите в директорию, где хранится диск новой VM: /var/lib/vz/images/VMID/.
- Удалите временный диск и замените его на сконвертированный диск:

mv /path/to/vm-disk.qcow2 /var/lib/vz/images/VMID/


3. Проверьте и отредактируйте конфигурацию виртуальной машины.
Откройте файл конфигурации VM, который находится по пути /etc/pve/qemu-server/VMID.conf, и убедитесь, что строка с указанием диска ссылается на ваш новый файл:

scsi0: local:VMID/vm-disk.qcow2


📌4. Запуск виртуальной машины

1. Запустите виртуальную машину в Proxmox.
В интерфейсе Proxmox запустите VM и проверьте, корректно ли она работает.

2. Установите необходимые драйвера.
Если в Hyper-V VM использовала специфичные драйвера, возможно, потребуется установить новые драйвера в ОС, чтобы она корректно функционировала в Proxmox (например, драйвера для сетевого адаптера или виртуальных дисков).

Заключение
После выполнения этих шагов виртуальная машина должна корректно работать на платформе Proxmox. Если возникнут проблемы с драйверами или загрузкой системы, возможно, потребуется дополнительно настроить параметры виртуальной машины или обновить конфигурацию ОС.

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍152🔥1
15 сентября приглашаем на онлайн-вебинар о новом релизе платформы VDI и терминального доступа Termit 2.6 российского разработчика Orion soft. Ключевое обновление — собственный протокол Pulsar. Он становится технологической основой для дальнейшего развития Termit и уже в первой версии поддерживает:


— подключение к Linux в режиме полноценного рабочего стола и отдельных приложений

— перенаправление клавиатуры, мыши, звука, текста и файлов через буфер обмена

— работу с принтерами

— SSO через Kerberos

— мониторинг качества сессии: потери пакетов, задержка и загрузка канала

— и другие возможности


На вебинаре покажем большое демо Pulsar и разберем, как выглядит работа пользователя и администратора с новым протоколом.

📆15 сентября, 11:00 МСК
📌Регистрация
🤣4
RAID (Redundant Array of Independent Disks) — это технология, которая используется для повышения производительности и/или надежности хранения данных на дисках. Существует несколько типов RAID, каждый из которых имеет свои особенности:

1. RAID 0 (Striping)
- Особенности: Данные делятся на блоки и записываются на несколько дисков одновременно.
- Преимущества: Повышает скорость чтения и записи данных.
- Недостатки: Отсутствует защита данных. При отказе одного из дисков все данные теряются.

2. RAID 1 (Mirroring)
- Особенности: Все данные дублируются на двух или более дисках.
- Преимущества: Высокая надежность, поскольку данные сохраняются на нескольких дисках.
- Недостатки: Половина дискового пространства используется для зеркалирования, что снижает общую емкость.

3. RAID 5 (Striping with Parity)
- Особенности: Данные разделяются на блоки, а для каждого блока вычисляется контрольная сумма (паритет), которая записывается на один из дисков. Паритет распределяется по всем дискам.
- Преимущества: Позволяет восстановить данные при выходе из строя одного диска.
- Недостатки: Более сложная реализация и сниженная скорость записи по сравнению с RAID 0.

4. RAID 6 (Striping with Double Parity)
- Особенности: Аналог RAID 5, но используется двойной паритет для защиты данных.
- Преимущества: Выдерживает отказ двух дисков.
- Недостатки: Снижение производительности записи по сравнению с RAID 5.

5. RAID 10 (1+0, Mirrored Striping)
- Особенности: Комбинирует RAID 1 и RAID 0. Данные сначала зеркалируются (RAID 1), а затем разбиваются на блоки (RAID 0).
- Преимущества: Высокая производительность и высокая надежность.
- Недостатки: Требуется минимум четыре диска, и половина емкости используется для зеркалирования.

6. RAID 01 (0+1, Striping Mirrored)
- Особенности: Комбинирует RAID 0 и RAID 1, но сначала данные разбиваются на блоки (RAID 0), а затем зеркалируются (RAID 1).
- Преимущества: Высокая производительность и отказоустойчивость.
- Недостатки: Менее эффективен в использовании дисков, чем RAID 10.

7. RAID 50 (RAID 5+0)
- Особенности: Комбинирует RAID 5 и RAID 0. Данные распределяются по нескольким группам RAID 5, которые затем объединяются в RAID 0.
- Преимущества: Баланс между производительностью и отказоустойчивостью.
- Недостатки: Более сложная реализация и требуются большие ресурсы.

8. RAID 60 (RAID 6+0)
- Особенности: Комбинирует RAID 6 и RAID 0. Несколько массивов RAID 6 объединяются в один массив RAID 0.
- Преимущества: Увеличенная надежность за счет двойного паритета.
- Недостатки: Снижение производительности записи по сравнению с RAID 50.

9. RAID 2, 3, 4
- Особенности: Эти типы RAID используют разные подходы к управлению данными и паритетом, но встречаются реже.
- Преимущества и недостатки: Эти конфигурации имеют свои уникальные особенности, но не получили широкого распространения из-за ограниченных преимуществ перед более популярными RAID 5 и 6.

Каждый тип RAID подходит для разных целей: RAID 0 — для максимальной скорости, RAID 1 — для надежности, а RAID 5 и 6 — для баланса между отказоустойчивостью и эффективностью использования пространства.

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍134🔥3❤‍🔥1
Media is too big
VIEW IN TELEGRAM
🥑 Apache Guacamole

Это шлюз для удалённого рабочего стола, не требующий установки клиентских приложений.
Он поддерживает стандартные протоколы, такие как VNC, RDP и SSH.

Он называется «клиентским-безклиентским» (clientless), потому что не требует никаких плагинов или клиентского ПО.

Благодаря HTML5, после установки Guacamole на сервер всё, что нужно для доступа к рабочим столам — это веб-браузер.

https://guacamole.apache.org/

источник

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍8
🔥 Подборка самых полезных фильтров для Wireshark

Если нужно быстро найти нужный трафик в большом дампе — эти фильтры экономят кучу времени. Сохраняй себе и используй прямо в работе!

🧩 IP-фильтрация

⚫️ip.addr == 10.0.0.0/24 - весь трафик внутри подсети.
⚫️ip.addr == 10.0.0.1 - весь трафик к/от конкретного хоста.
⚫️!(ip.addr == 10.0.0.1) - исключить трафик определённого хоста.

📡 Протоколы и типы пакетов

⚫️icmp.type == 3 - ICMP “destination unreachable”.
⚫️tcp or udp - показать только TCP/UDP.
⚫️http or dns - весь HTTP или DNS трафик.

🔌 TCP-фильтры

⚫️tcp.port == 80 - трафик по порту 80.
⚫️tcp.srcport < 1000 - исходящие порты <1000.
⚫️tcp.flags.syn == 1 - пакеты с SYN.
⚫️tcp.flags == 0x012 - SYN+ACK.
⚫️tcp.analysis.retransmission - ретрансмиссии.

🌐 HTTP-фильтры

⚫️http.request.method == "GET" - HTTP GET.
⚫️http.response.code == 404 - ответы 404.
⚫️http.host == "www.abc.com" - фильтр по Host.

🔐 TLS

⚫️tls.handshake — только рукопожатие TLS.
⚫️tls.handshake.type == 1 - Client Hello.

🔎 DNS

⚫️dns.resp.name == cnn.com - ответы DNS для домена.

🧱 Полезные универсальные фильтры

⚫️frame contains keyword - поиск по содержимому.
⚫️frame.len > 1000 - пакеты >1000 байт.

🟨 DHCP

⚫️dhcp and ip.addr == 10.0.0.0/24 - DHCP внутри подсети.
⚫️dhcp.hw.mac_addr == 00:11:22:33:44:55 - DHCP по MAC-адресу.

🔁 Маршрутизация

⚫️ip.src == 10.0.0.1 && ip.dst == 10.0.0.2 - трафик между двумя хостами.

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥21
🔥 Продвинутые Wireshark-фильтры, которые должен знать каждый сетевик

Эта подборка - для глубокого анализа: расследование задержек, поиска проблем TLS, выявления утечек, анализа потоков и отладки сервисов.


1. Анализ медленных соединений и задержек

⚫️ tcp.analysis.flags
Показать ВСЕ TCP-анализ события (retransmission, duplicate ACK, out-of-order).

⚫️ tcp.analysis.lost_segment
Потерянные сегменты.

⚫️ tcp.analysis.duplicate_ack
Дубликаты ACK — признаки нестабильного канала.

⚫️ tcp.time_delta > 0.5
Пакеты, между которыми задержка > 500 мс.

⚫️ tcp.stream eq 5
Выбор конкретного TCP-потока.



🔐 2. Глубокое исследование TLS/SSL

⚫️ tls.record.version == 0x0303
Только TLS 1.2.

⚫️ tls.record.version == 0x0304
Только TLS 1.3.

⚫️ tls.handshake.type == 11
Сертификат сервера (Certificate).

⚫️ tls.app_data
Только зашифрованные TLS данные.

⚫️ tls.record.length > 1500
Аномально большие TLS-записи.



🛰 3. DNS - поиск аномалий, туннелей, ошибок

⚫️ dns.qry.name contains "api"
Запросы, содержащие “api”.

⚫️ dns.flags.rcode != 0
Ошибки DNS (NXDOMAIN, SERVFAIL и др).

⚫️ dns.qry.type == 16
TXT-запросы (часто используются в туннелях).

⚫️ dns.qry.name matches "[A-Za-z0-9]{40,}"
Подозрительно длинные запросы — признаки DNS exfiltration.



📡 4. HTTP/HTTP2/REST API низкоуровневый анализ

⚫️ http.request.full_uri contains "login"
Анализ обращений к логину.

⚫️ http.request.version == 2.0
HTTP/2 трафик.

⚫️ http.request.time > 1
Медленные HTTP-запросы (>1 сек).

⚫️ http.cookie contains "session"
Запросы с куками, содержащими session.



🧱 5. Поиск подозрительного или вредоносного трафика

⚫️ frame matches "([A-Za-z0-9+/]{200,}={0,2})"
Бейс64 блоки большого размера — признак утечки.

⚫️ tcp.flags.reset == 1
Пакеты с RST: агрессивное завершение соединений.

⚫️ ip.ttl < 5
Аномально маленький TTL (скрытые сети, туннели).

⚫️ tcp.port in {4444 1337 5555 31337}
Подозрительные порты, часто используемые RAT/ботнетами.



⚙️ 6. Универсальные фильтры для тонкого анализа

⚫️ tcp.segment.reassembled
Показать пакеты, собранные из фрагментов.

⚫️ tcp.reassembled.length > 5000
Большие данные после реассемблирования.

⚫️ eth.addr == aa:bb:cc:dd:ee:ff
Фильтр по MAC (полезно в VLAN).

⚫️ wlan.fc.type_subtype == 0x08
Beacon-фреймы Wi-Fi.

📲 Мы в MAX

👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍5
Совет по Linux 💡

Получите контекст к вашему поиску с помощью grep, используя параметр -C:


$ grep -C3 filename


Покажет 3 строки до и после найденного совпадения.

Очень помогает при устранении проблем с логами 😎

📲 Мы в Max

👉 @i_odmin
👍4🔥3