Архив рубрики: Linux и сервера

Про современный линукс

Многие годы я восхищался экосистемой linux и opensource. Я видел насколько сложные задачи и интеграционные проблемы решают энтузиасты. Там же миллионы проблем:
— ядро
— bootloader
— драйвера
— тонна мелких утилит
— desktop environment

Читать далее

Очередной сервер

Несколько недель назад, без объявления войны, меня атаковал роскомпозор. Без моего стандартного vpn перестали открываться все сайты *.vtyulb.ru
Сначала сломался акадо, потом получил еще несколько внешних репортов, статистика 50/50. Пытался нагуглить себя в черных списках, не смог.

Спустя пару дней всплыли статьи с хабра:
https://habr.com/ru/news/t/594087/
https://habr.com/ru/news/t/594399/

Как известно, с террористами не договариваются, поэтому теперь у меня новый сервер. Tor relay (exit запрещен) развернут так, чтобы не задевать всех остальных.

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

Давно хотел себе новый сервер, помощнее, и с большим количеством ip-адресов, так что переезд надолго не задержался.

decent uptime

Читать далее

CTF от безопасников

К сожалению, у меня полностью отсутствует опыт решения CTF-контестов. Олимпиадного программирования — сколько угодно, а вот взламывать сайты мне было научиться негде. Первый раз поучаствовал во внутреннем соревновании яндекса, и решил только первую тестовую задачу. Сейчас уже почти все решения опубликованы, и тут я узнал, что в одной задаче, которую я не прочитал, нужно было взломать cryptsetup зашифрованный диск, имея на руках полный дамп памяти. Это было обидно, такое я мог бы сделать без проблем. Решил развлечься, и проверить на практике.

Спустя 3 инсталляции kali linux и несколько нерабочих (как обычно) инструкций, собрал что-то свое. Забавно, что на моем основном ноуте используется практически тот же режим шифрования, что и в дистрибутиве от безопасников. У меня xts-plain64/256, а у них xts-plain64/512. Интересно насколько реально провернуть такую атаку против ноутбука. Теоретически, наверное можно его охладить жидким азотом и переставить с него планку памяти, но вот смог ли кто-то такое в реальности сделать? Ну и еще интересно можно ли это сделать, если память просто распаяна будет.

Читать далее

Настройка pritunl/openvpn на arm64 сервере в ScaleWay

Я уже давно сижу в интернете исключительно через свой самопальный vpn. Лет 6 назад это был digitalocean, vpn-сервер жил вместе с остальными сервисами и кочевал по разным провайдерам.

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

Такой машиной стал ramnode.com, уже отсутствующий на тариф на ~0.5 ядра, 256Mb оперативки и 80GB hdd диск. Цифры +-, т.к. такого тарифа у них уже давно нет. На этой машине я прожил вроде бы 3 (может и 4) года. Последние 2 раза она продлевалась по случайности автоплатежом 15$ за год, каждый раз я при этом сильно ругался, но раз уж на год продлилась, то чего бы не поюзать.

Основная проблема той машины была в ограничении трафика в 500Gb. Это достаточно мало, и выжрать их можно было в любой момент, таким образом до конца месяца оставшись без vpn. Скорость гуляла от 12 до 24 MBit/s

Читать далее

Попробуйте выключить и включить

Недавно сидели на работе, вспоминали про выключить и включить. А ведь как-то раз и со мной такая история произошла. Я купил сервер на soyoustart.com, поставил на него какую-то debian-подобную систему.

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

Читать далее

Orange PI. Домашний сервер в действии

Несколько месяцев назад мне приехал Orange PI PC Plus. Прекрасный маленький компьютер с sd-картой вместо жесткого диска, пассивным охлаждением и просто морем разъемов. Только когда я его взял в руки до меня дошло, что у меня есть клавиатура и мышка, но нет монитора. Есть роутер, но я не могу к нему подключиться кабелем — длины не хватит, и снять роутер тоже нельзя — оптоволокно порвется.

плата + блок питания + sd-карта + доставка = ~2200р

Это конец / едем домой за монитором? Нет, это было бы слишком просто!

Читать далее

Эмуляция сетевых проблем

Когда-то давно, когда я кодил для opensource проекта LeechCraft свой плагин и сидел в чатике, дедфуду понадобился хреновый интернет. Я ему дал скрипт wondershaper, но он делал не совсем то что надо. iptables тоже был не вариант — слишком чистая работа. Спустя 6 лет из внутренних доков яндекса я наконец-то нашел решение.


https://habr.com/ru/post/237217/

Как перекодировать всю коллекцию музыки одной командой

Дано:
1) Весь Король и Шут, скачанный с рутрекера в формате *.m4a, с кодеком alac (apple lossless codec)
2) Skoda Octavia III, которая читает m4a, но не переносит проприетарные кодеки (как и я)

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

find . -iname "*.m4a" -execdir sh -c 'ffmpeg -i "$0" -acodec flac "$(basename "$0" .m4a)".flac' "{}"  \;
find . -iname "*.m4a" -execdir sh -c 'ffmpeg -i "$0" -acodec mp3 -b:a 320k "$(basename "$0" .m4a)".mp3' "{}"  \;

И финализация только после проверки, что все прошло удачно:

find . -iname "*.m4a" -execdir rm "{}" \;

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

Впервые у меня сдох диск на сервере. По моим воспоминаниям ему было около 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 евро тот же сервер, что и раньше был