четверг, 14 марта 2024 г.

userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]

 Убунта (а может и не только она) начала что-то мутить и творить мурню:

userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]

Фикс несложный, но при нормально отключенной авторизации по паролям надо будет ещё найти как попасть на сервер... Итак: 

echo 'PubkeyAcceptedAlgorithms +ssh-rsa' > /etc/ssh/sshd_config.d/ssh-rsa.conf
systemctl restart sshd

PS

It is now possible[1] to perform chosen-prefix attacks against the
SHA-1 hash algorithm for less than USD$50K. For this reason, we will
be disabling the "ssh-rsa" public key signature algorithm that depends
on SHA-1 by default in a near-future release.

AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'

 

python3 -m pip install pip --upgrade

pip install pyopenssl --upgrade

четверг, 7 марта 2024 г.

параметры docker

Иногда надо поменять какие-то параметры докеру, и во многих доках указан /etc/defaults/docker
Но если его открыть, обнаруживаем такое
# THIS FILE DOES NOT APPLY TO SYSTEMD
Так что "для посмотреть" можно сделать systemctl edit --full docker

И с остановкой докера есть прикол, просто systemctl stop docker.service смотрим lsof | grep dockerd и видим что оно работает дальше.
Можно делать так:
systemctl disable docker.service
systemctl stop docker.service
mount | grep overlay
umount ...
(делаем нужное)
systemctl enable docker.service
systemctl start docker.service

суббота, 3 февраля 2024 г.

установка prometheus-ansible роли

 Есть готовый набор ролей

https://github.com/prometheus-community/ansible.git

Можно запустить через git clone, можно поставить коллекцию:

ansible-galaxy collection install prometheus.prometheus

или

ansible-galaxy collection install git+https://github.com/prometheus-community/ansible.git
(внимание на git+, без него скажет "нет тар файла")
Можно сделать requirements.yaml
collections:
  - name: git@github.com:my_org/private_collections.git#/path/to/collection,devel
  - name: https://github.com/ansible-collections/amazon.aws.git
    type: git
    version: 8102847014fd6e7a3233df9ea998ef4677b99248
Тут есть ещё документация
https://docs.ansible.com/ansible/latest/collections_guide/collections_installing.html

среда, 31 января 2024 г.

Добавление внешних айпи к интерфейсам

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

https://help.ovhcloud.com/csm/en-dedicated-servers-network-ipaliasing?id=kb_article_view&sysparm_article=KB0043756#instructions

В частности, у дебиана правится

/etc/network/interfaces.d/50-cloud-init

а у убунты

/etc/netplan/50-cloud-init.yaml

вторник, 30 января 2024 г.

haproxy monitoring

 У haproxy есть как уже написанные экспортеры (archived!), так и штатный экспорт в прометей, штатным и воспользуемся:

frontend prometheus

        bind *:8405

    mode http

    http-request use-service prometheus-exporter if { path /metrics }

А вот с графаной печальнее, есть больше десятка dashboars, но из проверенных (не всех) рабочим оказался только HAProxy 2 Full (id: 12693)

Ну и всё, теперь добавляем в прометей

  - job_name: haproxy

    metrics_path: /metrics

    scrape_interval: 20s

    static_configs:

    - targets:

      - '1.1.1.1:8405'

      - '2.2.2.2:8405'

и радуемся...


четверг, 18 января 2024 г.

nginx, fastcgi_pass и правильная настройка

 Если работаем через сокет, какой блок часто можно встретить?

    location ~ \.php$ {

        fastcgi_pass unix:/var/run/php-docker/php8.2-fpm.sock;

        fastcgi_index index.php;

        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;

        include fastcgi_params;

    }

Но есть нюанс: $realpath_root в данном случае сломан, вероятно потому что там должен быть реальный путь, но там пусто, файлы же в докере.. 

https://nginx.org/en/docs/http/ngx_http_core_module.html#variables

$realpath_root

an absolute pathname corresponding to the root or alias directive’s value for the current request, with all symbolic links resolved to real paths

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

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

Но читаемость всё-равно будет не очень: всё-таки ожидается, что root локальный. Можно придумать свою переменную типа

set $root_in_docker /srv/.../ ;

и потом 

fastcgi_param SCRIPT_FILENAME $root_in_docker$fastcgi_script_name;

только не забыть потом

root $root_in_docker;

а то показывает дефолтную nginx страницу. Хотя и так не очень правильно, но - работает

среда, 17 января 2024 г.

Configuration error - kwargs_from_env() got an unexpected keyword argument 'ssl_version'

 При деплое (у меня ansible + docker compose) можно поймать ошибку из заголовка, причина проста: пип версия 7.0.0 пакета docker - битая, но всем класть.

Фикс - явно пишем версию docker==6.1.3

https://github.com/geerlingguy/internet-pi/issues/567

https://github.com/docker/docker-py/issues/3194

суббота, 6 января 2024 г.

Lens умер, привет openlens?

 Суть: ранее для запуска программы нужен был Lens ID, но его можно было получить через гитхаб или gmail. Теперь не пускает с этими привязками.

И если под 5 версию был обход

127.0.0.1       app.k8slens.dev

то 6 можно только закопать.

Аналоги?
Например k9s
https://github.com/derailed/k9s/releases
https://github.com/derailed/k9s/releases/download/v0.30.6/k9s_linux_amd64.deb
ставим пакет, запускаем (k9s), видим поды в дефолт пространстве, нажимаем 0 - покажет все поды. Далее смотреть подсказку сверху или читать инструкции на сайте.

Далее.
Есть kube-web-view с обзором (там же можно посмотреть ещё с десяток вариантов, учитывая что статье 5 лет уже). Более свежая подборка (4 года)

Очень популярный веб интерфейс.

openshift-console: говорят, работает не только с шифтом, но и с обычным кубером. Не проверялось.

А также есть приколы типа https://kubenav.io/ под мобилки..

Но. Есть "форк", openlens (линк странный, проверить, и гуглить openlens)

четверг, 4 января 2024 г.

доступ к сайтам с paywall

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

https://gitlab.com/magnolia1234/bypass-paywalls-chrome-clean

воскресенье, 31 декабря 2023 г.

centos+vfat?

 Иногда вдруг может понадобиться в центоси fat32, он же vfat

yum whatprovides mkfs.vfat

yum install dosfstools

Нюанс: раздел может потребоваться переключить из linux для корректной работы:

Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): b

WARNING: If you have created or modified any DOS 6.xpartitions, please see the fdisk manual page for additionalinformation.

Changed type of partition 'Linux' to 'W95 FAT32'

сохраняем (w), форматируем и используем..

суббота, 23 декабря 2023 г.

Если нужен впс под бэкапы

 Если нужен впс под бэкапы

Виртуальные серверы с жестким диском от 4000 до 9000 GB, ценой до 3000 рублей и сортировкой по цене | Поиск VPS 

https://poiskvps.ru/index.php?search_hdd_min=4000&search_hdd_max=9000&search_price_max=3000

пятница, 8 декабря 2023 г.

clickhouse+zookeeper+ansible

Установить кликхаус не очень сложно (под докер тоже есть официальный образ), но для работы на нескольких серверах нужно ещё добавить zookeeper (уже есть версия c clickhouse keeper, но пока рекомендуется ставить)

Нюанс: сам конфиг кликхауса в убогом и давно устаревшем xml, это надо учитывать. Хотя есть и поддержка ямла, но пока 99.9% инструкций, включая офдоки, на xml

четверг, 23 ноября 2023 г.

docker, php, fpm - не работает healthcheck

 В случае фпм нельзя сделать курл на fastcgi порт, и особенно на сокет.

На помощь приходит https://github.com/renatomefi/php-fpm-healthcheck

Хинт для убунты: вместо apk install fcgi нужно apt install libfcgi-bin