LINUX.ORG.RU

Сообщения gobot

 

Вопросик

 ,

journalctl --since «1 hour ago»

Неужели нельзя было как-то по человечески сделать, например "-s 1h"? Запаришься ведь вспоминать эту лабуду постоянно

journalctl --no-pager

По умолчанию идет разбивка на страницы как в man... И постоянно приходится эту лабуду дописывать. Неужели нельзя было по дефолту не разбивать? Все равно ведь логи грепаешь, а не читаешь как книжку какую-то...

Или может я чего-то не так делаю?

gobot
()

Сервер прерывает соединение https

 

Сервер начал внезапно сбрасывать соединение, если начинаешь что-то загружать больше чем 10 байтов. Если клиенту отдать например «hello world», то нормально, если что-то больше (точно не проверял, но где то по ощущениям килобайт) - соединение висит и приходит RST пакет. Работал годами в этой конфигурации, ничего не менял.

Когда 15kb скачает, когда 40kb и отваливается

tcpdump -n -i eth0 host client and port not 22

05:54:43.180201 IP client.16239 > server.443: Flags [S], seq 4116473154, win 8760, options [mss 1390,nop,wscale 8,nop,nop,sackOK], length 0
05:54:43.180240 IP server.443 > client.16239: Flags [S.], seq 4168317543, ack 4116473155, win 64240, options [mss 1460,nop,nop,sackOK,nop,wscale 7], length 0
05:54:43.321936 IP client.16239 > server.443: Flags [.], ack 1, win 34, length 0
05:54:43.327251 IP client.16239 > server.443: Flags [P.], seq 1:366, ack 1, win 34, length 365
05:54:43.327283 IP server.443 > client.16239: Flags [.], ack 366, win 501, length 0
05:54:43.327604 IP server.443 > client.16239: Flags [P.], seq 1:110, ack 366, win 501, length 109
05:54:43.471964 IP client.16239 > server.443: Flags [P.], seq 366:417, ack 110, win 33, length 51
05:54:43.473029 IP client.16239 > server.443: Flags [P.], seq 417:515, ack 110, win 33, length 98
05:54:43.473133 IP server.443 > client.16239: Flags [.], ack 515, win 501, length 0
05:54:43.473292 IP server.443 > client.16239: Flags [P.], seq 110:2890, ack 515, win 501, length 2780
05:54:43.473301 IP server.443 > client.16239: Flags [P.], seq 2890:5670, ack 515, win 501, length 2780
05:54:43.473315 IP server.443 > client.16239: Flags [P.], seq 5670:8450, ack 515, win 501, length 2780
05:54:43.614711 IP client.16239 > server.443: Flags [.], ack 2890, win 34, length 0
05:54:43.614748 IP server.443 > client.16239: Flags [P.], seq 8450:11230, ack 515, win 501, length 2780
05:54:43.616821 IP client.16239 > server.443: Flags [.], ack 5670, win 34, length 0
05:54:43.616852 IP server.443 > client.16239: Flags [P.], seq 11230:12620, ack 515, win 501, length 1390
05:54:43.618953 IP client.16239 > server.443: Flags [.], ack 8450, win 34, length 0
05:54:43.618987 IP server.443 > client.16239: Flags [P.], seq 12620:15400, ack 515, win 501, length 2780
05:54:43.618994 IP server.443 > client.16239: Flags [.], seq 15400:16790, ack 515, win 501, length 1390
05:54:43.776733 IP client.16239 > server.443: Flags [.], ack 11230, win 34, length 0
05:54:43.776767 IP server.443 > client.16239: Flags [P.], seq 16790:19570, ack 515, win 501, length 2780
05:54:43.779979 IP client.16239 > server.443: Flags [.], ack 14010, win 34, length 0
05:54:43.780007 IP server.443 > client.16239: Flags [P.], seq 19570:20960, ack 515, win 501, length 1390
05:54:43.805039 IP client.16239 > server.443: Flags [.], ack 16790, win 70, length 0
05:54:43.805071 IP server.443 > client.16239: Flags [P.], seq 20960:23740, ack 515, win 501, length 2780
05:54:43.805079 IP server.443 > client.16239: Flags [.], seq 23740:25130, ack 515, win 501, length 1390
05:54:43.805083 IP server.443 > client.16239: Flags [P.], seq 25130:27910, ack 515, win 501, length 2780
05:54:43.805242 IP server.443 > client.16239: Flags [P.], seq 27910:29300, ack 515, win 501, length 1390
05:54:43.805253 IP server.443 > client.16239: Flags [P.], seq 29300:32080, ack 515, win 501, length 2780
05:54:43.805283 IP server.443 > client.16239: Flags [.], seq 32080:33470, ack 515, win 501, length 1390
05:54:44.121039 IP server.443 > client.16239: Flags [.], seq 32080:33470, ack 515, win 501, length 1390
05:54:44.537009 IP server.443 > client.16239: Flags [.], seq 16790:18180, ack 515, win 501, length 1390
05:54:45.369055 IP server.443 > client.16239: Flags [.], seq 16790:18180, ack 515, win 501, length 1390
05:54:47.001053 IP server.443 > client.16239: Flags [.], seq 16790:18180, ack 515, win 501, length 1390
05:54:50.361047 IP server.443 > client.16239: Flags [.], seq 16790:18180, ack 515, win 501, length 1390
05:54:53.779507 IP server.443 > client.16239: Flags [R.], seq 33470, ack 515, win 501, length 0

gobot
()

Как добавить второй адрес на сервер?

 ,

ip a add 1.1.1.1/32 dev eno1:0

Что=то добавляет, но это не работает

ifconfig eno1:0
eno1:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 14:18:77:6e:2d:b8 txqueuelen 1000 (Ethernet)
device interrupt 16


ifconfig eno1:0 up
SIOCSIFFLAGS: Cannot assign requested address

Debian 5.10.149-2 (2022-10-21) x86_64 GNU/Linux

gobot
()

DTLS

 , , ,

Столкнулся с проблемой, dtls сессии отваливаются. Ошибка, точнее иногда это норм, если завершаешь сеанс сам, а иногда само по себе: close notify. Отчего и кто может генерировать такие уведомления? Точно не сервер(ему они приходят, он их видит и говорит что все пипец, закрываю сессию). Значит клиент? Но клиент (chrome), тоже никаким образом принудительно не закрывается. Шлет трафик по udp, а потом отваливается (connectionState=disconnect). Грешу на вмешательство 3 лица(точеее рыла!)

Что это вообще, кто их умеет готовить, эти dtls?

gobot
()

Вопросик

 , , ,

Заметил что на XHR запросы (мои api) браузер посылает заголовок Connection: keep-alive. Посмотрел например на ютубе АПИ (пример https://www.youtube.com/youtubei/v1) такой заголовок браузер не посылает. Вообще от чего зависит это? Нужно ли закрывать соединения, которые идут на API?

gobot
()

Лимиты соединений

 , , ,

Что-то ограничивает кол-во соединений на tcp сокете, конкретно websocket, схема такова: client -> cloudflare -> nginx -> node

Где то затык. Доходит примерно до 200 соединений и начинают виснуть.

Пользователи таковы:
Nginx - www-data
node - gobot

/etc/security/limits.conf
root      hard    nofile      500000
root      soft    nofile      500000

www-data      hard    nofile      500000
www-data      soft    nofile      500000

gobot      hard    nofile      500000
gobot      soft    nofile      500000


/etc/sysctl.conf
fs.file-max = 999999
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 10000
net.core.netdev_budget = 600
net.netfilter.nf_conntrack_max=1048576
net.netfilter.nf_conntrack_tcp_loose = 0
net.ipv4.tcp_max_syn_backlog = 4096

/etc/nginx/nginx.conf
user www-data;
worker_processes auto;
worker_rlimit_nofile 9999;
events {
   worker_connections 2000;
}




Вроде все лимиты прописал. Что ещё может быть?

ss -l | grep 8091 порт websocket

Recv-Q           Send-Q
76 511


Я как понимаю тут есть ожидающие соединения (76)?

gobot
()

Насколько хватит и куда пойдет развитие

 , , ,

Просто интересно услышать мнения, чисто теория. Концепция отображения (html), доставки (http), интерактивности (DOM) - три кита, которые объединяет браузер. Уже лет 30 наверное как активно развивается и никаких предпосылок нет для изменений. Расширяют функционал, но концепция сама не меняется вообще никак. Раньше был кошмар сейчас стандарт все унифицировал и выдрессировал даже капризных MS и Apple и по факту все свелось к 2 движкам Хрому и Мозиле. Все обрасло системами сборки, фреймворками, webstormами и можно сказать наступил рай в вебе.

Сейчас браузер позволяет создать ^почти% ничем не уступающее десктоп приложение классическим. Из минусов возможно в некоторых случаях это скорость, невозможность реализации некоторых специфичных для ОС функций(и то это пока не стандартизировали/реализовали), но большинство потребностей можно удовлетворить браузером+сервером.

Сейчас уже много всяких онлайн сервисов, качать как раньше софт уже не камильфо. Просто вбиваешь в поиск «онлайн ... что то там» и в 99% ьудет браузерный,аналог. Шареварщики походу вымерли от этого.

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

Короче, что ждать от веба, куда его занесет, что его заменит и через сколько времени?

gobot
()

Геомаршрутизаторы

 

Географический маршрутизатор (Geo Router) вычисляет свою зону обслуживания и аппроксимирует её многоугольником. Геомаршрутизаторы, обмениваясь многоугольниками зон обслуживания, строят таблицы маршрутизации.

Есть ли в реале такие или sofrware?

gobot
()

ip6

 ,

Посмотрел тут cloudflare сайт по ip6 доступен

IPv6 Compatibility
Enable IPv6 support and gateway.

This setting was last changed 5 years ago


и никак (вроде только через API) не отключить. На сервере самом есть ip6. Вот думаю замарачиваться ли с этим гребаным ip6 или убрать. Вообще сайт изначально не был рассчитан на ip6, то есть все парсеры, либы, проверки только ip4. В принципе их немного и можно заточить. Во думаю стоит ли оно того? Адреса там уродские, длинные какие-то и не запоминающиеся. Да и вообще подвижек особых не вижу, даже мой пров не выдает ip6. Да, используют его ВПН, всякие ФЛЮДЕРЫ ДУСЕРЫ и прочие поганцы. Вот и думаю, не прибавиться ли ботов, стоил ли вообще его поддерживать, больше проблем будет от него или нет? Там же и почта всякая и прочее вылезит.

Кто использует реально ip6 и какие от него реальные плюсы для владельцев сайтов? Ну кроме впнщиков и... кто там ещё я даже не знаю

gobot
()

journalctl не умеет фильтровать ошибки?

 ,

Решил тут перейти с supervisord на systemd unit... И...решил посмотреть логи ошибок

Судя по
https://github.com/systemd/systemd/pull/6599

Если так, то я в шоке. Как такое может быть?? Как я могу ошибки смотреть? По сути это самое насущное что требуется в основном... Грепать? Заводить для каждой блохи свои логи?

gobot
()

Как можно изолировать vhost

 

Есть кучка сайтиков которые лежат в папках /var/www/html и которые обрабатывает ngix (некоторые через pass_proxy некоторые просто статичные). Написаны они с разной мерой криворукости... Как бы их изолировать, чтобы например 1 сайт не имел никакого доступа кроме своей папки? Nginx запускается от 1 пользователя и для каждого хоста не изменить. Мутить докер для каждой блохи как то лень... Может есть какой-то супер простой способ?

gobot
()

Как сделать чтобы nginx искал в 3 папках

 

Уважаемые эксперты, помогите

Есть 2 папки и ещё http. Нужно чтобы nginx при каждом запросе сначала проверял файл в 1 папке, потом в 2 папке, а если и там не нашел то перенаправлял запрос в proxy_pass



Пытался try_files

location / {
   try_files @pub @dist @proxy;
}

location @pub {
  root /proj/pub
}

location @dist {
  root /proj/dist
}

location @proxy {
  proxy_pass http://127.0.0.1:9090;
}


но ничего не выходит

gobot
()

Как из git получить файлы

 ,

Сделал push из webstorm на удаленный git сервер мой по ssh (заранее прописав в нем receive.denyCurrentBranch ignore), пуш прошел нормально, НО нет файлов самих. Есть просто папка .git. Как из нее вытащить собственно файлы?

До этого делал bare, туда пушил, потом pull из него в другой репо... Это 2 папки создавать, туда-сюда гонять из пустого в порожнее. Мне нужно просто deploy сделать, по сути тупо файлы копировать, но FTP долго, а git быстро делает это. Но вот только в этом затык сейчас

gobot
()

Как запретить хрому ставить видео на паузу

 ,

Когда вкладка неактивна хром (падла) ставит видео на паузу. А видео - это стрим, который через MSE кормится. Понятно дело, что оптимизация, НО, хром на десктопе, чего ему оптимизировать то? Батарейки нет, интенет 1000000 GBSP... как эту сволочь отучить от медвежьих услуг?

gobot
()

Как делать 404 подсказки для поисковика

 , , ,

Если сайт получает страницу через AJAX, то есть сначала грузится все HTML барахло, а потом javascript дергает через AJAX и она не найдена. Ибо рендеринг идет на стороне клиента (VUE). Может мета-теги какие-то надо установить или ещё что

gobot
()

нужен html редактор кода

 

Нужен JS-редактор html-кода, внедряемый на сайт, желательно интегрируемый с VUE

Типа такого
https://onecompiler.com/


Без WYSYWING. Автодополнение тегов\атрибутов, tab-indent, ну и прочее как в webstorm.

Цель: нужно на сайте править иногда небольшие текстики, типа страничек «конфиденциальность», «контакты».

gobot
()

Для его делают такие модули?

 

Случайно тут наткнулся на
https://github.com/joaquimserafim/between-range

Там 1 строчка кода и опа...МОДУЛЬ! А ведь его реально используют в зависимостях. Собственно там я его и нашел




Перемещено CrX из development

gobot
()

как запустить node на порт 80

 

Пишет listen EACCES: permission denied 0.0.0.0:80

Понятно, что через sudo надо или прочие костыли, но запускаю через webstorm, а там нет таких хаков. Система: ubuntu

gobot
()

Как вывести друзей на карте мира

 , ,

Openlayers+mongodb. Там есть поддержка geojson это изумительно! Честно даже не знал и не задумывался о реализации, но раз уж Богом дано надо брать.

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

Покумекал сегодня, пришли кое какие идеи о реализации, но не охота велосипед делать, может есть какие то алгоритны/патерны/либы что-то еще? Изгуглился, ничего толкового не нашел, все тупо выводят балоны на кару, если их миллион будет(не будет конечно хехе)?

gobot
()

Соединение устанавливается через раз

 , ,

Сегодня внезапно появилась проблема с TCP конектом между 2 серверами. Соединение 1 раз из 5 не устанавливается, SYN отправляется, а на удаленной машине не видно. Порты любые. Порты открыты. TCPDUMP запускал на обоих концах. С одной стороны уходит SYN, на другой его нет. Поэтому бесконечное ожидание, висит и ждет SYN+ACK

Тестил по разному:

curl http://x.x.x.x:80
nc -z x.x.x.x 80
nc -z x.x.x.x 10050
nc -z x.x.x.x 25

Тестировал с 3 машины оба сервера - нормально и тот и другой соединения принимает без затыков. Значит проблема именно в связке этих двух концов, а не по отдельности

Шаманил с iptables (iptables -I INPUT -j ACCEPT, iptables -I OUTPUT -j ACCEPT) на обоих концах. В логах пусто. Что может блокировать ешё?

на обоих стоит debian

gobot
()

RSS подписка на новые темы