а всё таки, почему не стоит использовать time.google.com ? я наоборот прописал time2.google.com в качестве основного. у знаменитого 194.190.168.1 например разброс по времени +40/-10 мс согласно score
никогда этим не пользовался (во всяком случае не помню). но попробую запомнить, спасибо. хотя я обычно непосредственно через iptables добавляю и удаляю правила. использую алиас ipt="iptables -n -v --line-numbers" в bashrc а в более сложных случаях save - restore, но теперь попробую как-нибудь через apply
Увеличивам размер таблицы xt_recent. По умолчанию 100. Эта таблица вроде как кольцевой буфер, но 100 маловато. 500к может многовато, оптимальный размер не подбирал, вроде и так норм. Если recent уже используется в iptables, сначала надо убрать правила, выгрузить модуль, добавить файлик (файлик когда угодно можно добавить). Можно загрузить модуль вручную, но он будет и так загружен, когда правила добавятся. Ну или добавить файлик и ребутнуться.
Показалось полезным, т.к. нам совершенно не нужно отслеживать "соединения" для ntp, т.к по сути там нет как такового соединения для обмена.
Это правило срабатывает (блокирует ntp трафик на 123 порт), если в таблице нашлось соединение и еще не прошло 1200 секунд с момента последнего пакета. Б
В данном правиле мы ограничиваем ACCEPT лимитом в 1 запрос в секунду так же по src. Размер таблицы 500к, обнуление через 5 секунд (хотя в случае 1 запроса в секунду, обнуление особого смысла не имеет).
алгоритм такой - сохраняем правила, редактируем, комментируем правила hashlimit и следующее правило с DROP (иначе весь трафик будет блочиться на время манипуляций, что негативно сказыватеся на score). делаем cat /tmp/g|iptables-restore -c еще раз редактируем - раскомментируем, и еще раз cat /tmp/g|iptables-restore -c
и еще, вроде как поведение этих всех правил может отличаться в зависимости от версии ядра, системы и дистрибутива. у меня это всё работает на debian 11.9, 5.10.0-28-amd64 в общем пробовать нужно осторожно
амплификация в случае ntp это когда на один запрос monlist отдаётся гораздо больший ответ. в данном случае это не актуально, поскольку данная команда не доступна по крайней мере в случае с chrony, да и в новых версиях ntp её вроде как нет. злоумышленнику придётся отправить столько же пакетов и такого же объёма. другое дело, что они так обходят файрволы разных внутрироссийских сервисов. ну я выше написал, что можно с помощью iptables сделать, чтоб снизить использование атакующими ntp серверов.
но чем больше таблица, тем больше системе надо про ней пробегаться - тоже не хорошо. нужно тут компромисс искать. а в чём смысл так chrony запускать если можно запустить несколько, которые сами забирают с stratum 1 серверов. разве что ради экономии ресурсов этих серверов
ну большинство всё таки от самих хостов. хотя встречаются и такие, что транзитный хост отвечает разумеется, но там вроде другой тип icmp по идее должен быть. я бы еще по code фильтровал, например type 3 и code 3 , что что-то не нашёл как в iptables по code фильтровать.
еще рекомендую посмотреть на очереди сервера (multiqueue) : ethtool -l eth1 в идеале должны соответствовать ядрам мультизапуск chronyd тоже очень полезен. не знаю, как он работает, но по сути балансируются как-то между сервисами udp запроса без регистрации и смс в дебиан на основе /etc/systemd/system/chronyd.service просто копируете содержимое в /etc/systemd/system/chronyd{1,2,3,4}.service внутри делаете
Спасибо за статью, действительно очень интересно и похоже чем-то. чексумы полезно по идее, когда standby есть. Хотя может если бы тут чексумы были включены, то база просто бы подняла лапки вверх и мы бы заметили проблему раньше. А расчёт более удобного - сомнительно. Наверное лучше сначала через мой способ пройти - когда наглядно видно блоки, а потом уж зачищать их через dd.
delete from check_corruption where ctid='(0,6)’;
у меня кстати не срабатывало, я пробовал. Какие-то строчки удалились, какие-то - нет.
скриптик который в статье там описывается find_bad_row() - по сути я на баше +- написал, бонусом получил не только последнюю прочитавшуюся ctid, но и чуть больше
а вот zero_damaged_pages это прям интересненько, однако мне всё равно кажется что мой способ получился наиболее деликатный и предсказуемый, хоть может и сложноватый.
кстати на одной из таблиц, при попытке селекте, постгрес вообще падал. не уверен, что помог бы zero_damaged_pages и что-то еще
Для safari последней версии и macos quic включается так sudo defaults write /Library/Preferences/com.apple.networkd.plist enable_quic -bool true Автор, добавь в статью пожалуйста. В интернете что-то нет этого способа вообще.
Моя статья не про это. Она про управление устройствами подключенными к алисе своими скриптами. Вам же нужно управлять сторонними устройствами. Таких статей гораздо больше. Чаще всего упоминается привязка яндекса к home assistant, а затем уже к HA можно привязать своё устройство.
обогреватель - это на зиму, отопление не идеально работает.
Да и по температуре не интересно дома, достаточно такого вот полуавтомата. У меня вообще долгосрочная задача - на даче включать отопление только ночью, когда тариф минимальный. Там я точно буду что-то локальное использовать. Видимо как раз HA
Еще вот "если дома кто-то есть" у меня реализовано через наличие мак-адресов телефонов в unifi контролере тоже php/bash скриптами. Работает годами безотказно, только маки надо менять, если вдруг телефон сменится.
Многие говорят про home assistantну. Я лишь недавно что-то стал делать в части умных домов. Как-то оно не особо нужно было) А то что нужно было - делал на php и bash скриптах. Вяло ковырял domoticz, z-wave, прошивал sonoff в tasmota. Думаю я когда-то дойду до ha. Наверное никогда не поздно же да?
ну, в моём случае дома всегда люди присутствуют. как-нибудь отключат. обогреватели в mi home кстати. не знаю, можно ли их к чему-то локальному подключить
ну примерно так, но я не пробовал, но по логике должно работать
а всё таки, почему не стоит использовать time.google.com ? я наоборот прописал time2.google.com в качестве основного. у знаменитого 194.190.168.1 например разброс по времени +40/-10 мс согласно score
проверял через https://www.ntppool.org/scores/216.239.35.4 . пинг до него красивый и ровный 15.7-15.8
перечисленные выше сервера слабоваты по качеству, согласно score. пара серверов только ничего. а так, даже мой сервачок уже 19.9 по score
никогда этим не пользовался (во всяком случае не помню). но попробую запомнить, спасибо.
хотя я обычно непосредственно через iptables добавляю и удаляю правила. использую алиас ipt="iptables -n -v --line-numbers" в bashrc
а в более сложных случаях save - restore, но теперь попробую как-нибудь через apply
как-то даже пошёл гуглить, что делает эта команда. никогда не пользовался. возможно apply и то что надо в данном случае, но я не проверял.
Увеличивам размер таблицы xt_recent. По умолчанию 100. Эта таблица вроде как кольцевой буфер, но 100 маловато. 500к может многовато, оптимальный размер не подбирал, вроде и так норм.
Если recent уже используется в iptables, сначала надо убрать правила, выгрузить модуль, добавить файлик (файлик когда угодно можно добавить). Можно загрузить модуль вручную, но он будет и так загружен, когда правила добавятся. Ну или добавить файлик и ребутнуться.
Показалось полезным, т.к. нам совершенно не нужно отслеживать "соединения" для ntp, т.к по сути там нет как такового соединения для обмена.
Это правило срабатывает (блокирует ntp трафик на 123 порт), если в таблице нашлось соединение и еще не прошло 1200 секунд с момента последнего пакета. Б
Это правило добавляет в таблицу по src, если от него пришёл icmp тип 3 и заодно блокируем.
В данном правиле мы ограничиваем ACCEPT лимитом в 1 запрос в секунду так же по src. Размер таблицы 500к, обнуление через 5 секунд (хотя в случае 1 запроса в секунду, обнуление особого смысла не имеет).
Блокируем трафик, если предыдущее правило не сработало по причине лимитов.
Еще у меня на всякий случай есть правила
но они опциональны.
Что касается правило с hashlimit, чтоб изменить его параметры надо удалить правило и добавить заново.
проще всего это делать так
алгоритм такой - сохраняем правила, редактируем, комментируем правила hashlimit и следующее правило с DROP (иначе весь трафик будет блочиться на время манипуляций, что негативно сказыватеся на score). делаем cat /tmp/g|iptables-restore -c еще раз редактируем - раскомментируем, и еще раз cat /tmp/g|iptables-restore -c
и еще, вроде как поведение этих всех правил может отличаться в зависимости от версии ядра, системы и дистрибутива.
у меня это всё работает на debian 11.9, 5.10.0-28-amd64
в общем пробовать нужно осторожно
амплификация в случае ntp это когда на один запрос monlist отдаётся гораздо больший ответ. в данном случае это не актуально, поскольку данная команда не доступна по крайней мере в случае с chrony, да и в новых версиях ntp её вроде как нет. злоумышленнику придётся отправить столько же пакетов и такого же объёма. другое дело, что они так обходят файрволы разных внутрироссийских сервисов. ну я выше написал, что можно с помощью iptables сделать, чтоб снизить использование атакующими ntp серверов.
я за контроль рейта на уровне iptables. негоже этим в юзерспейсе заниматься. а лог - точно зло тут
но чем больше таблица, тем больше системе надо про ней пробегаться - тоже не хорошо. нужно тут компромисс искать.
а в чём смысл так chrony запускать если можно запустить несколько, которые сами забирают с stratum 1 серверов.
разве что ради экономии ресурсов этих серверов
ну вот сейчас гигабит поставил, разницы особо не почувствовал. может конечно провайдер как-то режет, но наверное тогда бы мониторинг ntppool ругался
ну большинство всё таки от самих хостов. хотя встречаются и такие, что транзитный хост отвечает разумеется, но там вроде другой тип icmp по идее должен быть. я бы еще по code фильтровал, например type 3 и code 3 , что что-то не нашёл как в iptables по code фильтровать.
эта выставленная скорость почти ни на что не влияет
это участие в ддос атаке (на мой взгляд), ниже пост где можно это забанить
просто оставлю это тут
еще рекомендую посмотреть на очереди сервера (multiqueue) : ethtool -l eth1
в идеале должны соответствовать ядрам
мультизапуск chronyd тоже очень полезен. не знаю, как он работает, но по сути балансируются как-то между сервисами udp запроса без регистрации и смс
в дебиан на основе /etc/systemd/system/chronyd.service
просто копируете содержимое в
/etc/systemd/system/chronyd{1,2,3,4}.service
внутри делаете
в файликах /etc/chrony/chrony{1,2,3,4}.conf
добавляете строчку
Спасибо за статью, действительно очень интересно и похоже чем-то. чексумы полезно по идее, когда standby есть. Хотя может если бы тут чексумы были включены, то база просто бы подняла лапки вверх и мы бы заметили проблему раньше.
А расчёт более удобного - сомнительно. Наверное лучше сначала через мой способ пройти - когда наглядно видно блоки, а потом уж зачищать их через dd.
delete from check_corruption where ctid='(0,6)’;
у меня кстати не срабатывало, я пробовал. Какие-то строчки удалились, какие-то - нет.
скриптик который в статье там описывается find_bad_row() - по сути я на баше +- написал, бонусом получил не только последнюю прочитавшуюся ctid, но и чуть больше
а вот zero_damaged_pages это прям интересненько, однако мне всё равно кажется что мой способ получился наиболее деликатный и предсказуемый, хоть может и сложноватый.
кстати на одной из таблиц, при попытке селекте, постгрес вообще падал. не уверен, что помог бы zero_damaged_pages и что-то еще
Для safari последней версии и macos quic включается так
sudo defaults write /Library/Preferences/com.apple.networkd.plist enable_quic -bool true
Автор, добавь в статью пожалуйста. В интернете что-то нет этого способа вообще.
Моя статья не про это. Она про управление устройствами подключенными к алисе своими скриптами. Вам же нужно управлять сторонними устройствами. Таких статей гораздо больше. Чаще всего упоминается привязка яндекса к home assistant, а затем уже к HA можно привязать своё устройство.
Еще есть способ через навыки алисы, например вот.
https://yandex.ru/dev/dialogs/alice/doc/ru/deploy-server
Конкретную хорошую статью сейчас не вспомню, но они были.
Ну и документация: https://yandex.ru/dev/dialogs/smart-home/doc/ru/
еще вот интересный гитхаб: https://github.com/AlexxIT/YandexStation
Вмешиваться и не надо, если всё работает.
обогреватель - это на зиму, отопление не идеально работает.
Да и по температуре не интересно дома, достаточно такого вот полуавтомата. У меня вообще долгосрочная задача - на даче включать отопление только ночью, когда тариф минимальный. Там я точно буду что-то локальное использовать. Видимо как раз HA
Еще вот "если дома кто-то есть" у меня реализовано через наличие мак-адресов телефонов в unifi контролере тоже php/bash скриптами. Работает годами безотказно, только маки надо менять, если вдруг телефон сменится.
Многие говорят про home assistantну. Я лишь недавно что-то стал делать в части умных домов. Как-то оно не особо нужно было) А то что нужно было - делал на php и bash скриптах. Вяло ковырял domoticz, z-wave, прошивал sonoff в tasmota. Думаю я когда-то дойду до ha. Наверное никогда не поздно же да?
не знал, надо будет попробовать. но обогреватель у меня в mi home.
ну, в моём случае дома всегда люди присутствуют. как-нибудь отключат. обогреватели в mi home кстати. не знаю, можно ли их к чему-то локальному подключить