• Вечный сервер — как избавиться от ежемесячных платежей за хостинг



      — На вашем счету недостаточно средств для продления услуги. Вся ваша работа за 10 лет будет уничтожена в течение 2 рабочих дней.


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

      В статье мы расскажем как избавиться от регулярных платежей на содержание хостинга, доменных имен, SSL-сертификатов. И как сделать максимально автономный сервер, который переживет зомби-апокалипсис.
      Читать дальше →
    • Задержать COVID-19. Все про фильтрацию воздуха на случай пандемии

      • Tutorial
      По материалам из телеграм-канала LAB66 и присоединенного к нему чата.

      Это время для фактов, а не для страха. Это время для науки, а не слухов. Это время солидарности, а не охоты на ведьм…
      директор ВОЗ Tedros Adhanom Ghebreyesus про эпидемию COVID-19
      Прошло немного времени с момента публикации моей статьи про респираторную защиту во время эпидемии. За это время, отчасти благодаря активному обсуждению в «приканальном» чате выработалась некоторая система, которой бы я хотел поделится и с читателями хабра. Вынудило меня написать эту статью то, что из-за коронавируса поднялся нездоровый хайп, на волне которого на поверхность начала всплывать совсем не та информация, которая всплывать должна была бы (равно как и внезапно подскочили до х40 раз цены на респираторы, притом все без разбора). Так что нужно расставить точки над i. Под катом читаем про подбор правильного респиратора, про сборку кастомных фильтров и стерилизацию зараженных средств защиты. Ответы на вопросы.

      Настоятельно рекомендую «в закладки». Буду рад любому посильному распространению статьи. Краткий итоговый FAQ — в конце статьи.


      Собираем полумаску под себя!
    • Consul + iptables = :3

        В 2010 году у компании Wargaming было 50 серверов и простая сетевая модель: бэкенд, фронтенд и файрвол. Количество серверов росло, модель усложнялась: стейджинги, изолированные VLAN с ACL, потом VPN с VRF, VLAN c ACL на L2, VRF с ACL на L3. Закружилась голова? Дальше будет веселее.

        Когда серверов стало 16 000 работать без слез с таким количеством разнородных сегментов стало невозможно. Поэтому придумали другое решение. Взяли стек Netfilter, добавили к нему Consul как источник данных, получился быстрый распределенный файрвол. Им заменили ACL на роутерах и использовали как внешний и внутренний файрвол. Для динамического управления инструментом разработали систему BEFW, которую применили везде: от управления доступом пользователей в продуктовую сеть до изоляции сегментов сети друг от друга.



        Как это все работает и почему вам стоит присмотреться к этой системе, расскажет Иван Агарков (annmuor) — руководитель группы инфраструктурной безопасности подразделения Maintenance в Минском центре разработки компании. Иван — фанат SELinux, любит Perl, пишет код. Как руководитель группы ИБ, регулярно работает с логами, бэкапами и R&D, чтобы защищать Wargaming от хакеров и обеспечивать работу всех игровых серверов в компании.
        Читать дальше →
        • +36
        • 9.7k
        • 5
      • Python 3.5 Реализация параллелизма с использованием asyncio

        • Translation
        Перевод главы 13 Параллелизм
        из книги ‘Expert Python Programming’,
        Second Edition
        Michał Jaworski & Tarek Ziadé, 2016

        Асинхронное программирование


        В последние годы асинхронное программирование приобрело большую популярность. Python 3.5 наконец-то получил некоторые синтаксические функции, закрепляющие концепции асинхронных решений. Но это не значит, что асинхронное программирование стало возможным только начиная с Python 3.5. Многие библиотеки и фреймворки были предоставлены намного раньше, и большинство из них имеют происхождение в старых версиях Python 2. Существует даже целая альтернативная реализация Python, называемая Stackless (см. Главу 1 «Текущее состояние Python»), которая сосредоточена на этом едином подходе программирования. Для некоторых решений, таких как Twisted, Tornado или Eventlet, до сих пор существуют активные сообщества, и их действительно стоит знать. В любом случае, начиная с Python 3.5, асинхронное программирование стало проще, чем когда-либо прежде. Таким образом, ожидается, что его встроенные асинхронные функции заменят большую часть старых инструментов, или внешние проекты постепенно превратятся в своего рода высокоуровневые фреймворки, основанные на встроенных в Python.
        Читать дальше →
      • Python в Mobile development



          Ни для кого не секрет, что область применения Python довольно широка: начиная от web-технологий, игровой индустрии и заканчивая проектами NASA. Python работает практически везде: от карманных компьютеров и смартфонов до серверов сети и практически на всех известных платформах, таких как Windows, Linux/UNIX, macOS, Palm OS, Raspberry PI и так далее. Благодаря фреймворку Kivy в 2011 году Python освоил и мобильные платформы в плане разработки приложений под iOS и Android, а в 2015 с помощью библиотеки KivyMD Python научился использовать Material Design.
          Читать дальше →
        • Kivy. Сборка пакетов под Android и никакой магии


            Во вчерашней статье Python в Mobile development, в которой речь шла о библиотеке KivyMD (коллекции виджетов в стиле Material Design для использования их в кроссплатформенном фреймворке Kivy), в комментариях меня попросили рассказать о процессе сборки пакета для платформы Android. Для многих этот процесс, к сожалению, был и остается чем-то из ряда магического шаманства и не подъёмным для новичков делом. Что ж, давайте разбираться, так ли на самом деле все сложно и действительно ли я маг и волшебник…
            Читать дальше →
          • Мега-Учебник Flask, Часть 1: «Привет, Мир!»

            • Translation
            • Tutorial
            Это первая статья в серии, где я буду документировать мой опыт написания веб-приложения на Python, используя микрофреймворк Flask.

            Здесь список всех статей в серии:
            Часть 1: Привет, Мир!
            Часть 2: Шаблоны
            Часть 3: Формы
            Часть 4: База данных
            Часть 5: Вход пользователей
            Часть 6: Страница профиля и аватары
            Часть 7: Unit-тестирование
            Часть 8: Подписчики, контакты и друзья
            Часть 9: Пагинация
            Часть 10: Полнотекстовый поиск
            Часть 11: Поддержка e-mail
            Часть 12: Реконструкция
            Часть 13: Дата и время
            Часть 14: I18n and L10n
            Часть 15: Ajax
            Часть 16: Отладка, тестирование и профилирование
            Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
            Часть 18: Развертывание на Heroku Cloud

            Моя предыстория


            Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
            Я хочу начать это долгое и удивительное путешествие
          • Мои поиски физической панели управления умным домом

              Довольно давно у меня появилась мысль установить управляющую панель, расположенную рядом с входной дверью внутри квартиры/дома.


              Существует несколько вариантов реализации этой задумки:


              • сенсорная панель оператора ПЛК;
              • планшет;
              • сенсорный дисплей, подключенный к микрокомпьютеру.


              Дополнительное требование, которое сразу ограничило выбор устройства: на панель управления автоматически должно выводиться изображение с наружной камеры при срабатывания датчика движения (и только в случае присутствия людей дома).

              Читать дальше →
            • Компактный монитор домашнего воздуха (CO2, температура, влажность, давление) с Wi-Fi и мобильным интерфейсом

                image


                Про измерение CO2 и его важность на Geektimes было уже немало публикаций (ссылки в конце статьи). Здесь же хочу описать проект компактного монитора уровня CO2, а также температуры, влажности и давления с Wi-Fi, обновлением прошивки по воздуху и интерфейсом в мобильном приложении. Сердца системы модуль на базе esp8266, сенсор CO2 MH-Z19 и фреймворк esp8266-arduino. И так, включим устройство в USB-розетку:

                Читать дальше →
              • Вентиляция с рекуперацией в квартире. Без воздуховодов и СМС

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


                  Это КДПВ блок рекуперации/регенерации. Надеюсь, ни у кого нет трипофобии?

                  Итак, всё началось с духоты. Точнее, с утепления квартиры слоем экструзионного пенополистирола по всему периметру (панельная 9-этажка родом из 80-х, с кучей сквозящих углов). В результате чего, квартира стала условно герметичной и вопрос свежего воздуха встал в полный рост.
                  Читать дальше →
                • Полнодисковое шифрование Windows Linux установленных систем. Зашифрованная мультизагрузка

                  • Tutorial

                  Обновленное свое же руководство по полнодисковому шифрованию в рунете V0.2

                  Ковбойская стратегия:


                  [A] блочное системное шифрование Windows 7 установленной системы;
                  [B] блочное системное шифрование GNU/Linux (Debian) установленной системы (включая /boot);
                  [C] настройка GRUB2, защита загрузчика цифровой подписью/аутентификацией/хэшированием;
                  [D] зачистка — уничтожение нешифрованных данных;
                  [E] универсальное резервное копирование зашифрованных ОС;
                  [F] атака <на п.[C6]> цель — загрузчик GRUB2;
                  [G] полезная документация.

                  ╭───Схема #комнаты 40# <BIOS/MBR/1HDD без lvm>:
                  ├──╼ Windows 7 установленная — шифрование полное системное, не скрытое;
                  ├──╼ GNU/Linux установленная (Debian и производные дистрибутивы) — шифрование полное системное не скрытое(/, включая /boot; swap);
                  ├──╼ независимые загрузчики: загрузчик VeraCrypt установлен в MBR, загрузчик GRUB2 установлен в расширенный раздел;
                  ├──╼ установка/переустановка ОС не требуется;
                  └──╼ используемое криптографическое ПО: VeraCrypt; Cryptsetup; GnuPG; Seahorse; Hashdeep; GRUB2 – свободное/бесплатное.
                  Читать дальше →
                • Как я чуть не выкинул 150к на ветер или история установки приточной вентиляции в квартире

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


                    Читать дальше →
                  • Приготовься к введению в России социального рейтинга

                    image

                    Уже сегодня банки формируют свои предложения исходя из данных собранных их приложениями на смартфонах клиентов. В частности ставка по кредиту, которую вам предложат, сильно зависит от файлов, размещенных на вашем устройстве, и сайтов, которые вы посещали. Именно поэтому банки так настойчиво предлагают их установить (даже отказывая в обслуживании, сославшись на возможность выполнения необходимых действий самостоятельно). Для этого банковские клиенты требуют максимальных прав на устройстве. Например, Сбербанк Онлайн утверждает, что ему необходим доступ к файловой системе для… поиска вирусов на устройстве.

                    Вам может показаться, что получение низкой ставки по кредиту за социально полезные действия- перспектива далекого будущего. Но уже сегодня ставка ипотеки для молодой семьи находится в районе 10%, тогда как остальные предложения близки к 20%. Т.е. это уже давно реальность, просто вы не придавали этому значения.

                    Я считаю, что ряд непопулярных решений будет принят в течении последнего президентского срока Владимира Путина: этому человеку больше не надо «сохранять лицо». Поэтому до 2024 года мы увидим новый виток «закручивания гаек», в том числе введение социального рейтинга в России.
                    Читать дальше →
                  • Про установку и использование LineageOS 16, F-Droid

                      Предлагаю вашему вниманию инструкцию как оптимально (по моему мнению) перейти на свободное программное обеспечение при использовании смартфона на примере операционной системы LineageOS (далее сокращённо LOS) и приложений из F-Droid.

                      Я думаю, что это статья будет вам интересна, даже если вы не можете установить себе LOS, так как в данной статье также рассмотрены стандартные настройки Android, настройки и методика использования полезных приложений, магазин приложений F-Droid, разрешения Android, которые нельзя ограничить и другие, возможно полезные для вас нюансы.
                      Читать дальше →
                    • Автоматизированное тестирование с Pytest

                      • Translation
                      Перевод статьи подготовлен специально для студентов курса «Python QA Engineer».




                      Мы живем в эпоху, когда программное обеспечение очень быстро отправляется на рынок. Из-за этого процесс разработки становится очень стрессовым. Высокие темпы внедрения ПО и быстрая доставка выглядят как хорошая составляющая бизнес-модели, однако здесь возникает вопрос о том, как поставлять программное обеспечение надлежащего качества.
                      Читать дальше →
                    • Как разработать дизайн и код персонального веб-сайта

                      Привет, Хабр! представляю вашему вниманию перевод статьи «How to Design and Code a Personal Website» автора Ryan Smith.

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

                      image
                      Читать дальше →
                      • +19
                      • 5.9k
                      • 4
                    • Индексируем миллиарды текстовых векторов

                      • Translation

                      При извлечении информации часто возникает задача поиска подобных фрагментов текста. В контексте поиска запрос может быть сгенерирован пользователем (например, текст, который пользователь вводит в поисковом движке) или самой системой. Часто нам нужно сопоставлять входящий запрос с уже проиндексированными запросами. В этой статье мы рассмотрим, как можно построить систему, решающую эту задачу применительно к миллиардам запросов без траты целого состояния на серверную инфраструктуру.
                      Читать дальше →
                      • +52
                      • 6.2k
                      • 2
                    • Сборка тонкого клиента RDP на базе Raspberry Pi

                      С ростом популярности мини-ПК типа Raspberry Pi, и подобных ему клонов, возникла масса кейсов по их использованию в ИТ-инфраструктуре предприятия, умном доме / даче / гараже, и в других применениях.

                      Одним из удобных и желаемых кейсов является использование RPi как тонкого клиента, подключаемого по протоколу RDP к Windows-системам.

                      Если Вам интересно, как настроить такое место на базе Raspberry Pi, причем так, чтобы «настроить и забыть» — добро пожаловать под кат. Для совсем ленивых есть готовый образ (см. раздел 6.Б).

                      Картинка для привлечения внимания

                      Читать дальше →
                    • 10 хитростей Python, о которых полезно знать

                      • Translation
                      По данным StackOverflow Python — это самый быстрорастущий язык программирования. Например, в одном из отчётов Forbes речь идёт о том, что использование Python выросло на 456%. Python применяется в Netflix, в IBM, и ещё в тысячах компаний по всему миру. Давайте не забывать и о Dropbox. Сервисы этой компании тоже написаны на Python. В соответствии с исследованием Dice, знания в области Python весьма востребованы в наши дни, а индекс популярности языков программирования говорит о том, что Python — это сегодня самый популярный язык в мире. Если сравнить Python с другими языками, то окажется, что у него есть следующие сильные стороны:

                      1. Совместимость с подавляющим большинством платформ и операционных систем.
                      2. Наличие множества опенсорсных фреймворков и инструментов.
                      3. Код, который легко читать и поддерживать.
                      4. Надёжная стандартная библиотека.
                      5. Стандартный механизм разработки через тестирование.


                      Читать дальше →
                    • Что случится с покупками в зарубежных интернет-магазинах с 1 января 2020 года



                        Чехарда! Новые законы то принимаются, то отменяются, постоянно идут десятки предложений из самых разных углов, от руководства таможни до Минэкономразвития. Условия перевозки посылок меняются с незавидной регулярностью. Вот краткое содержание этого кордебалета, если интересно.


                        Теперь окончательно оформились условия на 2020 год. Нас ждёт новое урезание беспошлинного лимита и в целом более жесткие правила. Но в попытках ограничить иностранные интернет-покупки правительство и АКИТ на этот раз могут получить обратный эффект.

                        Читать дальше →