Заметки любителя экспериментов

Позднее Ctrl + ↑

Продолжаем наблюдение за syslog

Как писал ранее на сервере наблюдаются проблемы с syslog. Этот паршивец каждую ночь перестает писать журналы. Причины пока непонятны, надо будет задать вопрос разработчикам системы. В качестве временной меры выбран перезапуск службы в планировщике cron. Этого, по идее, должно быть достаточно. По крайней мере, пока что. Дальше будем разбираться. Ситуацию усложняет момент, что время в журналах записывается на тот момент, когда была перезапущена служба, а не то, когда что-то произошло. Иными словами, я не могу отследить кто или что «подвешивает» её. Но, с учетом вероятного времени «подвисания» syslogd, можно предположить, что это происходит после выполнения заданий в /etc/cron.daily. То есть, можно по одному удалять оттуда файлы и наблюдать после чего служба перестанет «вешаться».
Если выполнить команду

service syslogd status

то система ответит «active». Но запись журналов начнется после перезапуска syslog. В общем, пока что «продолжаем наблюдение» и экспериментируем.

Закрытие Telegram

Мое мнение такое: «телегу» закроют. Через год, два или больше, но ее запретят в России. Ибо нашим чинушам не плевать на каналы распространения терроризма. Они видят угрозу в том, что они не могут контролировать. А Дуров категорически отказывается сотрудничать со спецслужбами в плане предоставления им доступа к переписке пользователей. С этой стороны я целиком и полностью с ним согласен. Иначе чего стоит упомянутая в конституции «свобода слова»?
Ладно, пусть закроют. Пускай у российских пользователей не будет доступа к этому мессенджеру. Но, простите, есть еще множество других, открытых, серверы которых можно создать даже у себя дома. Да, если кто догадался, то я все про тот же jabber. Пусть у него есть куча недостатков, по сравнению с Telegram. Но запретить его точно не могут. Плюсом ко всему сейчас развивается еще множество мессенджеров с открытым исходным кодом, которые каждый может установить у себя и пользоваться. НЕВОЗМОЖНО полностью запретить и начать контролировать все способы общения в интернете! Как только будет запрещен один мессенджер или целый протокол, так сразу появится ответная реакция в виде нового способа обхода этого запрета. Это, простите, на мой взгляд, равнозначно ситуации, когда внезапно (!!!) обнаружили член у статуи Апполона на известной денежной купюре. Идиотизм в полной мере!

1 октября   jabber   telegram   закрытие   запрет

Проблемы с журналами в linux

Давненько уже заметил, что перестали писаться некоторые журналы. Если быть точней, то, наверное, большинство. Поэтому правильней было бы сказать, что писались только некоторые. Потихоньку экспериментировал с journalctl, но результатов это не приносило. Да и другой работы было столько, что времени особо и не хватало. Сегодня в очередной раз вспомнил об этой проблеме, решил покопаться, пока рабочий день потихоньку подходил к концу — я ожидал окончания проверки диска.
В какой-то момент в голове мелькнула мысль, что виной всему, скорее всего, настройки syslogd. Но файл конфигурации я до этого просматривал, криминала никакого не заметил. Впрочем, моих познаний в linux могло и не хватить. Поэтому решил снести syslogd, почистить конфиги и запустить его заново. Для этого хватило одного команды:

apt-get install --purge --reinstall syslogd syslog-common

Проверяем статус службы, перезапускаем на всякий случай еще раз, идем смотреть логи почты — они более важны, чем другие. Файл all изменил свой размер, перестал быть «нулевым». Пробуем отправить самому себе письмо, запустив перед этим команду

tail -f /var/log/mail/all

И, о счастье, весь ход работы почты отображается, как и следует. Смотрим остальные логи — вроде все пишется. Пока что понаблюдаю еще, возможно, что некоторые все-таки будут «сопротивляться», хотя и маловероятно.

26 сентября   journalctl   linux   syslogd   журнал   не пишет   пустой   файл

Почта и вирусы в архивах

Часто вирусные файлы приходят в виде тех же vbs скриптов, упакованных в архив. Я не буду говорить про другие форматы, их не так уж и много, но каждый из них может доставить кучу неприятностей. Особенно если это будет шифровальщик.
Так уж сложилось, что несмотря на все ухищрения, используя стандартные методы, нельзя заставить ClamAV проверять архивы на наличие файлов определенного типа. Он может только попытаться определить заражен ли тот или иной файл в архиве, но со скриптами у него явные проблемы. Скрипт по сути представляет собой обычный текстовый файл, поэтому найти в нем код вируса достаточно проблематично.
Часть этого вопроса удалось решить, заставив postfix отбрасывать письма, в которые вложены файлы из «черного» списка. Но он не может работать с архивами, увы. Это был первый, так сказать этап, который успешно показал себя.
Вторым этапом стал поиск файлов в архивах при помощи ClamAV. Оказывается, можно все-таки заставить его проверять архивы на наличие нужных файлов. Неслучайно копаясь в интернете, наткнулся на эту вот замечательную статью. Использовав информацию из нее, подкинул созданный файл в папку с антивирусными базами ClamAV и перегрузил его. Никаких исправлений в файлы конфигураций вносить не пришлось, он сразу его подхватил. Далее я отправил письмо, полученное утром, и содержащее vbs-скрипт в архиве .7z через этот сервер. Хотел было поймать процесс обработки письма, но не успел. Впрочем, через минуту мне на почту упало сообщение от антивируса, что письмо обработано, найден архив с «вредным» файлом и что письмо было заблокировано. Это было все, чего я добивался.

Virus name: rules_block_7z_vbs.UNOFFICIAL
Sender: *****@*****.ru
Recipient(s): *****@*****.ru

Quarantined to: /var/tmp/virus.yHPWqV

Сам файл с нужными определениями состоит из строк вида

rules_block_exe:CL_TYPE_MAIL:*:\.[Ee][Xx][Ee]$:*:*:*:*:*:*

Здесь самыми интересными для нас являются три поля: имя правила, тип правила и расширение файла. Имя и тип задаются первыми двумя параметрами, разделенными двоеточием. Затем идет имя файла с расширением в виде regexp-строки. Оставшиеся параметры оставляем без изменений. Расширение файла указывается в обоих регистрах.

Начало отопительного сезона

В субботу (или в пятницу, не вспомню уже) включили отопление. Прошел день, в квартире стало тепло. За исключением одного момента — только в зале. Во второй комнате и на кухне батареи остались холодными. И если бы только батареи — можно было бы спустить воздух и все. Но трубы также не нагрелись ни капли. Сезон начался с «приколов», как, впрочем, я и ожидал. Давно уже не жду ничего хорошего от управляющих компаний и ЖЭКов.
Новость от 01 сентября текущего года:

«Сегодня ГУК „Жилфонд“ получила паспорт готовности к отопительному сезону — главный документ, подтверждающий, что дома допущены к эксплуатации в осенне-зимний период (ОЗП)».

Иными словами, ремонты проведены и так далее. Все готово к наступлению холодов. Ну-ну...
Новость от 14 сентября:

«Тепловые станции Сибирской генерирующей компании, дома „Жилфонда“ и сетевое хозяйство „КрасКома“ готовы к отопительному сезону 2017-2018 годов. О работе ключевых организаций жилищно-коммунального комплекса Красноярска на пресс-конференции рассказали директор Красноярского филиала СГК Александр Шлегель, директор Красноярской теплотраспортной компании Сергей Иванов, генеральный директор Городской управляющей компании „Жилфонд“ Наталья Жавнова и генеральный директор ООО „КрасКом“ Олег Гончеров.»

То есть совсем все готово, все будет работать, как нужно. Ну-ну...
На звонок в ЖЭК сегодня в первой половине дня с вопрос «Что за хрень?» был получен ответ, что слесари начали работать по домам и до четверга все заработает окончательно. Записали мой адрес, сказали, что передадут слесарям. Блин, а чем они занимались, как минимум, всю вторую половину лета? А как же рапорты о готовности к наступающей зиме? Судя по тому, как мне подали информацию, мой случай далеко не единственный. Посмотрим, посмотрим...
Надо, кстати, градусников пару купить, поставить в комнатах и пересмотреть СНиПы на тему в каком помещении какая температура является допустимой.

И снова про зеркало NOD32

Обновил страницу зеркала, сделал ее почти полностью на базе bootstrap. Остались кое-какие нюансы, от которых планирую избавиться чуть позже.Если вкратце, то добавить немного интерактивности. Пока что мешает, в основном, таблица, генерируемая скриптом обновления. С одной стороны, скрипт отдает «чистую» таблицу, которую я могу использовать на сайте. С другой я бы и рад заменить некоторый текст в этой таблице, но... При очередной проверке скрипт заменяет измененные файлы на оригинальные и я получаю тот же самый текст, который хотел заменить. CSS в этом деле мне не помощник, буду искать другие пути.
Заодно, пока редактировал страницу, нашел несколько решений, которых мне не хватало для смены темы оформления блога на bootstrap.

Upd. Замена текста решилась одной строкой:

document.body.innerHTML = document.body.innerHTML.replace('ESET NOD32 сервер обновления', 'Информация о последнем обновлении');

Обновление зеркала NOD32

Итак. Старый скрипт, который работал на сервере не один год по какой-то непонятной причине перестал функционировать. Обновления скачиваются, но установленные антивирусы не могут его нормально обработать. По этой причине было решено подыскать скрипту достойную замену. Интересно, что, в итоге, я получил даже более функциональный и интересный скрипт, чем планировал.
Какие у него есть «плюсы»:

  1. Самообновление. При запуске скрипта он сам пытается найти более новую версию себя и обновиться. Можно отключить или настроить только на уведомление;
  2. Само собой приходят оповещения на почту;
  3. Работает со всеми версиями антивирусов. Тоже можно настроить;
  4. Настраиваются списки серверов обновлений ESET;
  5. Поддержка нескольких языков;
  6. Поиск валидных ключей лицензии в интернете;
  7. Ведение журнала работы с ротацией;
  8. Генерирование либо полноценного html-файла с информацией о текущем состоянии обновлений, либо только таблицы для встраивания ее в другой файл.
  9. Кроссплатформенность.

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

Решение проблемы с подключением принтера

Итак, дано: два ноутбука, подключенный к одной сети WiFi. Первый — старенький Asus, которому, по идее, давно пора на покой, с установленной Windows XP. На втором ноутбуке установлена Windows 10. К последнему подключен принтер, дан общий доступ. Задача стандартная: сделать общую папку и подключить на первый ноутбук принтер второго.
Первая проблема, с которой пришлось столкнуться — XP не видит второй ноутбук. Адреса заданы в одной подсети, рабочая группа одна, нужные настройки в 10 сделаны (сетевое обнаружение и прочее). Так как времени на тот момент было немного, то приходилось все делать урывками. На втором заходе понял, что виновником такого поведения является установленный Kaspersky Internet Security. При отключении сетевого экрана в нем, ноутбук появляется в сети и можно использовать общие папки на нем. Почитал инструкцию, форумы — все говорят, что необходимо и достаточно установить для этой сети уровень «Локальная» или «Доверенная». Ничерта это не сработало. Почитал про похожие проблемы — техподдержка Касперского просит связываться с ними в таких случаях. Ага, есть у меня время, как же. Пока что просто отключил сетевой экран, оставив другие настройки без изменений.
Затем столкнулся с другой проблемой. В ходе настройки сети завел на обоих компьютерах пользователя с одинаковым именем и паролем. Дал ему доступ на печать, несмотря на то, что там была группа «Все». При попытке подключиться к расшаренному принтеру все время получал запрос на ввод логина и пароля. Даже если ввести заведомо верные, доступ к принтеру получить невозможно. Пробовал разных пользователей — результат один. Снова полез в интернет. На форуме «мелкомягких» наткнулся на решение проблемы, а также на объяснение почему так происходит. Дело в том, что Windows XP использует samba версии 1, которой в Windows 10 уже нет по соображениям безопасности. Минимальная версия самбы, которую можно в ней использовать — 2. Казалось бы все, приплыли...
Решение проблемы заключалось в следующем. На компьютере с Windows XP нужно выполнить следующие действия.

  1. Открываем панель управления и заходим в принтеры.
  2. Выбираем «Установить принтер».
  3. В качестве порта подключения выбираем «Создать новый порт» и в выпадающем списке выбираем пункт «Local Port».
  4. Когда система запросит имя нового порта, вводим полный сетевой путь к принтеру. Например, такой: \\Server\HP LaserJet MFP M132 Pro.
  5. Далее выбираем нужный драйвер и завершаем установку принтера.

После проделанных манипуляций принтер сдался и выплюнул тестовую страницу. Иными словами, решение проблемы состоит в том, чтобы заставить Windows XP думать, что принтер подключен к компьютеру, на который она установлена.

Зеркало NOD32

Старею, наверное, старею. Полдня бился, не мог понять почему при верной конфигурации зеркала, оно не запрашивает пароль на доступ к обновлениям. Плюнул на все, пошел читать Пикабу. Когда он закончился, ушел покурить и тут меня осенило. Такое зачастую бывает, давно уже понял. Если не можешь справиться с какой-то задачей, нужно «забыть» про нее на время, абстрагироваться. Решение придет чуть позже само. Так и в этот раз получилось.
Я же любитель скрывать информацию от посторонних. Это была одна из причин почему я перешел на использование протокола HTTPS. Так как NOD32 не умеет (по крайней мере, 4 и 5 версии) работать через него, то оставил «лазейку» в конфигурации субдомена для него. Страница при этом открывается по HTTPS, а сам антивирус может обновляться через HTTP. Так вот... По привычке все изменения вносил в раздел, предназначенный для страницы, то есть HTTPS, тогда как нужно было это делать в разделе для антивируса. Вернулся в кабинет, скопировал нужные строки в нужный раздел файла конфигурации — и все заработало так, как и задумывалось. Дома еще слегка поправил, чтобы все компьютеры на работе и дома могли обновляться с моего сервера без использования пары логин/пароль. И на этом пока остановился.
Примерно в начале недели, кстати, закончилась лицензия на DrWeb, который устанавливал предыдущий администратор. Что я могу сказать за почти год его использования. Достаточно неудобная вещь это, оказывается. Нет, в тех вопросах, когда нужно установить антивирус на несколько машин, удалить его, запустить проверку и так далее — это безусловно удобно. Открыл страницу администрирования, задал нужное действие и никуда не нужно бегать. Но когда тебе нужно на время отключить антивирус или внести какой-то файл в исключения — тут полный облом. Можно, конечно, покопаться в настройках центра управления и внести исключения для каждой (!!!) станции, но, на мой взгляд это перебор. Нужен более простой вариант. По настройкам центра управления я проходился не один раз и они не показались мне логичными в плане группировки, почти каждый раз приходилось искать где же был нужный параметр. И несколько параноидальный режим работы агентов на компьютерах, которые не отличаются новизной «железа», меня достаточно сильно тяготил. Поэтому я просто ждал, когда же закончится действие лицензии.
Черт с ним, с DrWeb! Пусть он мне одно время и нравился за то, что «кушает» мало ресурсов и обновления у него «весят» мало. Тогда интернет был дорогой (правда в той местности он и до сих пор дорогой) и «деревья были большими». Но, видимо, те времена безвозвратно ушли. Остановимся пока что на NOD32. Итак, установить версию 4 или 5, чтобы иметь возможность задать адрес зеркала обновлений сразу после установки — это не проблема. Проблемы начинаются когда нужно установить версию 6 или выше. Нет, можно, конечно, установить антивирус нужной версии, отключить HIPS, перезагрузиться в безопасный режим, изменить нужный параметр реестра, снова перезагрузиться в нормальный режим, задать адрес зеркала... Слишком много манипуляций, на мой взгляд. Мой преподаватель информатики Раиса Петровна всегда говорила «Программист ДОЛЖЕН быть ленивым!» Видимо, я слишком буквально это понял и запомнил :-) Суть решения состоит в том, что вы запускаете некую программу перед установкой антивируса. Она мониторит нужный параметр и, при его создании или изменении (если антивирус был установлен ранее), меняет значение на нужное. В таком случае мы получаем возможность задать адрес зеркала обновлений без перезагрузок, отключений HIPS и так далее. Вручную все это мной уже обкатывалось на 8 версии антивируса. Я просто открывал редактор реестра, запускал установку антивируса и в нужный момент менял значение параметра. Момент определился методом проб и ошибок — установка драйверов. После завершения установки можно было задавать зеркало самому, без перезагрузки компьютера. Если честно, то я не совсем понимаю почему никто еще не создал подобное решение — оно же лежит на поверхности. Хотя, возможно, я просто плохо искал :-)
В общем, осталось только написать соответствующую программу и запустить ее в тестирование, благо есть куда. И исправлять ошибки по мере их нахождения.

Обновление блога

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

Ранее Ctrl + ↓