powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / setcap + valgrind запуск TCP сервера на порту ниже 1024
11 сообщений из 11, страница 1 из 1
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383004
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет.
Кто из админов подскажет как проще обойти ошибку:

Есть TCP - сервер слушает 411 порт
запускается под юзером.
чтобы ему дать на это разрешение я делаю так
sudo setcap 'cap_net_bind_service=+ep' /home/dc/src/ptokax-svn/PtokaX

но теперь я хочу запустить сервер под valgrind - не работает!

valgrind --tool=callgrind ./PtokaX

dc@dcfly-serverru:~/src/ptokax-svn$ valgrind --tool=callgrind ./PtokaX
==13289==
==13289== Warning: Can't execute setuid/setgid/setcap executable: ./PtokaX
==13289== Possible workaround: remove --trace-children=yes, if in effect
==13289==
valgrind: ./PtokaX: Permission denied

dc@dcfly-serverru:~/src/ptokax-svn$ sudo setcap 'cap_net_bind_service=+ep' /usr/bin/valgrind
dc@dcfly-serverru:~/src/ptokax-svn$ valgrind --tool=callgrind ./PtokaX
==13551==
==13551== Warning: Can't execute setuid/setgid/setcap executable: ./PtokaX
==13551== Possible workaround: remove --trace-children=yes, if in effect
==13551==
valgrind: ./PtokaX: Permission denied

dc@dcfly-serverru:~/src/ptokax-svn$ valgrind --tool=callgrind --trace-children=no ./PtokaX
==14072==
==14072== Warning: Can't execute setuid/setgid/setcap executable: ./PtokaX
==14072== Possible workaround: remove --trace-children=yes, if in effect
==14072==
valgrind: ./PtokaX: Permission denied

Запуск под root-ом выполнять нельзя.
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383065
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPAПривет.
Кто из админов подскажет как проще обойти ошибку:

Есть TCP - сервер слушает 411 порт
запускается под юзером.
чтобы ему дать на это разрешение я делаю так
Код: sql
1.
sudo setcap 'cap_net_bind_service=+ep' /home/dc/src/ptokax-svn/PtokaX



но теперь я хочу запустить сервер под valgrind - не работает!

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
valgrind --tool=callgrind ./PtokaX

dc@dcfly-serverru:~/src/ptokax-svn$ valgrind --tool=callgrind ./PtokaX
==13289==
==13289== Warning: Can't execute setuid/setgid/setcap executable: ./PtokaX
==13289== Possible workaround: remove --trace-children=yes, if in effect
==13289==
valgrind: ./PtokaX: Permission denied

dc@dcfly-serverru:~/src/ptokax-svn$ sudo setcap 'cap_net_bind_service=+ep' /usr/bin/valgrind
dc@dcfly-serverru:~/src/ptokax-svn$ valgrind --tool=callgrind ./PtokaX
==13551==
==13551== Warning: Can't execute setuid/setgid/setcap executable: ./PtokaX
==13551== Possible workaround: remove --trace-children=yes, if in effect
==13551==
valgrind: ./PtokaX: Permission denied

dc@dcfly-serverru:~/src/ptokax-svn$ valgrind --tool=callgrind --trace-children=no ./PtokaX
==14072==
==14072== Warning: Can't execute setuid/setgid/setcap executable: ./PtokaX
==14072== Possible workaround: remove --trace-children=yes, if in effect
==14072==
valgrind: ./PtokaX: Permission denied


Запуск под root-ом выполнять нельзя.

Что говорит:
Код: sql
1.
ls -l /home/dc/src/ptokax-svn/PtokaX
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383085
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim Lejnin,

dc@dcfly-serverru:~/src/ptokax-svn$ ls -l /home/dc/src/ptokax-svn/PtokaX
-rwxrwxr-x 1 dc dc 4380216 Jan 12 09:14 /home/dc/src/ptokax-svn/PtokaX
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383110
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPA,

Может кто-то знает как отключить (ubunutu 16.04 x64) эту дурацкую защиту по портам ниже 1024
мне это не критично т.к. никто из левых процессов слушать новый порт не станет (все закрыто внешним фаерволом)

А запуск процесса под root не желателен т.к. он выполняет еще и файловые операции.

Еще одно неудобство от это защиты - после каждой перекомпиляции сервера меняется бинарник
и приходится снова говорить команду
sudo setcap 'cap_net_bind_service=+ep' /home/dc/src/ptokax-svn/PtokaX
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383288
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPA, традиционное решение "для бедных" - запуск процесс на любом доступном порту и перенаправление подключений с привилегированного на обычный порт с помощью iptables.
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383293
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"для богатых" - это написать программу так, чтобы она сначала открывала порты, а потом сбрасывала привилегии.
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383321
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwind"для богатых" - это написать программу так, чтобы она сначала открывала порты, а потом сбрасывала привилегии.

Подскажите что в ней нужно поправить?
имя функции?

Сервер у меня слабый за 5$
и iptables меня погашен совсем - экономлю CPU и память :)
но для теста может стоит и попробовать - там все будет прозрачно как в боевом режиме?
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383332
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPAnetwind"для богатых" - это написать программу так, чтобы она сначала открывала порты, а потом сбрасывала привилегии.

Подскажите что в ней нужно поправить?
имя функции?

имя функции? - setuid
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383372
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindPPAпропущено...
Подскажите что в ней нужно поправить?
имя функции?

имя функции? - setuid

Т.е. я пускаю valgrind под sudo она стартует мой сервер тоже под рутом
а внутри сервера я говорю setuid на простого юзера
и после этого процесс + все его дочки не будут иметь прав рута?
верно?

а почему это решение "для богатых" ?
это вообще на халяву получается... если заработает :)
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383380
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPAnetwindпропущено...

имя функции? - setuid

Т.е. я пускаю valgrind под sudo она стартует мой сервер тоже под рутом
а внутри сервера я говорю setuid на простого юзера
и после этого процесс + все его дочки не будут иметь прав рута?
верно?

Точно.
Только valgrind наверное останется под root и могут возникнуть какие-то проблемы.
Но мы ведь обсуждаем нормальную работу уже отлаженной работы программы без valgrind?


а почему это решение "для богатых" ?
это вообще на халяву получается... если заработает :)
Так программировать надо уметь.
Обычно тут какие-то невнятные товарищи пытаются сделать что-то с программами, которые не написали и не понимают.
...
Рейтинг: 0 / 0
setcap + valgrind запуск TCP сервера на порту ниже 1024
    #39383397
Фотография Scott Tiger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очевидно, valgrind не умеет линапсоспецифичные вещи типа capabilities. Правьте или valgrind, или этот чудо-DC-клиент. А лучше девелопера этого клиента напрягите, он же не постеснялся заявить "...PtokaX is a synonym for inovative quality, performance, stability and the elegance of simplicity." Вдруг это не пустое балабольство? :)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / setcap + valgrind запуск TCP сервера на порту ниже 1024
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]