Категорії
Linux Routers, GW, Internet

[Linux] Разрешаем vpn pptp через nat для локальной сети

Как оказывается, просто включить NAT недостаточно. Более того, недостаточно даже подключить helper через sysctl:

net.netfilter.nf_conntrack_helper=1

В сети пишут, что нужно подгрузить модули (некоторые ещё уточняют, что это нужно было до версии 8.Х включитель, а с 9-ой достаточно просто подключить helper через sysctl, но как оказывается, недостаточно)

Категорії
FreeBSD Linux Misc, staff, other OpenBSD Solaris

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

И так, нам нужен собственно сам сертификат в формате PEM, который нужно положить в правильное место:
– Linux: /usr/share/ca-certificates/mozilla
– FreeBSD: /usr/share/certs/trusted
– OpenBSD: /etc/ssl/cert.pem
– Oracle Solaris /etc/certs/CA

Теперь нужно сгенерировать симлинк с именем хеша в папку с сертификатами. Тут есть 2 варианта: использовать утилиту c_rehash (доступна в пакете openssl-perl) или сделать это вручную. Если не хотите ничего сломать и нужно сделать для одного сертификата, то лучше вручную. Делается так:

Категорії
Linux Misc, staff, other

[nginx] listen socket

Ниже будут выдержки цитат из рассылки nginx, которые объясняют простые вещи при открытии/переоткрытии сокета не только в случае nginx’a, а и некоторых общих случаях.

Категорії
Linux

eBPF: трассируем приложения

The Berkeley Packet Filter (BPF) started (article 1992) as a special-purpose virtual machine (register based filter evaluator) for filtering network packets, best known for its use in tcpdump. It is documented in the kernel tree, in the first part of: Documentation/networking/filter.txt

The extended BPF (eBPF) variant has become a universal in-kernel virtual machine, that has hooks all over the kernel. The eBPF instruction set is quite different, see description in section “BPF kernel internals” of Documentation/networking/filter.txt or look at this presentation by Alexei.

eBPF enables programmers to write code which gets executed in kernel space in a more secure and restricted environment. Yet this environment enables them to create tools which otherwise would require writing a new kernel module.

Ссылки на материалы:

https://eax.me/bcc-ebpf/
https://habr.com/ru/post/435142/
https://habr.com/ru/company/otus/blog/436528/

Категорії
Linux

cron, run-parts не выполняют скрипты с расширением

Причём не только с расширением “.sh”, а вообще с любым. Это поведение по умолчанию и при этом задокументировано! Вот выдержка из man’a:

If neither the –lsbsysinit option nor the –regex option is given then the names must consist entirely of upper and lower case letters, digits, underscores, and hyphens.

Категорії
Linux

[linux] Слушаем “не свои” интерфейсы

# sysctl net.ipv4.ip_nonlocal_bind=1

Данная опция позволяет bind на не свои IP-адреса.

Где используется:

  • LoadBalancing (keepalived)
  • тестирование
Категорії
FreeBSD Linux Misc, staff, other Solaris

REUSEPORT

Что такое REUSEPORT? Если кратко, то в много поточном приложении позволяет каждому потоку напрямую привязаться к tcp socket’y (адрес:порт). Это позволяет быстрее принимать пакеты (без REUSEPORT пришлось бы получать пакеты через мастер-процесс).

В статье рассмотрим, как можно узнать/понять, использует ли ваше приложение REUSEPORT штатными средствами ОС. О том, как обстоит поддержка REUSEPORT в разных ОС написана очень неплохая статья, но вот касательно Solaris данные там устаревшие.

Категорії
FreeBSD Linux

[openzfs] Ускоряем resilver/scrub/destroy

Если значения по умолчанию вам не очень подходят:

int zfs_top_maxinflight = 32;           /* maximum I/Os per top-level */
int zfs_resilver_delay = 2;             /* number of ticks to delay resilver */
int zfs_scrub_delay = 4;                /* number of ticks to delay scrub */
int zfs_scan_idle = 50;                 /* idle window in clock ticks */
int zfs_scan_min_time_ms = 1000;        /* min millisecs to scrub per txg */
int zfs_free_min_time_ms = 1000;        /* min millisecs to free per txg */
int zfs_resilver_min_time_ms = 3000;    /* min millisecs to resilver per txg */
int zfs_no_scrub_io = B_FALSE;          /* set to disable scrub i/o */
int zfs_no_scrub_prefetch = B_FALSE;    /* set to disable srub prefetching */
Категорії
Hardware Linux

PCI-X SSD on Linux kernel 4.X

Клонируем исходники с https://github.com/snuf/iomemory-vsl

и дальше выполняем (данные шаги так же описаны в документации на githab-страничке проекта)

sudo cp -r iomemory-vsl/root/usr/src/iomemory-vsl-3.2.15 /usr/src/
sudo mkdir -p /var/lib/dkms/iomemory-vsl/3.2.15/build
sudo ln -s /usr/src/iomemory-vsl-3.2.15 /var/lib/dkms/iomemory-vsl/3.2.10/source
sudo dkms build -m iomemory-vsl -v 3.2.15
sudo dkms install -m iomemory-vsl -v 3.2.15
sudo modprobe iomemory-vsl

Категорії
Linux Misc, staff, other

[docker] Попасть в контейнер через /proc

Через /proc/<pid>/root можно попасть в root контейнера. Где pid берётся из ps | efc | grep docker

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP