Pull to refresh

Comments 12

Мне кажется, что проще использовать возможности binfmt и запускать jar-ы как обычные исполняемые файлы.
Вспомнилось, как сломав pam использовали «уязвимость» во внутреннем сервисе (доступ был только через vpn), который умел «читать» конфиги на jruby и был запущен с правами рута.
UFO just landed and posted this here
Откуда? В <some-service>.service пишите:
[Unit]
Description=Some java service

[Service]
StartExec=/usr/bin/java -jar some-service.jar --param1 val1 ....
User=some-user
UFO just landed and posted this here
Да, когда он есть. Но в дистрибутивах с systemd полностью отпала необходимость этого геморроя, к счастью.
UFO just landed and posted this here
Да, это вариант, но не всем нравится systemd.
UFO just landed and posted this here
Да, там это уже сделано. Проблема в том, что владелец скрипта (скрипт это и есть jar-файл) пользователь, а скрипт запускается с привилегиями root.

      start-stop-daemon --start --quiet \
        --chuid "$run_user" \

А run_user определяется по владельцу jar-файла:

[[ $(id -u) == "0" ]] && run_user=$(ls -ld "$jarfile" | awk '{print $3}')
UFO just landed and posted this here
Sign up to leave a comment.

Articles