nice

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Гость
проходил мимо

nice

Непрочитанное сообщение Гость » 2010-12-21 4:34:24

как сделать чтобы юзер "vasya" мог запускать nice -n -20 ??

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Charlz_Klug_
проходил мимо

Re: nice

Непрочитанное сообщение Charlz_Klug_ » 2010-12-21 6:10:13

Бит суидности?

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-21 9:11:17

Charlz_Klug_ писал(а):Бит суидности?
:shock:
Да вы что?
Чтобы nice мог выполнять любой пользователь в системе?

sudo вам в помощь.

FiL
ст. лейтенант
Сообщения: 1370
Зарегистрирован: 2010-02-05 0:21:40

Re: nice

Непрочитанное сообщение FiL » 2010-12-21 9:29:50

unix-admin писал(а):
Charlz_Klug_ писал(а):Бит суидности?
:shock:
Да вы что?
Чтобы nice мог выполнять любой пользователь в системе?

sudo вам в помощь.
чмод 1750; чгрп вася
ну это в плане извращения, конечно. Но при желания вполне можно.

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-21 9:36:55

При желании можно и втроем на люстре :)

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 13:27:20

в /etc/login.conf можно как-то это добавить по правильному? если да то как ?

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-21 13:34:38

Гость писал(а):в /etc/login.conf можно как-то это добавить по правильному? если да то как ?
"как-то это" - это что?
посмотрите в сторону sudo

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 13:39:29

sudo если сделать получается приложение будет от рута запущено?

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 13:44:28

мне нужно чтобы вася смог запускать от своего имени с пониженым приоритетом, а именно игровой сервер

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 13:45:25

-20 тоесть самым высоким

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 13:47:07

кто мешает создать скрипт который будет уже производить разрешеные действия
и дать нужные права на тот скрипт
и запретить изменения скрипта
?

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 13:53:46

Гость писал(а):кто мешает создать скрипт который будет уже производить разрешеные действия
и дать нужные права на тот скрипт
и запретить изменения скрипта
?
не очень понял тебя

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 13:56:44

создаем скрипт который чего то там найсит
убираем у него права записи
оставляем рид+екзекуте для всех
ставим владельцем рута
покатит?

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-21 13:57:23

Гость писал(а):sudo если сделать получается приложение будет от рута запущено?
sudo позволяет дать ограниченный доступ к выполнению команд su.
В конфигурационном фале sudo можно указывать логин юзера, список команд которые ему доступны и спрашивать ли его пароль при запуске какой либо команды через sudo.

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-21 13:58:18

Гость писал(а):создаем скрипт который чего то там найсит
убираем у него права записи
оставляем рид+екзекуте для всех
ставим владельцем рута
покатит?
нет

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 14:02:34

unix-admin писал(а):
Гость писал(а):создаем скрипт который чего то там найсит
убираем у него права записи
оставляем рид+екзекуте для всех
ставим владельцем рута
покатит?
нет
что НЕТ?
судо вообще не решает проблему
вы даете им полный запуск утилиты nice пользователю
а пользватель без ограничения сменит приоритет уже любому приложению
что нарушает секьюрность

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-21 14:42:54

Гость писал(а):судо вообще не решает проблему
вы даете им полный запуск утилиты nice пользователю
а пользватель без ограничения сменит приоритет уже любому приложению
что нарушает секьюрность
sudo echo "noprivuser localhost = NOPASSWD: /usr/bin/nice -10 /path/to/your/daemon" >> /usr/local/etc/sudoers

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 15:12:58

unix-admin писал(а):
Гость писал(а):судо вообще не решает проблему
вы даете им полный запуск утилиты nice пользователю
а пользватель без ограничения сменит приоритет уже любому приложению
что нарушает секьюрность
sudo echo "noprivuser localhost = NOPASSWD: /usr/bin/nice -10 /path/to/your/daemon" >> /usr/local/etc/sudoers
что то не получается, там ещё и через скрипт всё запускается :st:

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-21 15:27:58

выкладывайте, скрипт

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-21 15:36:15

Код: Выделить всё

#!/bin/sh

# PROVIDE: hlds
# REQUIRE: NETWORKING SERVERS
# KEYWORD: shutdown

. /etc/rc.subr

name=hlds
rcvar=`set_rcvar`

load_rc_config $name

: ${hlds_enable="NO"}

start_cmd="hlds_start"
stop_cmd="hlds_stop"
reload_cmd="hlds_reload"

hlds_user="hlds"
hlds_game="cstrike"
hlds_screen_opts="/usr/local/bin/screen -AmdS ${hlds_game}"
hlds_screen_quit="/usr/local/bin/screen -dr ${hlds_game} -X quit"
hlds_path="/files/hlds/"
hlds_bin="./hlds_run"
hlds_pid="/tmp/${name}.pid"
hlds_port="27015"
hlds_ip="0.0.0.0"
hlds_map="de_dust2_long"
hlds_pl="20"
hlds_opts="-binary ./hlds_i686 -game cstrike -pingboost 3 -nomaster -norestart -insecure +ip ${hlds_ip} \
+port ${hlds_port} +map ${hlds_map} +maxplayers ${hlds_pl} -pidfile ${hlds_pid}"

hlds_start()
{
    if [ "$hlds_user" = root ]
            then
              echo "From under the user can start a service."
              else
              if [ -f ${hlds_pid} ]
                      then
                      echo "This service is already running."
                          else
                            cd ${hlds_path}
                          su -m ${hlds_user} -c "${hlds_screen_opts} ${hlds_bin} ${hlds_opts}"
                                            echo "Started ${name}."
                                                            fi
                                                    fi
                                                    }
                                        hlds_stop()
                                                    {
                                    if [ -f ${hlds_pid} ]
                                        then
                                ${hlds_screen_quit}
        kill -9 `ps auxww | grep -v grep | grep -i ${hlds_user} | grep ${hlds_port} | awk '{print $2}'`
                                                    echo "Stopped ${name}."
                                rm -f ${hlds_pid}
                                                else
                                    echo "${name} doesn't seem to be running."
                                                    fi
                                                    }
                                        hlds_reload()
                                        {
                                                stop
                                                start
                                                    }
                            run_rc_command "$1"
:oops:

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-22 9:21:46

добавьте в sudoers возможность запуска /usr/local/bin/screen и /files/hlds/hlds_run для вашего пользователя.

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-22 9:34:58

unix-admin писал(а):добавьте в sudoers возможность запуска /usr/local/bin/screen и /files/hlds/hlds_run для вашего пользователя.
так ?

Код: Выделить всё

hlds localhost = NOPASSWD: /usr/bin/nice -n -20 /files/hlds/hlds_run, /usr/local/bin/screen, /usr/bin/nice -n -20
что то чувствую не получится ничего

Аватара пользователя
unix-admin
ст. сержант
Сообщения: 324
Зарегистрирован: 2010-11-26 12:43:04
Откуда: Cornucopia

Re: nice

Непрочитанное сообщение unix-admin » 2010-12-22 12:49:15

Гость писал(а):что то чувствую не получится ничего

Покажите grep hlds /etc/rc.conf

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-22 17:20:12

Код: Выделить всё

grep hlds /etc/rc.conf
hlds_enable="YES"

Гость
проходил мимо

Re: nice

Непрочитанное сообщение Гость » 2010-12-22 17:30:37

кстати с самого начала сказал что правельно вроде через /etc/login.conf сделать, но как я так и не смог нагуглить