Архив метки: сервера

О SSL сертификатах

Я сам сижу на letsencrypt, до этого покупал сторонние сертификаты на основной домен.

Случайно обнаружил очень интересную статью Revocation is broken. Не знал, что браузер может не проверять revoked сертификаты.

Сгоревший диск

Впервые у меня сдох диск на сервере. По моим воспоминаниям ему было около 7 лет, так что все основания имелись.

После ряда переездов технология поведения была отточена. Но в нештатной ситуации появились коррективы. Нужно было срочно сбросить актуальные бекапы к себе, потому что последнее что было на руках — трехмесячной давности. Боялся, что мне технари дернут не тот диск из сервера.

Короче, дождался вечера, перекачал к себе на диск по московскому интернету гигов 300-400 образов, и, уже утром, отправил в hetzner заявку с оглядкой на русский мануал. Спустя 10 минут мне ребутнули сервер с уже новым диском и я начал интересный процесс ребилда массива RAID-1.

Ребилд массива подходит к концу

Несмотря на все мои опасения ребилд завершился без особых проблем. Никаких провалов в скорости я не заметил. Исходная скорость была 140МБ/c, которая постепенно упала до 65МБ/c. Я так понимаю это из-за разной скорости чтения/записи в зависимости от расстояния до центра блинов в диске.

Новый сервер

Неожиданно для самого себя из-за идиотских блокировок телеграмма всплыла тема выбора провайдера для vpn сервера. Последние 3 года мой vpn находится в Нидерландах у провайдера ramnode — это 500Gb трафика, около 20 мбит практической скорости openvpn tcp.

Пока гулял по lowendbox, lowendtalk опять вспомнил всех провайдеров уже физических серверов, и тут я понял, что у моего провайдера основного сервера — hetzner на аукционе выставлена цена на мой же сервер аж на 5 евро дешевле. 5 евро — это цена какого-нибудь хорошего облачного сервера с возможностью переброса в другую локацию и без ограничения трафика, который у меня регулярно заканчивается. Короче, как я увидел это предложение, так сразу и купил.

Core i7-3770, 2x3TB hdd, 28.76 евро в месяц. Сеть стандартная — белый ipv4, подсеть ipv6, дополнительные адреса по 1 евро / месяц за штуку, при превышении 20TB исходящего трафика скорость режется с гигабита до 10 мегабит.

Переброс данных занял удивительно маленькое время. Я сделал актуальные бекапы всех 8 виртуалок, скопировал их на новый сервер и развернул там через qmrestore. Также пришлось скопировать несколько правил iptables. Также настроил zsh и перенес немножко данных с bsa. Даунтайм основной пачки сайтов составил около 20 минут — время на бекап главной виртуалки, ее передачу и восстановление. Параллельно как раз DNS обновлялся.

Короче, это было очень легко, система из виртуалок показала себя очень хорошо. Шлюзом в интернет служит одна из виртуалок, так что буквально пара правил iptables и перенос виртуалок — и все сервисы работоспособны. Раньше это выливалось в несколько дней и пачку проблем с ejudge / owncloud и т.п.

Это вряд ли конец, так как я уже почувствовал запах халявы — если к концу месяца у hetzner’a еще на пару евро дешевле станет, то я и еще один переезд устрою. На сдачу всегда можно взять какой-нибудь arm сервер от scaleway, vpn на них одно удовольствие настраивать.

uptime старого сервера

UPD: переехал тем же макаром еще раз, теперь за 25.8 евро тот же сервер, что и раньше был

Прощай мой старый сервер

Доживает свой последний день мой сервер от kimsufi. У него был аптайм 822 дня, он был нереально крут. Исходно я планировал оставить его после покупки нового сервака для наличия запасного vpn/backup/tor, но что-то дорого выходит. Единственный жесткий диск этого сервера был десктопного класса и крутится без сбоев до сих пор, процессор Intel Atom N2800 не поддерживал виртуализацию, оперативки было всего 2 гига. Тем не менее я сильно сомневаюсь, что еще когда-нибудь встречу продукт с подобным отношением цена/качество, и этот сервер навсегда останется в моем сердце.

Последний скрин сервера


Читать далее

Переезд на новый сервер

Я тут переехал на новый сервер. Очень давно пора было это сделать, жить на сервере с одним диском — идея не очень хорошая. Бывший сервер:
Процессор: Intel Atom N2800
Passmark: ~600
Оперативная память: 2G DDR3 1066MHz (привет meminfo, lshw и dmidecode)
Диск: 500Gb hitachi travelstar 7200rpm
Канал: 100mbit/s + DDoS protection
Провайдер: kimsufi, Франция
Текущий аптайм: 803+ дня
Цена: 5евро в месяц

Новый сервер:
Процессор: Intel Core i7-2600
Passmark: ~8300
Оперативная память: 8x4Gb DDR3 1333MHz (32 гига суммарно)
Диски: 2x3TB Seagate Barracuda 7200rpm (raid1)
Канал: 250mbit/s (40tb/month лимит)
Провайдер: hetzner, Германия
Цена: 34евро в месяц

Процесс переезда оказался ожидаемо болезненным.
Читать далее

OpenSSH и костыли

Когда я только начал пользоваться ssh, а он тормозил, я молчал — я ведь не владел технологией. Когда я прочитал статью на хабре про тормоза логина в убунте я молчал — ведь у меня не убунта. Когда мой сервер на дебиане требовал десяток секунд на логин я молчал — я думал что виноват тор, и вообще, не тяжело подождать.

Но теперь логин занимает 25.8+ секунд. И пора с этим заканчивать. Наплевав на аптайм в 471 день, я смело добавил строчки
UsePAM no
UseDNS no

в /etc/ssh/sshd_config и теперь все работает. Ускорение чуть более чем в 25 раз.

Стало - Было - Стало

Стало — Было — Стало

Большой брат

Возможно все и так знают, но я параноик. Больше всего меня волнует тотальная слежка. И в интернете ее можно зарезать большей частью. Плагины adblock, ghostery — это обязательная мера предосторожности. К сожалению, об этом уведомлены не все.

Есть вторая сторона медали. Каждый владелец сайта хочет знать когда и куда к нему кто зашел. Наиболее популярные инструменты для этого(в России) — google analytics, яндекс метрика. Таким образом, каждый раз, когда человек заходит на чей-нибудь сайт, об этом становится известным от яндекса и гугла, вплоть до десятка (нескольких десятков) различных организаций. По идее, вы права обрабатывать информацию о себе им всем не давали, но кого волнует?

Читать далее

Китайские закладки в серверных платах

True-story 2007-ого года, опубликованная в 2011 году, пролежавшая у меня в закладках около трех лет.

Краткое содержание

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

Слова выше крайне плохо отражают всю катастрофичность ситуации, т.к. по моему мнению, подобный контроль позволяет китайцам, например, начать третью мировую между США и Россией без каких-либо проблем. Ситуация на текущий момент мне неизвестна.

Оригинал на сайте xaker.ru
Перезалив от меня.

Программирование на ВМК

Я очень часто повторяю, что на ВМК не учат программировать. Большинство людей такие фразы абсолютно не понимают, а объяснять мне обычно лень. Но вот недавно я увидел код ВМКшника, в котором была задача прочитать бинарный файл. Задача несколько осложнялась тем, что ожидаемый (а может быть и требуемый) язык реализации был C/C++. Как бы вы считали бинарный файл? Я бы открыл его fopen’ом (плохо знаю плюсы, надо бы, конечно, какой-нибудь datastream использовать). А по возможности использовал бы Qt, который позволил бы удалиться на более высокий уровень, почти не потеряв в скорости. Этот товарищ использовал системные вызовы. Он читал файл через open и read. Это ужасно. Совершенно не к месту системные вызовы, которые еще и медленнее будут, если что-то пойдет не так с кешами. А если хочешь кеши — придется их самому написать. Может возникнуть вопрос — а зачем использовались системные вызовы то? Ответ прост — нам рассказывали только их. Поэтому, если вы видите странный код, изобилующий системными вызовами вместо нормальных библиотечных функций — перед вами с большой вероятностью ВМКшник. Этот пример не единственный. Я уже насмотрелся на однострочные комментарии «конструктор», «деструктор», «выделение памяти», «освобождение памяти», а также удаление дефолтных операторов присваивания, дефолтных конструкторов и прочей ереси, которую удалять совсем не обязательно.

Короче, учат не тому. А после просмотра подобного кода сразу видно какие курсы посещал человек. И не дай бог ему понравился ассемблер…