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

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

Відкрити в Telegram

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

Показати більше
1 962
Підписники
-224 години
-37 днів
-5130 день
Архів дописів
Старое доброе видео, кто помнит? Веселенький денек у сисадмина... Системный администратор перезагружает веб-сервер по просьбе одного из пользователей сайта, и начинается "веселуха"... не дадут же поиграть... 📲 Мы в MAX 👉@i_linux

ChopChopGo Это инструмент для просмотра журналов Linux наподобие chainsaw и Hayabusa, отлично показавших себя при общем анали
ChopChopGo Это инструмент для просмотра журналов Linux наподобие chainsaw и Hayabusa, отлично показавших себя при общем анализе системных журналов Windows (через Sigma-правила). 🎯 Поиск угроз с помощью правил обнаружения Sigma и пользовательских правил обнаружения ChopChopGo ⚡ Молниеносная работа, написанная на языке go 🪶 Чистое и легкое исполнение и выходные форматы без лишнего нагромождения 💻 Работает в Linux https://github.com/M00NLIG7/ChopChopGo 📲 Мы в MAX 👉@i_linux

До / После 📲 Мы в MAX 👉@i_linux
+3
До / После 📲 Мы в MAX 👉@i_linux

Топ-10 артефактов Linux для расследования инцидентов Несмотря на то что Windows остается самой распространенной ОС, о чем зна
Топ-10 артефактов Linux для расследования инцидентов Несмотря на то что Windows остается самой распространенной ОС, о чем знают в том числе атакующие, нельзя оставлять без внимания другие системы, а уж тем более Linux (ладно-ладно, GNU/Linux). Сегодня российские компании все чаще пользуются Linux из соображений импортозамещения, но эта ОС по-прежнему более распространена именно как серверное решение. А теперь представьте ситуацию: вы работаете на Linux-машине, и вдруг что-то явно идет не так. Уровень нагрузки на процессор резко вырос, начались обращения на неизвестные ресурсы или пользователь www-data неожиданно оказался в группе wheel. Что делать? Помимо базовых команд на просмотр текстовых файлов (а все мы знаем, что в Linux, по сути, все есть файл) типа cat ~/.bash_history, можно использовать более продвинутые варианты: tail -n 15 /var/log/<file> по умолчанию выводит 10 строк, но при помощи параметра n их количество можно изменять. tail -f -s 5 /var/log/<file> используется для отслеживания появления новых строк. Это аналог команды watch для тех же журналов. Может быть полезна для отслеживания определенных событий в реальном времени. grep ― без этой команды предыдущие две могут оказаться бесполезными. Не устану повторять, что grep — наш лучший друг, и не владеть его синтаксисом хотя бы на базовом уровне — просто преступление. В ИБ это так же важно, как уметь гуглить. Например, историю входов пользователей можно посмотреть разными способами. Если мы имеем дело с SSH-протоколом (один из наиболее популярных способов удаленного управления хостом), можно использовать: cat /var/log/auth.log | grep "sshd". Фильтрует логи аутентификации исключительно по демону sshd. https://ptresearch.media/articles/top-10-artefaktov-linux-dlya-rassledovaniya-inczidentov 📲 Мы в MAX 👉@i_linux

🎉 С Днём системного администратора! Сегодня можно официально ничего не чинить. Потому что существует закон сисадмина: 🟢 Пока админ рядом — всё работает. 🔴 Как только он ушёл в отпуск — ломается всё сразу. Желаем, чтобы серверы не знали слова panic, диски не пищали SMART'ом, а пользователи звонили только с фразой: «Спасибо, всё отлично работает!»

GTFOBins Это список двоичных файлов Unix, которые могут быть использованы для обхода локальных ограничений безопасности в неп
GTFOBins Это список двоичных файлов Unix, которые могут быть использованы для обхода локальных ограничений безопасности в неправильно сконфигурированных системах. В проекте собраны легитимные функции двоичных программ Unix, которые могут быть использованы для выхода из ограниченных оболочек, повышения или сохранения повышенных привилегий, передачи файлов, порождения bind и reverse оболочек, а также для решения других задач, возникающих после эксплойта. Важно отметить, что это не список эксплойтов, и перечисленные здесь программы сами по себе не являются уязвимыми, скорее, GTFOBins - это сборник о том, как прожить на земле, когда доступны только определенные двоичные файлы. Если вы ищете двоичные файлы для Windows, вам следует посетить сайт LOLBAS. https://gtfobins.github.io/ 📲 Мы в MAX 👉@i_linux

Назначения подсетей IPv4 и использование некоторых маршрутизируемых адресов в качестве локальных Как-то, очередной раз настраивая роутер с LTE модемом, обратил внимание, что IP адрес оператором мне был выдан из сети 11.0.0.0/8. Уже не помню точно, что за оператор это был, да и не имеет это значения, но задумался: а как так-то? Ведь вряд ли сотовый оператор будет бесплатно раздавать динамические публичные IP адреса, а локальными с детства привычно использование адресов 10.0.0.0/8, 192.168.0.0/16 и 172.16.0.0/12. Так же есть сеть 100.64.0.0/10, но с ней тоже всё не просто. Полный список не маршрутизируемых адресов можно посмотреть, например, тут. Проверил WHOIS - сеть публичная, и значится за некоей "DoD Network Information Center" с датой регистрации 1984-01-19. Так зародилась данная статья. Не претендую на 100% точность и достоверность информации и не рекомендую использовать информацию из этой статьи. В чём‑то данная статья имеет схожесть с «Ищем свободные IPv4 в BGP full‑view», но она немного о другом. Сразу хочу сказать, поскольку это может быть не очевидно - в этой статье я говорю только о локальном использовании адресов внутри инфраструктуры. https://habr.com/ru/articles/766622/ 📲 Мы в MAX 👉@i_linux

🚀 Подборка полезных IT каналов в Max Системное администрирование, DevOps 📌 https://max.ru/i_odmin Все для системного администратора https://max.ru/bash_srv Bash Советы https://max.ru/sysadminof Книги для админов, полезные материалы https://max.ru/i_odmin_book Библиотека Системного Администратора https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др. https://max.ru/tipsysdmin Типичный Сисадмин https://max.ru/channel_win_sysadmin Системный Администратор Windows https://max.ru/channel_linux_admin Linux: Системный администратор https://max.ru/channel_linuxmod Linux https://max.ru/channel_i_linux Системный администратор https://max.ru/channel_devopslib DevOps, SRE, Sysadmin https://max.ru/channel_devops_star DevOps Star (Звезда Девопса) Excel лайфхак 📌 https://t.me/Excel_lifehack Excel лайфхак Английский с нуля 🇬🇧 https://max.ru/UchuEnglish 1C разработка 📌 https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С https://max.ru/channel_DevLab1C 1С:Предприятие 8 Программирование C++📌 https://max.ru/cpp_lib Библиотека C/C++ разработчика https://max.ru/channel_cpp_geek C++ geek Программирование Go📌 https://max.ru/golang_lib Библиотека Go (Golang) разработчика Программирование React📌 https://max.ru/react_lib React Программирование Rust📌 https://max.ru/channel_rust_lib Программирование Python 📌 https://max.ru/python_of Python академия. https://max.ru/BookPython Библиотека Python разработчика Java разработка 📌 https://max.ru/bookjava Библиотека Java разработчика https://max.ru/channel_java_geek Java Geek GitHub Сообщество 📌 https://max.ru/githublib Интересное из GitHub Базы данных (Data Base) 📌 https://max.ru/database_info Все про базы данных Фронтенд разработка 📌 https://max.ru/frontend_1 Подборки для frontend разработчиков Библиотеки 📌 https://max.ru/programmist_of Книги по программированию https://max.ru/proglb Библиотека программиста https://max.ru/bfbook Книги для программистов Программирование 📌 https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 Шутки программистов 📌 https://max.ru/itumor Шутки программистов Защита, взлом, безопасность 📌 https://max.ru/thehaking Канал о кибербезопасности https://max.ru/xakkep_1 Хакер Free Книги, статьи для дизайнеров 📌 https://max.ru/odesigners Статьи, книги для дизайнеров Математика 📌 https://max.ru/Pomatematike Канал по математике https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике Вакансии в IT📌 https://max.ru/progjob https://max.ru/channel_rabotait Мир технологий 📌 https://max.ru/mir_teh Канал для любознательных Бонус 📌 https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга https://max.ru/mockva_life Свежие новости Москвы https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП

🚀 Подборка полезных IT каналов в Max Системное администрирование, DevOps 📌 https://max.ru/i_odmin Все для системного администратора https://max.ru/bash_srv Bash Советы https://max.ru/sysadminof Книги для админов, полезные материалы https://max.ru/i_odmin_book Библиотека Системного Администратора https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др. https://max.ru/tipsysdmin Типичный Сисадмин https://max.ru/channel_win_sysadmin Системный Администратор Windows https://max.ru/channel_linux_admin Linux: Системный администратор https://max.ru/channel_linuxmod Linux https://max.ru/channel_i_linux Системный администратор https://max.ru/channel_devopslib DevOps, SRE, Sysadmin https://max.ru/channel_devops_star DevOps Star (Звезда Девопса) Excel лайфхак 📌 https://t.me/Excel_lifehack Excel лайфхак Английский с нуля 🇬🇧 https://max.ru/UchuEnglish 1C разработка 📌 https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С https://max.ru/channel_DevLab1C 1С:Предприятие 8 Программирование C++📌 https://max.ru/cpp_lib Библиотека C/C++ разработчика https://max.ru/channel_cpp_geek C++ geek Программирование Go📌 https://max.ru/golang_lib Библиотека Go (Golang) разработчика Программирование React📌 https://max.ru/react_lib React Программирование Rust📌 https://max.ru/channel_rust_lib Программирование Python 📌 https://max.ru/python_of Python академия. https://max.ru/BookPython Библиотека Python разработчика Java разработка 📌 https://max.ru/bookjava Библиотека Java разработчика https://max.ru/channel_java_geek Java Geek GitHub Сообщество 📌 https://max.ru/githublib Интересное из GitHub Базы данных (Data Base) 📌 https://max.ru/database_info Все про базы данных Фронтенд разработка 📌 https://max.ru/frontend_1 Подборки для frontend разработчиков Библиотеки 📌 https://max.ru/programmist_of Книги по программированию https://max.ru/proglb Библиотека программиста https://max.ru/bfbook Книги для программистов Программирование 📌 https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 Шутки программистов 📌 https://max.ru/itumor Шутки программистов Защита, взлом, безопасность 📌 https://max.ru/thehaking Канал о кибербезопасности https://max.ru/xakkep_1 Хакер Free Книги, статьи для дизайнеров 📌 https://max.ru/odesigners Статьи, книги для дизайнеров Математика 📌 https://max.ru/Pomatematike Канал по математике https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике Вакансии в IT📌 https://max.ru/progjob https://max.ru/channel_rabotait Мир технологий 📌 https://max.ru/mir_teh Канал для любознательных Бонус 📌 https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга https://max.ru/mockva_life Свежие новости Москвы https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП

Cron — лучшие практики Планировщик задач cron(8) существует с 7 версии Unix, а его синтаксис crontab(5) знаком даже тем, кто
Cron — лучшие практики Планировщик задач cron(8) существует с 7 версии Unix, а его синтаксис crontab(5) знаком даже тем, кто нечасто сталкивается с системным администрированием Unix. Это стандартизированный, довольно гибкий, простой в настройке и надёжно работающий планировщик, которому пользователи и системные пакеты доверяют управление важными задачами. У простоты cron(8), как и многих старых Unix-инструментов, есть недочёт: программа полагается на то, что пользователь хотя бы примерно знает, как всё работает, и в состоянии правильно реализовать в нём какую-то проверку безопасности. По сути, единственное, что делает планировщик, — это пытается запустить задачу в определённое время и прислать результат на электронную почту. Для простых и незначительных задач пользователей таких возможностей вполне достаточно. Но для более важных системных задач стоит обернуть вокруг cron(8) и вызываемых им задач дополнительную инфраструктуру. Если вам хочется отслеживать выполняемые задачи, то существует несколько способов повысить надёжность работы с cron(8). Rus https://habr.com/ru/companies/skillfactory/articles/656423/ Eng https://blog.sanctum.geek.nz/cron-best-practices/ 👉@i_linux

Команда findmnt Это простая утилита командной строки, используемая для отображения списка подключенных файловых систем или поиска файловой системы в /etc/fstab, /etc/mtab или /proc/self/ mountinfo. Для отображения списка подключенных файловых систем, выполните в командной строке следующую команду. По умолчанию команда findmnt отображает файловые системы в древовидном формате. # findmnt Чтобы отобразить информацию в виде обычного списка, используйте параметр -l, как показано ниже # findmnt -l Можно выбрать отображение файловых систем только определенного типа, используя параметр командной строки -t, за которым следует тип файловой системы, такой как XFS или EXT4. # findmnt --fstab -t xfs или # findmnt --fstab -t ext4 Поиск файловой системы, используя точку монтирования. Например, следующая команда отображает все файловые системы /etc/fstab, где каталогом точки монтирования является /mnt/external/disk2. # findmnt --fstab /mnt/external/disk2 # this prints bind mounts where /mnt/external/disk2 is a source или # findmnt --fstab --target /mnt/external/disk2 Выводим все файловые системы /etc/fstab и преобразовываем теги LABEL = и UUID = в реальные имена устройств, добавьте ключ – –evaluate # findmnt --fstab --evaluate Отобразить только точку монтирования, в которой смонтирована файловая система с меткой «/ boot» или «/», используйте следующую команду. # findmnt -n --raw --evaluate --output=target LABEL=/boot или # findmnt -n --raw --evaluate --output=target LABEL=/ Findmnt также позволяет отслеживать действия по монтированию, размонтированию, перемонтированию и перемещению каталога, например, в /mnt/test. # findmnt --poll --mountpoint /mnt/test Если вы хотите больше информации в выводе, используйте ключ –verbose. # findmnt --real --verbose 👉@i_linux

Подборка скриптов PowerShell для работы с Azure, Active Directory, SCCM, SCSM, Exchange ... Пример скрипта function Get-Local
Подборка скриптов PowerShell для работы с Azure, Active Directory, SCCM, SCSM, Exchange ... Пример скрипта function Get-LocalUser { <# .SYNOPSIS This script can be list all of local user account. .DESCRIPTION This script can be list all of local user account. The function is using WMI to connect to the remote machine .PARAMETER ComputerName Specifies the computers on which the command . The default is the local computer. .PARAMETER Credential A description of the Credential parameter. .EXAMPLE Get-LocalUser This example shows how to list all of local users on local computer. .NOTES Francois-Xavier Cat lazywinadmin.com @lazywinadmin .LINK https://github.com/lazywinadmin/PowerShell #> PARAM ( [Alias('cn')] [String[]]$ComputerName = $Env:COMPUTERNAME, [String]$AccountName, [System.Management.Automation.PsCredential]$Credential ) $Splatting = @{ Class = "Win32_UserAccount" Namespace = "root\cimv2" Filter = "LocalAccount='$True'" } #Credentials If ($PSBoundParameters['Credential']) { $Splatting.Credential = $Credential } Foreach ($Computer in $ComputerName) { TRY { Write-Verbose -Message "[PROCESS] ComputerName: $Computer" Get-WmiObject @Splatting -ComputerName $Computer | Select-Object -Property Name, FullName, Caption, Disabled, Status, Lockout, PasswordChangeable, PasswordExpires, PasswordRequired, SID, SIDType, AccountType, Domain, Description } CATCH { Write-Warning -Message "[PROCESS] Issue connecting to $Computer" } } } https://github.com/lazywinadmin/PowerShell 👉@i_linux

Конвертация PFX в CRT и KEY Для ECDSA: openssl pkcs12 -in certificate_ECDSA.pfx -out certificate_ECDSA.key -nodes -nocerts op
Конвертация PFX в CRT и KEY Для ECDSA: openssl pkcs12 -in certificate_ECDSA.pfx -out certificate_ECDSA.key -nodes -nocerts openssl pkcs12 -in certificate_ECDSA.pfx -out certificate_ECDSA.crt -nokeys Если pfx запаролен, будет запрошен Import Password. Для RSA: openssl pkcs12 -in certificate_RSA.pfx -clcerts -nokeys -out certificate_RSA.crt openssl pkcs12 -in certificate_RSA.pfx -nocerts -out certificate_RSA-encrypted.key openssl rsa -in certificate_RSA-encrypted.key -out certificate_RSA.key Если pfx запаролен, будет запрошен Import Password. Ключ сперва сохраняется в зашифрованном виде, для этого требуется задать PEM pass, который затем нужно указать при расшифровке ключа. 👉@i_linux

Простое копирование ssh ключей между серверами c использованием утилиты ssh-copy-id Традиционно администраторы решают задачу копирования ssh ключей между серверами путем копирования содержимого файла /root/.ssh/id_rsa.pub с сервера server1 на server2 в файл /root/.ssh/authorized_keys. Копируют обычно из одного терминала в другой, но есть более изящное решение — это использование утилиты ssh-copy-id, которая позволяет скопировать содержимое id_rsa.pub сервера источник (в нашем случае server1) на сервер приемник (server2) в нужный нам authorized_keys не открывая консоль сервера приемника (server2). Исходные данные: 2 сервера с Debian (server1 и server2). Задача: Организовать вход по ssh ключу с сервера server1 на server2 с правами root. Итак сделаем все по порядку: 1. Генерируем публичный открытый и закрытый ключи, под пользователем root на server1: ssh-keygen -t rsa Если на сервере уже есть эти ключи, то он выдаст предупреждение, где нужно будет либо подтвердить замену старых ключей либо отказаться. Мы создаем ключи впервые, поэтому предупреждения не будет, будет выведена примерно такая информация: Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): <-- ENTER Created directory '/root/.ssh'. Enter passphrase (empty for no passphrase): <-- ENTER Enter same passphrase again: <-- ENTER Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. Вы можете защитить приватный ключ паролем и тогда чтобы попасть на сервер server2 по ssh ключу нужно будет ввести этот пароль, я настоятельно рекомендую для доступа с уровнем root ввести пароль на приватный ключ. Ключи сгенерированы, мы можем проверить под пользователем root выполнив команду cat ~/.ssh/id_rsa.pub В ответ увидим примерно: ssh-rsa AAAAB3Nz.....ywWmpl root@server1 Теперь нужно передать публичный ключ id_rsa.pub пользователя root на server2, для этого на server1 выполняем: ssh-copy-id -i ~/.ssh/id_rsa.pub root@server2 Вводим пароль root от сервера server2 и ключ будет передан и записан в нужный файл authorized_keys Важное уточнение: Чтобы передать публичный ключ на server2 под root нужно чтобы пользователю root было разрешен вход по ssh на server2, обычно при базовой установке Debian/Ubuntu вход под root по ssh разрешен, это настраивается директивой PermitRootLogin в файле /etc/ssh/sshd_config PermitRootLogin yes — Вход под root по ssh разрешен. PermitRootLogin no — Вход под root по ssh запрещен. PermitRootLogin without-password — Вход под root по ssh разрешен только по ssh ключам. PermitRootLogin forced-commands-only — Вход под root по ssh разрешен только по ssh ключам и только для выполнения заранее определенной команды, сама команда прописывается в /root/.ssh/authorized_keys в формате: command="rsync" ssh-rsa AAAAB3N……. root@server2 После изменения PermitRootLogin не забудьте перезапустить службу sshd командой: service sshd restart 👉@i_linux

Шпаргалка по часто используемым командам systemctl 1. Посмотреть статус службы. Покажет статус службы на примере сети network systemctl status network 2. Запустить сервис. Запустит сервис баз данных на примере mysql systemctl start mysql 3. Остановить службу. Остановит сервис времени ntpd systemctl stop ntpd 4. Перезапустить службу. Перезапустит веб-сервер nginx systemctl restart nginx 5. Включить автозапуск службы. Разрешит автозапуск веб-сервера apache systemctl enable apache 6. Отключить автозапуск службы. Запретит автозапуск брандмауэра firewalld systemctl disable firewalld 7. Выполнить команду на удаленной системе. Остановит cron на компьютере с IP-адресом 192.168.0.15, подключившись под учетной записью root systemctl --host root@192.168.0.15 stop cron 8. Перезагрузить сервер. Перезагрузит локальный сервер systemctl reboot 9. Проверка работы сервиса. Выполняется с помощью опции is-active. В данном примере мы проверим работу службы docker. systemctl is-active docker а) Если сервис запущен, мы увидим: active б) Если не запущен: failed ... или: inactive в) Если такого сервиса нет в системе: unknown ... или: inactive Если сервис не работает или его нет в системе, команда вернет код ошибки, таким образом конструкция: systemctl is-active docker && docker run hello-world ... приведет к выполнению команды docker run hello-world только в том случае, если сервис docker работает. 👉@i_linux

Команды Linux: Пользователи и группы groupadd group_name — создать новую группу с именем group_name groupdel group_name — удалить группу group_name groupmod -n new_group_name old_group_name — переименовать группу old_group_name в new_group_name useradd -c "Nome Cognome" -g admin -d /home/user1 -s /bin/bash user1 — создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell'а /bin/bash, включить его в группу admin и добавить комментарий Nome Cognome useradd user1 — создать пользователя user1 userdel -r user1 — удалить пользователя user1 и его домашний каталог usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 — изменить атрибуты пользователя passwd — сменить пароль passwd user1 — сменить пароль пользователя user1 (только root) chage -E 2005-12-31 user1 — установить дату окончания действия учётной записи пользователя user1 pwck — проверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow grpck — проверяет корректность системных файлов учётных записей. Проверяется файл/etc/group newgrp [-] group_name — изменяет первичную группу текущего пользователя. Если указать «-», ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd 👉@i_linux

До / После 👉@i_linux
+9
До / После 👉@i_linux

+4
CCNA 200-301 How to Create Layer 3 Ether Channel On Cisco Switch How to Configure IP Routing with Layer 3 Switch SVI How to Convert IPv6 Address to IPv6 EUI-64 Format How to Configure IPv6 routing using Link Local IPv6 address How to Configure Cisco Wireless Access Point 👉@i_linux

Протоколы семейства TCP/IP. Теория и практика В сети можно найти огромное количество материала о том, как функционируют сети
Протоколы семейства TCP/IP. Теория и практика В сети можно найти огромное количество материала о том, как функционируют сети на базе стека протоколов TCP/IP, а также как писать компьютерные программы с сетевыми возможностями. При рассмотрении компьютерных сетей часто углубляются в описание физических основ и структур данных, передаваемых по сети, а при рассмотрении сетевого программирования основное внимание уделяют интернет-сокетам. Но при изучении и исследовании хочется большего, например, поэкспериментировать с пакетами сетевых протоколов. Многие сетевые протоколы реализованы в ядре операционной системы, и что-либо изменить может оказаться сложной задачей, так как это требует навыков в написании драйверов для операционной системы. Но использование специализированных библиотек позволяет работать с протоколами на низком уровне из пространства пользователя. В ходе работы над статьёй я написал небольшое приложение, которое послужит отправной точкой для понимания компьютерных сетей и семейства протоколов TCP/IP. С приложением можно экспериментировать, получая дополнительные знания. Приложение — простое и понятное и, надеюсь, упростит изучение материалов статьи. Ведь именно радость первой победы даёт мотивацию, достаточную для того, чтобы потратить гораздо больше времени на изучение темы. В статье изложены наиболее важные с моей точки зрения понятия, которые должен знать любой программист, хоть как-то сталкивающийся с компьютерными сетями. Так что без теоретических сведений не обошлось. Приложение доступно на GitHub. https://habr.com/ru/companies/ruvds/articles/759988/ 👉@i_linux

+9
MikroTik Scripting Lesson 1 - Development environment Lesson 2 - Hello World Lesson 3 (Part 1): Probe 1 - Temperature Checker Lesson 3 (Part 2): Probe 1 - Temperature Checker Lesson 04 (Part 1): Probe 2 - Interface Utilization Monitor Lesson 04 (Part 2): Probe 2 - Interface Utilization Monitor Lesson 05 (Part 1): Probe 3 - Web Monitor Lesson 05 (Part 2): Probe 3 - Web Monitor Lesson 06 (Part 1): Telegram Reporter Lesson 06 (Part 2): Telegram Reporter Lesson 06 (Part 3): Telegram Reporter источник 👉@i_linux