LINUX.ORG.RU

Сообщения riptor

 
Форум — Admin

Как правильно задать suid bit, чтобы запускать скриптом openvpn клиент?

 , ,

Привет всем.

На работе нужно подключаться к vpn. Есть *.ovpn файл и можно подключиться к впн командой

sudo openvpn --config config.ovpn

Без sudo, конечно подключиться не выходит. Пароль вводить, конечно, задалбывает ))

Насколько я понимаю, можно обернуть эту команду в шелл скрипт файл, задать этому файлу владельца root, задать suid bit и у скрипта будут все пермишны. Так я и делаю

Вот файл connnect_vpn.sh

#!/bin/sh
openvpn --config config.ovpn

Дальше задаю файлу владельца - root

sudo chown root:root connect_vpn.sh

Делаю файл исполняемым

sudo chmod +x connnect_vpn.sh

Задаю suid bit

sudo chmod u+s connect_vpn.sh

И получаю такой файл

-rwsrwxr-x 1 root root 113 фев 5 18:16 connect_vpn.sh*

Вроде всё правильно.

Для сравнения вот /usr/bin/sudo

-rwsr-xr-x 1 root root 277936 апр 8 2024 /usr/bin/sudo*

Дальше запускаю свой скрипт

./connect_vpn.sh

И получаю вот такое (публикую последние строки)

2025-02-05 18:38:24 net_route_v4_best_gw query: dst 0.0.0.0
2025-02-05 18:38:24 net_route_v4_best_gw result: via <тут ip> dev wlp82s0
2025-02-05 18:38:24 ROUTE_GATEWAY <тут ip>/255.255.254.0 IFACE=wlp82s0 HWADDR=<тут мак адрес>
2025-02-05 18:38:24 ERROR: Cannot ioctl TUNSETIFF tun: Operation not permitted (errno=1)
2025-02-05 18:38:24 Exiting due to fatal error

То есть нет пермишнов )) . Если запустить файл так - sudo ./connect_vpn.sh , то впн нормально запускается и нормально работает.

Может кому-нибудь сразу очевидно, что я делаю не так? Или может нельзя сделать такое для openvpn ?

riptor
()
Форум — Admin

[Solved] Не получается запустить java из udev rule (Failed to mark memory page as executable - check if grsecurity/PaX is enabled)

 , ,

Всем привет!

Операционная система - ubuntu 22.04

Я пытаюсь запускать код на java после того, как в системе появилось блочное устройство. Для этого я сделал правило

83-block-device-added.rules

ACTION=="add", SUBSYSTEM=="block", ENV{ID_FS_UUID}=="systemuuid", RUN{program}+="/home/riptor/test.sh"

файл test.sh запускается, вот его содержимое

#!/bin/sh
echo "running rule\n" >> /home/riptor/test-log.txt
java -version >> /home/riptor/test-log.txt

Файл test-log.txt создаётся и вот что туда попадает

running rule

Error occurred during initialization of VM
Failed to mark memory page as executable - check if grsecurity/PaX is enabled

При этом, если запустить /home/riptor/test.sh , всё работает нормально, проблем с джавой нет.

Пробовал paxctl -m java - не помогает

Вообще не уверен, что у меня там есть pax . sysctl -w kernel.pax.softmode=1 выдаёт sysctl: cannot stat /proc/sys/kernel/pax/softmode: No such file or directory

Может кто-нибудь подскажет куда копать?

riptor
()
Форум — Linux-install

Сколько места отвести под swap если памяти много

 , ,

При установке нужно выбрать размер swap раздела.

В интернете рекомендуют умножить количество RAM на два и таким образом понять сколько места нужно под swap.

А у меня 128GB оперативной памяти. Долго жил с 8GB и в конце концов психанул и вставил максимум, который позволяет система.

И теперь получается, что на SSD размером в один терабайт нужно 256GB выделить только под свап. Который неизвестно, будет ли вообще использоваться в таких условиях ))

Может совсем отказаться от свапа? Или возникнут какие-то проблемы?

Я подумал, наверное гибернацию не получится сделать, если свапа не будет. Но, может под гибернацию хватит 64гига хотя бы? Может линукс сумеет не сохранять пустые куски оперативки?

riptor
()

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