ServerAdmin.ru
26.9K subscribers
189 photos
27 videos
8 files
2.49K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
​​Если у вас есть желание изучать и практиковаться в обеспечении безопасности IT систем, то рекомендую обратить внимание на известный ресурс TryHackMe. Он похож на HackTheBox, про который я уже писал. Они в целом похожи и являются лидерами в этом сегменте обучения. Первый больше ориентирован на новичков и теорию, второй больше на практику.

На обоих площадках есть бесплатные тарифные планы, которых на начальных этапах обучения будет достаточно. Обучение строится на базе небольших теоретических уроков, а потом нужно будет выполнять практические задания на виртуальных машинах. Причём задания могут быть как на тему защиты от взлома, так и нападения. Площадка предоставляет свою инфраструктуру для практики!

Примеров прохождения различных заданий из этих сервисов в интернете достаточно. Если любопытно, то сможете быстро найти, как текстовые описания, так и записи на ютубе.

Я ожидал, что TryHackMe ограничит доступ для пользователей из РФ, но нет. Без проблем зарегистрировался и получил доступ к выполнению заданий. Всё обучение на английском языке.

Если реально настроитесь обучаться на этом портале, то рекомендую репозиторий по теме и конкретно вот этот документ: From Beginner to Expert Tryhackme Walkthrough.

#обучение #бесплатно #security
​​Если вы вдруг почувствуете, что ваша самооценка как IT специалиста или даже хакера падает, я вам помогу. Регистрируетесь на проекте root-me.org. Это что-то типа TryHackMe и HackTheBox. Переходите в раздел ChallengesWeb Server. Выбираете задание HTML - Source code. Вам нужно будет найти пароль от формы, которую увидите после нажатия кнопки Start the challenge.

Дальше вам нужно будет проявить свои технические навыки, представив себя в роли хакера. С чего начнёте? Наверное можно попробовать поотправлять что-то в форму и посмотреть заголовки или поснифать трафик. Он нешифрованный. Но можно поступить проще. Открыть html код страницы и увидеть там пароль 😎. Отправляете его через специальную форму в описании задания и вы молодец.

Ну как, самооценка подросла? Если нет, даю ещё одно задание из этого же раздела: SQL injection - Authentication. Пишем в форму логина и пароля инъекцию: admin'/* и после отправки смотрим исходный код формы с паролем. Там будет настоящий пароль. Получаем плюс к самооценке.

На самом деле это прикольная песочница для различных задач по информационной безопасности и взломам. Причём задания есть на любой уровень знаний, так что хоть что-то по силам выполнить каждому. К заданиям есть ссылки с теорией. Сервис, как и предыдущие два, имеет бесплатную подписку, где много задач. Для развлечения и поднятия самооценки его хватит за глаза.

#обучение #security #бесплатно
🎓 Сделал серию заметок про бесплатные курсы на платформе stepik.org и как-то забыл про неё. Там много хороших и полезных курсов, так что продолжу. Если у вас тоже есть на примете хорошие бесплатные курсы, поделитесь информацией.

Регулярные выражения в Python
https://stepik.org/course/107335/
Здесь вы научитесь составлять и использовать регулярные выражения для решения повседневных задач. В курсе пройдёмся по всем функциям модуля re, разберём работу с группами, изучим флаги, и поймём для чего нужны регулярные выражения.
Рекомендацию на этот курс я получал неоднократно в заметках про регулярки. Перебирал свои записи и вспомнил про него.

Интерактивный тренажер по SQL
https://stepik.org/course/63054/
В курсе большинство шагов — это практические задания на создание SQL-запросов. Каждый шаг включает минимальные теоретические аспекты по базам данных или языку SQL, примеры похожих запросов и пояснение к реализации.
Админам и девопсам с SQL приходится взаимодействовать постоянно. Базовый синтаксис очень желательно знать. Я немного знаю, но всё равно по шпаргалкам всё делаю, когда надо таблицу создать или запрос выполнить.

Go (Golang) - первое знакомство
https://stepik.org/course/100208/
Это курс по языку программирования Go (Golang) для самых маленьких. Почему? Потому что показаны будут прежде всего азы (хотя и не только), при этом в достаточно краткой форме.
Go, как и Python, активно используется для создания вспомогательных утилит и сервисов в обслуживании и эксплуатации систем. Знать его хоть чуть-чуть в современном IT будет полезно всем. Я, к сожалению, совсем не знаю.
А может вам просто надоело обслуживание и вы хотите перейти в разработку? Вот пример человека, который из тех поддержки стал программистом на Go.

#обучение #бесплатно
​​🎓 Предлагаю вашему вниманию немного необычную тему для обучения: Основы документирования сетей с помощью серии бесплатных уроков на youtube. Документированию уделяется очень мало внимания в современных курсах. Я, к примеру, вообще ничего подобного не видел ни в одном из курсов по разным направлениям, которые проходил. Будь то сети или администрирование. Каждый рисует схемы как считает правильным и нужным.

Курс будет полезен следующим категориям:
Сетевые инженеры, администраторы
Системные администраторы, девопсы
Проектировщики

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

📌 Список уроков курса:

Введение
Чем рисовать? Visio
Чем рисовать? Diagrams.net
Структурная схема сети
L3 схема сети
L2 схема сети
Расположение оборудования в стойке
IP-план
Описание настроек
Заключение

▶️ https://www.youtube.com/playlist?list=PLcDkQ2Au8aVPmWZ2vXcby73Tl8SA7fp97

#обучение #бесплатно
​​🎓 У компании RedHat есть большое количество бесплатного обучающего материала в том числе в виде интерактивных уроков, где они воспроизводят полностью рабочую среду разработчика или devops инженера. Живёт всё это тут:

https://developers.redhat.com/learn

Интерактивные уроки в самом низу страницы (All interactive lessons). Для прохождения достаточно обычной учётной записи. Я, вроде бы, как developer зарегистрирован. Уже не помню точно, давно дело было. Никаких санкций и ограничений RedHat не вводил. У меня и учётка жива, хотя там указано, что я живу в Москве, и все бесплатные лицензии, что они дают, активны.

Напомню, что они всем выдают 16 лицензий на RHEL. Я одну систему погонял на тесте и удалил за ненадобностью. Очевидно, что пользоваться сейчас этой лицензией плохая идея. Но если вам хочется посмотреть, что это за система, у которой столько форков, то никаких проблем. Регистрируйтесь, получайте лицензии, устанавливайте и смотрите. Единственное, что особенно понравилось - там красивое брендирование оболочки, если будете её ставить. Стильно выглядит окружение.

Я прошёл один из уроков под названием DevOps and CI/CD with automation controller. Сделано прикольно. Для вас готовят отдельный стенд в браузере, где в виде отдельных вкладок реализован интерфейс VSCode, Jenkins, Gitea, Ansible Automation controller. И вам по шагам предлагают выполнить деплой условного приложения, работая в этих системах.

Обучением это можно назвать с натяжкой, потому что думать не надо. Все шаги расписаны и показаны, вам надо повторить. Так что это скорее развлечение и возможность посмотреть настоящее рабочее окружение для решения какой-то задачи.

Уроков там много, разбиты на категории (Devops, Linux, GitOps и т.д.) Вот пример некоторых уроков по Devops:
DevOps and CI/CD with automation controller
Build applications into container images
Installing Software using Package Managers
Linux commands for beginners
Run your first Ansible Playbook
Deploy containers with Podman
и т.д.

#обучение #бесплатно
​​Давно не затрагивал игровые или детские темы. Решил немного посмотреть, не появилось ли чего-то нового. А оно появилось. Я уже рассказывал про компанию Luden.io, у которой очень классные игры для детей на русском языке с уклоном в обучение программированию. Да и не только для детей. Игры реально классные, красочные, увлекательные. Прочитайте мою заметку, там много информации.

У них появилась новая игра Craftomation 101. Она ещё не полностью доделана, но вполне играбельна. Можно бесплатно скачать и поиграть. По ссылке в конце дистрибутив под Windows, Linux, Mac. На винду установка не требуется. Просто скачиваете и играете. Можно выбрать русский язык в настройках. Перевод качественный, так как создатели русскоязычные.

Я немного поиграл, примерно час. Дошёл до появления роботов и их программирования. Запрограммировал их на выполнения некоторых действий. Игра реально красивая и увлекательная. Интересно и самому поиграть. Показал сыну (9 лет), сразу заинтересовался. Поиграл немного, научился роботов программировать. Сразу всех задействовал, автоматизировал рутину. В общем, ничего так игра, рекомендую.

Напомню, что у меня есть подборка обучающих материалов для детей, которую я собрал на основе ваших отзывов.

#игра #обучение #дети
​​🎓 На днях на хабре был анонс на вид очень неплохого учебника для тестировщика под названием "The 100-Year QA-Textbook". Он собрал много просмотров, так что возможно многие из вас про него уже знают. К тому же предварительный релиз этого обучающего материала был давно, а сейчас вышло очередное обновление.

Вот информация о курсе от создателей:

Зачем появился бесплатный интерактивный «100-Year QA-textbook» на 700+ страниц для обучающихся тестированию

Полный релиз бесплатного интерактивного 700-страничного учебника по тестированию

На вид материал выглядит качественным. Несмотря на то, что он анонсирован для тестировщиков, 2/3 курса это база, которая подойдёт для любой специальности в IT. Судя по содержанию это так и есть, потому что там разбирают:
СУБД и SQL запросы
База по ОС Linux (файловые системы, пользователи, процессы и т.д.)
Работа с сетью
Архитектура серверного ПО
Rest API, HTTP
Docker, GIT

К сожалению, не смог посмотреть раздел по Linux, потому что курс даёт возможность проходить материал последовательно. Пока не пройдёшь тест за предыдущий раздел, к следующему доступа нет.

Как я понял, курс сделан на базе онлайн школы тестировщиков. У меня есть любопытная история на этот счёт и общее мнение насчёт тестировщиков. Но чтобы не смешивать тематику, это будет вечером в отдельной публикации.

#обучение #бесплатно
​​🎓 Сегодня пятница, а пятница — это почти выходной, когда уже не хочется заниматься делами. Лучше это время потратить с пользой и заняться самообразованием. А в этом нам может помочь набор TUI программ для обучения в консоли.

https://github.com/learnbyexample/TUI-apps

Их тут несколько, и я начал с того, что мне показалось наиболее полезным - Linux CLI Text Processing Exercises. Это простенькая оболочка с вопросами на тему обработки текстовых файлов консольными утилитами в Linux. Поставил по инструкции:

# python3 -m venv textual_apps
# cd textual_apps
# source bin/activate
# pip install cliexercises
# cliexercises

Запускаю, первый же вопрос:
Display the first 5 lines for the input file ip.txt.
Для меня это просто. Отвечаю:
head -n 5 ip.txt
Ответ правильный и мне предлагают ещё вариант:
sed '5q' ip.txt
С sed часто работаю, но не знал, что с его помощью можно так просто вывести первые 5 строк. Записал сразу себе в шпаргалку.

Следующий вопрос посложнее, но тоже в целом простой:
Display except the first 5 lines for the input blocks.txt.
Выводим всё, кроме первых 5-ти строк:
tail -n +5 blocks.txt
Я ошибся и срезал только 4 строки. Поправился:
tail -n +6 blocks.txt
Утилита подтвердила, что мой вариант правильный. Честно говоря, я думал, что вряд ли в ней будет вариант с tail, поэтому взял именно его. Но она в виде правильных вариантов предложила как раз с tail и ещё с sed:
sed '1,5d' blocks.txt
Тоже сразу записал в шпаргалку. Решил ещё проверить вариант с awk. Я думал, что именно он и будет предложен, так как первый пришёл в голову:
awk 'NR>5' blocks.txt
Тоже помечен, как правильный. Возможно программа проверяет вывод, используя все доступные системные утилиты, так что правильным будет даже тот вариант, что отсутствует в её базе.

Таких заданий тут много. Конкретно в этой программе 68. Проходить увлекательно и полезно, так что рекомендую для самообразования и пополнения своей коллекции bash костылей. Можно в исходниках сразу всё посмотреть, но не рекомендую. Так ничего не запомнится. А если самому подумать, то лучше отложится в голове.

Вот примерчик из того, что будет ближе к концу:
From blocks.txt extract only the 3rd block. A line containing %=%= determines the start of a block.
То есть файл разделён на блоки, а разделитель блоков - символы %=%=, надо вывести 3-й блок. Для меня это уже сложно, чтобы что-то сходу придумать. Вот решение:
awk '$0 == \"%=%=\"{c++} c==3' blocks.txt

#обучение #terminal #bash
​​🎓 На прошлой неделе я рассказывал про репозиторий с обучающими TUI программами с популярными консольными утилитами. Хочу обратить внимание на тренажёр по awk. Я там увидел много полезных примеров с возможностями awk, про которые я даже не знал.

https://github.com/learnbyexample/TUI-apps/tree/main/AwkExercises

Например, я никогда не использовал awk для того, чтобы вывести строки с определёнными символами. Обычно использовал для этого grep, а потом передавал вывод в awk. Хотя в этом нет никакой необходимости. Awk сам умеет это делать:

# grep 'word' file.txt
# awk '/word/' file.txt

Команды делают одно и то же. Выводят строки со словом word. Понятно, что если задача стоит только в этом, то grep использовать проще. Но если нужна дальнейшая обработка, то уже не так однозначно. Например, нам надо вывести только первый столбец в строках со словом word.

# grep 'word' file.txt | awk '{print $1}'
# awk '/word/{print $1}' file.txt

Тут с awk уже явно удобнее будет. Ну и так далее. В программе много актуальных примеров обработки текста с awk, которые стоит посмотреть и какие-то записать к себе.

Например, поставить символ . (точка) в конце каждой строки:

# awk '{print $0 "."}' file.txt

Я не понял логику этой конструкции, но работает, проверил. На основе этого примера сделал свой, когда в начало каждой строки ставится знак комментария:

# awk '{print "#" $0}' file.txt

Это хороший пример, который можно совместить с выборкой по строкам и закомментировать что-то конкретное. Чаще для этого используют sed, но мне кажется, что с awk как-то проще и понятнее получается:

# awk '/word/{print "#" $0}' file.txt

Закомментировали строку со словом word. Удобно комментировать какие-то параметры в конфигурационных файлах.

#обучение #bash
​​🎓 По компьютерным сетям есть отличный курс "Компьютерные сети", Климанов М.М. от МФТИ (Московский физико-технический институт):
https://www.youtube.com/playlist?list=PLthfp5exSWErPFK_-EAhVtxO3XoY0gsSe
Я уже упоминал про него ранее.

Есть не хуже, а может даже и лучше, если судить про просмотрам и активности в комментариях, курс "Компьютерные сети, учебный курс.", Созыкин Андрей:
https://www.youtube.com/playlist?list=PLtPJ9lKvJ4oiNMvYbOzCmWy6cRzYAh9B1

Там даётся база, азы сетей, поэтому заявлено, что он для программистов, так как сисадмины, по идее, и так должны всё это знать. Если не знаете, то этот курс вам отлично подойдёт. Для самообразования это будет базой для тех, кто не знаком с сетями. Сделан на основе классиков Таненбаум и Олиферы. Записан более 7-ми лет назад, но нисколько не потерял актуальность, так там база, практически неизменная с 80-х годов.

#обучение