Pull to refresh
0
@AcAlexread⁠-⁠only

User

Send message

Внедрение MSA в виртуализированном окружении предприятия

Reading time8 min
Views37K
Виртуализация стала в современных ИТ темой номер один. По данным VMware, уровень виртуализации серверов в России вырос в 2014 году до 30%, удвоившись за три года. В результате увеличивается эффективность использования серверов: по разным оценкам, средний коэффициент их загрузки составляет теперь от 50% до 80%, что означает снижение потребности в физических серверах. Не удивительно, что технологию виртуализации всё активнее используют не только крупные компании и организации, но и предприятия малого бизнеса. В первую очередь речь идёт о серверной виртуализации.


Читать дальше →
Total votes 36: ↑36 and ↓0+36
Comments17

Обход блокировки запрещенного сайта вебмастером без настроек и ПО на стороне клиента

Reading time3 min
Views91K
Увидел я как-то IPv6 Teredo пиров в µTorrent под Windows, которые качали куски с довольно приличной скоростью, и тут меня осенило…

Что такое Teredo?

Teredo — технология туннелирования IPv6 через IPv4 UDP-пакеты. Она задумывалась как переходная технология, которая работает за NAT, и, в общем, более-менее выполняет возложенные на нее обязанности. Teredo позволяет получить доступ в IPv6-интернет через публичные Teredo-серверы. Интересно то, что в Windows 7, 8 и 8.1 Teredo настроен и включен по умолчанию, прямо из коробки, и использует сервер Teredo от Microsoft (teredo.ipv6.microsoft.com).

Зачем это нам?

Веб-сайты, определенные ссылки которых по тем или иным причинам оказались в реестре запрещенных сайтов, могут организовать доступ с использованием Teredo, что позволит вернуть доступ к сайту примерно 80-85% пользователям современных версий Windows без дополнительных настроек и ПО! Доступ через Teredo позволяет обойти все протестированные DPI-решения, применяемые провайдерами. Роскомнадзор не только не может внести такие страницы в реестр, но и не может получить к ним доступ (вероятно, Teredo у них не работает):
Скрытый текст
Здравствуйте
Благодарим Вас за активную гражданскую позицию, однако сообщаем, что Ваша заявка была отклонена по следующим возможным причинам:
— на момент проведения проверки экспертами, указанный в Вашем обращении адрес http://[2001:0:9d38:6ab8:30c4:d940:9469:f43e]/ был не доступен;
— указанный в Вашем обращение адрес http://[2001:0:9d38:6ab8:30c4:d940:9469:f43e]/ указан неверно, либо идет перенаправление на другой адрес;
— указанный в Вашем обращение адрес http://[2001:0:9d38:6ab8:30c4:d940:9469:f43e]/ требует обязательной регистрации/авторизации.
С уважением,
ФЕДЕРАЛЬНАЯ СЛУЖБА ПО НАДЗОРУ В СФЕРЕ СВЯЗИ, ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И МАССОВЫХ КОММУНИКАЦИЙ.
К тому же, у Роскомнадзора нет полномочий блокировать страницы, которые перенаправляют на другие страницы, и кнопка «Актуальный Навальный» тому подтверждение.

Особенности сервера Teredo от Microsoft

Для доступа в «обычный» IPv6, в Teredo используются Relay-серверы, которые имеют полный IPv6-доступ и работают как прокси-серверы. В свою очередь, relay-серверы Teredo от Microsoft не позволяют получить доступ в «обычный» IPv6 или к другим Teredo-серверам, разрешая только связность Teredo-клиентов, настроенных на сервер Microsoft, и образуя такую большую закрытую сеть из Windows-компьютеров.
Читать дальше →
Total votes 52: ↑49 and ↓3+46
Comments80

Админские байки: в погоне за фрагментацией туннелей в оверлейной сети

Reading time10 min
Views21K

Лирическое вступление


Когда администраторы сталкиваются с неожиданной проблемой (раньше работало, и, вдруг, после обновления, перестало), у них существует два возможных алгоритма поведения: fight or flight. То есть либо разбиратся в проблеме до победного конца, либо убежать от проблемы не вникая в её суть. В контексте обновления ПО — откатиться назад.

Откатиться после неудачного апгрейда — это, можно сказать, печальная best practice. Существуют целые руководства как готовиться к откату, как их проводить, и что делать, если откатиться не удалось. Целая индустрия трусливого поведения.

Альтернативный путь — разбираться до последнего. Это очень тяжёлый путь, в котором никто не обещает успеха, объём затраченных усилий будет несравним с результатом, а на выходе будет лишь чуть большее понимание произошедшего.

Завязка драмы


Облако «Instant Servers» Webzillа. Рутинное обновление хоста nova-compute. Новый live image (у нас используется PXE-загрузка), отработавший шеф. Всё хорошо. Внезапно, жалоба от клиента: «одна из виртуалок странно работает, вроде работает, но как начинается реальная нагрузка, так всё замирает». Инстансы клиента переносим на другую ноду, проблема клиента решена. Начинается наша проблема. Запускаем инстанс на этой ноде. Картинка: логин по ssh на Cirros успешен, на Ubuntu — зависает. ssh -v показывает, что всё останавливается на этапе «debug1: SSH2_MSG_KEXINIT sent».

Все возможные внешние методы отладки работают — метаданные получаются, DHCP-аренда инстансом обновляется. Возникает подозрение, что инстанс не получает опцию DHCP с MTU. Tcpdump показывает, что опция отправляется, но не известно, принимает ли её инстанс.

Нам очень хочется попасть на инстанс, но на Cirros, куда мы можем попасть, MTU правильный, а на Ubuntu, в отношении которой есть подозрение о проблеме MTU, мы как раз попасть не можем. Но очень хотим.

Если это проблема с MTU, то у нас есть внезапный помощник. Это IPv6. При том, что «белые» IPv6 мы не выделяем (извините, оно пока что не production-ready в openstack), link-local IPv6 работают.
Читать дальше →
Total votes 40: ↑39 and ↓1+38
Comments35

Мигрируем на HTTPS

Reading time5 min
Views124K
В переводе этого документа описываются шаги, которые необходимо предпринять для перевода вашего сайта с HTTP на HTTPS. Шаги можно выполнять с любой скоростью – либо всё за день, либо один шаг за месяц. Главное, делать это последовательно.

Каждый шаг улучшает ваш сервер и важен сам по себе. Однако, сделать их все – обязательно для того, чтобы гарантировать безопасность вашим посетителям.
Читать дальше →
Total votes 57: ↑49 and ↓8+41
Comments16

Nginx и https. Получаем класс А+

Reading time4 min
Views161K
image

Недавно вспомнилось мне, что есть такой сервис — StartSsl, который совершенно бесплатно раздаёт trusted сертификаты владельцам доменов для личного использования. Да и выходные попались свободные. В общем сейчас напишу, как в nginx настроить HTTPS, чтобы при проверке в SSL Labs получить рейтинг А+ и обезопасить себя от последних багов с помощью выпиливания SSL.

Итак, приступим. Будем считать, что у вы уже зарегистрировались на StartSsl, прошли персональную проверку и получили вожделенный сертификат. Для начала опубликую итоговый конфиг, а после этого разберу его.
Читать дальше →
Total votes 61: ↑52 and ↓9+43
Comments85

Несколько интересных особенностей MySQL

Reading time8 min
Views63K
В не очень далеком прошлом мне пришлось покопаться немного в исходном коде MySQL, и разобраться в некоторых аспектах его работы. В ходе работы лопаткой, и эксперимeнтов, я наткнулся на несколько очень интересных особенностей, часть из которых просто забавна, а в случае некоторых бывает очень интересно понять, чем руководствовался программист, который принимал решение сделать именно так.

Начнем с такого интересного типа, как ENUM.

mysql> CREATE TABLE enums(a ENUM('c', 'a', 'b'), b INT, KEY(a));
Query OK, 0 rows affected (0.36 sec)

mysql> INSERT INTO enums VALUES('a', 1), ('b', 1), ('c', 1);
Query OK, 3 rows affected (0.05 sec)
Records: 3  Duplicates: 0  Warnings: 0


Итак, у нас есть таблица, в ней есть два столбца. У первого, a, тип ENUM, у второго, b, INT. В таблице три строки, у всех трех значение b равно 1. Интересно, чему равны минимальный и максимальный элементы в столбце a?

mysql> SELECT MIN(a), MAX(a) FROM enums;
+--------+--------+
| MIN(a) | MAX(a) |
+--------+--------+
| c      | b      |
+--------+--------+
1 row in set (0.00 sec)


Кажется странным, было бы разумно, если бы самым маленьким был 'a', а самым большим — 'c'.
А что если выбрать минимум и максимум только среди тех строк, где b = 1? То есть, среди всех строк?

mysql> SELECT MIN(a), MAX(a) FROM enums WHERE b = 1;
+--------+--------+
| MIN(a) | MAX(a) |
+--------+--------+
| a      | c      |
+--------+--------+
1 row in set (0.00 sec)


Вот так мы заставили MySQL поменять свое мнение о том, как сравнивать поля в ENUM, просто добавив предикат.
Разгадка такого поведения заключается в том, что в первом случае MySQL использует индекс, а во втором нет. Это, конечно, не объясняет, почему MySQL сравнивает ENUMы по разному для сортировки в индексе, и при обычном сравнении.

Второй пример проще и лаконичнее:

mysql> (SELECT * FROM moo LIMIT 1) LIMIT 2;
+------+
| a    |
+------+
|    1 |
|    2 |
+------+
2 rows in set (0.00 sec)


Когда я показал этот запрос своему коллеге, который занимается разработкой парсера SQL, его вопрос был не «почему этот запрос возвращает две строки», а «как надо написать SQL парсер так, чтобы такой запрос был валидным, без того, чтобы написать правило, специально разрешающее такой запрос».

Интересно, что далеко не любой SELECT в скобках сработает, в частности, UNION в скобках — это синтаксическая ошибка:

mysql> (SELECT * FROM moo UNION ALL SELECT * FROM hru) LIMIT 2;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNION ALL SELECT * FROM hru) LIMIT 2' at line 1


Еще несколько интересных примеров под катом
Читать дальше →
Total votes 113: ↑110 and ↓3+107
Comments95

Как программисты ищут квартиры

Reading time8 min
Views105K
image

На самом деле все происходит не так...

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

Проблема


Пару лет назад (наконец-то!) наступил в моей жизни момент, когда мне нужно можно было купить квартиру. Оставалось ее найти. Дело осложнялось тем, что были у меня свои взгляды на то, какой должна быть моя идеальная квартира. А именно — она должна была быть НА последнем этаже. Ну чтобы никто по мозгу не ходил. Ну и плевать на всех удобнее.
Читать дальше →
Total votes 125: ↑99 and ↓26+73
Comments96

Проверка проекта LibreOffice

Reading time27 min
Views42K
Предлагаем читателю очередную статью о проверке известного open-source проекта. В этот раз мы проверили проект LibreOffice, представляющий собой офисный пакет. В его разработке принимает участие более чем 480 программистов. Код оказался весьма качественным и регулярно проверяемым статическим анализатором Coverity. Но, как и в любом другом большом проекте, были найдены новые ошибки и недочеты, о которых мы и расскажем в статье. Для разнообразия, в этот раз нас будут сопровождать не единороги, а коровы.
Читать дальше →
Total votes 93: ↑86 and ↓7+79
Comments34

300 потрясающих бесплатных сервисов

Reading time11 min
Views1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

Читать дальше →
Total votes 341: ↑325 and ↓16+309
Comments107

Лекции Технопарка. 1 семестр. Web-технологии

Reading time4 min
Views172K
Сегодня этим постом мы открываем цикл еженедельных публикаций учебных материалов Технопарка. Если кто-то ещё не знает, Технопарк — это совместный образовательный проект Mail.Ru Group и МГТУ им. Н. Э. Баумана. На данный момент здесь проходит обучение по 20 IT-дисциплинам 91 наиболее талантливый студент. Технопарк существует с 18 ноября 2011 года, а первые счастливчики приступили к занятиям в декабре 2011 года.

Обучение в Технопарке совершенно бесплатное, оно проходит после занятий в университете. Стать участниками проекта могут студенты 3-5 курсов. Хотя для 2 и 6 курсов можем сделать исключение. Обучение длится 2 года, оно разбито на 4 семестра, в каждом из которых проходят по 3-4 предмета. Первый блок первого семестра посвящён всему, что связано с web-технологиями, от истории возникновения до программирования и безопасности web-приложений.

Лекция 1. Введение


На вводном занятии вы познакомитесь с краткой историей развития интернета, основными трендами в развитии web-приложений, облачных сервисов и мобильных приложений. Также на лекции разобрано устройство и работа несложного web-приложения, обсуждены такие фундаментальные понятия, как система адресации в интернете, домены, HTML-страницы и протокол HTTP. Напоследок кратко рассказано о CGI-скриптах, их назначении и особенностях работы.


Читать дальше →
Total votes 55: ↑51 and ↓4+47
Comments11

Манифест инженеров поддержки

Reading time7 min
Views8.3K
В настоящее время существует большое количество хороших программных решений. Почему же только немногие из них успешны? На мой взгляд по большей части причина в том, что они недостаточно хорошо вписываются в большие корпоративные инфраструктуры, управляемые ITIL.

Для того чтобы предоставлять корпоративное решение хорошего качества недостаточно просто сделать решение, реализующее бизнес-процесс. Заказчику нужно нечто большее, чем просто решение само по себе. Со своей стороны, заказчик понимает, что ему будет нужно эксплуатировать, поддерживать, мониторить это решение. Возможно, даже интегрировать его с уже существующими, разворачивать новые инсталляции, восстанавливать упавшие, производить анализ падений, плохой производительности и тому подобные задачи поддержки и эксплуатации. Еще одним свойством решений, состоящих из большого количества компонент является способность предоставлять информацию о самой себе, быть само-описываемой. Если решение состоит из большого количества связанных друг с другом компонент, которые исполняются на большом количестве серверов, будет очень хорошо если такое решение предоставляет интерфейс, который даст возможность автоматически узнавать где и какая компонента запущена. Даже если компонента была перенесена с сервера на сервер, информация о таких изменениях должна предоставляться автоматически. В случае наличия готовой системы на основе ITIL в компании, такая информация должна сама попадать в систему без вмешательства извне. Это уменьшит трудозатраты на интеграцию, мониторинг и поддержку решения, упростит процессы, позволит избавиться от хаоса и ручного обновления данных каталога приложений

Платформа Windows в свою очередь предоставляет технологии, призванные создавать решения учитывая необходимости по поддержке, эксплуатации и инвентаризации в будущем.
Читать дальше →
Total votes 6: ↑5 and ↓1+4
Comments0

OEM-активация Windows Vista/7/8/8.1 под гипервизором QEMU

Reading time6 min
Views196K
OEM-версии ОС от Microsoft, начиная с Vista, используют проверку подлинности, основанную на сличении трех компонентов:

  • OEM-сертификата, вшитого в дистрибутив ОС
  • бинарного ключа, вшитого в BIOS, а конкретно — в таблицу ACPI SLIC
  • лицензионного 25-значного ключа производителя, вшитого в дистрибутив ОС

При успешном сличении трех этих компонентов происходит оффлайн-активация ОС. На корпусе ПК в этом случае имеется наклейка, содержащая лицензионный ключ конкретного экземпляра ОС (а не производителя), которым можно произвести онлайн-активацию ОС в случае ее установки не с образа, предоставляемого производителем ПК, а с «чистого» (MSDN) OEM-образа от Microsoft.

Кроме того, лицензионный ключ конкретного экземпляра ОС может быть вшит в текстовом виде в BIOS, в таблицу ACPI MSDM. В этом случае, при установке ОС ключ будет извлечен из BIOS и вшит в конкретный экземпляр ОС. OEM-наклейка на корпусе ноутбука в этом случае может уже не содержать лицензионный ключ. Такой способ используется для активации Windows 8/8.1
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments22

RackTables. С чего начать?

Reading time3 min
Views41K


Учет в IT играет очень важную роль. Безусловно, знания как настроить Catalyst с нуля, собрать degraded RAID и настроить новый инстанс БД Oracle очень ценны и человек ими владеющий достоин уважения. Однако когда этих Catalyst-ов и прочих IBM Flex-ов несколько серверных стоек, и не в одной комнате, то вопрос: «Где находится тот самый сервак на котором RAID посыпался», может поставить в тупик не одного специалиста. Поиск определенного сервера, я уж не говорю про сетевые кабели, может превратиться в увлекательнейший квест. И не дай вам пинг напороться на такой квест в условиях случившейся аварии. Вот на такой случай люди и создали программы подобные RackTables.

Вольный перевод с сайта:
Racktables это отличное и надежное решение для датацентров и серверных комнат. RackTables поможет вести учет аппаратных средств, сетевых адресов, мест в серверных стойках, конфигурации сети и многое другое!


Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments2

Всё о версиях Windows 8.1 и о том, как легально загрузить последний образ без подписки

Reading time6 min
Views767K
Хочу поделиться в одной заметке важной, на мой взгляд, информацией о версионности образов Windows 8.1, и о том, как любой желающий может совершенно легально загрузить ту языковую версию и издание, которые ему требуется. С учётом того, что после выхода Windows 8.1 образы пересобирались минимум пять раз, вопрос версионности становится интересным для администраторов и энтузиастов.

Недавно я писал о том, как можно совершенно легально загрузить самый последний Microsoft Office с сайта Microsoft — как корпоративную версию, так и коробочную Retail — любые языки и продукты, со всеми интегрированными обновлениями. Сегодня я расскажу, как сделать то же самое и с операционной системой — средствами предоставляемыми самой Microsoft.

Но для начала я хочу рассказать о версиях Windows 8.1. Не об изданиях — этого добра в сети много, а именно о публичных версиях сборок ОС. Ведь для любого администратора удобно загрузить образ со всеми интегрированными обновлениями, чем устанавливать сотню самостоятельно. Причём загрузить образ с сайта Microsoft, а не самодельную сборку с торрентов. Всё что я буду рассказывать о версиях ОС Windows 8.1 применимо и к Windows Server 2012 R2, за исключением канала для бесплатной загрузки образов для переустановки ОС. Но давайте всё по порядку.
Читать дальше →
Total votes 75: ↑71 and ↓4+67
Comments60

Чтиво на выходные — бесплатные книги Microsoft Press

Reading time1 min
Views15K
Время новогодних и рождественских праздников традиционно дает возможность не только отдохнуть, но и найти время на изучение новых технологий.
В частности, можно скачать в удобном формате бесплатные книги Microsoft Press на английском языке или пройти бесплатные курсы на Microsoft Virtual Academy по интересующему направлению, в том числе на русском языке

Вот несколько бесплатных книг последнего периода:
Читать дальше →
Total votes 20: ↑11 and ↓9+2
Comments0

Список YouTube-каналов для обучения веб-разработке

Reading time2 min
Views217K
image


Привет, хабражители!

Представляю вам список YouTube-каналов для обучения веб-разработке. Список доступен на гитхабе, там он будет пополняться и редактироваться. В планах — создание отдельной странички для фильтрации каналов по тегам и рубрикам.

Также хочу попросить вас о небольшой услуге: если вы знаете канал, не вошедший в список — опубликуйте ссылку на него в комментариях или отправьте pull request. Сообщество будет благодарно вам.

Под катом — текущая версия списка.
Читать дальше →
Total votes 64: ↑59 and ↓5+54
Comments16

Бесплатный видеокурс CCNA Сisco доступен на одном из каналов YouTube

Reading time2 min
Views107K
По моему глубокому убеждению, в особенности в сфере IT, важнейшим качеством любого из специалистов является способность к самообучению. Именно потому в нашей небольшой компании стало хорошей традицией уделять ежедневно время этому процессу, собственному развитию. Даже менеджер должен понимать, как устроена и функционирует сеть. Не давнее, как вчера, обсуждая проблему с BGP, коллега сказал «Вот не был бы я лентяем — прошел бы в студенческие годы курс CCNA и знал бы ответ на твой вопрос». И я задался задачей помочь коллеге, найти способ получить знания в этой области самому, хотя бы начального уровня, чтоб лучше понимать с чем мы работаем. На Хабре, введя в поиск CCNA, можно встретить массу рекомендаций, но все же, англоязычный Интернет — основной источник знаний в области IT-коммуникаций.



Я просто обожаю YouTube! Ведь он предоставляет волшебную возможность удаленного «посещения» тематических конференций и семинаров, причем абсолютно бесплатно. В этот раз, как оказалось, там уже месяца 2 существует бесплатный канал, на котором лектор Imran Rafai, четко и доступно излагает материал из 30-дневного CCNA-курса, весьма доступно и увлекательно!

Даже если Вы не системный администратор, а просто хотите обладать немного лучшим пониманием, что такое Интернет — курс для Вас! Помимо прочего Вы повысите свой уровень английского, ведь курс на английском языке, с субтитрами.
Читать дальше →
Total votes 38: ↑38 and ↓0+38
Comments11

App Studio – новая версия онлайн конструктора приложений от Microsoft

Reading time9 min
Views49K


Привет Всем!

Представляю вашему вниманию новый инструмент от Microsoft «Windows App Studio» — конструктор для создания приложений. Сегодня расскажу о том, как обычному пользователю стало доступно создание приложений для Windows и Windows Phone. И немного о том чем этот инструмент может быть полезен разработчику.
Читать дальше →
Total votes 40: ↑31 and ↓9+22
Comments5

Раскрываем возможности map в nginx

Reading time6 min
Views132K
map — мощная директива, которая может сделать ваши конфиги простыми и понятными.
Возможно, это самая недооцененная директива, из за того, что не все знают всех её возможностей.
Она в компактной форме помогает обрабатывать переменные, GET параметры, заголовки, куки и наборы бекендов (upstream).
Попробую раскрыть её возможности хабрапользователям.
Раскрыть возможности map
Total votes 91: ↑91 and ↓0+91
Comments11
12 ...
148

Information

Rating
Does not participate
Registered
Activity