Как оказалось, у этого монитора был режим «сохранения зрения», который отключал яркость внутри, поэтому программные манипуляции с ним были невозможны. Мне пришлось отключить режим сохранения зрения в экранном меню, и тогда все заработало как часы.
ddcutil включил все остальное:
sudo ddcutil vcpinfo
для получения списка кодов функций вашего монитора sudo ddcutil getvcp 0x10
в моем случае, чтобы узнать значение функции, которую я хочу изменить sudo ddcutil setvcp 0x10 42
, чтобы установить для функции яркости значение 42. К сожалению, это ведение журнала VNC имеет не совсем подходящий формат журнала -для fail2ban -сообщение с ошибкой не содержит IP-адрес, а записи с IP и неудачной попыткой не содержат какого-либо идентификатора для возможности группировки их по этому идентификатору.
По сути, fail2ban может обрабатывать такие многострочные -журналы (, содержащие IP в одной строке и отказ в другой строке )двумя методами обработки:
maxlines
>= 2 прокрутка журнала с окном сообщений, содержащим более 1 сообщения; <F-MLFID>...</F-MLFID>
для захвата связанного с сеансом -идентификатора в каждой строке, чтобы учесть 2 сообщения от одного и того же клиента. Оба метода здесь не очень подходят.
Вскоре вы не сможете отличить законную попытку от неудачной попытки, если они происходят одновременно, например:
Got connection from client 192.0.2.111
Got connection from client 192.0.2.222
Too many authentication failures - client rejected
Client successfully connected ~artificial log-entry (I don't know ~
Здесь мы видим, что 2 клиента подключились, но один не работает, а другой успешно.Какой из них был успешным, а какой нет?
Существует еще одна запись в журнале -(с IP-адресом иgone
)косвенно после отклонения сообщения, поэтому, если вы скажете, что маловероятно, что клиент ушел сразу после успешного подключения, вы можете сказать, что мы' Я буду рассматривать близлежащие сообщения с client rejected
и gone
как сообщения от одного и того же клиента (, это немного «опасно», особенно если между успехом в какой-то момент и исчезновением нет дальнейших сообщений, но... ).
Тогда можно использовать следующую конфигурацию:
# increasing the value of `maxlines` would make that the filter works more precise (can consider failures also in case of some flood in log between `client rejected` and `gone`),
# but it would make it more unsafe at the same time (because it can cause false positives on `gone` messages from legitimate clients occurring after `client rejected` logged from evildoers):
maxlines = 2
failregex = ^\s*Too many authentication failures - client rejected<SKIPLINES>\s*Client <ADDR> gone
(замените <ADDR>
на <HOST>
, если ваша версия fail2ban старше 0.10)
Но в любом случае лучше это исправить на сайте VNC -т.е. грамм. добавление IP-адреса непосредственно в сообщение client rejected
или введение некоторого связанного с сеансом -идентификатора, однозначно идентифицирующего клиента.