LINUX.ORG.RU

Сообщения ostin

 

Помогите с регуляркой

Форум — General

Есть код, который выводит такое:

"true - aaa/node_modules/@hapi/address/lib/index.js"
"false - aaa/src/lib/facebook-pixel.js"
"false - aaa/node_modules/axios/index.js"
"true - aaa/node_modules/facebook-nodejs-business-sdk/node_modules/axios/index.js"
const re = new RegExp('node_modules/(?!(axios))')
const testStrings = [
  'aaa/node_modules/@hapi/address/lib/index.js',
  'aaa/src/lib/facebook-pixel.js',
  'aaa/node_modules/axios/index.js',
  'aaa/node_modules/facebook-nodejs-business-sdk/node_modules/axios/index.js'
];

for (const path of testStrings) {
  console.log(`${re.test(path)} - ${path}`);
}

Я, видимо ошибочно, ожидаю, что 4 строка будет false. Как исправить RegExp, чтобы выводилось false для 4 строки

 ,

ostin
()

Интернет через разные шлюзы

Форум — Admin

Есть linux-роутер с 3-мя сетевыми интерфейсами. Два их которых (eth0 и eth1) обслуживают локальную сеть, третей (eth2) подключен к интернет провайдеру.

Нужно клиентов из подсети 10.255.100.0/24 (с интерфейса eth0) пускать в интернет напрямую через интернет провайдера (nat настроен и работает, интерфейс eth2), а клиенты из подсети 10.255.200.0/24 (интерфейс eth1) должны получать доступ к интернету через vpn до удаленной vps (интерфейс на роутере wg0).

Список интерфейсов linux-роутера такой:

eth0 10.255.100.0/24 клиенты, которые ходят через ISP
eth1 10.255.200.0/24 клиенты, которые должны ходить через wg0
eth2 ISP
wg0  192.168.0.0/24

NAT на linux-роутере настроен через iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE.

Подскажите, как реализовать эту задачу (насколько понимаю, речь о source-based роутинге) через разные шлюзы?

 , ,

ostin
()

После настройки vlan не открываются некоторые сайты

Форум — Admin

Дома следующая схема:

Провайдер <=> (eth0) linux router (eth1) <=> wifi-точка NWA1123-AC HD <=> клиенты, подключенные по wifi

Решил настроить работу сети так, чтобы при подключении к разным wifi сетям клиенты попадали в разные vlan.

Теперь наблюдаю, что на клиентах некоторые сайты (предположительно те, которые по http2), не открываются. С linux router все сайты доступны без проблем.

curl -v --trace-ascii - https://www.linux.org.ru/
Warning: --trace-ascii overrides an earlier trace/verbose option
== Info:   Trying 178.248.233.6...
== Info: TCP_NODELAY set
== Info: Connected to www.linux.org.ru (178.248.233.6) port 443 (#0)
== Info: ALPN, offering h2
== Info: ALPN, offering http/1.1
== Info: successfully set certificate verify locations:
== Info:   CAfile: /etc/ssl/cert.pem
  CApath: none
== Info: TLSv1.2 (OUT), TLS handshake, Client hello (1):
=> Send SSL data, 230 bytes (0xe6)
0000: ...............eY..........S\...c......\.0.,.(.$.......k.9.....
0040: ............=.5...../.+.'.#.......g.3...E...<./...A.............
0080: ........].........www.linux.org.ru..............................
00c0: ...........................h2.http/1.1
== Info: Operation timed out after 300948 milliseconds with 0 out of 0 bytes received
== Info: Closing connection 0
curl: (28) Operation timed out after 300948 milliseconds with 0 out of 0 bytes received

Настройки на linux router:

# cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static
    mtu 1448
    address 10.255.0.1
    netmask 255.255.255.0

auto eth1.100
iface eth1.100 inet static
    address 10.255.100.1
    netmask 255.255.255.0
    vlan-raw-device eth1

auto eth1.200
iface eth1.200 inet static
    address 10.255.200.1
    netmask 255.255.255.0
    vlan-raw-device eth1


# ip route
default via xxx.yyy.zzz.1 dev eth0
10.255.0.0/24 dev eth1 proto kernel scope link src 10.255.0.1
10.255.100.0/24 dev eth1.100 proto kernel scope link src 10.255.100.1
10.255.200.0/24 dev eth1.200 proto kernel scope link src 10.255.200.1
xxx.yyy.zzz.0/24 dev eth0 proto kernel scope link src xxx.yyy.zzz.131
169.254.0.0/16 dev eth1 scope link metric 1000


# ip -d addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 promiscuity 0 numtxqueues 1 numrxqueues 1
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000
    link/ether 6e:56:01:ed:fa:7e brd ff:ff:ff:ff:ff:ff promiscuity 0 numtxqueues 1 numrxqueues 1
    inet xxx.yyy.zzz.131/24 brd xxx.yyy.zzz.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::6c56:1ff:feed:fa7e/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1448 qdisc fq_codel state UP group default qlen 1000
    link/ether 9c:eb:e8:b4:d3:4c brd ff:ff:ff:ff:ff:ff promiscuity 0 numtxqueues 1 numrxqueues 1
    inet 10.255.0.1/24 brd 10.255.0.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::9eeb:e8ff:feb4:d34c/64 scope link
       valid_lft forever preferred_lft forever
6: eth1.100@eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1448 qdisc noqueue state UP group default qlen 1000
    link/ether 9c:eb:e8:b4:d3:4c brd ff:ff:ff:ff:ff:ff promiscuity 0
    vlan protocol 802.1Q id 100 <REORDER_HDR> numtxqueues 1 numrxqueues 1
    inet 10.255.100.1/24 brd 10.255.100.255 scope global eth1.100
       valid_lft forever preferred_lft forever
    inet6 fe80::9eeb:e8ff:feb4:d34c/64 scope link
       valid_lft forever preferred_lft forever
7: eth1.200@eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1448 qdisc noqueue state UP group default qlen 1000
    link/ether 9c:eb:e8:b4:d3:4c brd ff:ff:ff:ff:ff:ff promiscuity 0
    vlan protocol 802.1Q id 200 <REORDER_HDR> numtxqueues 1 numrxqueues 1
    inet 10.255.200.1/24 brd 10.255.200.255 scope global eth1.200
       valid_lft forever preferred_lft forever
    inet6 fe80::9eeb:e8ff:feb4:d34c/64 scope link
       valid_lft forever preferred_lft forever


# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
MASQUERADE  all  --  anywhere             anywhere

Из того, что попробовал, добавил «mtu 1448» в настройки интерфейса eth1.

Подскажите, куда копать?

ps: прошу простить, если разместил сообщение в неправильной ветке

update

Добавил это правило и все заработало:

iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

 , , ,

ostin
()

Скорость wifi

Форум — Talks

Хотелось бы устроить небольшой опрос на тему качества и скорости wifi в linux.

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

Вопрос: какая реальная скорость передачи данных между клиентами возможна?

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

Сейчас наблюдаю 15 мегабайт в сек, не уверен, что это хороший показатель.

 

ostin
()

Уязвимость в sudo

Форум — Security

What's more interesting is that this flaw can be exploited by an attacker to run commands as root just by specifying the user ID "-1" or «4294967295.»
That's because the function which converts user id into its username incorrectly treats -1, or its unsigned equivalent 4294967295, as 0, which is always the user ID of root user.

https://amp.thehackernews.com/thn/2019/10/linux-sudo-run-as-root-flaw.html

Перемещено leave из talks

 

ostin
()

Сделать таблицу из строк

Форум — General

Есть строки:

aaa
bbb
111
222

Нужно, чтобы было такое:

aaa/t111
bbb/t222

Прошу помощи у знатоков awk или sed.

 ,

ostin
()

Full stack javascript разработчик

Форум — Job

Удаленная работа.

Требования:

  • иметь представление о разработке фронтэнда на React, либо возможность быстро в этом разобраться;
  • хорошее знание экосистемы nodejs (т.е. использовали nodejs в реальной разработке, имеете опыт и знания по этой теме);

Задачи:

  • часто: разрабатывать микросервисы на nodejs;
  • редко: разрабатывать фронтэнд на React

Будет плюсом знание linux и Docker.

Зарплата 80000 руб.

Телеграмм для связи в профиле.

 , ,

ostin
()

Мониторинг кластера MongoDB из Zabbix

Форум — Admin

Посоветуйте решение для сабжа, чем правильно пользоваться.

 ,

ostin
()

JSON-RPC2 библиотека

Форум — Mobile

Посоветуйте хорошую (или какую-нибудь) JSON-RPC 2.0 библиотеку для ios разработки. Чтобы умела сама ответ на запрос выцеплять по его id, batch запросы\ответы, ну все по спецификации.

 

ostin
()

Отдам в хорошие руки монитор

Форум — Talks

Отдам бесплатно (т.е. даром) в г. Самара, для связи пишите в telegram в профиле.

Модель Acer P203w, в рабочем состоянии, где-то есть 2 синих пикселя горящих, но при последней проверке я их не нашел.

Могу отдать также с ним кабель Thunderbolt/Mini DisplayPort => DVI-D.

 ,

ostin
()

Продаю MacBook Pro

Форум — Talks

Продаю в г. Самара, для связи пишите в telegram в профиле.

Модель A1278, был куплен в октябре 2011 г., русские буквы на клавиатуре отсутствуют, фото.

Технические характеристики:

Процессор: Intel Core i5 2415M @2.30GHz
Оперативная память: 2 x 2GB DDR3 1333 MHz (можно увеличить до 8GB)
Жесткий диск: 2 x SSD 128GB (подойдет любой 2,5 жесткий диск)
Аккамулятор: 618 циклов, 4945 mAh.

Конфигурация нестандартная: вместо CDROM вставлен кейс для второго жесткого диска. Все устройства работают, пользовались ноутом аккуратно.

Цена: 20 000 руб.

UPDATE: ноут продан, всем спасибо.

 ,

ostin
()

Публичные логи, есть ли такое?

Форум — Talks

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

Подскажите, бывают ли такие публичные данные, может кто наталкивался на логи nginx в открытом доступе)

Хотелось бы, чтоб на сервер тот заходили не 1,5 землекопа, а с более-менее приличной посещаемостью.

 , ,

ostin
()

Посоветуйте MikroTik

Форум — Talks

Хочу настроить IKEv2/IPsec между VPS в Амстердаме и роутером у себя дома, в качестве кандидата в роутеры смотрю на MikroTik. Wifi и прочее не нужно, желательно только чтобы не загибался от 100 мегабитного трафика. На что обратить внимание при выборе модели? Что можете посоветовать для таких целей?

Советовать желательно из этих, но это не принципиально.

 ,

ostin
()

Однострочник для скачивания LTS релиза

Форум — General

Есть вот такая ссылка, мне нужно скачивать файл node-vXXX.YYY.ZZZ.tar.xz. На ум приходит что-то такое:

$ curl -sk https://nodejs.org/dist/latest-boron/ | grep -oE node-v[0-9]+.[0-9]+.[0-9].tar.xz | head -1

Однострочник будет запускаться внутри alpine, так что желательно без лишних зависимостей. Если решение получше?

 ,

ostin
()

Сжатие в IKEv2/IPsec

Форум — Admin

Использую сервер strongSwan, в котором есть параметр, названный «compress». Насколько я прочитал, если его включить, могут быть проблемы со старыми\плохими клиентами, у меня, судя по всему, таких в хозяйстве нет.

Кто-то из опыта может сказать, есть какие-то еще плюсы-минусы от включения данной опции? Особой нагрузки на CPU от нее не наблюдаю, вроде как.

Update: судя по этому посту, включать смысла нет, мои клиенты его не поддерживают.

 ,

ostin
()

Отдам даром ПК

Форум — Talks

Отдам без жестких дисков, есть PCI Express wifi-карта, 4 плашки (ddr2?) памяти по 2 гб, вот ТТХ:

Intel(R) Core(TM)2 Duo CPU     E7500  @ 2.93GHz
Gigabyte EP45-UD3LR
GeForce GT 630

Телеграм в профиле.

Update: ПК нашел своего нового владельца.

 ,

ostin
()

Фильтр данных по условиям в массиве

Форум — Web-development

Есть вот такая коллекция:

{a: 1, b: 'x'}
{a: 1, b: 'y'}
{a: 3, b: 'z'}

Хочу фильтровать ее, используя такой массив:

[{a: 1, b:'y'}, {a: 3, b:'z'}]

Т.е. в результате должно остаться только:

{a: 1, b: 'x'}

Подскажите, как такое правильно делать?

 

ostin
()

Загрузка документов

Форум — Development

Загрузка файлов на сервера ВК происходит в 3 этапа:

  • получение url сервера;
  • загрузка файла;
  • сохранение файла.

Для http запросов использую request. На втором этапе возникла проблема. Вот код:

let options = {
  url: url, // адрес сервера с шага 1
  formData: {
    file: req.body, // файл в формате multipart/form-data
  }
};

request.post(options, (error, response, body) => {
  // тут body содержит "{"error":"unknown error"}"
});

Вот тут можно посмотреть на результатирующий запрос. В документации сказано:

Передайте файл на адрес upload_url, полученный в предыдущем пункте, сформировав POST-запрос с полем file. Это поле должно содержать файл в формате multipart/form-data.

Кто-то может подсказать, в чем проблема?

 ,

ostin
()

Выключается монитор во время загрузки ОС

Форум — General

Установил Ubuntu 15.04 с Minimal CD. По какой-то причине, во время загрузки, экран монитора выключается, чтобы увидеть приветсвие нужно переключить виртуальную консоль.

Иксы не установлены, т.е. есть только базовый набор софта, который ставится, если ничего дополнительно не выбирать в момент установки.

Кто-то может подсказать, почему такое происходит?

 ,

ostin
()

Fedora 22 и шрифты

Форум — Desktop

Подскажите, пожалуйста, актуальный способ исправления ШГ для этого дистрибутива. Когда-то пользовался infinality, но, судя по всему, там последний релиз был под 20 версию моего дистрибутива.

Что сейчас стоит:

  • freetype-freeworld;
  • в gnome-tweak-tool: hinting - slight, antialiasing - grayscale;
  • *.ttf шрифты из windows 7.

 , , ,

ostin
()

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