• Астрософт для наблюдения за космосом с телефона



      С помощью нового смартфона ASUS ZenFone 3 Zoom (или любого другого ZenFone-смартфона) можно не только делать качественные снимки, но и осуществить свою мечту. Если, конечно, вы мечтаете больше времени посвящать изучению ночного неба и космоса.

      Астрософт для смартфонов — это широкий спектр программ для наблюдения за ночным (и не только) небом, от простого картографического справочника и планировщика наблюдений до карманного планетария. В App Store или Google Play есть десятки приложений на тему астрономии. Ориентируясь на оценки пользователей, мы выбрали лучший софт для наблюдения за космическими объектами.

      Обзор посвящен Android-приложениям, но вы легко можете найти аналоги (во многих случаях одноименные) для iOS.
      Читать дальше →
      • +21
      • 14,8k
      • 5
    • Схватка двух ёкодзун



        Осталось менее суток до начала продаж новых процессоров AMD EPYC™ Rome. В этой статье мы решили вспомнить, с чего начиналась история соперничества двух крупнейших производителей CPU.

        Первым 8-битным коммерчески доступным процессором в мире стал Intel® i8008, выпущенный в 1972 году. Процессор имел тактовую частоту в 200 кГц, был выполнен по 10 мкм (10000 нм) технологическому процессу и предназначался для «продвинутых» калькуляторов, терминалов ввода-вывода и автоматов бутылочного разлива.

        Читать дальше →
      • Про безопасные noVNC-консоли, автоскейлинг в Kubernetes, Haproxy в «Островке» и работу админов с программистами



          Выкладываем видеозаписи докладов с Selectel MeetUp: системное администрирование.

          Небольшая предыстория


          Selectel MeetUp ― это встречи с короткими докладами и живым общением. Идея мероприятия проста: послушать классных спикеров, пообщаться с коллегами, обменяться опытом, рассказать про свои проблемы и услышать, как их решали другие. В целом, все то, что называют нетворкингом в IT-сообществе.

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

          12 сентября прошла первая встреча в новом формате. Вместе со спикерами из «ВКонтакте», UseDesk, Studyworld обсудили состояние и перспективы клиентского сервиса в русском IT. На этом решили не останавливаться.

          3 октября в Selectel прошел митап для системных администраторов. В этот раз пригласили спикеров из компаний Cogia.de, «Островок» и Digital Vision Labs. Говорили про Kubernetes, legacy code в современных системах и работе администраторов с другими отделами. Представьте ― Питер, вечер, дождь, а у нас полный конференц-зал сисадминов. Ну как здесь не воодушевиться? Вадим Исаканов на свое выступление вообще из Челябинска приехал.

          Пока мы думаем над темой следующего митапа, под катом публикуем записи докладов.
          Читать дальше →
        • Вымирание компьютерных файлов

          • Перевод

          Новомодные технологические сервисы меняют наши интернет-привычки.




          Я люблю файлы. Мне нравится переименовывать их, перемещать, сортировать, изменять способ отображения в папке, создавать резервные копии, выгружать их в интернет, восстанавливать, копировать и даже дефрагментировать их. Как метафора способа хранения информационного блока, я думаю, они великолепны. Мне нравится файл как единое целое. Если мне нужно написать статью, она окажется в файле. Если мне нужно выдать в свет изображение, оно будет в файле.
          Читать дальше →
        • Настраиваем HTTPS-сервер на nginx

          Для чего я это пишу?


          В последнее время в связи с кучей факторов (АНБ, DPI с рекламой и другое) у меня начала просыпаться паранойя и я подумал полностью перевести свой небольшой сайт на https. На хабре было несколько статей с техническими подробностями работы SSL/TLS, однако поискав информацию на тему настройки https-вебсервера обнаружил традиционное деление статей — либо это статьи «Делайте вот так», где просто даны настройки без каких-либо разъяснений и вариантов использования, либо это большие теоретические статьи, где обсуждаются различные схемы использования, но без практически применимых готовых вариантов. На хабре была статья о настройке, однако в ней нет информации про DH-кодировки, да и некоторые параметры не описаны. Подумал, что стоит упорядочить найденное в виде статьи, которая будет полезна тем, кто хотел бы развернуть https у себя на сервере, но не слишком углубляться в дебри SSL.

          Повествование будет вестись с учетом того, что веб-сервером выступает nginx (и в одном месте будет параметр для php-fpm).
          Читать дальше →
        • Увеличение LVM диска в виртуальной машине на лету

            Продолжая тему, описанную здесь habrahabr.ru/post/252973, опять пишу про увеличение дисков виртуальных машин.
            Конфигурация следующая:
            Гипервизор сервер Supermicro с KVM и libvirt на Ubuntu.
            Гости — Ubuntu с LVM2.
            Задача:
            Увеличить размер системного дисков без выключения/перезагрузки гостевой ОС.

            В комментариях к предыдущей статье habrahabr.ru/post/252973/#comment_8330673 farcaller написал:
            Системный тоже можно на лету отресайзить. Для этого в libvirt есть команда:
            virsh qemu-monitor-command resized-virtual-machine --hmp «block_resize $DRIVENAME $NEWSIZE»

            Для HA проектов это очень важный момент, необходимо непрерывное функционирование сервиса.
            Я решил попробовать изменить размер диска при помощи virsh.
            Ниже результаты этого успешного эксперимента.
            Читать дальше →
            • +10
            • 35,3k
            • 7
          • Настраиваем top в GNU/Linux

              Однажды мой знакомый, который на тот момент администрировал некое веб-приложение на сервере под управлением GNU/Linux, пожаловался на одного вредного администратора сервера. Тот ни в какую не хотел устанавливать htop, несмотря на все просьбы.

              Я немного удивился и поинтересовался, в чём причина такого странного поведения. Если упростить, то дальнейший наш диалог получился вот таким:
              Читать дальше →
            • Mikrotik. IPSEC vpn за NAT как клиент

              Доброго всем дня!

              Так уж сложилось, что в нашей компании в течении последних двух лет мы потихоньку переходим на микротики. Основные узлы построены на CCR1072, а локальные точки подключения компов на устройствах попроще. Само собой существует и объединение сетей по IPSEC tunnel, в данном случае настройка достаточно проста и не вызывает никаких трудностей, благо есть множество материалов в сети. А вот с мобильным подключением клиентов есть определенные трудности, вики производителя подсказывает, как использовать Shrew soft VPN client (по этой настройке все вроде понятно) и именно этот клиент использует 99% пользователей удаленного доступа, а 1% это я, мне стало просто лень каждый раз вводить логин и пароль в клиент и захотелось ленивого расположения на диване и удобного подключения к рабочим сетям. Инструкций по настройки Микротика для ситуаций, когда он находится даже не за серым адресом, а совсем за черным и может быть даже несколькими NAT в сети я не нашел. Потому пришлось импровизировать, а потому предлагаю посмотреть на результат.

              Имеется:

              1. CCR1072 как основное устройство. версия 6.44.1
              2. CAP ac как домашняя точка подключения. версия 6.44.1

              Главная особенность настройки в том, что ПК и микротик должны находиться в одной сети с одной адресацией, что и выдается основым 1072.
              Читать дальше →
              • +13
              • 9,6k
              • 5
            • Готовим NSA SELinux

              • Tutorial
              NSA logoПривет Хабр! Данным постом я хочу немножно отвлечь многоуважаемое сообщество от пересуд на тему АНБ, и вместо этого заполнить пробел в описании одной их технологии, написав нечто среднее между «отключайте SELinux» и «посвятите ему лучшие годы чтобы понять малую часть». На самом деле, обе эти точки зрения одинаково далеки от правды — технология достаточно проста, прозрачна и позволяет сделать очень многое. Однако, хочу предупредить об огромном количестве букв, и достаточно узкой целевой аудитории, т.к. нижеописанное будет интересно далеко не всем. Если вы давно хотели понять, что такое SELinux, но не знали с какой стороны подступиться — эта статья для вас. Если вы давно все это знаете и успешно применяете, то я допустил достаточно неточностей, чтобы мы смогли обсудить это в комментариях. Ну а эксперты по ИБ с мировым именем могут смело проматывать в самый конец и начинать играть, у меня есть планы на продолжение :-)
              Я не буду в статье касаться тем связанных с АНБ в целом, способностью расшифровывать RSA, прослушкой и прочими медийными аспектами — no hype, no FUD, only technology. Мы будем с разной степенью активности влезать в разные исходники, добавлять свои условия в само сердце MLS, возможно внедряя свои уязвимости (мы тоже делаем ошибки), и после этого попытаемся взлететь проведем тесты. Иными словами, я описываю что и как, а вы после этого уже не смотрите на SELinux как на неведому зверушку и обитель зла от вероятного противника, а смело начинаете использовать эту технологию во благо. Особенно учитывая, что она уже включена во всех ваших андроидах (>4.3) и многих дистрибутивах.
              Итак, если вам все еще интересно, и вы не боитесь просидеть неделю в одном из многочисленных спойлеров, то
              давайте настраивать military grade security
            • Обзор IPSec в Mikrotik

                IPSec (IP Security) — набор протоколов и алгоритмов для шифрования данных в IPv4 и IPv6 сетях. Звучит не сложно, но IPSec не устанавливает четких правил для шифрования трафика, вместо этого разработчики реализуют набор инструментов (протоколов и алгоритмов), используя которые администратор создает защищенный канал для данных.


                Я хочу затронуть тему IPSec в RouterOS немного глубже простого HOWTO, с минимальным погружением в теорию и примерами по настройке и отладки IPSec. Это не гайд и без практики на тестовом стенде не рекомендуется приступать к настройке реальных туннелей и VPN серверов.

                Читать дальше →
              • Двойной VPN в один клик. Как легко разделить IP-адрес точки входа и выхода



                  TL;DR В статье описывается самый простой способ настроить VPN-сервер, у которого IP-адрес для подключения VPN-клиентов отличается от IP-адреса, с которого клиенты выходят в интернет.

                  Используете VPN для защиты приватности в интернете и арендуете для этого свой личный сервер? При этом вы единственный клиент, который подключается к этому серверу во всем мире? Так ли сложно найти ваш реальный IP-адрес, как вам кажется? С вступлением в силу пакета Яровой, это становится намного проще.

                  Double VPN — популярная тема, вокруг которой много спекуляций. Часто этим термином называют совершенно разные технологии, но почти всегда это означает разнесенные на уровне IP-адресов точки подключения и выхода в интернет. Мы рассмотрим самый простой способ настройки VPN-сервера в таком режиме, который не требует дополнительной настройки на серверной стороне и позволяет получить максимальную скорость и самые низкие задержки.
                  Читать дальше →
                • Только не говорите, что вы таким не были или мой взгляд на обучение

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


                  Помните свой первый код на PHP?


                  Нет, не этот:


                  <?
                      echo "Hello world"; // и в браузере у нас скачивается index.php :)
                  ?>

                  А вот этот:


                  <?
                      include "db.php";
                      if ($_GET['id'] > 0){
                          mysql_query("SELECT * FROM `posts` WHERE id = {$_GET['id']}");
                      }else{
                          mysql_query("SELECT * FROM `posts` ORDER BY `id` DESC");
                      }
                  ?>
                  Читать дальше →
                • Перенос настроек пользователи при включении компьютера в новый домен.

                    В один «прекрасный» день у вас падает домен или безбожно глючит AD и приходит понимание, что пора его переставлять. В принципе переустановка DC займёт очень мало времени относительно перевключения и перенастройки всех копьютеров и учётных записей.
                    Так вот есть способ сэкономить время. Существует возможность перенести учётную запись пользователя практически без потерь с минимальными временными затратами.
                    Поехали
                    1 Запоминаем имя учётной записи, к примеру username, и перевключаем машину в новый домен, в одну из перезагрузок переименуйте учётку в username_, если новая будет с таким же именем. (Когда будете перевключать, не забудьте убедиться, что есть доступ к локальному админу).
                    2 Заходите под учёткой username в новом домене, в Documents and settings теперь присутствуют username и username_(наша старая учётка).
                    3 Перезагружаемся, иногда достаточно завершить сеанс, главное, чтобы выгрузился файл ntuser.dat.
                    4 Заходим под Domai Admin, удаляем Documents and settings\username и переименовываем username_ в username.
                    5 Теперь самое интересное: во вкладке безопасность даём полный доступ к папке username, пользователю username, заходим в дополнительно и выбираем галочку- заменить разрешения для всех дочерних объектов… если учётка большая можно покурить, попить чаю или заняться следующим компом.
                    6 Следующий шаг, надо дать права на ветку реестра с пользовательскими настройками. Они хранятся в файле ntuser.dat. Запускаем regedit.exe, встаём
                    на ветку HKLM заходим File-load Hive/Файл-загрузить куст, заходим Documents and settings\username выбираем файл ntuser.dat. Когда он подключается, нажимаем ПКМ на появившейся ветке и заходим в разрешения, там даём полный доступ пользователю username, аналогично п. 5, по завершению процесса выгружаем куст. Перезагружаемся.
                    7 Заходим под username и радуемся(надеюсь).
                    P.S Уже около года применяю этот способ, обычно всё проходит штатно даже картинка рабочего стола остаётся и различные пароли, только в п. 6 иногда выдёт сообщение, что не удалось применить права, но на результат не влияет. Недавно наткнулся на программу User Profile Wizard 3.0 www.forensit.com/domain-migration.html, но потестировать её ещё не получилось.
                  • Новая игра со старой атмосферой на Three.js

                      Существует множество поклонников старых игр. И они не прочь пустить скупую ностальгическую слезу и нет-нет, да сыграть в «Арканоид», «Пакмана» или «Принца Персии», как двадцать, тридцать, сорок или — подставьте нужное число — лет назад. DOS-box и эмуляторы — им в помощь. Да, что там, я недавно смотрел стрим самого первого 2D «Принца Персии» на Ютьюбе, где довольно молодой «стример» после прохождения очередного смертельного препятствия, смахнув со лба пот рукой, изрек: «Мне еще никогда не было так страшно в компьютерной игре». То есть, даже молодежь способна оценить хардкорность и крутизну старых игр.


                      Я подумал, а почему бы не создать новую игру в подобном стиле? Да, существуют различные ремейки и клоны. Также, радуют современные игры в стиле пиксель-арт. Однако, все они, как правило, повторяют квесты, механики и иногда вообще полностью левел-дизайн старых игр, по мотивам которых они сделаны. Ну либо, наоборот, предлагают совершенно новый сюжет и локации, являя собой просто визуальную стилизацию «под старину». А что, если представить, какой была бы новая часть старой игры, выйди она следом за последней из серии? Я решил такую создать.
                      Читать дальше →
                    • Почему не 1С?



                        Совсем недавно мы опубликовали статью с описанием проблем одной из самых популярных технологий, используемых в IT, и на наше удивление она вызвала достаточно живой интерес (во всяком случае для технической статьи). Поэтому мы решили на этом не останавливаться, и сегодня мы «идем в гости» к одному из самых популярных продуктов на российском рынке разработки бизнес-приложений — платформе 1С.

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

                        Статей с критикой 1С на Хабре достаточно (например, один, два, три), но, на мой взгляд, они либо слишком много внимания уделяют всяким мелочам, вроде неправильной организации меню, либо рассуждают о слишком абстрактных вещах, в которых 1С, возможно, и не виноват. В этой же статье, как и в статье про SQL, речь пойдет исключительно о фундаментальных (и вполне осязаемых) проблемах, которые касаются всех и каждого, кто разрабатывает / дорабатывает решения на 1С, и приводят либо к существенному росту порога вхождения, либо к серьезному падению производительности, либо к значительным трудозатратам со стороны разработчика.
                        Читать дальше →
                      • Как IPv6 помогает роутеры ломать

                          image

                          Предисловие


                          Проснулся я сегодня с мыслью, что огромное количество инструкций по настройке NAT советуют использовать строку вида:
                          iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

                          Многие понимают проблемы этой конструкции, и советуют добавлять:
                          iptables -A FORWARD -i ppp0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT

                          Но, зачастую, забывают задать таблице FORWARD действие DROP по умолчанию, или добавить правило REJECT в конец таблицы.
                          На первый взгляд, вроде бы, все кажется нормальным. Однако, это далеко не так. Дело в том, что если не запретить маршрутизировать трафик из WAN-порта в WAN-порт, кто-нибудь из вашей WAN-сети (предположим, что провайдер садит весь подъезд в одну /24) может маршрутизировать трафик через вас, просто прописав ваш IP в качестве шлюза. Все современные SOHO роутеры это учитывают, а вот неопытный администратор, который делает роутер под обычным linux, может не знать или забыть об этом. В подсети моего провайдера таких роутеров не оказалось, и мой план по захвату мира провалился. Однако, статья совсем не об этом.

                          Магические двоеточия


                          Как вы, может быть, знаете, многие современные программы и сервисы биндятся на IP :: (два двоеточия), а не на 0.0.0.0, как было раньше. IPv6 адрес :: значит то же самое, что и IPv4 0.0.0.0, т.е. «слушаем все интерфейсы». Многие считают, что если программа слушает ::, то этот сокет может принимать только IPv6-соединения, однако это далеко не так.
                          В IPv6 есть так называемое отображение IPv4-адресов в IPv6 диапазон. Если программа слушает сокет ::, а к ней обращаются из IPv4-адреса 1.2.3.4, то программа получит соединение с адреса ::ffff:1.2.3.4. Этого можно избежать, сделав:
                          sysctl -w net.ipv6.bindv6only=1

                          Но это нужно далеко не всегда, т.к. обычно удобно, что программа слушает один сокет, а получать соединения может по двум протоколам сразу. Практически во всех дистрибутивах, IPv6-сокеты ведут себя именно так, т.е. bindv6only=0.
                          Читать дальше →
                        • Telegram наносит ответный удар DPI и блокировкам — Fake TLS

                            image

                            Telegram тестирует новый вариант обхода блокировок — маскировка трафика под обычный TLS (https).
                            Предистория: Попытки заблокировать Telegram происходят в разных странах, первый вариант блокировки был простым — блокировка IP адресов серверов Telegram.

                            Telegram достаточно успешно отбивается от этой атаки, переодически меняя IP с которых он доступен, однако это вызывает долгий первичный Connecting…

                            Чуть позднее стали доступны Socks прокси, однако протокол не подразумевает шифрования и это позволяло достаточно просто смотреть «внутрь» socks туннеля определяя, что внутри него — Telegram, блокируя прокси.

                            Следующим раундом стал — выпуск MTProto Proxy — прокси сервера от Telegram, который использует свой протокол MTProto, однако и он обладал некоторыми проблемами — размер пакетов достаточно характерный и специфичный, и многие DPI начали определять Telegram уже после первого пакета — блокируя доступ.

                            Ответом на такое поведение стало введение новой версии протокола MTProto — с случайной длиной, теперь определить что перед нами Telegram туннель — сложнее, часть DPI начали классифицировать трафик как «другое» часть все же научились выявлять характерный паттерн и с некоторой вероятностью (не 100%) определять, что трафик относится к Telegram
                            Сейчас мы переходим на следующий этап (похоже финальный или пред-финальный) — стеганография.
                            Стеганогра́фия (от греч. στεγανός «скрытый» + γράφω «пишу»; букв. «тайнопись») — способ передачи или хранения информации с учётом сохранения в тайне самого факта такой передачи (хранения).
                            Другими словами — теперь Telegram будет притворяться обычным TLS (https) трафиком.
                            Читать дальше →
                          • Dell Latitude 7400 2-in-1: красивый и лёгкий корпоративный ноутбук-трансформер с металлическим корпусом

                              Линейка корпоративных ноутбуков Dell Latitude меняется: первым гаджетом серии с совершенно новым дизайном стал трансформер Dell Latitude 7400. О нём мы и хотим вам подробно сегодня рассказать. Это очень лёгкая и компактная машина со множеством портов, потрясающей автономностью, качественным экраном и эффектным металлическим корпусом.


                              Читать дальше →
                            • Хранилища в Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

                              • Перевод


                              Обновление!. В комментах один из читателей предложил попробовать Linstor (возможно, он сам над ним работает), так что я добавил раздел об этом решении. Еще я написал пост о том, как его установить, потому что процесс сильно отличается от остальных.


                              Если честно, я сдался и отказался от Kubernetes (во всяком случае, пока). Буду использовать Heroku. Почему? Из-за хранения! Кто бы мог подумать, что я буду больше возиться с хранилищами, чем с самим Kubernetes. Я использую Hetzner Cloud, потому что это недорого и производительность хорошая, и с самого начала я развертывал кластеры с помощью Rancher. Я не пробовал управляемые сервисы Kubernetes от Google/Amazon/Microsoft/DigitalOcean и проч., проч., потому что всему хотел научиться сам. А еще я экономный.

                              Читать дальше →
                              • +25
                              • 5,2k
                              • 2
                            • VPN везде и всюду: IPsec без L2TP со strongSwan

                                image
                                достаточно сильный лебедь

                                Если вы когда-либо искали VPN, который будет работать на десктопах, мобильных устройствах и роутерах без установки дополнительного ПО и перепрошивки роутера, вы, вероятно, выбирали между PPTP и L2TP+IPsec. У протокола PPTP имеются проблемы с безопасностью и прохождением через брандмауеры и NAT, так что в 2015 году его уже использовать не стоит, а использование L2TP излишне, т.к. L2 VPN, по моему мнению, для обычного удаленного доступа не нужен практически никогда.

                                Удивительно, что в интернете не так-то просто можно найти информацию о настройке чего-то помимо L2TP+IPsec в транспортном режиме, учитывая, что это обширный стек протоколов, который можно конфигурировать буквально как душе угодно, поэтому я попытаюсь устранить такое несовершенство мира.

                                Небольшое введение в мир IPsec

                                Вообще говоря, не совсем правильно называть IPsec VPN. IPsec не предназначен для построения «виртуальных частных сетей», а создан для шифрования или защиты от подмены передаваемых по IP данных. Это специальный слой поверх IP, который, в зависимости от режима и настроек, работает по-разному. В отличие от привычного VPN, который создает новый интерфейс в системе, на который вы, как это чаще всего бывает, назначаете IP-подсеть из диапазона частных адресов (т.е. создаете новый сетевой сегмент), и через который маршрутизируется трафик в зашифрованном виде, IPsec просто шифрует трафик магическим образом между «внешними» интерфейсами сервера и клиента.
                                Читать дальше →