This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Собрал небольшую подборку видео на тему тестировщиков и разработчиков. Она по популярности и насыщенностью приколами примерно такая же, как сисадмины и пользователи. Пару видео отсюда уже были ранее на канале, другие хоть и баяны, но лишний раз пересмотреть всё равно интересно.
#юмор
#юмор
3👍134👎5
🎓 У меня было много публикаций с бесплатными курсами на обучающей площадке Stepik. Вообще, это неплохая платформа для неспешного фонового обучения. Там много хороших бесплатных материалов, а платные курсы стоят недорого. С их помощью можно захватить какую-то конкретную тематику. Она именно под это заточена. Полноценное обучение по какой-то специальности там не очень удобно проводить, а вот отдельные темы - самое то.
Список прошлых публикаций с бесплатными курсами на Stepik:
- Курсы на тему основ Linux
- Программирование на Python
- Курсы по SQL и Golang
Ещё один хороший курс про Docker в копилку:
⇨ Docker для начинающих + практический опыт
Мне его посоветовал читатель. Автор курса, если я правильно понял, основатель небольшого обучающего портала с несколькими курсами, которые он написал сам, будучи техническим специалистом. На Степике есть ещё бесплатный курс от него:
⇨ Ansible для начинающих + практический опыт
И несколько платных за небольшие деньги. Попробуйте, может это будет хорошим вариантом научиться чему-то новому за 5000 - 8000 т. р. У курсов хорошие рейтинги и отзывы. В сравнении с курсами от популярных он-лайн школ это почти бесплатно. Дешевле в 10-20 раз.
#обучение #бесплатно
Список прошлых публикаций с бесплатными курсами на Stepik:
- Курсы на тему основ Linux
- Программирование на Python
- Курсы по SQL и Golang
Ещё один хороший курс про Docker в копилку:
⇨ Docker для начинающих + практический опыт
Мне его посоветовал читатель. Автор курса, если я правильно понял, основатель небольшого обучающего портала с несколькими курсами, которые он написал сам, будучи техническим специалистом. На Степике есть ещё бесплатный курс от него:
⇨ Ansible для начинающих + практический опыт
И несколько платных за небольшие деньги. Попробуйте, может это будет хорошим вариантом научиться чему-то новому за 5000 - 8000 т. р. У курсов хорошие рейтинги и отзывы. В сравнении с курсами от популярных он-лайн школ это почти бесплатно. Дешевле в 10-20 раз.
#обучение #бесплатно
👍117👎5
На прошлой неделе была рассылка от Zabbix. В ней анонсировали запуск Zabbix Cloud. Я сразу предположил, что они запустят свой облачный сервис после недавней замены лицензии GPL на AGPL. Так и случилось. Решил проверить, что это такое и как работает.
После регистрации ждал примерно день, пока активируют учётную запись. Судя по всему, вручную это делают. После подтверждения на email создания личного кабинета, зашёл в него и активировал trial на 5 дней. Выбрал ноду во Франкфурте и развернул её.
По своей сути я получил обычный Zabbix Server, развёрнутый на серверах облака. Мне дали адрес веб интерфейса, логин, пароль. Внутри самый обычный Zabbix Server, к которому я могу подключать агентов. Он ничем не отличается от такого же, который я могу развернуть на арендованном сервере.
Каких-то особых фишек и возможностей не увидел, кроме автоматического обновления до новых версий сервера. Причём отказаться от такого обновления вы не сможете. Автоматические бэкапы обещают раз в неделю. Чаще можно делать вручную через веб панель управления нодой. Выгрузить свой бэкап за пределы облака нельзя, как и загрузить туда версию своего сервера. Восстановление из бэкапа только там. Наверняка есть какой-то тюнинг СУБД, чтобы всё это работало побыстрее, чем дефолтная установка.
В таком виде вообще не увидел никакого смысла в saas. Развернуть голый Zabbix Server - дело 10-ти минут. Возможно в будущем появятся какие-то дополнительные возможности и удобства. Например, какой-то механизм автоматического обновления шаблонов. Это прям тяжёлая для меня тема, когда нужно обновить стандартный шаблон на новую версию. Нет простого способа это сделать без удаления старого, очистки всех метрик и добавления нового шаблона. Не хватает какого-то механизма сравнения и склеивания шаблонов для обновления до свежей версии.
Вторая идея - преднастроенные агенты. Скачиваешь из веб интерфейса сервера дистрибутив агента с уже зашитыми настройками подключения к серверу и некоторых параметров. По идее это нетрудно сделать, а удобство развёртывания сильно повышается. Не надо свои инструменты придумывать для быстрой раскатки агентов с подстановкой нужных конфигов.
#zabbix
После регистрации ждал примерно день, пока активируют учётную запись. Судя по всему, вручную это делают. После подтверждения на email создания личного кабинета, зашёл в него и активировал trial на 5 дней. Выбрал ноду во Франкфурте и развернул её.
По своей сути я получил обычный Zabbix Server, развёрнутый на серверах облака. Мне дали адрес веб интерфейса, логин, пароль. Внутри самый обычный Zabbix Server, к которому я могу подключать агентов. Он ничем не отличается от такого же, который я могу развернуть на арендованном сервере.
Каких-то особых фишек и возможностей не увидел, кроме автоматического обновления до новых версий сервера. Причём отказаться от такого обновления вы не сможете. Автоматические бэкапы обещают раз в неделю. Чаще можно делать вручную через веб панель управления нодой. Выгрузить свой бэкап за пределы облака нельзя, как и загрузить туда версию своего сервера. Восстановление из бэкапа только там. Наверняка есть какой-то тюнинг СУБД, чтобы всё это работало побыстрее, чем дефолтная установка.
В таком виде вообще не увидел никакого смысла в saas. Развернуть голый Zabbix Server - дело 10-ти минут. Возможно в будущем появятся какие-то дополнительные возможности и удобства. Например, какой-то механизм автоматического обновления шаблонов. Это прям тяжёлая для меня тема, когда нужно обновить стандартный шаблон на новую версию. Нет простого способа это сделать без удаления старого, очистки всех метрик и добавления нового шаблона. Не хватает какого-то механизма сравнения и склеивания шаблонов для обновления до свежей версии.
Вторая идея - преднастроенные агенты. Скачиваешь из веб интерфейса сервера дистрибутив агента с уже зашитыми настройками подключения к серверу и некоторых параметров. По идее это нетрудно сделать, а удобство развёртывания сильно повышается. Не надо свои инструменты придумывать для быстрой раскатки агентов с подстановкой нужных конфигов.
#zabbix
👍70👎3
Для автоматизации установки и настройки виртуальных машин в Proxmox я рассказывал про Cloud-Init. С помощью этой технологии можно создать преднастроенный образ, который включает в себя базовые настройки системы, такие как сеть, пользователи, установка пакетов и некоторые другие.
Если хочется пойти дальше в автоматизации и развернуть сразу набор виртуальных машин определённой конфигурации, то для этого можно воспользоваться Terraform. Для Proxmox есть провайдер (terraform registry доступ через vpn, github). Это самый популярный. Есть ещё один, который очень активно развивается и допиливается - terraform registry и github.
Кратко поясню, для тех, кто не знает, что такое Terraform и для чего он может быть полезен в связке с Proxmox. Terraform был разработан как решение по управлению в стиле IaC (Infrastructure as Code, IaC) - инфраструктура как код. В первую очередь это касается управления ресурсами облачных провайдеров. Вы описываете в Terraform, что хотите получить на выходе, запускаете шаблон и получаете набор виртуальных машин, сетей и прочих облачных ресурсов. Причём вы можете оперативно как развернуть инфраструктуру, так и потушить. Это актуально для динамических сред с плавающей нагрузкой. Часто Terraform работает в связке с Ansible. Первый разворачивает инфраструктуру, второй её настраивает.
Proxmox не является инструментом для построения динамичных облачных инфраструктур. Его область применения - одиночные гипервизоры или небольшие кластеры на несколько серверов. По моим представлениям в проде на базе Proxmox нет большой нужды использовать Terraform. Он может быть актуален для каких-то тестовых задач как по изучению самого Terraform, так и для разворачивания тестового окружения в Proxmox. Можно разом развернуть какую-то лабораторию и потом так же в одно действие от неё избавиться.
Использование Terraform с Proxmox выглядит примерно следующим образом. Это не будет готовой инструкцией, так как в формат заметки не уместить. Все подробности без проблем гуглятся, так как тема живая. В целом, Terraform относительно простой инструмент. Чтобы начать им пользоваться достаточно небольшой инструкции или видео. Можно брать готовые шаблоны из статей или документации и править под себя.
1️⃣ Готовится образ с использованием Cloud-Init, на базе которого будет разворачиваться инфраструктура.
2️⃣ Создаётся отдельный пользователь и токен для него, который будет использовать Terraform.
3️⃣ Устанавливается Terraform или Opentofu (форк).
4️⃣ Создаётся конфигурация с провайдером и планон разворачивания инфраструктуры. Будут 2 файла: provider.tf и vm-debian12.tf. Содержимое прикреплю следующим сообщением. По желанию можно все переменные вынести в отдельный файл.
Пример конфигурации можно посмотреть в репозитории. После подготовки конфигурации, её можно проверить:
Посмотреть, что будет создано:
Если всё ОК, то создаём описанное:
Когда всё это будет не нужно, удаляем:
В моём примере была одна виртуальная машина. По аналогии, вы можете описать любое необходимое количество. Поместить их в одну или разные сети, посадить в разные хранилища и т.д.
Как я уже говорил, инструмент относительно простой. Я быстро во всём разобрался и протестировал. Единственный неприятный нюанс - репозитории terraform и opentofu заблокированы для РФ. Пришлось трафик через VPN пускать. У меня всё автоматизировано для этого. Отправил домены registry.terraform.io, apt.releases.hashicorp.com и registry.opentofu.org через VPN на шлюзе.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#proxmox #iac #terraform
Если хочется пойти дальше в автоматизации и развернуть сразу набор виртуальных машин определённой конфигурации, то для этого можно воспользоваться Terraform. Для Proxmox есть провайдер (terraform registry доступ через vpn, github). Это самый популярный. Есть ещё один, который очень активно развивается и допиливается - terraform registry и github.
Кратко поясню, для тех, кто не знает, что такое Terraform и для чего он может быть полезен в связке с Proxmox. Terraform был разработан как решение по управлению в стиле IaC (Infrastructure as Code, IaC) - инфраструктура как код. В первую очередь это касается управления ресурсами облачных провайдеров. Вы описываете в Terraform, что хотите получить на выходе, запускаете шаблон и получаете набор виртуальных машин, сетей и прочих облачных ресурсов. Причём вы можете оперативно как развернуть инфраструктуру, так и потушить. Это актуально для динамических сред с плавающей нагрузкой. Часто Terraform работает в связке с Ansible. Первый разворачивает инфраструктуру, второй её настраивает.
Proxmox не является инструментом для построения динамичных облачных инфраструктур. Его область применения - одиночные гипервизоры или небольшие кластеры на несколько серверов. По моим представлениям в проде на базе Proxmox нет большой нужды использовать Terraform. Он может быть актуален для каких-то тестовых задач как по изучению самого Terraform, так и для разворачивания тестового окружения в Proxmox. Можно разом развернуть какую-то лабораторию и потом так же в одно действие от неё избавиться.
Использование Terraform с Proxmox выглядит примерно следующим образом. Это не будет готовой инструкцией, так как в формат заметки не уместить. Все подробности без проблем гуглятся, так как тема живая. В целом, Terraform относительно простой инструмент. Чтобы начать им пользоваться достаточно небольшой инструкции или видео. Можно брать готовые шаблоны из статей или документации и править под себя.
Пример конфигурации можно посмотреть в репозитории. После подготовки конфигурации, её можно проверить:
# terraform init
# terraform validate
Посмотреть, что будет создано:
# terraform plan
Если всё ОК, то создаём описанное:
# terraform apply
Когда всё это будет не нужно, удаляем:
# terraform destroy
В моём примере была одна виртуальная машина. По аналогии, вы можете описать любое необходимое количество. Поместить их в одну или разные сети, посадить в разные хранилища и т.д.
Как я уже говорил, инструмент относительно простой. Я быстро во всём разобрался и протестировал. Единственный неприятный нюанс - репозитории terraform и opentofu заблокированы для РФ. Пришлось трафик через VPN пускать. У меня всё автоматизировано для этого. Отправил домены registry.terraform.io, apt.releases.hashicorp.com и registry.opentofu.org через VPN на шлюзе.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#proxmox #iac #terraform
Please open Telegram to view this post
VIEW IN TELEGRAM
👍138👎6
С уходом Atlassian с рынка РФ для некоторых компаний возникла масштабная задача по переходу на какие-то другие продукты в качестве замены Jira, Confluence, кому-то возможно и Trello. У меня, кстати, последний до их пор работает. Когда-то давно поменял email на гугловский и спокойно пользуюсь по сей день.
Так вот по поводу перехода. В настоящий момент эту тему особо не обсуждают, так как пик замены пришёлся на 2022 и 2023 год. Сейчас уже всё устаканилось. В качестве замены есть вариант использовать китайский продукт ZenTao. У него есть встроенный инструмент для автоматического импорта данных из Jira. Про него не очень много информации, но я нашёл отзыв реального человека, где он дал положительную оценку продукту после годового использования. У ZenTao есть вполне функциональная open source версия, так что я решил написать про него. Возможно кому-то это будет полезно. На первый взгляд продукт выглядит неплохо.
В рунете информации о ZanTao очень мало. В основном это материалы от компании GlowByte, которая занимается продажами продукта в РФ. Ссылки на статьи:
⇨ Что такое ZenTao и как установить его на Windows за 5 минут
⇨ Как устроен модуль «Документы» в ZenTao и может ли он заменить Confluence от Atlassian
⇨ Дзен в управлении продуктами
А вот материал от неизвестного мне блогера, который написал свой отзыв после внедрения и использования продукта в течении года:
⇨ Система управления проектами ZenTao
Статья не очень большая, но информативная. Там самая суть, картинки из реальной рабочей системы и вывод после года использования:
Спустя почти год использования системы уже можно говорит о том, что мнение о системе ZenTao сложилось. Даже в бесплатной версии система управления проектами ZenTao – это тот продукт, на который стоит обратить внимание. Особенно с учетом того, что его прямые конкуренты в виде MS Project, JIRA и Trello сейчас не так легко приобрести (если вообще возможно). А с учетом стоимости и получаемого набора функций в платных версий, на мой взгляд, получается очень гуманная цена.
В ходе эксплуатации системы мы уже несколько раз устанавливали обновления, т.е. продукт активно развивается. Причем, после каждого обновления мы находили какие-то интересные опции. Например, рабочие процессы, новый раздел для обучения (Academy) и т.д.
Отдельно хочу отметить стабильность работы системы – за весь период эксплуатации не было ни одного внепланового простоя системы. Это прям очень порадовало.
Порекомендовал бы я систему ZenTao в качестве системы управления проектами? Несомненно. Хотя бы попробуйте поработать с бесплатной версией программы. И тогда вы точно сможете понять – подходит ли эта система именно вашей методологии работы с проектами или нет.
Посмотреть на ZenTao можно либо в публичном Demo, либо развернуть у себя. Есть готовые установщики под Windows и Linux, а также Docker версия. Хотел воспользоваться последней, но там всё описание на китайском. Не стал разбираться. Запустил версию под Linux:
В общем-то и всё. Приложение написано на php + mysql. Рабочий стек: Apache, PHP, MariaDB. Разработчики как-то упаковали весь стек в архив и запускают его через bash скрипт. Можно идти в веб интерфейс по IP адресу сервера и смотреть.
Различия между open source и платными редакциями можно посмотреть на отдельной странице. Приятно, что в бесплатной версии оставлена интеграция с git, gitlab, jenkins, возможность настроить ci/cd и другие штуки. Весь раздел DevOps представлен. Так же оставлена возможность вести базовую документацию. LDAP, как обычно, только в платных редакциях.
Бесплатная редакция на русском языке отсутствует, есть английский. А вот платные переведены на русский язык.
⇨ 🌐 Сайт /4️⃣ Исходники / 📺 Русскоязычная группа в TG
Бесплатные аналоги ZenTao можете посмотреть по соответствующему тэгу снизу.
#itsm #управление_проектами
Так вот по поводу перехода. В настоящий момент эту тему особо не обсуждают, так как пик замены пришёлся на 2022 и 2023 год. Сейчас уже всё устаканилось. В качестве замены есть вариант использовать китайский продукт ZenTao. У него есть встроенный инструмент для автоматического импорта данных из Jira. Про него не очень много информации, но я нашёл отзыв реального человека, где он дал положительную оценку продукту после годового использования. У ZenTao есть вполне функциональная open source версия, так что я решил написать про него. Возможно кому-то это будет полезно. На первый взгляд продукт выглядит неплохо.
В рунете информации о ZanTao очень мало. В основном это материалы от компании GlowByte, которая занимается продажами продукта в РФ. Ссылки на статьи:
⇨ Что такое ZenTao и как установить его на Windows за 5 минут
⇨ Как устроен модуль «Документы» в ZenTao и может ли он заменить Confluence от Atlassian
⇨ Дзен в управлении продуктами
А вот материал от неизвестного мне блогера, который написал свой отзыв после внедрения и использования продукта в течении года:
⇨ Система управления проектами ZenTao
Статья не очень большая, но информативная. Там самая суть, картинки из реальной рабочей системы и вывод после года использования:
Спустя почти год использования системы уже можно говорит о том, что мнение о системе ZenTao сложилось. Даже в бесплатной версии система управления проектами ZenTao – это тот продукт, на который стоит обратить внимание. Особенно с учетом того, что его прямые конкуренты в виде MS Project, JIRA и Trello сейчас не так легко приобрести (если вообще возможно). А с учетом стоимости и получаемого набора функций в платных версий, на мой взгляд, получается очень гуманная цена.
В ходе эксплуатации системы мы уже несколько раз устанавливали обновления, т.е. продукт активно развивается. Причем, после каждого обновления мы находили какие-то интересные опции. Например, рабочие процессы, новый раздел для обучения (Academy) и т.д.
Отдельно хочу отметить стабильность работы системы – за весь период эксплуатации не было ни одного внепланового простоя системы. Это прям очень порадовало.
Порекомендовал бы я систему ZenTao в качестве системы управления проектами? Несомненно. Хотя бы попробуйте поработать с бесплатной версией программы. И тогда вы точно сможете понять – подходит ли эта система именно вашей методологии работы с проектами или нет.
Посмотреть на ZenTao можно либо в публичном Demo, либо развернуть у себя. Есть готовые установщики под Windows и Linux, а также Docker версия. Хотел воспользоваться последней, но там всё описание на китайском. Не стал разбираться. Запустил версию под Linux:
# wget https://www.zentao.pm/dl/zentao/20.6/ZenTaoALM-20.6-zbox_amd64.tar.gz
# tar -zxvf ZenTaoALM-20.6-zbox_amd64.tar.gz -C /opt
# /opt/zbox/zbox start
В общем-то и всё. Приложение написано на php + mysql. Рабочий стек: Apache, PHP, MariaDB. Разработчики как-то упаковали весь стек в архив и запускают его через bash скрипт. Можно идти в веб интерфейс по IP адресу сервера и смотреть.
Различия между open source и платными редакциями можно посмотреть на отдельной странице. Приятно, что в бесплатной версии оставлена интеграция с git, gitlab, jenkins, возможность настроить ci/cd и другие штуки. Весь раздел DevOps представлен. Так же оставлена возможность вести базовую документацию. LDAP, как обычно, только в платных редакциях.
Бесплатная редакция на русском языке отсутствует, есть английский. А вот платные переведены на русский язык.
⇨ 🌐 Сайт /
Бесплатные аналоги ZenTao можете посмотреть по соответствующему тэгу снизу.
#itsm #управление_проектами
Please open Telegram to view this post
VIEW IN TELEGRAM
👍55👎9
Запустил вчера старый ноут с Windows 10, который несколько месяцев пролежал выключенным. Он как с цепи сорвался. Минут 30 жужжал вентилятором на максимальных оборотах и что-то проверял, вычислял, качал, отправлял (?).
Просто жесть. Устройством пользоваться невозможно. Когда каждый день пользуешься ноутом, не замечаешь как-то, что система всё сливает в сеть.
А вот если она постоит, то у меня создаётся впечатление, что она тут же, пока её не успели выключить, стремится как можно больше собрать информации, тут же её всю отправить и загрузить к себе новые инструкции. Не может подождать даже минут 10-15, чтобы можно было хотя бы начать пользоваться системой.
Я уже привык, что старые устройства надо включить и оставить полежать, чтобы они отправили и получили всё, что им надо, а потом можно работать. С Android устройствами такая же история. Мне в данном случае не понятно одно - зачем делать это так агрессивно и прямо сразу после запуска. Можно же выдать пользователю плашку на тему того, мол хотите обновиться прямо сейчас или подождём минут 30? Тут прям сразу без вопросов всё накатили и предложили перезагрузку, которая ещё минут 10 длилась. Эта проблема, кстати, актуальна для различных устройств в переговорных комнатах, которые редко включают, а потом при запуске приходится ждать обновлений.
Или ещё пример из жизни. Ко мне как-то монтажники в один офис приезжали настроить направленную антенну. Они это не часто делают. Для настройки используют какой-то небольшой ноут, который удобно с собой возить и на коленке настраивать. Он маломощный. Приехали они ко мне, запустили его и он начал обновления качать и ставить. Прождали наверное около часа, пока он всё закончит. А у них рабочий день.
Не знаю, зачем я всё это написал. И так понятно, что все виндузятники и яблочники под плотным колпаком. Не хотел специально об этом писать, но прям зацепила эта тема.
Я убеждён, что вся информация (или выжимка) об использовании устройств и данных на них практически в режиме реального времени куда-то утекает, индексируется, каталогизируется и хранится. Для чего конкретно - хз, можно только догадываться. Не успел заскринить, а там ещё служба криптографии долго что-то вычисляла, писала на диск и отправляла по сети. Минут через 5 после запуска к процессу автообновления подключились и браузеры: яндекс и брейв. Эти поскромнее оказались, дали немного времени после загрузки системы. Буквально минут 5. Потом тоже обновились в фоне.
Можно, конечно, уповать на то, что есть Linux и надо использовать его. Но глобально это ни на что не повлияет. Как только доля Linux устройств у людей перевалит за какую-то значимую величину, там тоже начнут собирать данные. Если уже не собирают. Технически всё готово для этого - systemd. На него уже различные компании, связанные с безопасностью жалуются, что он очень переусложнён, что делает затруднительным анализ исходного кода. Сдаётся мне, что переусложнили его и внедрили во все дистрибутивы на базе Linux неспроста.
Такой вот вечер паранойи и шапочки из фольги получился. Что думаете об этом? Я перегибаю палку в теории заговора или согласны плюс-минус со мной?
#разное
Просто жесть. Устройством пользоваться невозможно. Когда каждый день пользуешься ноутом, не замечаешь как-то, что система всё сливает в сеть.
А вот если она постоит, то у меня создаётся впечатление, что она тут же, пока её не успели выключить, стремится как можно больше собрать информации, тут же её всю отправить и загрузить к себе новые инструкции. Не может подождать даже минут 10-15, чтобы можно было хотя бы начать пользоваться системой.
Я уже привык, что старые устройства надо включить и оставить полежать, чтобы они отправили и получили всё, что им надо, а потом можно работать. С Android устройствами такая же история. Мне в данном случае не понятно одно - зачем делать это так агрессивно и прямо сразу после запуска. Можно же выдать пользователю плашку на тему того, мол хотите обновиться прямо сейчас или подождём минут 30? Тут прям сразу без вопросов всё накатили и предложили перезагрузку, которая ещё минут 10 длилась. Эта проблема, кстати, актуальна для различных устройств в переговорных комнатах, которые редко включают, а потом при запуске приходится ждать обновлений.
Или ещё пример из жизни. Ко мне как-то монтажники в один офис приезжали настроить направленную антенну. Они это не часто делают. Для настройки используют какой-то небольшой ноут, который удобно с собой возить и на коленке настраивать. Он маломощный. Приехали они ко мне, запустили его и он начал обновления качать и ставить. Прождали наверное около часа, пока он всё закончит. А у них рабочий день.
Не знаю, зачем я всё это написал. И так понятно, что все виндузятники и яблочники под плотным колпаком. Не хотел специально об этом писать, но прям зацепила эта тема.
Я убеждён, что вся информация (или выжимка) об использовании устройств и данных на них практически в режиме реального времени куда-то утекает, индексируется, каталогизируется и хранится. Для чего конкретно - хз, можно только догадываться. Не успел заскринить, а там ещё служба криптографии долго что-то вычисляла, писала на диск и отправляла по сети. Минут через 5 после запуска к процессу автообновления подключились и браузеры: яндекс и брейв. Эти поскромнее оказались, дали немного времени после загрузки системы. Буквально минут 5. Потом тоже обновились в фоне.
Можно, конечно, уповать на то, что есть Linux и надо использовать его. Но глобально это ни на что не повлияет. Как только доля Linux устройств у людей перевалит за какую-то значимую величину, там тоже начнут собирать данные. Если уже не собирают. Технически всё готово для этого - systemd. На него уже различные компании, связанные с безопасностью жалуются, что он очень переусложнён, что делает затруднительным анализ исходного кода. Сдаётся мне, что переусложнили его и внедрили во все дистрибутивы на базе Linux неспроста.
Такой вот вечер паранойи и шапочки из фольги получился. Что думаете об этом? Я перегибаю палку в теории заговора или согласны плюс-минус со мной?
#разное
4👍245👎14
На днях на одном из серверов VPN с IP 175.115.158.81 заметил странные строки в логе:
Внимание привлекло то, что 95.145.141.246 это мой IP адрес ещё одного VPN сервера. Я не припомнил, чтобы настраивал на нем клиента для подключения к серверу 175.115.158.81. На всякий случай сходил туда и убедился в этом:
Никакого openvpn клиента тут не было запущено. Да и настроек для него тоже нет. У меня настроена разветвлённая система VPN туннелей с маршрутизацией, так что иногда начинаю в ней путаться. Надо схему рисовать.
Я немного напрягся и стал разбираться, в чём тут дело. Решил посмотреть на сервере с IP 95.145.141.246 исходящие сетевые соединения:
Соединения разные были, но к указанному VPN серверу ничего не было. Стало ещё интереснее. Расчехлил tcpdump и стал смотреть им:
Подождал, когда в логе на VPN сервере 175.115.158.81 опять появится запись о неудачном соединении. Вернулся в консоль сервера 95.145.141.246 и увидел запись:
1778 - порт VPN сервера. Смотрю на адрес 172.17.0.4 и тут до меня доходит, что это Docker контейнер. Проверяю IP адреса контейнеров:
А там мониторинг Gatus. И тут я вспоминаю, что настроил мониторинг VPN канала через проверку доступности порта, на котором он принимает подключения. Всё встало на свои места. Не думал, что проверка порта будет такими записями в логе отмечаться. Хотя на самом деле с таким встречаюсь иногда, когда через Zabbix порты проверяю через simple check.
Получилась мини-инструкция по диагностике исходящих соединений. В принципе, можно было сразу запустить tcpdump, но я по памяти не помню ключи и синтаксис выборки для него. Приходится куда-то лезть за подсказками. Мне казалось, что я делал по tcpdump заметку с популярными командами, но нет, не нашёл. Надо будет при случае исправить это.
#linux #terminal
ovpn-server[3742533]: TCP connection established with [AF_INET] 95.145.141.246:58560
ovpn-server[3742533]: 95.145.141.246:58560 Connection reset, restarting [0]
ovpn-server[3742533]: 95.145.141.246:58560 SIGUSR1[soft,connection-reset] received, client-instance restarting
Внимание привлекло то, что 95.145.141.246 это мой IP адрес ещё одного VPN сервера. Я не припомнил, чтобы настраивал на нем клиента для подключения к серверу 175.115.158.81. На всякий случай сходил туда и убедился в этом:
# ps axf
Никакого openvpn клиента тут не было запущено. Да и настроек для него тоже нет. У меня настроена разветвлённая система VPN туннелей с маршрутизацией, так что иногда начинаю в ней путаться. Надо схему рисовать.
Я немного напрягся и стал разбираться, в чём тут дело. Решил посмотреть на сервере с IP 95.145.141.246 исходящие сетевые соединения:
# ss -ntu
Соединения разные были, но к указанному VPN серверу ничего не было. Стало ещё интереснее. Расчехлил tcpdump и стал смотреть им:
# tcpdump -nn 'dst host 175.115.158.81'
Подождал, когда в логе на VPN сервере 175.115.158.81 опять появится запись о неудачном соединении. Вернулся в консоль сервера 95.145.141.246 и увидел запись:
14:29:38.706375 IP 172.17.0.4.58700 > 175.115.158.81.1778
1778 - порт VPN сервера. Смотрю на адрес 172.17.0.4 и тут до меня доходит, что это Docker контейнер. Проверяю IP адреса контейнеров:
# docker ps -q | xargs -n 1 docker inspect --format '{{ .NetworkSettings.IPAddress }} {{ .Name }}' | sed 's/ \// /'
...........
172.17.0.4 gatus
...........
А там мониторинг Gatus. И тут я вспоминаю, что настроил мониторинг VPN канала через проверку доступности порта, на котором он принимает подключения. Всё встало на свои места. Не думал, что проверка порта будет такими записями в логе отмечаться. Хотя на самом деле с таким встречаюсь иногда, когда через Zabbix порты проверяю через simple check.
Получилась мини-инструкция по диагностике исходящих соединений. В принципе, можно было сразу запустить tcpdump, но я по памяти не помню ключи и синтаксис выборки для него. Приходится куда-то лезть за подсказками. Мне казалось, что я делал по tcpdump заметку с популярными командами, но нет, не нашёл. Надо будет при случае исправить это.
#linux #terminal
👍202👎5
Очень простой и быстрый способ измерить ширину канала с помощью Linux без установки дополнительных пакетов. Понадобится только netcat, который чаще всего есть в составе базовых утилит. По крайней мере в Debian это так.
Берём условный сервер 10.20.1.50 и запускаем там netcat на порту 5201:
Идём на другую машину и запускаем netcat в режиме клиента, передавая туда 10 блоков размером 10 мегабайт:
Когда измерял так скорость, немного усомнился в достоверности результатов. Решил провести одинаковые тесты с помощью netcat и iperf3. На скоростях до 1 Gbits/sec замеры показывают одинаковые числа, плюс-минус в районе погрешности измерений. Можно смело использовать netcat. Это реально работает для быстрой проверки канала до какой-то VPS.
А вот в сетях в рамках гипервизора, где скорости значительно больше, идут большие расхождения. Iperf3 показывает раза в 4 больше скорость (~15.0 Gbits/sec), чем netcat (~4.0 Gbits/sec). Гипервизор объявляет скорость своего бриджа в 10 Gbits/sec. И тут уже трудно судить, кто ближе к истине. Корректно выполнить замеры на реальных данных затруднительно, так как много факторов, которые влияют на итоговый результат.
Напомню, что у меня есть хорошая заметка про netcat с различными практическими примерами применения этой утилиты.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux #network
Берём условный сервер 10.20.1.50 и запускаем там netcat на порту 5201:
# nc -lvp 5201 > /dev/null
Идём на другую машину и запускаем netcat в режиме клиента, передавая туда 10 блоков размером 10 мегабайт:
# dd if=/dev/zero bs=10M count=10 | nc 10.20.1.50 5201
Когда измерял так скорость, немного усомнился в достоверности результатов. Решил провести одинаковые тесты с помощью netcat и iperf3. На скоростях до 1 Gbits/sec замеры показывают одинаковые числа, плюс-минус в районе погрешности измерений. Можно смело использовать netcat. Это реально работает для быстрой проверки канала до какой-то VPS.
А вот в сетях в рамках гипервизора, где скорости значительно больше, идут большие расхождения. Iperf3 показывает раза в 4 больше скорость (~15.0 Gbits/sec), чем netcat (~4.0 Gbits/sec). Гипервизор объявляет скорость своего бриджа в 10 Gbits/sec. И тут уже трудно судить, кто ближе к истине. Корректно выполнить замеры на реальных данных затруднительно, так как много факторов, которые влияют на итоговый результат.
Напомню, что у меня есть хорошая заметка про netcat с различными практическими примерами применения этой утилиты.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux #network
3👍157👎3
Я уже давно использую заметки с канала как свои шпаргалки. Всё полезное из личных заметок перенёс сюда, плюс оформил всё это аккуратно и дополнил. Когда ищу какую-то информацию, в первую очередь иду сюда, ищу по тегам или содержимому.
Обнаружил, что тут нет заметки про tcpdump, хотя личная шпаргалка по этой программе у меня есть. Переношу сюда. По tcpdump можно много всего написать, материала море. Я напишу кратко, только те команды, что использую сам. Их немного. Tcpdump использую редко, если есть острая необходимость.
Я ко всем командам добавляю ключ
📌 Список сетевых интерфейсов, с которых tcpdump может смотреть пакеты:
Если запустить программу без ключей, то трафик будет захвачен с первого активного интерфейса из списка выше.
📌 Слушаем все интерфейсы:
Или только конкретный:
📌 Исключаем SSH протокол. Если в трафике, на который мы смотрим, будет SSH соединение, то оно забивает весь вывод своей активностью. Глазами уже не разобрать. Исключаю его по номеру порта:
По аналогии исключается любой другой трафик по портам. Если убираем слово not, то слушаем трафик только указанного порта.
📌 Пакеты к определённому адресату или адресатам:
Комбинация порта и адресата:
Подобным образом можно комбинировать любые параметры: src, dst, port и т.д. с помощью операторов and, or, not,
📌 Смотрим конкретный протокол или исключаем его и не только:
На этом всё. Лично мне этих команд в повседневной деятельности достаточно. Не припоминаю, чтобы хоть раз использовал что-то ещё. Если надо проанализировать большой список, то просто направляю вывод в файл:
На основе приведённых выше примеров можно посмотреть, к примеру, на SIP трафик по VPN туннелю от конкретного пользователя к VOIP серверу:
Если не знакомы с tcpdump, рекомендую обязательно познакомиться и научиться пользоваться. Это не трудно, хоть на первый взгляд вывод выглядит жутковато и запутанно. Сильно в нём разбираться чаще всего не нужно, а важно увидеть какие пакеты и куда направляются. Это очень помогает в отладке. Чаще всего достаточно вот этого в выводе:
Протокол IP, адрес источника и порт > адрес получателя и его порт.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#network #tcpdump
Обнаружил, что тут нет заметки про tcpdump, хотя личная шпаргалка по этой программе у меня есть. Переношу сюда. По tcpdump можно много всего написать, материала море. Я напишу кратко, только те команды, что использую сам. Их немного. Tcpdump использую редко, если есть острая необходимость.
Я ко всем командам добавляю ключ
-nn
, чтобы не резолвить IP адреса в домены и не заменять номера портов именем протокола. Мне это мешает. 📌 Список сетевых интерфейсов, с которых tcpdump может смотреть пакеты:
# tcpdump -D
Если запустить программу без ключей, то трафик будет захвачен с первого активного интерфейса из списка выше.
📌 Слушаем все интерфейсы:
# tcpdump -nn -i any
Или только конкретный:
# tcpdump -nn -i ens3
📌 Исключаем SSH протокол. Если в трафике, на который мы смотрим, будет SSH соединение, то оно забивает весь вывод своей активностью. Глазами уже не разобрать. Исключаю его по номеру порта:
# tcpdump -nn -i any port not 22
По аналогии исключается любой другой трафик по портам. Если убираем слово not, то слушаем трафик только указанного порта.
📌 Пакеты к определённому адресату или адресатам:
# tcpdump -nn dst 8.8.8.8
# tcpdump -nn dst 8.8.8.8 or dst 8.8.4.4
Комбинация порта и адресата:
# tcpdump -nn dst 8.8.8.8 and port 53
Подобным образом можно комбинировать любые параметры: src, dst, port и т.д. с помощью операторов and, or, not,
📌 Смотрим конкретный протокол или исключаем его и не только:
# tcpdump arp -nn -i any
# tcpdump not arp -nn -i any
# tcpdump not arp and not icmp -nn -i any
На этом всё. Лично мне этих команд в повседневной деятельности достаточно. Не припоминаю, чтобы хоть раз использовал что-то ещё. Если надо проанализировать большой список, то просто направляю вывод в файл:
# tcpdump -nn -i any > ~/tcpdump.txt
На основе приведённых выше примеров можно посмотреть, к примеру, на SIP трафик по VPN туннелю от конкретного пользователя к VOIP серверу:
# tcpdump -nn -i tun4 src 10.1.4.23 and dst 10.1.3.205 and port 5060
Если не знакомы с tcpdump, рекомендую обязательно познакомиться и научиться пользоваться. Это не трудно, хоть на первый взгляд вывод выглядит жутковато и запутанно. Сильно в нём разбираться чаще всего не нужно, а важно увидеть какие пакеты и куда направляются. Это очень помогает в отладке. Чаще всего достаточно вот этого в выводе:
IP 10.8.2.2.13083 > 10.8.2.3.8118
Протокол IP, адрес источника и порт > адрес получателя и его порт.
Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#network #tcpdump
102👍270👎5
Если у вас нет глубоких знаний о работе современных процессоров, а вы хотите получить хотя бы примерное представление, как на них работают программы, то у меня для вас необычная рекомендация. Есть целый сайт по этой теме:
⇨ https://cpu.land
Особенность его в том, что текст для него написан 17-ти летней девочкой-подростком, которая стала разработчиком. Материал воспринимается очень легко, написан простым языком. Я прочитал его в автоматическом переводе Яндекс.Браузера. Просто открыл все главы на одной странице, перевёл и прочитал. Иногда переключался на оригинал, чтобы уточнить какой-то переведённый термин.
Чтиво буквально на 15-20 минут, но после прочтения у вас будет представление, как совершается компьютерная магия, которая превращает нолики и единички в работающие программы на ОС с ядром Linux.
В материале раскрываются следующие темы:
▪️Как в принципе устроен процессор, как он работает с оперативной памятью
▪️Ядро операционной системы и системные вызовы
▪️Процессорные архитектуры и инструкции
▪️Аппаратные прерывания, многозадачность
▪️Разбор последовательных действий, которые происходят после вашего запуска программы в ОС
▪️Отдельно автор прошлась по скриптам, оболочкам и шебангам
▪️Разбор ELF файлов, что это такое и для чего нужны
▪️Динамические библиотеки .so
▪️Основные и дочерние процессы
Отдельно мне понравилась ремарка автора насчёт использования ChatGPT:
Я довольно много общался с GPT-3.5 и GPT-4 во время написания этой статьи. Хотя они много лгали мне и большая часть информации была бесполезной, иногда они были очень полезны для решения проблем. Помощь LLM может быть исключительно положительной, если вы знаете об их ограничениях и крайне скептически относитесь ко всему, что они говорят.
Мне понравился лёгкий и весёлый слог автора, несмотря на то, что читал перевод. Прям увидел и ощутил новый взгляд на обучающий материал, каким он может быть. Наверное, так написать мог только подросток. Рекомендую, если вы интересуетесь самообразованием.
❗️ Надеюсь, я заинтересовал вас и убедил не просто сохранить ссылку, но и прочитать её. В этом плане мы можем быть полезны друг другу. Если бы мне не нужно было писать эту заметку, то скорее всего я бы не стал читать материал, а просто добавил бы его куда-нибудь на будущее и никогда бы не вернулся. Собственно, я изначально так и сделал. Эта ссылка лежала у меня год 😁
#обучение
⇨ https://cpu.land
Особенность его в том, что текст для него написан 17-ти летней девочкой-подростком, которая стала разработчиком. Материал воспринимается очень легко, написан простым языком. Я прочитал его в автоматическом переводе Яндекс.Браузера. Просто открыл все главы на одной странице, перевёл и прочитал. Иногда переключался на оригинал, чтобы уточнить какой-то переведённый термин.
Чтиво буквально на 15-20 минут, но после прочтения у вас будет представление, как совершается компьютерная магия, которая превращает нолики и единички в работающие программы на ОС с ядром Linux.
В материале раскрываются следующие темы:
▪️Как в принципе устроен процессор, как он работает с оперативной памятью
▪️Ядро операционной системы и системные вызовы
▪️Процессорные архитектуры и инструкции
▪️Аппаратные прерывания, многозадачность
▪️Разбор последовательных действий, которые происходят после вашего запуска программы в ОС
▪️Отдельно автор прошлась по скриптам, оболочкам и шебангам
▪️Разбор ELF файлов, что это такое и для чего нужны
▪️Динамические библиотеки .so
▪️Основные и дочерние процессы
Отдельно мне понравилась ремарка автора насчёт использования ChatGPT:
Я довольно много общался с GPT-3.5 и GPT-4 во время написания этой статьи. Хотя они много лгали мне и большая часть информации была бесполезной, иногда они были очень полезны для решения проблем. Помощь LLM может быть исключительно положительной, если вы знаете об их ограничениях и крайне скептически относитесь ко всему, что они говорят.
Мне понравился лёгкий и весёлый слог автора, несмотря на то, что читал перевод. Прям увидел и ощутил новый взгляд на обучающий материал, каким он может быть. Наверное, так написать мог только подросток. Рекомендую, если вы интересуетесь самообразованием.
#обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
Putting the "You" in CPU
Curious exactly what happens when you run a program on your computer? Learn how multiprocessing works, what system calls really are, how computers manage memory with hardware interrupts, and how Linux loads executables.
2👍112👎7
Немного информации для тех, кто имеет дело с обычными веб серверами под php сайты. Вчера провозился несколько часов с одним сайтом, который передали разработчики для публикации. Причём провозился из-за ерунды. Это был немного навороченный мультиязычный сайт на базе Wordpress, но с полностью самописной темой.
Я этих вордпрессов десятки устанавливал и поддерживал. Никак не ожидал проблем с этим движком. Но разработчики сумели меня удивить и нагрузить работой. Для начала пришлось повозиться с тем, что режим работы сайта http или https был жёстко зашит в коде сайта. И не где-то в настройках Wordpress или базе, а в коде темы. Это создавало некоторые проблемы при публикации за Cloudflare и Nginx в режиме proxy_pass. Пока всё развернул, разобрался, нашёл и вычистил в коде, немного подустал. Плюс, сайт под Apache разрабатывали, запустил под Nginx.
В итоге на сайте кое-где всплывали ошибки php, что-то не работало. В логе тоже ошибки и предупреждения со стороны php. Причём ошибки какие-то странные, типа скобки не закрыты, переменная не объявлена и т.д. Сначала подумал, что сайт написали под старую версию php. На веб сервере стояла относительно свежая 8.2. Уточнил у разработчиков, у них на 8.1 нормально работает. Разница в этих версиях не такая большая, должно нормально работать. Потом подумал, что по ошибке скинули какой-то черновик, а не итоговую работу.
Немного поразбирался в ошибках и выяснил, в чём проблема. В php по умолчанию параметр short_open_tag выключен. Это нормальная история, так как стандартному коду Wordpress он не нужен. Мне и в голову не пришло его включить. В версиях php до 6-й он был включен, потом стали отключать из соображений совместимости с другим кодом. Например, с тэгами
В коде этого сайта были конструкции типа
Если где-то придётся писать код php, то пишите сразу полные тэги <?php, а не короткие. Сейчас это более правильный подход, который улучшает переносимость проекта и не вызывает проблем с совместимостью с другим кодом, который использует тэги. Вот наглядный пример, где будут проблемы с короткими тэгами:
Это элемент xml разметки, а с включённым short_open_tag это будет интерпретироваться как php код.
#webserver #php
Я этих вордпрессов десятки устанавливал и поддерживал. Никак не ожидал проблем с этим движком. Но разработчики сумели меня удивить и нагрузить работой. Для начала пришлось повозиться с тем, что режим работы сайта http или https был жёстко зашит в коде сайта. И не где-то в настройках Wordpress или базе, а в коде темы. Это создавало некоторые проблемы при публикации за Cloudflare и Nginx в режиме proxy_pass. Пока всё развернул, разобрался, нашёл и вычистил в коде, немного подустал. Плюс, сайт под Apache разрабатывали, запустил под Nginx.
В итоге на сайте кое-где всплывали ошибки php, что-то не работало. В логе тоже ошибки и предупреждения со стороны php. Причём ошибки какие-то странные, типа скобки не закрыты, переменная не объявлена и т.д. Сначала подумал, что сайт написали под старую версию php. На веб сервере стояла относительно свежая 8.2. Уточнил у разработчиков, у них на 8.1 нормально работает. Разница в этих версиях не такая большая, должно нормально работать. Потом подумал, что по ошибке скинули какой-то черновик, а не итоговую работу.
Немного поразбирался в ошибках и выяснил, в чём проблема. В php по умолчанию параметр short_open_tag выключен. Это нормальная история, так как стандартному коду Wordpress он не нужен. Мне и в голову не пришло его включить. В версиях php до 6-й он был включен, потом стали отключать из соображений совместимости с другим кодом. Например, с тэгами
<?xml
.В коде этого сайта были конструкции типа
<?
вместо <?php
, а для их корректной работы как раз и нужен параметр short_open_tag
. Есть проекты, где явно пишут, что надо включить этот параметр. А тут мне никто ни слова насчёт него не сказал. Включил параметр и всё заработало. Если где-то придётся писать код php, то пишите сразу полные тэги <?php, а не короткие. Сейчас это более правильный подход, который улучшает переносимость проекта и не вызывает проблем с совместимостью с другим кодом, который использует тэги. Вот наглядный пример, где будут проблемы с короткими тэгами:
<?xml version="1.0"?>
Это элемент xml разметки, а с включённым short_open_tag это будет интерпретироваться как php код.
#webserver #php
👍122👎2
⇨ ProxMox Cluster 2 Nodes + Q-Device. Кластер просто. Для дома и офиса.
Пример настройки бюджетного HA кластера из двух нод и "арбитра" на Raspberry Pi для кворума. Хранилища локальные на базе zfs. Второй сервер будет содержать клоны VM c первого и заменит его в случае выхода из строя.
⇨ Best Docker Container Server Setup // Docker Swarm, CephFS, and Portainer
Очень любопытное видео на тему перечисленных выше технологий. Автор рассмотрел простую отказоустойчивую замену кластера Kubernetes. Видео небольшое, но ёмкое по объему информации и практике. Не знаю, имеет ли смысл подобная сборка, но посмотреть и послушать интересно.
⇨ Linux - Как легко создать свой DEB package на Линукс
Пошаговая инструкция на заданную тему от Дениса Астахова и его полезного канала ADV-IT. Смотреть видео большого смысла нет, если у вас нет задачи по сборке пакетов. А вот сохранить ссылку имеет смысл, чтобы быстро найти, когда задача такая возникнет. Можно и мою инструкцию на эту тему сохранить.
⇨ ПРОБРОС СЕТЕВОЙ КАРТЫ ИЛИ LINUX BRIDGE? ИЛИ ВИРТУАЛЬНЫЙ РОУТЕР С 2 ЛАН ПОРТАМИ
Полезное видео на тему организации сети в Proxmox. Я лично всегда и везде использую бриджи. Это удобно, плюс виртуалки получают лучшую переносимость.
⇨ Dockge - выкинь Portainer немедленно
Кликбейтный заголовок, а по сути автор рассказывает про минусы Portainer и показывает, что можно использовать в качестве замены. Я лично не проникся этой заменой.
⇨ Docker always up to date! (and more) Renovate Tutorial
Рекламное видео на тему программы Renovate, которая умеет автоматически проверять и обновлять в исходниках версии используемых образов докера, пакетов, указанных в ваших репозиториях. У Renovate есть бесплатная self-hosted Community версия, так что видео может быть полезным. В нём настраивают и тестируют именно эту версию.
⇨ OpenRPort - Remote Management Tool with Secure Tunneling!
Бесплатная программа для удалённого управления компьютерами. Сделана на базе RealVNC. Есть веб интерфейс с 2FA аутентификацией. Впервые услышал об этой программе. Было интересно посмотреть. Надо будет попробовать в деле. Наличие VNC под капотом немного расстраивает, так как скорее всего картинка будет лагучей, как это обычно бывает с VNC через интернет на слабых каналах.
#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
ProxMox Cluster 2 Nodes + Q-Device. Кластер просто. Для дома и офиса.
ProxMox Cluster 2 Nodes + Q-Device. Создание кластера.
Proxmox cluster 3 Nodes: https://www.youtube.com/watch?v=Owyrz9D_pZQ
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Буду очень благодарен за поддержку в виде чашечки ☕️:
https://www.buymeacoffee.com/RomNero
~…
Proxmox cluster 3 Nodes: https://www.youtube.com/watch?v=Owyrz9D_pZQ
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Буду очень благодарен за поддержку в виде чашечки ☕️:
https://www.buymeacoffee.com/RomNero
~…
4👍69👎3
Периодически в комментариях возникают вопросы на тему личного хранилища информации. Кто, как и где хранит. Я сколько веду свою трудовую деятельность, столько и делаю записи по различным темам. Начинал всё с простого сохранения html страниц. Они, кстати, до сих пор у меня хранятся. Упаковал в архив, так и лежат с тех пор. В конце будет ссылка на один подобный архив по теме. Может кому интересно будет поностальгировать по прошлым временам. Там будет цикл статей по настройке почтового сервера на Freebsd, по которому я учился.
Сейчас вся моя база знаний переехала в этот канал. Как раньше сайт, так и сейчас канал я лично использую почти каждый день в своих делах. В том числе и поэтому я аккуратно и ответственно всё составляю, оформляю, готовлю к публикации, делаю подборки. Всегда держу в голове момент, как я буду потом искать эту информацию. Ищу либо по тэгами, либо по названиям конкретных программ. В целом могу сказать, что такой поиск меня устраивает. Обычно нахожу то, что нужно.
В дополнение к этому, я в Joplin веду все свои проекты, не только по работе, но и личные, типа стройки, ремонта, сайта и т.д. Когда делаю что-то значимое, что хочу сохранить для использования в будущем, делаю заметку по этой теме в свободной форме. Покажу на конкретных примерах.
Есть компания, где используются сайты на Битриксе. У меня там в том числе есть такие записи:
◽️Bitrix. Тут хранится общая информация обо всём, с чем сталкиваюсь. Например, была ошибка, я записал текст ошибки и тут же решение текстом или ссылку на материал, который использовал. Не занимаюсь никаким особым оформлением. Просто записываю, чтобы потом найти.
◽️Переезд веб сервера. Тут пишу всё, что касается переезда. Уже не раз меняли провайдера, сервера, услуги. Каждый раз кажется, что это в последний раз так переезжаем масштабно, но на деле, каждые 2-3 года что-то случается. Заметка очень помогает быстро составить план переноса.
◽️Заражение. Тут описана история заражения одного сайта. Что пролезло, какие признаки были, как лечил.
◽️Ошибки обновления. Сайты периодически обновляют, пишу, с чем сталкиваемся, чтобы потом быстрее обсудить с разработчиками очередное обновление.
❗️Важный момент. Я не трачу много времени на эти записки. Просто копирую информацию и всё. Если оформлять, дополнять, то на это тратится время, будешь лениться или откладывать. В итоге забудешь. А так всё записано. Потом это пригождается и в других проектах, так как с Bitrix приходится много где работать. Даже такие отрывочные данные сильно упрощают решение задачи, когда с ней повторно сталкиваешься.
По личным делам всё то же самое. Вот несколько примеров записей по даче:
◽️Техника. Записываю модели всей купленной техники и всё, что с ней связано.
◽️Обслуживание инженерки. Пишу, что, где, когда и как надо делать: проверить расширительный бак, заменить фильтр, закрыть уличный кран на зиму и т.д.
◽️Строительные компании. С какими компаниями работал, кто что делал.
◽️Серверная. Оборудование в серверном шкафу.
◽️Спросить у специалиста. Список вопросов, на которые мне нужен совет специалиста.
◽️Перед отъездом. Список того, что надо проверить перед отъездом: закрыть окна, отключить насос, выключить тёплый пол, забрать мусор и т.д. Не нужно каждый раз ломать голову и вспоминать, ничего ли я не забыл. Этот список, кстати, распечатан и висит перед выходной дверью.
Примерно так. Не знаю, насколько это будет полезно вам. Такие вещи очень индивидуальны. У меня простое правило - всё должно быть записано. Если не записал, через пол года уже ничего не помнишь. Вспоминать очень накладно и долго. Найти в своих заметках - дело пары минут. Главное не упарываться в оформление. Пусть будет свалка. С помощью поиска и в свалке быстро найдешь, если данные записаны.
Как вы можете увидеть, снизу есть тэг. По нему вы найдёте все мои записи по этой теме. Например, как планирую свои дела и какой планировщик использую.
Обещанный архив: postfix.7z
#заметки
Сейчас вся моя база знаний переехала в этот канал. Как раньше сайт, так и сейчас канал я лично использую почти каждый день в своих делах. В том числе и поэтому я аккуратно и ответственно всё составляю, оформляю, готовлю к публикации, делаю подборки. Всегда держу в голове момент, как я буду потом искать эту информацию. Ищу либо по тэгами, либо по названиям конкретных программ. В целом могу сказать, что такой поиск меня устраивает. Обычно нахожу то, что нужно.
В дополнение к этому, я в Joplin веду все свои проекты, не только по работе, но и личные, типа стройки, ремонта, сайта и т.д. Когда делаю что-то значимое, что хочу сохранить для использования в будущем, делаю заметку по этой теме в свободной форме. Покажу на конкретных примерах.
Есть компания, где используются сайты на Битриксе. У меня там в том числе есть такие записи:
◽️Bitrix. Тут хранится общая информация обо всём, с чем сталкиваюсь. Например, была ошибка, я записал текст ошибки и тут же решение текстом или ссылку на материал, который использовал. Не занимаюсь никаким особым оформлением. Просто записываю, чтобы потом найти.
◽️Переезд веб сервера. Тут пишу всё, что касается переезда. Уже не раз меняли провайдера, сервера, услуги. Каждый раз кажется, что это в последний раз так переезжаем масштабно, но на деле, каждые 2-3 года что-то случается. Заметка очень помогает быстро составить план переноса.
◽️Заражение. Тут описана история заражения одного сайта. Что пролезло, какие признаки были, как лечил.
◽️Ошибки обновления. Сайты периодически обновляют, пишу, с чем сталкиваемся, чтобы потом быстрее обсудить с разработчиками очередное обновление.
❗️Важный момент. Я не трачу много времени на эти записки. Просто копирую информацию и всё. Если оформлять, дополнять, то на это тратится время, будешь лениться или откладывать. В итоге забудешь. А так всё записано. Потом это пригождается и в других проектах, так как с Bitrix приходится много где работать. Даже такие отрывочные данные сильно упрощают решение задачи, когда с ней повторно сталкиваешься.
По личным делам всё то же самое. Вот несколько примеров записей по даче:
◽️Техника. Записываю модели всей купленной техники и всё, что с ней связано.
◽️Обслуживание инженерки. Пишу, что, где, когда и как надо делать: проверить расширительный бак, заменить фильтр, закрыть уличный кран на зиму и т.д.
◽️Строительные компании. С какими компаниями работал, кто что делал.
◽️Серверная. Оборудование в серверном шкафу.
◽️Спросить у специалиста. Список вопросов, на которые мне нужен совет специалиста.
◽️Перед отъездом. Список того, что надо проверить перед отъездом: закрыть окна, отключить насос, выключить тёплый пол, забрать мусор и т.д. Не нужно каждый раз ломать голову и вспоминать, ничего ли я не забыл. Этот список, кстати, распечатан и висит перед выходной дверью.
Примерно так. Не знаю, насколько это будет полезно вам. Такие вещи очень индивидуальны. У меня простое правило - всё должно быть записано. Если не записал, через пол года уже ничего не помнишь. Вспоминать очень накладно и долго. Найти в своих заметках - дело пары минут. Главное не упарываться в оформление. Пусть будет свалка. С помощью поиска и в свалке быстро найдешь, если данные записаны.
Как вы можете увидеть, снизу есть тэг. По нему вы найдёте все мои записи по этой теме. Например, как планирую свои дела и какой планировщик использую.
Обещанный архив: postfix.7z
#заметки
2👍154👎4
Если обратиться к веб серверу на базе Nginx по IP адресу, то увидите либо первый виртуальных хост в конфигурации, либо тот, где указана директива default в параметре listen. Показывать виртуальный хост не очень хочется, поэтому обычно на IP адрес ставят какую-то заглушку. Например, так:
С 80-м портом и протоколом HTTP проблем обычно нет. А вот с HTTPS есть нюансы, так как нам нужно использовать сертификат. Доверенный сертификат на IP адрес получить нельзя. По крайней мере я не знаю, как это сделать. Если сертификат не указать, то будет использован сертификат первого в конфигурации виртуального хоста, где он указан. То есть если сделать вот так:
То пользователь, который зайдёт по IP адресу на сервер, увидит сначала предупреждение о том, что имя домена в сертификате не соответствует домену в адресной строке браузера. А когда согласится перейти по адресу, в свойствах сертификата можно будет увидеть адрес виртуального домена, сертификат которого использован.
Можно выйти из этой ситуации, выпустив самоподписанный сертификат-пустышку, не заполняя там вообще никаких полей:
Используем его:
Больше мы домены не светим, но пользователь по прежнему видит предупреждение о сертификате, что тоже не очень красиво. Хотя в целом можно оставить и так. Я всегда так и делал. А недавно увидел новое для себя решение этой же проблемы, чтобы пользователю показать сразу ошибку, без всяких предупреждений. Выглядит это вот так. Показываю сразу итоговый вариант:
Объединил для удобства оба протокола. Ключевой момент тут в настройке
Не увидел тут никаких подводных камней. Взял на вооружение, обновил свой стандартный конфиг default.conf для подобных настроек.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#nginx #webserver #angie
server {
listen 80 default_server;
server_name _;
return 404;
}
С 80-м портом и протоколом HTTP проблем обычно нет. А вот с HTTPS есть нюансы, так как нам нужно использовать сертификат. Доверенный сертификат на IP адрес получить нельзя. По крайней мере я не знаю, как это сделать. Если сертификат не указать, то будет использован сертификат первого в конфигурации виртуального хоста, где он указан. То есть если сделать вот так:
server {
listen 443 ssl default_server;
server_name _;
return 404;
}
То пользователь, который зайдёт по IP адресу на сервер, увидит сначала предупреждение о том, что имя домена в сертификате не соответствует домену в адресной строке браузера. А когда согласится перейти по адресу, в свойствах сертификата можно будет увидеть адрес виртуального домена, сертификат которого использован.
Можно выйти из этой ситуации, выпустив самоподписанный сертификат-пустышку, не заполняя там вообще никаких полей:
# openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/nginx/certs/nginx.key -out /etc/nginx/certs/nginx.crt
Используем его:
server {
listen 443 ssl default_server;
server_name _;
ssl_certificate /etc/nginx/certs/nginx.crt;
ssl_certificate_key /etc/nginx/certs/nginx.key;
return 404;
}
Больше мы домены не светим, но пользователь по прежнему видит предупреждение о сертификате, что тоже не очень красиво. Хотя в целом можно оставить и так. Я всегда так и делал. А недавно увидел новое для себя решение этой же проблемы, чтобы пользователю показать сразу ошибку, без всяких предупреждений. Выглядит это вот так. Показываю сразу итоговый вариант:
server {
listen 80 default_server;
listen 443 ssl default_server;
server_name _;
ssl_reject_handshake on;
return 404;
}
Объединил для удобства оба протокола. Ключевой момент тут в настройке
ssl_reject_handshake on
. Когда она включена, веб сервер отклоняет все попытки соединения, где адрес сервера не совпадает с тем, что указано в директиве server_name
. Тут у нас в этой директиве _
, так что все соединения будут сразу отклоняться. Пользователь сразу увидит ошибку без необходимости выполнять какие-либо действия. Не увидел тут никаких подводных камней. Взял на вооружение, обновил свой стандартный конфиг default.conf для подобных настроек.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#nginx #webserver #angie
4👍301👎4