Записки IT специалиста
8K subscribers
1.57K photos
50 videos
16 files
2.24K links
IT-канал, просто о сложном
https://interface31.ru

Купить рекламу:
https://telega.in/c/interface31
加入频道
💰 Выделенные сервера за 1 доллар в месяц

Время от времени нам всем требуются недорогие выделенные сервера под различные нужды. Можно воспользоваться бесплатными предложениями от Google или Oracle, а можно приобрести что-то совсем дешевое.

Но нужно понимать, что ожидать чудес в этой ценовой категории не стоит, хотя иногда попадаются весьма интересные предложения. Например я уже не первый год использую в качестве персонального VPN-сервера VPS за 6 долларов в год (0,5 доллара в месяц!!!) и он вполне стабильно работает.

Из представленных ниже предложений наиболее интересно LEB Special 1GB KVM VPS от RackNerd и их представители достаточно активны в комментариях.

https://lowendbox.com/blog/1-vps-1-usd-vps-per-month/
DROP или REJECT???

Сегодня в очередной раз столкнулись с "непонятной" для одного нашего коллеги ситуацией. В которой вся непонятность заключалась в том, что он использовал DROP вместо REJECT.

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

В чем разница? DROP просто отбрасывает пакет, а REJECT при этом сообщает отправителю что порт недоступен.

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

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

Поэтому для внутренних соединений всегда REJECT, для внешних - DROP.
👍2
Команды bash

Многие, особенно начинающие Linux-администраторы, путают команды bash с командами системы. Если мы хотим сменить рабочий каталог, то пишем cd, хотим посмотреть его содержимое - ls. Но при этом мало кто задумывается, что команда ls предоставляется одноименной утилитой, а cd - это команда bash. Т.е. у ls есть бинарный файл, а у cd - нет.

Обычно это не доставляет проблем, до тех пор, пока мы не захотим выполнить такую команду как бинарный файл. Например, если мы попытаемся в юните systemd написать что-то вроде:

ExecStart=cd /home/myname 

То такая конструкция работать не будет. Хотя, будучи запущенной интерактивно или через скрипт она будет нормально отрабатывать, даже в crontab можно было так написать. И этот факт вызывает у многих недоумение и непонимание того, что происходит. Но все просто, достаточно выполнить whereis cd и мы увидим, что бинарника у команды нет, потому что это команда bash и правильно нужно писать:

ExecStart=/bin/bash - c "cd /home/myname"

Т.е. сначала запускаем оболочку, а потом уже выполняем в ней команды.
А что будет если?

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

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

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

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

А вот совместный разбор мест отказа очень сильно помогает IT и руководителям / владельцам бизнеса понять друг друга.

Потому что простой ответ на вопрос: «сколько стоит час простоя вот этого отдела?» очень часто решает то, что до этого приходилось выпрашивать месяцами, обосновывая необходимостью обеспечить чего-то там, руководству абсолютно непонятное.

А так все просто и предельно понятно. Причем не надо искусственно ограничивать себя рамками небольших аварий. Надо принимать все риски. Прорвало трубу в серверной, случился пожар в этом здании. Что будет тогда?

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

А вы задаете себе подобные вопросы?
Оказывается известный сервис Speedtest есть и в консольном варианте. Ставится быстро и просто, иногда бывает полезен.

https://www.speedtest.net/apps/cli
👍1
Сегодня, благо была такая возможность, попробовал установить Proxmox VE 7 на реальное железо. Информация о нестабильной работе данного выпуска полностью подтвердилась. Не спешите обновляться и делать на его базе новые установки. Ждем 7.1...
Вчера обратился к нам читатель, у него проблема с подключением сканера ШК к 1С. Сканер OT-S109. Насколько я понял, это модель специально для казахского рынка и информации о ней минимум. Что нужно - драйвер для VCOM и управляющие штрихкоды для перевода сканера в этот режим. Если кто располагает информацией большая просьба поделиться.
Коротко о коммутируемых интерфейсах в Mikrotik. К коммутируемым интерфейсам относятся входящие PPP-подключения.

Их особенность состоит в том, что интерфейс подключения создается динамически в момент подключения клиента и имя вроде ovpn-имя_пользователя или l2tp-имя_пользователя. Несмотря на то, что имя интерфейса остается неизменным, для RouterOS это каждый раз новый интерфейс!

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

Как определить динамический интерфейс? По наличию флага D - dynamic.

Как сделать так, чтобы интерфейс при переподключении клиента не менялся? Выполнить "биндинг" интерфейса. Для этого в Interfaces добавьте новый интерфейс типа VPN Server Binding - где VPN - нужный вам тип подключения.

Далее все просто, нужно указать ровно два параметра: имя интерфейса и имя (логин) VPN-клиента к которому будет привязан данный интерфейс. Эту процедуру следует повторить для каждого VPN-пользователя.
Скупой платит дважды.

У нас на ответственном хранении постоянно поддерживаются складские запасы ЗИП, в частности печатающие механизмы для ККТ. Они подвержены как механическому износу, так и страдают от варварского обращения сотрудников (ломают пластиковые части деталей).

Раз в месяц мы производим инвентаризацию и вместе с актами выполненных работ направляем заказчикам. И вот в этом месяце мы использовали последний комплект одного из заказчиков, о чем его и уведомили. Мол надо бы подкупить запчастей.

На что последовал ответ: ну у вас же механизмы на складе есть... Да, есть, но они чужие. Далее пошел разговор, мол все равно часто такие поломки не случаются, можно взять и чужой, я сразу заплачу, вы новый дозакажете...

В общем - понимания не вышло. Ну дело хозяйское. И буквально сегодня вечером поступает звонок с еще одной его точки. ККТ не пропечатывает правый край чека, гудит и вибрирует при печати.

Звоню владельцу бизнеса, спрашиваю, мол что делать будем? Завтра пятница, топ продаж. Снова начинается песня про чужие комплекты. Пришлось обломать и указать ему на то, что у него в одну неделю два отказа.

Погрустнел, спрашивает, ну можно же что-то придумать. Да можно говорю, есть у меня условно рабочие механизмы. Один время от времени бумагу жует, у второго датчик крышки время от времени западает. Но работать можно. А во вторник привезут новые, в среду заменим.

И тут вопрос, а это я что, за работу два раза заплачу? Именно так - отвечаю, тем более сразу, в одном счете с запчастями. Начал было дергаться, но пришлось пояснить - не хочет как хочет. Мы не одни в городе, может пойти поискать того, кто починит ККТ прямо сразу с утра, под его честное слово оплатить.

А надо было всего лишь вовремя докупить ЗИП на склад...
С августа 2021 Microsoft вводит блокировку потенциально нежелательных программ (PUA). Идея вроде бы хорошая, но реализация - как всегда. Совершенно неожиданно под блокировку попал Qbittorrent - открытое ПО и, на мой взгляд, один из лучших торрент-клиентов для Windows. С чего он вдруг стал нежелательным - решительно непонятно.

После чего решил проверить на VirusTotal кто еще так считает, выяснилось, что кроме SecureAge APEX - никто, зато нашелся интересный коммент как раз на тему торрентов.

Больше всего в этой ситуации напрягает, что кто-то сторонний начинает решать, каким ПО мне пользоваться, а каким нет. Поэтому для отключения выполните в PS:

Set-MpPreference -PUAProtection disable
🤔 Как узнать свой внешний IP в терминале? Очень просто, есть такой сервис ifconfig.me - имеющий интерфейс командной строки. Официальная справка предлагает использовать curl, но он не везде установлен, зато обычно всегда есть wget:

wget -O - -q ifconfig.me/ip