Позднее Ctrl + ↑

Ремонт на лоджии

Ох, как я люблю свои «приступы Золушки». Люблю во всех смыслах, положительных и отрицательных. С одной стороны, это обычно занимает много времени. С другой — наводится порядок и чистота.
Незадолго до этого разобрал вещи в шкафу в коридоре. То, что понадобится очень нескоро, убрал на самый верх. Ненужные вещи повыкидывал, в том числе и обувь, которая валялась там не один год. Заодно нашел себе хорошие летние ботинки (никто уже не помнит когда их покупали) и шлепанцы на работу. В итоге освободилось почти половина шкафа. Переделывать его в ближайшее время не хочется, поэтому просто сделаю внутри освещение, а то расположен он так, что со всех сторон закрыт стенами и свет туда не попадает.
Спустя неделю снова занялся лоджией. В прошлый раз повыкидывал оттуда много всего, поставил стеллаж и перегрузил оставшиеся вещи на него. Места на лоджии стало побольше. До этого нужно было смотреть куда наступаешь. В этот раз утащил велосипед в тамбур, выкинул старое кресло (по моим прикидкам ему уже около 20 лет), о которое постоянно точила когти кошка, и весь хлам, который годами скапливался за ним. Повесил на потолок купленные ранее светодиодные лампы и опустил провода от них к розеткам. Поставил распределительную коробку, завел туда кабель от розеток, ламп и выключателя. И вчера все это наконец-то собрал в кучу. Теперь лампы «нормально» включаются от выключателя у двери.
В планах еще поставить туда какую-нибудь мебель, чтобы было где и кошке полежать и мне. Варианты еще перебираю, но пока что лидирует раскладывающаяся лавочка в форме буквы «Г». В сложенном состоянии она будет представлять собой собственно лавку, в разложенном же — кровать, на которой можно поспать.
Жена, наблюдая за моими действиями, смеется: «Гнездо себе что ли делаешь?» Я молча улыбаюсь и думаю, что летом (надеюсь, что к тому времени доделаю все на лоджии) ты сама сюда переселишься, чтобы вышивать: свежий воздух, тепло, светло.

Интересный подарок

Вот так интересный подарок ждал меня сегодня утром на работе.

Скелет за компьютером Скелет за компьютером

Пока рассматривал, оказалось, что в нижней части вставляются батарейки. Насколько я понял, светиться должен монитор. Установленные батарейки давно «приказали жить», пришлось их заменить. Но, к моему громадному сожалению, ничего не изменилось, нигде ничего не зажглось и не зазвучало. Конструкция, опять же к сожалению, оказалась неразборной, поэтому понять что именно поломалось не представляется возможным. Может быть, чуть позже попытаюсь проделать «технологическое» отверстие и найти причину поломки. А пока пусть стоит так.
Я бы это назвал «Ожидание загрузки Windows 95» :-)

Ремонт в туалете

С месяц назад примерно начал протекать бачок. Поплавок вовремя не останавливает воду, поэтому ее уровень начал доходить до перелива. И вода все время льется без остановки. Но если дернуть рычаг поплавка, то вода перекрывается. Поначалу грешил на то, что трубки покрылись какими-нибудь отложениями от воды, которые препятствуют нормальному ходу поплавка. Почистил, но дальнейшее использование показало, что это не так. Сантехника вызывать было лень, к тому же когда-то придется с этим разбираться. Что, я не мужик что ли? :-) Ремонт несколько осложнял тот факт, что самая большая в бачке является достаточно узкой, едва вмещает две моих руки. Все равно, что как в известном анекдоте, оклеивать квартиру через замочную скважину.
Сегодня обратил внимание на то, что раньше как-то укрывалось от моего внимания. Пластина, перекрывающая воду, крепится к трубке на защелках. Поначалу мне казалось, что она просто прикреплена через отверстия и снять ее нельзя. Снял ее и стал рассматривать. В середине платины со стороны наливающей трубы находится что-то черное, напоминает резинку. Выковырял — да, резинка. Причем с рабочей стороны находится углубление буквально в полмиллиметра. Хм... Перевернул резинку вверх ногами, вторая-то сторона нормальная, без углублений. С большой осторожностью собрал все это назад, потому что, если уроню пластину, достать ее будет весьма проблематично. А уронить ее очень просто.
Закрепил все, как было, включаю воду. Набирается полный бак, вода перекрывается поплавком. Конечно, надо будет посмотреть как все будет дальше, но, судя по всему, это крохотное углубление в резинке и было причиной того, что вода вовремя не перекрывалась. В крайнем случае, такую можно будет вырезать из подходящего кусочка резины и сделать, например, полмиллиметра или миллиметр длиннее.

Освещение в подъезде

Театр, как известно, начинается с вешалки

Лампа на площадке в подъезде сгорела давно, около полугода назад. Но, так как наступало лето, и, в основном, все время было светло, то я особо по этому поводу не заморачивался. Но всему хорошему приходит конец. С наступлением осени в то время, когда я порой возвращался домой, на площадке уже становилось настолько темно, что замочную скважину было видно только по светлому пятну из коридора. Делать нечего, пришлось купить лампу. Размеры старой я не помнил, поэтому взял метровую, благо что она крепилась на защелках. Есть, конечно, риск, что ее просто тупо сопрут, но стоит она не так уж и дорого, поэтому мне все равно.
И вот на этом моменте меня «закусило». Уже более полугода в закромах валяется специально купленное для этих целей реле с датчиком освещенности. Темно — включается лампа, светло — отключается. И все было бы отлично, но датчик, скотина, реагирует на любой свет, не только на солнечный. Думал решить этот вопрос «укутыванием» датчика в термоусадочную трубку. «Укутал». Но, на сегодняшний момент, меня берут сомнения и ситуация складывается так, что это было вовсе не нужно. Дело в том, что я взял обычный настенный светодиодный светильник. Который, судя по всему, не оказывает никакого воздействия на датчик освещенности. Последний я, впрочем, отпаял от платы и прикрепил на полтора метра дальше от лампы. В планах было вывести его на улицу через окно в подъезде, но сейчас я готов отказаться от этой идеи по вышеописанной причине. Сейчас весь вопрос остается только в том, чтобы подстроить датчик под нужный уровень освещенности. Включается он в нужный момент, нужно только проконтролировать чтобы он и отключался когда станет более-менее светло, а не в яркий солнечный день. Плата с реле вполне себе уместилась в стандартную распределительную коробку, которая, увы, пока что остается «на весу». Пробивать дыру под нее в стене мне просто лень :-) Плюс к этому в нынешнем положении она скрывает тот факт, что лампу легко можно отключить от питания и вытащить из защелок.

Установка ejabberd на ALT Linux

Заметка, по большей части, для себя.

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

# apt-get install ejabberd

Несмотря на то, что после установки появляется одноименная служба, воспользоваться ей мы пока не сможем. Угум-с... Поэтому начинаем с того, что создаем базу данных в MySQL и пользователя. SQL-скрипт находится по пути /usr/lib/erlang/lib/ejabberd-18.03/priv/sql/mysql.sql.
Теперь регистрируем пользователя:

# ejabberdctl start
WARNING: It is not recommended to run ejabberd as root
# ejabberdctl register admin example.com PaSsWoRd
# ejabberdctl stop

Ответы сервера будут немного отличаться, но основной вопрос возникает при виде строки «WARNING: It is not recommended to run ejabberd as root». Чтобы избавиться от этого предупреждения, нужно запускать ejabberd от имени другого пользователя. Это делает сервис, но он нам пока недоступен. Почти.
После запуска ejabberdctl в папке /var/lib/ejabberd создаются нужные подкаталоги и файлы баз Mnesia. Вот только права у них сейчас root, поэтому сервер не сможет с ними работать. Меняем владельца:

# chown -R ejabberd:ejabberd /var/lib/ejabberd

Не забываем про логи — там то же самое:

# chown -R ejabberd:ejabberd /var/log/ejabberd

Теперь нужно изменить файл конфигурации сервера под себя. Открываем /etc/ejabberd/ejabberd.yml и правим, как минимум, строчку hosts в начале файла. И учтите еще пару моментов.

  1. Если вы планируете дать возможность анонимным пользователям подключаться к вашему серверу в качестве клиентов, то лучше сразу настройте подраздел host_config в разделе AUTHENTICATION. Я лично потерял весь ростер, когда настроил его уже в процессе работы. Хрен знает почему так получилось, но повторов мне не хочется.
  2. Также лучше всего сразу настроить ejabberd на использованием базы MySQL и не использовать встроенную Mnesia. Связано это с ограничением Mnesia на размер БД. Если планируется использовать запись действий.

После всего этого можно пробовать запускать службу:

# systemctl start ejabberd

Итак, служба запустилась, сервер нас слушает.
Какие еще есть нюансы? Ну, например, использование сертификатов от Let’sEncrypt. Я перебрал множество вариантов их подключения, но сервер каждый раз продолжал ругаться или на их отсутствие, или на то, что они подписаны неизвестным CA, или что не может выстроить цепочку сертификатов, чтобы доверять им. Перед настройкой нам нужно провести небольшие подготовительные работы. А именно — экспортировать корневой сертификат DST Root CA X3 в pem-файл. После этого размещаем его, например, в папке сертификатов Let’sEncrypt /etc/letsencrypt и даем права на чтение всем. Подкаталогам live и archive даем права 0755. Самим сертификатам даем права 0644. Вроде бы ничего не забыл. Теперь приступаем к настройке ejabberd.
В разделе Certificates прописываем следующие параметры:

ca_file: "/etc/letsencrypt/DSTRootCAX3.pem"
certfiles:
  - "/etc/letsencrypt/live/kini24.ru/*.pem"

Первый указывает на корневой сертификат, второй — на папку с сертификатами на наш домен. Перезапускаем службу ejabberd и проверяем логи на ошибки. Если все нормально, то никаких сообщений по поводу сертификатов вы не увидите, кроме такой:

[error] <0.306.0>@ejabberd_pkix:validate:543 Failed to list directory /etc/ssl/certs: no such file or directory

Согласен с ejabberd, нет у меня такой папки. Ну и черт с ней! :-)
Все остальные параметры настраиваются достаточно просто, почитать можно здесь: https://docs.ejabberd.im/admin/configuration/. Вот тут всплыл другой нюанс, решение которого я искал достаточно долго. Дело в том, что в файле все регулируется отступами. Примерно так:

listen:
  -
    port: 5222
    ip: "::"
    module: ejabberd_c2s
    starttls: true
    starttls_required: true
    zlib: true

У первой строки отступа нет вообще, потому что она «главная». У второй (тире) в начале два пробела. У следующего параметра, port, уже 4 пробела. Иными словами, каждый параметр отделяется от своего «родителя» двумя пробелами.

Представлен способ извлечения RSA-ключей за 1 секунду

Любопытная новость пришла.

«Способ базируется на анализе электромагнитных волн, излучаемых устройством во время операции по шифрованию.

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

В рамках конференции Usenix, проходившей на прошлой неделе в Балтиморе (США), команда специалистов Государственного университета Джорджии продемонстрировала способ получения ключей шифрования с помощью электромагнитного излучения, исходящего от устройства во время выполнения операций по шифрованию и дешифрованию.

Сама по себе идея использовать электромагнитное излучение для извлечения ключей шифрования далеко не нова. Однако способы, представленные в 1990-х и 2000-х годах, практически невыполнимы из-за необходимости взламывать устройство. Представленные в 2010 годах методы также нецелесообразны — они занимают слишком много времени, так как прежде чем извлечь ключ, атакующий должен собрать большой объем данных.

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

По словам исследователей, с помощью нового метода они смогли извлечь RSA-ключи в 95,7-99,6% случаев. Атака заняла всего 1 секунду, и ученым удалось полностью восстановить ключ, используя собственный алгоритм. В качестве объектов для атак исследователи выбрали смартфоны Alcatel Ideal и Samsung Galaxy Centura, а также встраиваемое устройство под управлением дистрибутива Linux.

Минус нового метода заключается в том, что для извлечения ключа необходимо находиться вблизи атакуемого устройства. Однако данный недостаток несущественен, поскольку атакующий может спрятать прибор для извлечения ключей, к примеру, под зарядным устройством общественного пользования или под столом заведения с общественным Wi-Fi.»

Решение проблемы с зеркалом NOD32

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

Снова про «любимую» Windows 10

Эта версия известной операционной системы продолжает меня «радовать», каждый раз подкидывая очередной сюрприз, который ну никак не ждешь от нее. На этот раз им стало увеличение оперативной памяти.
Принесли посмотреть ноутбук с жалобой, что он «тормозит». В процессе осмотра оказывается, что в нем установлено всего 2 Гб памяти при установленной 64-битной системе. Это мало, очень мало. Поэтому первым делом закупаем планку памяти на 4 Гб, остальное будем смотреть позже. Устанавливаю память, включаю ноутбук, смотрю свойства системы и вижу, что памяти установлено так же 2 Гб. Хм, выключаю ноутбук, включаю и захожу в BIOS. Он показывает, что все нормально, установлено 6 Гб памяти. Закрадывается небольшое недоумение...
Поменял планки местами, снова загружаю Windows. Теперь она показывает что доступно 4 гигабайта. Да что за черт! Открываю интернет, запускаю поиск. Оказывается, что проблема известная и, как обычно, каждый «лечит» ее своим способом. Все перепробовал, ничего не помогает. Следующим шагом советуют сделать переустановку системы, но, при этом, нет никакой гарантии, что это поможет. Поэтому этот шаг пока пропустил.
Казалось бы, такая тривиальная задача как увеличение объема оперативной вкупе с «десяткой» превращается в целый квест, пройти который дано не каждому.

Прямой доступ к сети по IPv6

Два дня искал как получить прямой доступ к компьютерам в сети через IPv6. Ни один способ не подходил, сколько не пробовал в самых разных вариациях. Самое забавное, что месяц-два назад я как-то этот доступ настраивал. Потом роутер пришлось сбрасывать до заводских настроек, а в памяти этот момент не отложился.
В итоге, все оказалось очень просто (надеюсь, ничего не забыл)...
Открываем веб-морду OpenWrt, входим под своими логином и паролем. Затем идем на вкладку Network — Interfaces и в поле «IPv6 ULA-Prefix» вводим префикс подсети. Например, такой: 2002:1234:5678:1234::/64. Компьютеры в локалке, конечно же, должны иметь адреса из этого же диапазона. Следом стоит дать разрешение в брэндмауэре. Для этого открываем Firewall — General settings и для пунктов Input, Output и Forward в самом верху ставим «Ассept».
Применяем сделанные изменения, перезагрузка не требуется.

Дело движется

В продолжение предыдущей заметки

«Облако» было починено очень просто — изменением прав доступа к каталогу с файлами. Следом возникла другая ошибка — невозможность загрузить любой файл в него. Логи показали, что в этом повинен модуль защиты, который не пропускал файлы размером более 128 Кб. Исправил.
Зеркало баз NOD32, к сожалению, пока что починить не получилось. Но, похоже, что я наткнулся на возможную причину некорректной проверки ключей. Надо списаться с автором скрипта.
Еще один момент, который я поначалу упустил из вида: сервер с контактами и задачами. С ним пришлось повозиться. В итоге все дело оказалось в том, что php-fpm не передает заголовки авторизации и, соответственно, не отправляет данные (логин пользователя и пароль). Этот момент оказался описан в документации к baikal, поэтому на исправление ошибки ушло немного времени. Возможно, что примерно такая же ситуация обстоит и с проверкой ключей NOD32 на их серверах.
Должен отметить, что связка apache-mpm-worker + FastCGI меня очень радует скоростью работы. Если раньше при работе с клиентом Nextcloud на телефоне приходилось ждать пока обновится/загрузится содержимое каталога, то теперь это происходит едва не мгновенно. Видимо, сказывается «тлетворное» влияние HTTP/2 :-)

Ранее Ctrl + ↓