Как стать автором
Обновить
20
0

Пользователь

Отправить сообщение

Опыт работы эникейщиком/системным администратором в бюджетной организации

Время на прочтение3 мин
Количество просмотров82K
Это история о том, как я устраивался на свою первую серьезную работу, о коллективе, приобретенном опыте и разбитых мечтах

image
Подобие СКС в серверной

Предыстория


Так получилось, что в начале 3 курса обучения в МГТУ им. Н.Э. Баумана я решил, что пора устраиваться на работу. Мой выбор пал на одну бюджетную организацию. Это была первая серьезная работа в крупной компании. О данной вакансии я узнал от бывшего одноклассника, который работал там на должности, далекой от IT.
Подробнее под катом
Всего голосов 70: ↑45 и ↓25+20
Комментарии69

Малоизвестные функции в WordPress

Время на прочтение3 мин
Количество просмотров18K
Случалось ли с вами, что во время разбора кода стороннего плагина или темы, вы находили довольно полезную стандартную функцию, о которой раньше не знали? В такие моменты любой разработчик ощущает чувство собственной ничтожности, вспоминая какие велосипеды он городил в предыдущих проектах.

Дабы уменьшить количество расстройств, я решил описать несколько малоизвестных, но весьма полезных функций:

make_clickable
Находит в тексте ссылки и делает их кликабельными.
Пример:
$string = "This is a long text that contains some links like http://www.wordpress.org and http://www.wordpress.com .";
echo make_clickable( $string ); 


popuplinks
Добавляет target='_blank' rel='external' всем ссылкам в тексте.
Пример:
$string = "This is a long text that contains some links like <a href='http://www.wordpress.org'>http://www.wordpress.org</a> and <a href='http://www.wordpress.com'>http://www.wordpress.com</a> .";
echo popuplinks( $string ); 


wp_list_pluck
Достает определенные поля из коллекции.
Пример:
$posts = get_posts();
$ids = wp_list_pluck( $posts, 'ID' ); // [1, 2, 3, ...]


antispambot
Преобразовывает адреса электронной почты в символы HTML, для защиты от спам-ботов.
Пример:
$email = 'example@email.com';
echo '<a href="mailto:' . antispambot( $email ) . '">' . antispambot( $email ) . '</a>';

Читать дальше →
Всего голосов 32: ↑26 и ↓6+20
Комментарии8

Конструктор для «Умного Дома» — от идеи до воплощения

Время на прочтение16 мин
Количество просмотров162K


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

Проект, начавшийся в формате «для души», удивительным образом вышел за рамки хобби, и вырос серьезную разработку. В основе лежало желание создать систему, интересную как в плане технического творчества и программирования, так и удобную для повседневного использования. Хотя работа еще в разгаре, уже отчетливо видны контуры задуманного: распределенная система, высокотехнологичный «конструктор» для реализации всевозможных идей умного дома, с хорошей масштабируемостью.
Читать дальше →
Всего голосов 93: ↑92 и ↓1+91
Комментарии86

Cumulus Linux для сети в датацентре

Время на прочтение5 мин
Количество просмотров21K
Современный датацентр заметно отличается от традиционной корпоративной сети. Приложения больше ориентируются на L3 коммутацию вместо предположения, что все соединения находятся в одной подсети, больше траффика идет «горизонтально» нежели «вертикально» и т.д. Несомненно, главное отличие — гигантский масштаб.

Благодаря виртуализации, количество сетевых соединений в датацентре исчисляется от десятков тысяч до миллионов, тогда как в старые добрые времена их было всего несколько тысяч. Масштаб виртуальных сетей давно вышел за возможности традиционных VLAN сетей, скорость переконфигурирования также возросла на порядки. Кроме того, количество серверов в современном ЦоД таково, что сетевого оборудования необходимо на голову больше, чем в традицонной корпоративной сети.

Эволюция сетевой инфраструктуры шла своим чередом, от монолитных псевдо-ОС через встраиваемые ОС типа QNX и VxWorks до современной стадии, когда ОС делается на основе Linux или BSD, иногда такой образ запускается в виртуальной машине обычного Linux дистрибутива. С другой стороны, способ управления эволюционировать отказывался, это по-прежнему командная строка с многоуровневой структурой. Сложностей добавляет еще и различный синтаксис у разных производителей, а часто и у одного в разных моделях.

Подытоживая — проблема лежит не в железе, а в сетевых ОС. Подходы к решению разделились, первый путь ушел к northbound и southbound API подходу (наибольшую популярность приобрел OpenFlow), второй — использовать Linux и его экосистему. Другими словами, первый вариант пытается добавить продвинутый API управления к существующим ОС, второй предлагает переключиться на ОС, которая уже обладает всеми необходимыми характеристиками.

В предыдущем материале мы рассказали о коммутаторах без предустановленной ОС
и средой для развертывания ONIE.

Самое время рассказать про одного из представителей второго подхода, который можно установить на наши платформы — Cumulus Linux.



Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии25

SERP Яндекс и Google: Анализируем конкурентов, исследуем отрасли — advodka.com

Время на прочтение2 мин
Количество просмотров6.6K

Дорогие Хабравчане,


Сегодня солнечный день, которого мы с коллегами с нетерпением ждали — мы открываем продажи нашего сервиса advodka.com всем желающим.

advodka.com анализирует топ20 результатов поисковой выдачи систем Яндекс и Google, включая органическую выдачу и блоки контекстной рекламы (SERP). Уникальность нашего сервиса в том, что мы анализируем данные по двум регионам: Москва и Санкт-Петербург.

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


Читать дальше →
Всего голосов 33: ↑5 и ↓28-23
Комментарии15

Бесплатный аналог AnyConnect VPN Server

Время на прочтение3 мин
Количество просмотров43K

В прошлой своей заметке я описывал Softether VPN Server и как его установить из исходников. За прошедшее время я очень сильно разочаровался в данном сервере так как за все время мне не удалось заставить его работать с нормальной скоростью. Я писал на форум разработчиков, но так и не получил внятного ответа в чем же дело Ну делать нечего придется выбрать другое решение.
Читать дальше →
Всего голосов 12: ↑8 и ↓4+4
Комментарии22

Soap: all-in-one роутер для умного дома

Время на прочтение2 мин
Количество просмотров31K
Soap – роутер с сенсорным экраном на ОС Android 4.4 KitKat

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

Wi-Fi принтеры, Smart TV, планшеты, игровые консоли, не говоря уже о ПК, планшетах и смартфонах. Как все это контролировать? Недавно появилась интересная разработка, которая, насколько можно судить, вполне способна управлять доступом к Сети для каждого домашнего (ну, или рабочего) устройства. Речь идет об умном роутере Soap. Это не просто роутер, а целая система по управлению умным домом.

Разработчики оснастили систему большинством популярных проводных и беспроводных интерфейсов, так что возможности Soap весьма широки.

Читать дальше →
Всего голосов 41: ↑33 и ↓8+25
Комментарии36

Проекты на WordPress: советы по оптимизации

Время на прочтение9 мин
Количество просмотров52K
wordpress

Сегодня Wordpress является одной из самых популярных CMS. Задуманная изначально как движок для блогов, сегодня она используется для самых разных типов сайтов, в частности, для новостных порталов и интернет-СМИ. На Wordpress работают корпоративные веб-сайты, образовательные и развлекательные порталы.

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

Подробных инструкций по установке и настройке Wordpress в Интернете опубликовано немало. В этой статье мы бы хотели затронуть вопросы, которым в большинстве публикаций о Wordpress не уделяется достаточно внимания. Мы расскажем о том, как оптимизировать работу сайтов на Wordpress, а также дадим ряд рекомендаций по повышению уровня безопасности и стабильности работы. Во всех примерах используется Ubuntu 12.04.
Читать дальше →
Всего голосов 64: ↑51 и ↓13+38
Комментарии70

MAYHEM — многоцелевой бот для *NIX-серверов. Расследование Яндекс.Безопасности

Время на прочтение5 мин
Количество просмотров44K
UPD. Спустя несколько часов после публикации на Хабре англоязычная версия этого исследования команды Безопасного поиска Яндекса вышла на Virus Bulletin. Чуть больше деталей и ссылки на библиографию.

Ботнеты из зараженных серверов под управлением ОС на базе *nix становятся все более популярными у злоумышленников. Широкий канал, отличный uptime и мощное железо делают сервера привлекательной целью для заражения. Принято считать, что для полноценного заражения *nix-системы нужно обладать правами root. Однако злоумышленники придумывают все новые и новые способы извлечения из зараженного сервера максимума пользы, довольствуясь при этом маленькими привилегиями. В этом посте мы расскажем о довольно нестандартном ботнете под названием MAYHEM, состоящем из зараженных серверов.



Изначально MAYHEM представляет собой php-скрипт, который после запуска определяет архитектуру системы (x86 или x64) и наличие прав на запись в текущую директорию. Эти привилегии в подавляющем большинстве случаев есть у пользователя, под которым запущен веб-сервер, и в данном случае их достаточно для работы бота.
Читать дальше →
Всего голосов 119: ↑112 и ↓7+105
Комментарии45

Нагрузочное тестирование базы данных. ContiPerf + DBUnit

Время на прочтение4 мин
Количество просмотров15K
Ниже представлен опыт нагрузочного тестирования базы данных с использованием JUnit и ассоциированных с ним DBUnit и ContiPerf.

ContiPerf

ContiPerf — утилита, которая позволяет использовать JUnit4 для нагрузочных тестов. Проста в использовании, легко и разнообразно настраивается. Использует Java аннотации для задания настроек теста и требований выполнения, создает подробный отчет в виде html файла с графиком распределения времени выполнения. Требует использование Java не ниже 5 версии и JUnit не ниже версии 4.7.

DBUnit

DBUnit — расширение для JUnit, упрощающее тестирование программ, работающих с бд. Впрочем, вполне популярен и в представлении не нуждается, поэтому ограничусь ссылками: знакомство для начинающих, упоминания на хабре.
Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Оптимизация расходов Yota: попытка #3

Время на прочтение5 мин
Количество просмотров30K
Привет, хабр!

Наступило лето и очень многие уезжают из города. Кто-то на время отпуска, а кто-то и на все лето (если работа позволяет). Но одна из главных проблем за городом (для всех людей, так или иначе связанных с IT) — отсутствие нормального проводного быстрого интернета. Но это частично решается благодаря существованию LTE-сетей.

В моем регионе крупных провайдеров LTE всего два: Мегафон и Yota. Мегафон существенно дешевле, но у него есть одна крайне неприятная особенность: ограничение в 20гб трафика в месяц даже на максимальном тарифе.

Поэтому выбор оператора, на мой взгляд, очевиден. Но все же платить за 20 мегабит в два раза больше чем за 100 дома — сомнительное удовольствие. Но при этом, в отличие от других операторов, Yota позволяет в в любой момент бесплатно изменять текущий тариф в личном кабинете с перерасчетом оплаченного времени. Нужна скорость — выкручиваем ползунок на максимум. Нет? Тогда можно снизить скорость и платить меньше. Ну как тут можно удержаться и не автоматизировать этот процесс?

На хабре уже были статьи (раз, два), описывающие попытки йотоводов-автоматизаторов. Однако, в силу некоторых особенностей, их творения мне не подошли и пришлось написать свой, существенно отличающийся, велосипедОднако, в силу некоторых особенностей, их творения мне не подошли и пришлось написать свой, существенно отличающийся, велосипед.
Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии28

Эффективный или эффектный? Мастер-класс по созданию дизайна сайта

Время на прочтение9 мин
Количество просмотров38K


Эффективный или эффектный?

Понятное дело, от любого сайта хочется и первого, и второго. Некоторым удается этого достичь, некоторым нет. В формате некого мастер-класса я постараюсь объяснить как получить и то самое первое, и второе, и даже кое-что на десерт для некоторого усредненного проекта. В нашем случае этим проектом станет редизайн nginx.org.

Какой сайт можно назвать эффективным? Для меня это тот, который решает поставленные задачи, способствует достижению поставленных целей. Несмотря на то, что звучит это крайне шаблонно и бюрократично — применимо это абсолютно к любому проекту. Во многом, эффективность сайта закладывается на этапе анализа и прототипирования. Об этом я и расскажу в первой части.
Читать дальше →
Всего голосов 52: ↑47 и ↓5+42
Комментарии15

Elliptics от Яндекса. Как с его помощью создать своё отказоустойчивое хранилище

Время на прочтение10 мин
Количество просмотров29K
Добрый день, дорогие читатели!

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



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

Под катом — пошаговые подробности.
Читать дальше →
Всего голосов 65: ↑60 и ↓5+55
Комментарии35

Web Application Firewall (ModSecurity) в действии

Время на прочтение12 мин
Количество просмотров39K
Атаки на уровень web-приложений одни из самых распространенных и часто крайне критичны. В данной статье хочу показать насколько способен WAF ModSecurity отражать данные угрозы.

1. Межсетевой экран уровня web-приложений Modsecurity


1.1 Проект ModSecurity


ModSecurity создан Иваном Ристиком (Ivan Ristic) в 2003 году и представляет собой firewall Web-приложений, который может использоваться как модуль Web-сервера Apache, либо работать в автономном режиме и позволяющий защитить Web-приложения как от известных, так и неизвестных атак. Его использование прозрачно, как установка, так и удаление не требует изменения настройки сервисов и сетевой топологии. Кроме того, при обнаружении уязвимого места теперь не обязательно впопыхах изменять исходный код, делая новые ошибки, достаточно на первых порах добавить новое правило, запрещающее вредную комбинацию. Modsecurity может защищать одновременно несколько Web-серверов, в том числе и отличных от Apache [1].
Читать дальше →
Всего голосов 14: ↑8 и ↓6+2
Комментарии9

Инструменты IT-департаментов больших компаний: как избавляться от хаоса и считать каждую копейку

Время на прочтение8 мин
Количество просмотров52K

Форма заявки

Представьте, что вы приходите в большую компанию руководить ИТ-департаментом, и понимаете, что там просто конь не валялся. В самом простом случае у вас есть от 50 человек, куча бумажек про закупки и перемещения, инвентарная опись оборудования… и, пожалуй, всё.

Первая задача, с которой начинается разбор хаоса — это аудит подразделений/процессов и работа с самыми важными и тормозящими. Хочется точно знать, как решаются сбои — заводится система тикетов-инцидентов… Хочется автоматизировать большую часть задач — система тикетов обрастает функционалом бизнес-правил. Хочется, чтобы пользователи разгрузили саппорт — и вот уже у них есть свои инструменты для формирования заявок, причём такие, что отправить заявку, не заполнив все нужные данные, просто нельзя.

Следующий уровень — понять, что ИТ вообще должны делать и в какие сроки — появляется каталог услуг и соглашения с бизнесом; где какой сервер, лицензия, как они используются — дискаверинг и система учета; кто к чему имеет доступ, кто должен согласовывать изменения, сколько стоит предоставление каждого ИТ-сервиса. Финал — чёткое понимание затрат ИТ и возможность внятно/быстро объяснять бизнесу куда уходят его деньги. А заодно и сколько будут стоить его новые хотелки.

В итоге IT-департамент, призванный автоматизировать работу компании, автоматизирует и свою работу тоже. Естественно, для решения таких задач есть специальный уже готовый софт. Про него и поговорим.
Читать дальше →
Всего голосов 38: ↑30 и ↓8+22
Комментарии33

Как мы написали helpdesk

Время на прочтение6 мин
Количество просмотров123K
Есть продукты, которые можно взять и использовать, но с небольшой модификацией «под себя». Так вот система заявок или helpdesk как раз к таким вещам не относится. Точнее, мы для себя не нашли подходящий продукт и решили сделать сами.


Читать дальше →
Всего голосов 61: ↑53 и ↓8+45
Комментарии86

Как я возил робота, чуть не поседел и залил кровью серверную

Время на прочтение13 мин
Количество просмотров211K
Это история одного из самых запомнившихся случаев в моей инженерной практике. По понятным причинам я поменял имена, места и некоторые узнаваемые детали, чтобы нельзя было точно определить заказчика и других участников истории.


Вот так выглядит ленточное хранилище (наше было поменьше) и библиотечный робот (наш такой же). Китаец в комплект не входит.

Часть 1. Коробка


Помню, стояли последние дни ноября. Уже думая об окончании рабочего дня, я планировал свой вечер, когда вдруг мне сообщили, что в славном сибирском городе N у нашего заказчика сломалась ленточная библиотека. Запчасть сразу же отправили транспортной компанией, но вот уже 3 дня, как она все еще была в пути. Транспортная компания невнятно объяснялась и хмыкала в телефон, а заказчик стал не в шутку нервничать. Прогнозы были неопределенные, поэтому было принято решение везти еще одну запчасть своими силами на самолете. Сотрудник склада вручил мне габаритную коробку весом килограмм десять, обклеенную штрих-кодами и стикерами, и радостно хлопнул меня по плечу со словами: «Только не вздумай в багаж сдавать — помнут».

Коробка меня, безусловно, беспокоила, но не меньшее беспокойство мне внушал пакет с сухим молоком, который в последний момент мне вручил менеджер проекта. «У них там какие-то траблы с молочкой сейчас… из-за непогоды что ли… ребята местные просили 2 кг им привезти. Тебе ж не сложно?» — сказал он. По выражению его лица и характерному жесту ладони, как бы прикрывавшей мне рот, было ясно, как он сейчас хотел, чтобы я оказался сговорчивым или даже немым.
Читать дальше →
Всего голосов 505: ↑496 и ↓9+487
Комментарии135

Безопасный и шустрый веб-сервер на Debian 7

Время на прочтение8 мин
Количество просмотров87K
Статья, находится в процессе написания, но я готов выслушать дельные советы и комментарии, а затем доплнить или поправить материал.
Прежде всего, данный материал ориентирован на новичков и тех, кто держит на одном VPS сразу несколько сайтов, при этом хочет иметь как безопасный, так и шустрый веб-сервер.
В качестве веб-сервера у нас будет выступать связка:

Apache 2.2 + PHP 5.4.4 + MySQL 5.5 + NGINX 1.2.1 + eAccelerator + memcached + vsftpd 3.0.2 + exim.

Все это чудо будет крутиться на Debian 7.

Начнем.

Читать дальше →
Всего голосов 58: ↑21 и ↓37-16
Комментарии82

Оптимизация работы виртуальной инфраструктуры на базе VMWare vSphere

Время на прочтение10 мин
Количество просмотров81K
image

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

В пределах данной статьи я хочу ознакомить вас с методиками сайзинга виртуальных машин, а так же о методах оптимизации их работы. Материал будет техническим и рекомендуется к ознакомлению всем специалистам по vSphere.
Читать дальше →
Всего голосов 39: ↑33 и ↓6+27
Комментарии19

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность