ServerAdmin.ru
31.3K subscribers
673 photos
55 videos
22 files
2.87K links
Авторская информация о системном администрировании.

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

Второй канал: @srv_admin_live
Сайт: serveradmin.ru

Регистрация в РКН: https://vk.cc/cG1Urj
Download Telegram
Компания Zabbix выпустила первую альфу версии 6.4. Решил почитать, что они планируют изменить, добавить в этой версии. Какого-то общего списка нововведений ещё не публиковали, так что информация из разных англоязычных источников (страница документации, почтовая рассылка, список изменений для 6.4.0alpha1).

Новое навигационное меню в веб интерфейсе. Появится новый раздел Dashboards. Исчезнет раздел Configuration, появится пересобранный Data collection. Многие разделы переедут в другие места, плюс появятся новые пункты. Наверняка первое время будет путаница. Все старые инструкции разом потеряют актуальность 😔

Виджет Item Value научится менять цвет фона в зависимости от значения. К примеру, когда всё ОК - зелёный, когда проблема - красный.

Айтемы vfs.fs.get и vfs.fs.discovery научатся возвращать в том числе и опции монтирования. Например, тип файловой системы, режим доступа (чтение, запись и т.д.). Довольно удобное нововведение. Нужно будет шаблоны по этой теме обновлять вручную, чтобы увидеть изменения.

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

Дефолтное значение параметра RefreshActiveChecks с двух минут уменьшают до 5 секунд. Напомню, что этот параметр отвечает за получение информации Zabbix agent в active mode настроек с сервера.

Появятся новые шаблоны: AWS RDS instance by HTTP, AWS S3 bucket by HTTP, Azure by HTTP, OPNsense by SNMP.

При обновлении Zabbix Proxy с использованием базы SQLite, последняя будет автоматически удаляться и создаваться заново с новой версией данных. Раньше это нужно было делать вручную и это реально напрягало. Хорошо, что автоматизировали.

Как-то совсем мало нововведений. В основном косметические изменения. Хотя обычно именно на 4-ю версию ветки приходится больше всего изменений, так как их на ней отлаживают перед принятием в новую LTS ветку. Судя по всему в 7.0 тоже каких-то кардинальных изменений не ожидается.

Так и не изменили механизм веб мониторинга 😪 Он откровенно неудобен и устарел по современным меркам. Я ждал изменений в 6.4 по этому поводу.

Заметки о выпуске для Zabbix 6.4.0alpha1

#zabbix
👍35👎1
🎓 Признайтесь честно, без гугления, знаете что такое идемпотентность? Никогда не получается нормально выговорить это слово. Если не знаете, то скорее всего не знакомы и с Ansible. Для админа в наши дни это плохой сигнал, даже если не работаете с большими масштабами.

Ansible стал практически стандартом автоматизации и преднастройки инфраструктуры. Если не приходится использовать его лично, то всё равно на базе Ansible написана куча инструментов по установке чего-либо. Например, разворачивание кластера Kubernetes на своих хостах с помощью Kubespray. Или то же самое для Ceph. Если умеешь работать с Ansible, не будет никаких проблем раскатать кластер и продебажить установку в случае проблем.

К примеру, я почти не пользуюсь в своей работе Ансиблом, но тем не менее знаю его. Проходил курсы, писал свои плейбуки. Когда понял, что поддерживать и обновлять их дольше, чем настроить вручную раз в пол года, перестал. Но мне нет проблемы развернуть тот же Kube или Ceph из готовых плейбуков. Я понимаю, как там всё устроено и работает.

Долгая подводочка к теме получилась. Вот вам на выходные хороший цельный урок по Ansible от и до.

Всё что нужно знать по Ansible. Основы и не только:
⇨  https://www.youtube.com/watch?v=YYjCwLs-1hA

К видео есть содержание, так что можете сразу оценить, о чём там будет речь.

Кстати, у небезызвестного Дениса Астахова есть свой курс на Udemy на русском языке. Цена символическая, правда я не знаю, нормально ли с приёмом платежей из РФ там сейчас. Там же есть и бесплатные курсы, но на английско-индусском.

Если кто-то знает хороший бесплатный курс по Ansible в текстовом виде на русском языке, поделитесь информацией. У меня есть вот такая ссылочка в закладках, но это скорее просто подробная статья. На обучение не тянет.

#обучение #ansible #бесплатно
👍54👎4
Ко мне поступил интересный вопрос от читателя, который я решил вынести на публичное обсуждение и прокомментировать, так как будет полезно многим администраторам.

"Есть компьютер с CentOS 5.8 (дистрибутив FreePBX) на борту, выполняющий роль шлюза и сервера Asterisk. Есть необходимость сделать полный бэкап диска/системы, чтобы потом, в случае какой-то глобальной проблемы, восстановить всё на другом железе (время бэкапа/восстановления особой роли не играет). Нюанс в том, что так как эта система выполняет роль шлюза, то останавливать её нельзя. Поэтому единственный вариант - делать бэкап по сети.

Подскажите, пожалуйста, какие могут быть варианты решения вопроса."

В этом вопросе наглядно продемонстрирован ответ на вопрос - зачем нужна виртуализация. Удивительно, но до сих пор есть люди, которые сомневаются, ставить им гипервизор или разворачивать всё на железе. Я рекомендую всегда всё разворачивать в виртуальных машинах, кроме каких-то редких, специфичных случаев. Это нужно в первую очередь для того, чтобы не иметь привязки к железу. VM можно быстро и легко забэкапить или перенести.

В данном случае вижу несколько вариантов решения задачи:

1️⃣ Воспользоваться готовым решением в виде бесплатного Veeam Agent for Linux. Он без остановки машины может снять образ системы. Единственный нюанс, система очень старая. Я не уверен, что Veeam заработает на ней. Надо пробовать и подбирать какую-то старую версию.

2️⃣ Наиболее надёжный вариант. Найти всё-таки время в ночи, загрузиться с Live CD и снять образ диска. Например, с помощью CloneZilla.

3️⃣ Подготовить где-то идентичное железо или VM и сделать полную копию дисков с помощью dd и сразу же отправить по ssh. Примерно так:
# dd bs=1M if=/dev/sda | ssh root@restoresrv "dd bs=1M of=/dev/sda"
На практике я такое не делал, но не вижу особых проблем, почему это может не сработать. Метод стоит отработать где-то на тестовом стенде, а потом снять копию с боевого сервера. Вместо целого диска sda можно по разделам копировать: sda1, sda2 и т.д. Можно просто скопировать образ в файл, а потом уже развернуть из него систему:
# dd bs=1M if=/dev/sda of=/mnt/backup/sda.img
DD популярный инструмент, без проблем гуглится подходящее решение.

Как бы вы решали эту задачу?

#вопрос_читателя
👍53👎2
​​Существует известная компания Luden.io. Разработчики игр, которые помогают освоить профессию инженера и как частный случай, программиста. Ранее на канале была заметка об их игре while True: learn().

У них есть ещё одна известная игра - Learning Factory, в которой надо выстроить автоматизированную систему процессов на фабрике с применением машинного обучения, чтобы понять, чего хотят котики. Игра сделана на базе Factorio. А теперь самое интересное. У них есть бесплатная обучающая игра для детей - Learning Factory EDU.

Learning Factory EDU представляет из себя непосредственно игру для PC и набор методических материалов для вовлечения детей в игровой процесс. Причём материалы есть на русском языке. Я сначала удивился, когда их увидел, а потом понял, что вся команда Luden.io русскоязычная. Просто они не афишируют это, сайт на английском, как и все продукты. Они ориентированы на мировой рынок.

В googl drive представлены сам дистрибутив игры, рабочая тетрадь для ребёнка, планы уроков и все сопроводительные материалы в виде слайдов, картинок, иконок. Сделано всё очень качественно и продуманно. Это готовый план уроков для какого-нибудь кружка или родителя, который готов заниматься с ребёнком, чтобы вовлечь его в предметную область.

Если вы взрослый, не преподаёте и вообще всё это не для вас, то можете просто поиграть в Learning Factory. Это качественная тематическая игра с хорошим рейтингом и отзывами.

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

Learning Factory - https://store.steampowered.com/app/1150090/Learning_Factory/
Learning Factory EDU - https://luden.io/lfedu/

#игра #обучение #дети
👍35👎3
Регулярно вижу сообщения на тему того, что OpenVPN работает медленно. Чаще всего это результат каких-то локальных проблем, а не распространённого мнения о том, что openvpn это медленный туннель. Всё познаётся в сравнении, а максимальная производительность туннеля зачастую больше всего зависит от сложности шифрования, которое используется.

В общем случае, при канале интернет в 100-200 мегабит в секунду вы не заметите проблем со скоростью в туннеле OpenVPN, если он будет поднят на базе PC, а не какого-то роутера с маломощным железом. По крайней мере я не сталкиваюсь с проблемами, когда на виртуальных машинах использую OpenVPN для объединения сетей через интернет.

Если вы видите, что ваше OpenVPN соединение работает значительно ниже исходного канала в интернет, то проверять стоит следующие вещи:
Сжатие. Попробуйте его отключить, если включено, и посмотрите, как это повлияет на скорость.
Если у вас используется TCP транспорт, поменяйте на UDP и проверьте скорость.
Попробуйте более простой шифр, например AES-128-CBC вместо AES-256-CBC. Для верности можно вообще что-то совсем простое поставить и проверить, действительно ли из-за шифра проседает скорость.
Посмотрите загрузку ядер процессора во время тестирования канала. Есть вероятность упереться в производительность одного ядра.

Далее идут более сложные вещи, в которые можно погрузиться, чтобы решить проблему с быстродействием:
Иногда могут возникать проблемы с буферами. Гуглите параметры sndbuf и rcvbuf. Пробуйте их менять или отключать управление со стороны OpenVPN. Тема большая, гуглится хорошо, всё найдёте. Не забудьте, что эти параметры можно не только поменять на сервере, но и передать их клиенту. Это суперспособность OpenVPN - передавать практически любые настройки клиенту.
Попробуйте поменять MTU с помощью параметра tun-mtu. Часто в этом может быть причина неадекватно низкой скорости туннеля.
Попробуйте поменять параметр длины очереди отправки txqueuelen. В общем случае дефолтное значение трогать не обязательно, но если ничего из вышеприведённого не помогло, можно попробовать изменить. Я видел ситуации, когда это помогало.

Само собой получился чек лист по исправлению проблем производительности OpenVPN туннеля. Можно забрать в закладки. Изначально хотел написать, как можно ускорить VPN туннели, в том числе и на базе OpenVPN, с помощью готового решения, но отложу это на завтра.

Почему я чаще всего использую OpenVPN - Подробный ответ.

#openvpn
👍57👎4
Расскажу вам про решение проблемы с Openvpn Client на Windows, которая меня донимала последний год примерно, может чуть меньше. Вчера терпение лопнуло и я разобрался с ней раз и навсегда.

Проблема плавающая и выражалась она в том, что время от времени одно из настроенных подключений openvpn не подключалось. Ошибка была примерно такая:
MANAGEMENT: Socket bind failed on local address [AF_INET]127.0.0.1:25349
Ошибка возникала случайным образом на различных соединениях.

По тексту не очень понятно, в чём дело. Первое, что приходит в голову - указанный порт уже кем-то занят. Но netstat показывает, что ничего не занято. При этом любое другое подключение openvpn сработает нормально. А какое-то одно ни в какую. У меня около 5-ти подключений используется в разное время. Помогает только перезагрузка. Несколько раз пытался разобраться, но так как ошибка не очень информативна, быстро решить вопрос не получалось. Спасала банальная перезагрузка. Я думал, что она возможно как-то связана с тем, что у меня добавлено несколько сетевых интерфейсов для openvpn, а в дефолте обычно только одно устанавливается.

Дело вот в чём. После какого-то обновления Windows, она стала резервировать некоторые диапазоны портов для работы Hyper-V. Посмотреть эти диапазоны можно командой:
# netsh int ipv4 show excludedportrange tcp

И как оказалось, там есть диапазон локальных портов, который пересекается с диапазоном, который использует OpenVPN. Решение вопроса - изменить его в OpenVPN GUI:
Settings ⇨ Advanced ⇨ Management interface ⇨ Port offset.
После этого проблема исчезла.

Такая вот ерунда сожрала кучу моего времени. В логах самой винды никакой информации нет. По логу openvpn невозможно понять, в чём дело. А оказывается винда каким-то своим механизмом бронирует целые диапазоны портов и не даёт их использовать. При этом никак в системе не помечает их занятыми, иначе бы ошибка была другая. Что-то в духе local address [AF_INET]127.0.0.1:25349 is busy. А тут просто ошибка, которая говорит о том, что сокет не поднимается. Причин этому может быть много. Банальная нехватка прав или что-то ещё.

#openvpn #windows #ошибка
👍113👎4
​​Существует необычный и полезный продукт - UDPspeeder, который способен улучшить качество связи VPN туннелей на каналах с большими задержками и потерями пакетов с помощью коррекции ошибок (Forward Error Correction).

Разработчики заявляют встроенную поддержку следующих VPN туннелей - OpenVPN, L2TP, ShadowVPN. Работает UDPspeeder следующим образом. Сначала организуете туннель с его помощью, а потом поверх пускаете тот же OpenVPN или что-то подобное.

В репозитории подробно описан принцип работы UDPspeeder. В основе лежит технология FEC (Forward Error Correction). С её помощью возможно обнаружить ошибки передачи данных и скорректировать их методом упреждения. Эффект реальный и очень заметный. В репозитории есть наглядный пример снижения количества потерянных пакетов без увеличения latency, что существенно увеличивает скорость передачи данных.

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

Настраивается UDPspeeder максимально просто и быстро. Работает только под Linux, есть пакет для openwrt.

# Запускаем на сервере:
./speederv2 -s -l0.0.0.0:4096 -r 127.0.0.1:7777 -f20:10
# Запускаем на клиенте
./speederv2 -c -l0.0.0.0:3333 -r 44.55.66.77:4096 -f20:10

Все запросы к порту 3333 клиента будут переадресовываться на порт 7777 сервера. Есть отдельная инструкция по настройке связки UDPspeeder + OpenVPN.

Если вам нужна готовая реализация VPN туннеля на базе UDPspeeder для быстрого запуска, можете взять tinyfecVPN от этого же автора. Там в пару команд настраивается VPN Site-to-Site.

Исходники - https://github.com/wangyu-/UDPspeeder

#vpn #openvpn
👍38👎1
На моём канале время от времени бывает реклама хостинга. Причём рекламируются как крупные облачные провайдеры, так и небольшие лоу-костеры. Крупных всегда обвиняют в том, что цены высокие, а лоу-костеров в том, что они ненадёжны.

Хочу прокомментировать последних, так как с ними наиболее показательные истории бывают. Хостеры заходят с каким-то временным промо тарифом, открытым в рекламных целях. Это убыточные линейки, которые покрываются рекламным бюджетом. Меня не удивляют люди, которые начинают возмущаться и предъявлять претензии, что купленный по промо тарифу сервер не надёжен. Сам таким был.

Несколько лет назад у провайдера ruvds появился промо тариф за 30 р. (❗️ считай, что даром). Давали виртуалку с минимальными ресурсами и внешним IP. Купить этот тариф было трудно, VDS тут же кончались после начала акции. Но мне в итоге удалось его получить. Он тормозил жутко, была масса негатива. Я даже помню в комментариях на хабре в корпоративной статье возмущался, что хостер только негатив собрал с помощью этого глючного и тормозного промо тарифа.

Что по факту? Прошло года 2-3, этот VDS я до сих пор использую, стоит 40 р. в месяц. Это отличное предложение для персонального VPN сервера. С тех пор и хостером активно пользуюсь. И вам много раз его рекомендовал. То есть реклама сработала на 100%.

К чему я всё это написал. Не надо строить завышенных ожиданий от дешёвых промо тарифов, которые явно ниже рынка. Это обычная реклама и замануха. Относитесь к ним правильно и используйте с пользой, особенно если условия будут и дальше неизменными. А если хотите надёжное решение, то это должен быть не лоу-костер с VDS на базе десктопного или очень старого железа, о котором вам ничего не скажут, а крупный хостер со своими ДЦ.

И ещё момент про хостинг. Вы всегда должны быть готовы к тому, что с текущего хостинга придётся съехать. Я постоянно меняю хостеров и для меня переезд хоть и хлопотное, но привычное дело. В одном ценовом сегменте надёжность у всех плюс-минус одинаковая, потому что чудес не бывает. Если у вас отработаны механизмы переезда, то увидев выгодное предложение, вы можете быстро переехать и сэкономить деньги. А в случае проблем вернуться обратно. Понятное дело, что это относится к тем сервисам, что могут пережить небольшой простой и к ним нет повышенных требований к надёжности. Тут уже не до экспериментов.

#хостинг
👍52👎2
​​Нередко возникают ситуации, когда хочется знать, кто и какие приложения запускал на компьютере с системой Windows. Сделать это очень просто, так как у этой ОС есть встроенный функционал по логированию всего и вся, в том числе и информации о работе приложений, причём не только запуска.

Включить аудит приложений просто. Это можно сделать как в локальной политике одиночного компьютера, так и централизованно с помощью групповых политик. Настройка живёт по адресу:

Конфигурация компьютера ⇨ Конфигурация Windows ⇨ Параметры безопасности ⇨ Локальные политики ⇨ Политики аудита ⇨ Аудит отслеживания процессов.

После включения политики, необходимо её обновить:
> gpupdate /force

Теперь идём в журнал Windows, раздел безопасность и смотрим события с ID 4688 это запуск процесса и 4689 - завершение. Далее эти логи можно отправить, к примеру, в ELK и там хранить и анализировать. Если нужен только мониторинг, то можно взять Zabbix, настроить триггер на запуск какого-нибудь нежелательного приложения.

#windows #security
👍78👎1
​​Какой самый простой способ передать ссылку или небольшой текст с компьютера на смартфон? Правильно, отправить его самому себе через Telegram 😎 Всегда так делаю. А если нет мессенджера? Тут уже начинают шевелиться извилины, так как задача становится не такой уж и тривиальной.

Можно воспользоваться очень простым скриптом на Python, который будет генерировать QR-код из содержимого буфера обмена. Для этого нужна пара библиотек: qrcode и pyperclip.
# pip install qrcode pyperclip
Теперь можно запустить скрипт:
# git clone https://github.com/Louise-h-aa/qrclip.git
# cd qrclip
# python3 qrclip.py

Содержимое буфера обмена окажется в виде QR-code прямо в консоли. Я проверял локально на WSL. Не знаю, сработает ли в консоли сервера. Мне кажется, что нет, так как при подключении по ssh у сервера доступа к локальному буферу не будет.

Я решил сам немного переделать скрипт, чтобы текст для qr-кода можно было передать либо как параметр, либо ввести его в консоль, если скрипт запущен без параметров:

#!/usr/bin/env python3

import sys
from qrcode import QRCode, ERROR_CORRECT_L
def print_qr_code(text: str) -> None:

  qr = QRCode(
    version = 1,
    error_correction = ERROR_CORRECT_L,
    box_size = 10,
    border = 4
  )
  qr.add_data(text)
  qr.make(fit = True)
  qr.print_tty()

if __name__ == "__main__":
  if len (sys.argv) > 1:
    print_qr_code(sys.argv[1:])
  else:
    text: str = input()
    print_qr_code(text)

Это, кстати, наглядный пример простоты изучения Python. Я не умею на нём программировать, но код настолько простой и человекочитаемый, что я просто посмотрел на него, загуглил, как реализуется текстовый ввод в python, а так же передачу текста через параметры командной строки. Посмотрел, как пишется простой цикл и всё реализовал. Потратил буквально 30 минут. Стало интересно самому разобраться. В итоге всё получилось. Завис только на одном моменте. Не знал, как вывести список, пропустив нулевой элемент в нём. В итоге нашёл - [1:].

Теперь можно передать нужную строку в качестве параметра запуска:
# python3 qrclip.py https://ya.ru https://serveradmin.ru

Если хотите изучать программирование, начните с Python. Я помню как посмотрев пару бесплатных уроков, написал простенького бота. Даже публиковал его здесь, но его сразу сломали :) В целом, python очень простой. Его даже приятно изучать и что-то писать, не то что bash.

#python
👍62👎1
​​Когда речь заходит о программном шлюзе, первое, что приходит в голову это наиболее популярный Pfsense. Более продвинутые, кто предпочитает настраивать шлюзы через cli, вспомнят про VyOS. Но есть ещё один продукт, который я лично использовал - IPFire.

Это аналог Pfsense, только на Linux. Причём сделан не на основе готового дистрибутива, а собран из исходников самостоятельно авторами. То есть там под капотом не какой-то условный debian или centos. Поэтому там нет ничего лишнего. Разработчики заявляют, что всё собрано и оптимизировано конкретно под задачи маршрутизации и фаервола. Отсутствие лишних компонентов повышает безопасность и стабильность системы.

Всё управление через web браузер, в консоль ходить не надо. На мой взгляд IPFire проще сделан, меньше функционала, но и настроить, разобраться быстрее. Лично мне по логике работы и организации функционала IPFire понравился больше Pfsense, когда я его использовал. Но это субъективно, не претендую на какой-то анализ и сравнение.

Основные задачи, которые решает IPFire:
DHCP и DNS сервер.
Firewall. Сделан на базе iptables.
QOS.
Intrusion Prevention System (IPS). Построена на базе Suricata.
Web Proxy. Под капотом Squid.
Ipsec и OpenVPN.

В IPFire удобно организована настройка OpenVPN через браузер. Уже даже для одной этой задачи имеет смысл его рассмотреть и попробовать. Из необычного, там реализован функционал 2FA для соединений на базе типовых сертификатов (с паролем или без) и дополнительного pin кода.

Функционал можно расширять с помощью дополнений. Их там довольно много. Можно реализовать типовой функционал для linux дистрибутивов: Samba, NFS Server, Bacula, Borg Backup, Postfix и т.д. Можно поставить Zabbix Agent, чтобы организовать нормальный мониторинг системы. В веб интерфейсе есть русский язык.

Проект живой, регулярно обновляется. Последний релиз - 17 сентября этого года. Сам софт бесплатный, исходники открыты. Компания зарабатывает продажей готового железа с преднастроенной системой.

Думаю, среди читателей найдётся немало людей, кто использовал или использует IPFire. Поделитесь, почему остановились именно на нём, а не каком-то другом продукте.

Сайт - https://www.ipfire.org
Исходники - https://github.com/ipfire/ipfire-2.x

#gateway #firewall
👍81👎2
В Linux есть необычное псевдоустройство /dev/urandom для генерации псевдослучайных чисел. Его много где используют. Например, забить какой-то диск случайными данными для полного удаления предыдущей информации:

# dd if=/dev/urandom of=/dev/sda3

С помощью /dev/urandom удобно генерировать пароли с заданной длиной и сложностью. Пример простого пароля из 8 символов, с строчными и заглавными буквами:

# < /dev/urandom tr -dc 'a-zA-Z' | fold -w 8 | head -n 1

Добавляем сюда цифры и увеличиваем длину:

# < /dev/urandom tr -dc 'a-zA-Z0-9' | fold -w 10 | head -n 1

Добавляем некоторые спецсимволы и ещё увеличиваем длину:

# < /dev/urandom tr -dc 'a-zA-Z0-9#!@' | fold -w 12 | head -n 5

Меняя параметр head можно генерировать сразу несколько паролей. Например, всегда выводить по 5 паролей и выбирать тот, что больше нравится.

Можно добавить алиас в .bashrc, чтобы быстро генерировать пароли:

alias randpw='< /dev/urandom tr -dc 'a-zA-Z0-9#!@' | fold -w 12 | head -n 5'

Перечитываем .bashrc и проверяем:
# source .bashrc
# randpw
oDQ7Fw@a#QhJ
364UG@j8T1Mm
UxwRZU9K1bIH
GfToKOi#fmgl
ZB!Qv6eI#cp5

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

А вы как генерируете пароли? Если кто-то знает, подскажите, как в примерах с urandom сделать так, чтобы в каждом пароле обязательно присутствовал спецсимвол, число и буква. Я не могу сообразить, как это сделать. В текущем варианте это всё рандомно и иногда спецсимволов нет, поэтому приходится по несколько паролей выводить, чтобы точно получить нужный.

#bash #linux
👍91👎2
Я решил в конце каждого месяца публиковать топ постов по нескольким параметрам. Мне кажется, что это может быть интересно и полезно. Но это только моё мнение, потому что я веду канал и мне эта информация нужна.

Проголосуйте за этот пост 👍, если хотите видеть такой топ раз в месяц или 👎, если он не нужен.

📌 Больше всего просмотров:
Подборка бесплатных обучающих материалов (7602)
RouterOS Scanner от Microsoft (6898)
HTTP сервер на базе Python для передачи файлов (6851)

📌 Больше всего комментариев:
Промо тариф Aeza (193)
Мониторинг каналов в Mikrotik (119)
Обзор Nextcloud (106)

📌 Больше всего пересылок:
Подборка бесплатных обучающих материалов (679)
HTTP сервер на базе Python для передачи файлов (615)
Работа с файлами и директориями в bash (428)

📌 Больше всего реакций:
Работа с файлами и директориями в bash (198)
HTTP сервер на базе Python для передачи файлов (174)
Выдвижной ящик для слота 5,25 системного блока (109)
Падение моего сайта, анализ проблемы (109)

#топ
👍326👎4
Media is too big
VIEW IN TELEGRAM
Прикольный старый ролик про админов, который я впервые увидел на днях. Решил с вами поделиться, может кто не видел. Первый раз можно посмотреть без звука для более острых впечатлений. А потом уже со звуком. Центральной шуткой тут является настройка циски. Девчуля вводит команду:

switchport trunk allowed vlan 265

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

Все ролики из этого цикла (всего 3):
https://www.youtube.com/watch?v=rjqe8T5XBmw
https://www.youtube.com/watch?v=WNnJ0gjPgEs
https://www.youtube.com/watch?v=ncXTQ83eW7Q

#юмор
👍128👎13
Я стараюсь время от времени ходить на конференции (не онлайн). Это нужно для того, чтобы не замыкаться в какой-то одной области. Периодически у меня бывает реклама подобных конференций. На некоторые я хожу. Например, недавно была конфа от TrueConf, которую я посетил. Пробыл там до обеда, на всю времени не хватило. До этого ходил на конфу от VKCloud.

Конференции посещаю только очно. Онлайн не слушаю, не люблю. В офлайне организовать конференцию большой труд, как по времени, так и по финансам. Люди стараются дать максимально ёмкую информацию в ограниченный промежуток времени, поэтому там обычно ничего лишнего.

В доковидные времена ходил чаще, причём не только по ИТ тематике. Мне нравилась информация по маркетингу, сео, обучению. Например, я был на конференции по производству и продаже курсов, не только айтишных. Было интересно узнать изнутри, как работает эта индустрия. Как производят продукт, как рекламируют, как продают. Например, обычное дело сначала разрекламировать курс, узнать спрос, продать его и только потом начать создавать. Очевидно, что такие курсы лучше не покупать, потому что результат не гарантирован.

На последней конференции впервые узнал что у Astra Linux есть полностью своё решение по VDI, которое выведено в отдельный продукт Termidesk. Это самостоятельный продукт без привязки к какой-то системе виртуализации. С его помощью можно организовать виртуальные рабочие места с различным доступом к ним: через клиент, по протоколами rdp, vnc, через браузер. Сделаю отдельную заметку про него.

Написал я всё это для того, чтобы порекомендовать вам по возможности расширять свой кругозор и развиваться в разных направлениях. В жизни никогда не знаешь, какие именно знания пригодятся. Мне совершенно случайно пригодились знания по сео. С их помощью я смог создать популярный сайт, и как продолжение этой темы вот этот канал. Если бы я интересовался только администрированием, вряд ли бы всё это состоялось.

#разное
👍76👎2
​​Какой айтишник не хочет бросить свою монотонную, однообразную работу и открыть айтишный стартап? Практически любой не хочет 😀 Есть возможность попробовать это сделать в лёгкой и непринуждённой игре Startup Panic.

Это симулятор IT бизнесмена-стартапера, который начинает путь с программирования в спальне своего нового продукта, который покорит мир. У меня, кстати, была одно время идея выучиться программированию, чтобы можно было создать что-то своё. Я даже начал изучать Python для этого. В процессе понял, что нужно несколько лет потратить на обучение, чтобы создать что-то действительно стоящее, отказался от этой идеи. Не в этой жизни.

Игра русифицирована, так что можно вообще не напрягаясь постартапить. Игровой процесс тоже не напряжный. Это типичный симулятор развития чего-нибудь, в данном случае IT компании, которая развивает некий сайт-социальную сеть. Надо нанимать людей, обучать их, снимать помещения, брать кредиты и т.д.

Понравился один из комментариев к игре:
Вот бы в жизни можно было просто свалить с работы, создать свою собственную компанию и стать вторым Биллом Гейтсом, но вот только он бросил Гарвард, а ты общеобразовательную школу №3.

Если нет возможности купить игру в стиме, то можно на торрентах взять.

Steam - https://store.steampowered.com/app/1045610/Startup_Panic/

#игра
👍34👎8
​​На днях упоминал про систему организации виртуальных рабочих мест Termidesk. Сегодня расскажу о ней подробнее. Это российское программное обеспечение, включённое в реестр отечественного ПО. С его помощью реализуется функционал диспетчера удалённых подключений к виртуальным машинам под управлением операционных систем Linux и Windows.

Termidesk поддерживает следующие системы виртуализации: ПК СВ «Брест», zVirt, VMware, Aerodisk vAir, oVirt, Openstack и некоторые другие. То есть это универсальный продукт под разные системы виртуализации, с которыми он работает через плагины расширения.

В качестве гостевых систем для рабочих мест могут использоваться Windows 7,8,10, Windows Server, Astra Linux, Alt Linux, Debian, Ubuntu, CentOS. Для взаимодействия с Termidesk в операционные системы устанавливается агент.

Подключение к рабочим местам может осуществляться через различные протоколы. Если в системе есть RDP, то можно через него. Также поддерживается протокол SPICE, через который можно подключаться к экрану виртуальной машины. Этот протокол взаимодействия напрямую с гипервизором. Через него в том числе работает проброс usb устройств, работа мультимедиа (usb камер и микрофонов). То есть удалённое рабочее место можно использовать для полноценного общения.

Ещё один вариант подключения - через termidesk viewer. Если я правильно понял, то он использует взаимодействие с установленным агентом. Все эти подключения можно устанавливать как через браузер, так и через клиент, который представляет из себя приложение для операционной системы.

В качестве авторизации поддерживается множество популярных механизмов: локальная БД, MS Active Directory, LDAP/OpenLDAP, FreeIPA, Astra Linux Directory, IP адреса. Устанавливается Termidesk просто. Это обычный deb пакет для бесплатной ОС Astra Linux Common Edition, либо платной Astra Linux Special Edition. После установки из пакета, управление и настройка осуществляются через браузер.

В настоящее время Termidesk предлагает бесплатно лицензию на 4 конкурентных соединения с пользовательских рабочих станций. Получить её можно только вручную, отправив запрос через специальную форму на сайте. Платная версия лицензируется либо по количеству пользователей, либо по количеству одновременных соединений. Стоит от 5000 р. за пользователя, и от 9000 р. за соединение. Это стоимость за год. Цены смотрел в softline.

Посмотреть, как Termidesk работает на практике со стороны пользователя можно с помощью demo - https://termidesk.ru/vdi-demo, учётка termidesk1 / termidesk1. Можно как через браузер заходить, так и клиент себе поствить.

❗️Обращаю внимание, что через demo доступны несколько версий полноценных операционных систем с выходом в интернет. Там есть в том числе и браузеры. Можно использовать их в различных целях. Только не надо заниматься каким-то вредительством. Наверняка все подключения логируются. Если какие-то вредители начнут гадости делать, то демо скорее всего закроют. После завершения сеанса все изменения удаляются. Заново подключается уже эталонный образ.

Сайт - https://termidesk.ru/
Реестр ПО - https://reestr.digital.gov.ru/reestr/306667/

#vdi #отечественное #виртуализация
👍42👎8
Прочитал на днях перевод-пересказ любопытной новости. В Америке один нерадивый админ после увольнения решил напакостить бывшему работодателю, чтобы его взяли обратно. Понятное дело, что использовал он для этого учётные данные, которые у него остались.

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

Я уже как-то делал подобную заметку с примерами похожих историй в РФ, которые закончились плачевно для админов. Хочу лишний раз напомнить, что какие бы ни были у вас разногласия на работе, никогда не занимайтесь вредительством. Вы сделаете себе проблем гораздо больше, чем обидчикам. Так или иначе с вашей диверсией разберутся, а вот вы можете и на нары загреметь, не говоря уже о том, что испортите себе репутацию, возможно на всю жизнь. Обида и расстройство пройдут, а сделанное не исправить.

У меня были ситуации, когда хотелось отомстить, и не раз. Однажды даже до конкретных действий дошло, но вовремя остановился (положил сайт ддосом, но сразу прекратил, как он лёг, никто не пострадал и даже не заметил). Признаю, что был не прав, хотя меня и вынудили, обманув. Всякий раз себя сдерживаю и как показала практика, не зря. Никогда не знаешь, как жизнь повернётся. Какие бы ни были разногласия и конфликты, лучше просто расстаться и всё.

У вас были моменты, когда хотелось отомстить работодателю, пользуясь своими доступами? Я, кстати, всегда, когда устраивался на новое место, спрашивал у работодателя, почему и как расстались с бывшим админом. Хотелось знать, могут ли быть проблемы из-за конфликтов в прошлом.

#разное
👍89
​​В комментариях в заметке про VDI со мной поделились классным софтом - PVE-VDIClient. Это простой клиент на Python, с помощью которого можно напрямую подключаться к виртуальным машинам PVE по протоколу SPICE. Не нужен никакой дополнительный софт, типа RDP или VNC. Вы напрямую подключаетесь к консоли виртуальной машины.

Для чего это может понадобиться? Например, у вас есть Raspberry Pi и вы хотите сделать тонкий клиент для работы в ОС Windows с пробросом микрофона, камеры и звука. Вот подробное видео реализации:
https://www.youtube.com/watch?v=TuDrmq4RQzU

Я вчера потратил несколько часов, пока не разобрался полностью как это работает. В итоге запустил PVE-VDIClient на Windows 10 и 11. Рассказываю по шагам, что нужно сделать.

1️⃣ Добавляем в PVE новых пользователей и отдельную группу для них. Назначаем этой группе права доступа: VM.PowerMgmt, VM.Console, VM.Audit. Можно на конкретные виртуальные машины или на все сразу.

2️⃣ Виртуальным машинам, к которым будем подключаться по SPICE, в настройках указываем Display: SPICE и добавляем ещё один USB Device: Spice Port.

3️⃣ На ОС Windows, с которой будем подключаться, устанавливаем Python 3.10. Я установил через Microsoft Store. Далее идём в репозиторий, скачиваем файл requirements.bat и запускаем его. Либо просто вручную установите pip пакеты, которые там указаны.

4️⃣ Далее скачиваем virt-viewer под Windows и устанавливаем. После этого идём в releases и скачиваем последнюю версию PVE VDI client, устанавливаем.

5️⃣ В директорию C:\Program Files\VDIClient кладём файл vdiclient.ini, образец которого есть в репозитории под именем vdiclient.ini.example (example удаляем). Тут важно сделать несколько настроек, без которых у меня ничего не работало.

В разделе [Hosts] пишем адрес своего гипервизора и его порт 8006:
10.20.1.2 = 8006

В разделе [SpiceProxyRedirect] редактируем параметр:
prox.zeroxzed.ru:3128 = 10.20.1.2:3128
prox.zeroxzed.ru - имя хоста, которое можно посмотреть в веб интерфейсе, в разделе System ⇨ Hosts. В инструкции нигде не указано, что нужно это сделать, а дефолтная запись выглядит вот так:
pve1.example.com:3128 = 123.123.123.123:6000
Попробуй тут догадайся, что надо написать.

В разделе [Authentication] есть параметр auth_backend. По умолчанию он имеет значение:
auth_backend = pve
Если поменять его на
auth_backend = pam
Сможете подключаться дефолтной учёткой root, под которой заходите в веб интерфейс. Если это ваш тестовый гипервзиор, то логичнее поступить именно так и не создавать отдельных пользователей.

6️⃣ Теперь можно запускать VDI клиент, подключаться к гипервизору под созданной учётной записью и запускать виртуальную машину. Для увеличения быстродействия и лучшей работы с видео, в гостевые ОС рекомендуется установить SPICE guest tools. Но и без них всё будет работать.

Получилась готовая инструкция, которой в сети нет. Так что если вам интересна эта тема, сохраните к себе. Мне лично очень понравилось. Работать с виртуальными машинами так гораздо удобнее, чем по SSH или RDP. Можно спокойно добавить к машине несколько мониторов и переключаться между ними. В видео, которое я показал выше, автор демонстрирует такую возможность.

Полезные ссылки, которые пригодились в процессе настройки:
Исходники - https://github.com/joshpatten/PVE-VDIClient
Virt-manager - https://virt-manager.org/download/
Spice-guest-tools - https://www.spice-space.org/download.html
PVE SPICE - https://pve.proxmox.com/wiki/SPICE
Raspberry Pi THIN CLIENT for Proxmox VMs -
https://www.youtube.com/watch?v=TuDrmq4RQzU

#vdi #proxmox #виртуализация
👍81👎1
​​Вчера была очередная рассылка от компании Mikrotik. Из новостей ничего интересного не увидел, кроме анонса нового устройства hAP ax³. Это отличный wifi роутер для дома. Там 4-х ядерный процессор, 1GB памяти, Wi-Fi 6 и 4 гигабитных порта. Оптимальные характеристики для дома.

Всё хорошо, если бы не цена на эти устройства в РФ. Базовая стоимость производителя $139 - хорошее предложение для такого устройства. Если ориентироваться на другие модели Mikrotik, то в РФ цена будет в 2-2,5 раза больше, то есть в районе 20000 р.

Мне сейчас для дома нужно купить модем с встроенным WAN на LTE, свитч и Wi-Fi роутер (3 отдельных устройства). Раньше я бы не раздумывая взял Mikrotik, так как они мне нравятся. Сейчас в квартире и на даче всё на них работает. Но в текущих условиях так переплачивать не хочется, потому что объективно весь этот функционал мне не нужен, надо просто чтобы интернет работал в доме.

Как считаете, на каком вендоре сейчас стоит остановиться для домашнего использования с учётом цен? Я никогда не следил за ними, так как брал везде Mikrotik. Сейчас поискал роутеры с WAN LTE, предложений очень много от различных брендов с ценами от 3000 р. и выше. Микротики сейчас явно вне рынка. Я присмотрелся к Keenetic, TP-Link (дешевле всех, хз как там с качеством), Huawei.

#железо
👍38👎2