Секреты сисадмина | DevOps, Linux, SRE
25.3K subscribers
663 photos
17 videos
441 files
607 links
Крупнейший справочник системного администратора.

Сотрудничество: @max_excel

РКН: vk.cc/cHhGTz
加入频道
Первоначальная настройка Cisco Catalyst

В этом материале автор разбирается в том, что желательно настроить на нулевом Cisco Catalyst.

#СекретыСисадмина

📁 Скачать/Download 👇
«…У меня всё работает локально» — и вот ты уже второй час копаешься в логах Jenkins, а выкатка задерживается…😬

Команды, которые автоматизируют CI/CD, не зависят от ручных сборок и человеческого фактора. Их инженеры спят спокойно и при этом ценятся выше — потому что стабильный пайплайн экономит часы работы всей команды.

👉🏻21 июля стартует курс «CI/CD с Jenkins», на котором вы поймёте, как автоматизировать процесс интеграции и поставки, сократить количество багов и ускорить релизы.

Вы научитесь:
🔵 настраивать Jenkins с нуля — от плагинов до облачных агентов;
🔵 писать надёжные пайплайны и понимать, почему они сломались;
🔵 деплоить в Kubernetes — чтобы ваш код летел в прод, а не в ошибки.

Пройдете путь от настройки первого плагина и создания простого пайплайна до Jenkins as code и внедрения в Kubernetes. Без лишней теории, только то, что используют в топовых командах.

❗️По промокоду LETO2025 на курс действует скидка 50%

Успейте забрать обучение с выгодой и вывести свои навыки автоматизации на уровень, за который платят больше.

➡️ Занять место со скидкой
Восстановление данных с виртуальных машин VMWare vSphere ESXi

По умолчанию ESXi сохраняет файлы виртуальной машины в том же каталоге, что и файлы конфигурации для виртуальной машины. Для этого ESXi создает хранилища (Datastore) на VMFS разделах диска.

#СекретыСисадмина

📁 Скачать/Download 👇
Почему ты всё ещё выбираешь сервер вслепую?

Ты хотел просто взять нормальный сервер, а через 10 минут сидишь с 8 вкладками, читаешь одинаковые конфиги и отзывы, которые, кажется, писал один и тот же человек.

🧐 Где дешевле? Где надёжнее? Где не кинут?

Серверный рынок — это казино без правил. Все делают вид, что выбор есть, но ты всё равно тыкаешь пальцем в небо.

🔍 CloudSell меняет это. У нас ты можешь:
🟣 сравнить предложения от десятков провайдеров по цене, мощностям и отзывам — по-честному и прозрачно;
🟣 управлять всем из одной панели — никаких 100500 личных кабинетов;
🟣 платить за 1 счёт вместо 5 — полный контроль без лишней суеты.

🆕 Подпишись сейчас — мы скоро запускаемся и для первых подписчиков будут самые выгодные условия!

❤️ CloudSell News
Please open Telegram to view this post
VIEW IN TELEGRAM
adduser — команда, упрощающая создание учетных записей пользователей в основанных на Debian дистрибутивах

Команда adduser используется в дистрибутиве Debian для упрощения создания учетных записей пользователей, а также автоматической проверки их соответствия политике упомянутого дистрибутива. Она реализована в виде обертки для таких утилит, как useradd, passwd и chfn и использует дополнительный файл конфигурации /etc/adduser.conf для хранения параметров, относящихся к политике дистрибутива Debian.

Базовый синтаксис команды adduser:

# adduser

В результате исполнения данной команды выполняются следующие операции:

1. Создается учетная запись пользователя с именем.
2. Создается домашняя директория пользователя /home/, в которую копируются файлы из директории /etc/skel.
3. Создается группа пользователей с именем, соответствующим имени нового пользователя, причем сам этот пользователь добавляется в нее.
4. Выводится запрос ввода пароля для учетной записи пользователя.
5. Выводится запрос ввода дополнительной информации, относящейся к учетной записи пользователя.

Примеры использования
Создание учетной записи пользователя iodminbook
# adduser iodminbook

Добавление пользователя iodminbook в группу testgroup
# adduser iodminbook testgroup

#СекретыСисадмина
Хочешь ворваться в DevOps и наконец понять, как работают Kubernetes, Docker и CI/CD?

Ребята из Merion Academy (того самого Youtube-канала про IT), создали курс, который помогает не просто смотреть уроки, а реально учиться:

✔️ Грамотно подобранная программа курса.
✔️ Много практики.
✔️ Помогают разобраться с затыками.
✔️ Отдельно помогут с карьерой: как составить резюме, пройти собеседования и найти работу.

Что интересного в программе:
1. Построение CI/CD пайплайнов в GitLabCI и Jenkins
2. Настройка мониторинга с Zabbix, Prometheus и Grafana
3. Понимание DevSecOps, ZTNA, SASE, Defense in Depth
4. Работа с Docker, включая Docker Compose и Multistaging
5. Infrastructure-as-Code: Terraform и Ansible
5. Работа с хранилищем данных Redis

Какие технологии освоишь: Docker, Ansible, Grafana, Kubernetes, Terraform, Zabbix, ELK, Jenkins, Prometheus

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

❇️ Первые 2 урока бесплатные — попробуй и реши, твое ли это.

Подробнее о курсе https://vk.cc/cNGLFJ
CISCO ASA: блокировка доступа к сайтам

В данной статье мы расскажем вам как заблокировать доступ к определенным вебсайтам (к их доменам) с самым обычным межсетевым экраном Cisco ASA.

#СекретыСисадмина

📁 Скачать/Download 👇
Летний лагерь по Ansible 📚

Мы научим вас работать с Ansible, чтобы вы смогли настроить автоматизацию, упростить командную работу, масштабировать в одно касание и экономить время.

Это не просто курс, а интерактивный летний лагерь. В нем вас ждет не только освоение Ansible, но и:

🔸 разбор реальных кейсов из вашей работы;
🔸 обмен опытом с единомышленниками в нетворкинг-чате;
🔸 сореванования с другими участниками;
🔸 истории спикеров курса об их рабочих факапах и о том, как они их решали.

Доп. бонус к программе: мощный технический воркшоп «Использование ИИ в работе» с экспертом 🎁

Запускаем только один поток обучения в подобном формате. Старт 21 июля.
Успевайте! Все подробности тут ⬅️
Скрипт переустановки пароля пользователя MikroTik

# Скрипт смены пароля пользователя
# только для исполнения в терминале ROS

{
:global EnterString do={
:local cont 0; :local string ""
:while ($cont!=13) do={
:local key ([:terminal inkey])
:if ($key!=13) do={
:local char [[:parse "(\"\\$[:pick "0123456789ABCDEF" (($key >> 4) & 0xF)]$[:pick "0123456789ABCDEF" ($key & 0xF)]\")"]]
:set string ("$string"."$char")}
:set cont $key
}
:return $string}
;
:put "Please, enter Username:"
:local RegUser [$EnterString];
:put "";
:if ([:len [/user find disabled=no name=$RegUser]]!=0) do={:put "Ok, a user with this name was found"; :put "";
:put "Please, enter new password for this user:"
:local newPass [$EnterString];
[/user remove $RegUser];
[/user add name=$RegUser password=$newPass group=full];
:put "";
:put "The user has been re-created, the password has been changed";
:put ("New user`s password: "."$newPass");
:put "Don't forget to set up access restrictions based on ip addresses";
} else={:put ("User "."$RegUser "."not found"); :put "";
}
}

Скрипт интересен строкой преобразования кода символа из переменной $key, сграбленного с клавиатуры терминала, в сам символ.

:local char [[:parse "(\"\\$[:pick "0123456789ABCDEF" (($key >> 4) & 0xF)]$[:pick "0123456789ABCDEF" ($key & 0xF)]\")"]]

#СекретыСисадмина
👀 Если вы в DevOps и до сих пор мониторите «как получится» — стоит заглянуть на этот вебинар

👉 23 июля в 19:00 мск поговорим о том, как настроить мониторинг так, чтобы он действительно помогал:

🔹 какие инструменты реально работают (а какие просто красивые)
🔹 нужен ли сложный мониторинг всем
🔹 зачем DevOps-инженеру понимать бизнес-метрики
🔹 типовые ошибки: что ломает стабильность, и как не утонуть в алертах
🔹 как выбрать мониторинг под ваш проект — поэтапный разбор

🔝 Спикеры — Вячеслав Федосеев и Станислав Левин

Оба работают с продакшеном каждый день и точно знают, когда Prometheus — спасение, а когда — боль.

👉 Регистрируйтесь в боте, будет полезно.
И да, вебинар бесплатный 👌
Установите Postfix MTA и IMAP / POP3

Чтобы отправить электронное письмо с сервера CentOS 7, нам потребуется настройка для настройки современного агента пересылки почты (MTA). Mail Transfer Agent — это демон, отвечающий за отправку исходящей почты для пользователей системы или корпоративных интернет-доменов через SMTP.

#СекретыСисадмина

📁 Скачать/Download 👇
Две зарплаты за 4 часа работы

Не руками, а головой. Есть простая и эффективная методика, как молоток.

Берете телефон в руки. Находите вертикальные видео, набравшие много просмотров. Загружаете их на другие площадки или новые аккаунты. Прикрепляете ссылки на партнерские продукты. Забираете свой процент. ВСЕ!

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

Система работает в любой точке мира. Без офисов, графиков, без поиска клиентов. Это далеко не жалкий фриланс за копейки.

Подробный видео-разбор системы здесь: t.me/Artemtime_bot
Меняем пароль пользователя Active Directory с помощью PowerShell

- Чтобы изменить пароль пользователя Active Directory, используйте команду Set-ADAccountPassword из модуля Active Directory для Windows PowerShell.

- Перед использованием командлета Set-ADAccountPassword вы должны импортировать этот модуль в сеанс PowerShell:
Import-Module ActiveDirectory

- Пароль в памяти компьютера желательно хранить в защищенной форме, поэтому вы можете попросить администратора указать пароль следующим образом:
$newPass=Read-Host "Enter the new user password" -AsSecureString

- Лучше указать имя учетной записи AD в виде имени samAccountname. Например, чтобы изменить пароль для пользователя jkelly, запустите команду:
Set-ADAccountPassword jkelly -NewPassword $newPass

- Вы можете установить новый пароль пользователя непосредственно внутри кода скрипта:
Set-ADAccountPassword jkelly–NewPassword (ConvertTo-SecureString -AsPlainText –String "St0ngPwd@d" -force)

- Если вы хотите, чтобы пользователь изменил пароль при следующем входе в систему, выполните команду:
Set-ADUser jkelly -ChangePasswordAtLogon $True

- Вы можете сбросить пароль для нескольких пользователей одновременно (предположим, что имена учетных записей хранятся в текстовом файле user_to_reset.txt). Используйте этот скрипт:
Get-Content C:\PS\user_to_reset.txt | Set-ADAccountPassword -NewPassword $newPass -Reset

#СекретыСисадмина
Режим временного пользователя в группе AD

В Windows Server 2016 есть полезный функционал - режим временного добавления пользователя в группу с автоматическим удалением через указанное время. Т.е. администратор может включить другого пользователя в нужную группу на пару минут для решения срочной задачи и не заботиться про то, чтобы эти права у пользователя позже отозвать. Фича работает только через Powershell.

С чего начать? Проверяем режим работы леса, должен быть 2016 и выше:
(Get-ADForest).ForestMode

Проверяем диапазон:
Get-ADOptionalFeature -filter *| select EnableScopes

И включаем функционал, внимание - включение работает в одну сторону и его отмена невозможна:
Enable-ADOptionalFeature 'Privileged Access Management Feature' -Scope ForestOrConfigurationSet -Target company.com

Отлично. Теперь задаем временной интервал в минутах (можно использовать и часы -Hours) и добавляем пользователя alex в группу "Администраторы домена":
$ttl = New-TimeSpan -Minutes 2
Add-ADGroupMember -Identity "Администраторы домена" -Members alex -MemberTimeToLive $ttl

В любой момент можем проверить сколько осталось времени до удаления пользователя из группы, смотрим на значение TTL:
Get-ADGroup “Администраторы домена” -Property member –ShowMemberTimeToLive

По истечении двух минут пользователь alex будет удален из группы “Администраторы домена” автоматически.

#СекретыСисадмина
Лень разбираться в Word?

Для вас уже всё сделали.
📌 Канал Word Hacks рассказывает обо всех возможностях, приёмах и лайфхаках по работе в word.

Подписывайтесь и прокачивайте свои навыки: @word_ms
Fuck - это великолепная утилита, которая исправляет ошибки в предыдущих консольных командах

Примеры:
apt-get install vim
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

fuck
sudo apt-get install vim [enter/↑/↓/ctrl+c]
[sudo] password for nvbn:
Reading package lists... Done
...

git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use

git push --set-upstream origin master


fuck
git push --set-upstream origin master [enter/↑/↓/ctrl+c]
Counting objects: 9, done.
...


Установка

На Ubuntu / Mint установите The Fuck с помощью следующих команд:
sudo apt update
sudo apt install python3-dev python3-pip python3-setuptools
pip3 install thefuck --user

На FreeBSD установите The Fuck с помощью следующих команд:
pkg install thefuck

На macOS или Linux установить The Fuck можно через Homebrew:
brew install thefuck

Смотреть

#СекретыСисадмина