Clearcase: как контролировать, работают ли SUID-программы в представлении или нет? - PullRequest
1 голос
/ 26 февраля 2011

У нас есть две машины (в стадии обсуждения), на которых работает ClearCase - разные версии ClearCase.В остальном они примерно одинаковы по настройке - то же самое ядро ​​Linux x86 / 64 и т. Д.

На одной машине корневые программы SUID в представлении работают как корневые программы SUID.

Вкл.другая машина, корневые программы SUID в представлении, не работают с привилегиями SUID, что приводит к неожиданным результатам.

Единственное различие, которое мы обнаружили на данный момент, это:

  • Рабочее представление: CC 7.0.1
  • Нерабочее представление: CC 7.1.1.1

Я могу дать полный вывод cleartool -version, если это имеет значение, но я подозреваю, что это не так,Это первые перечисленные версии.

Вопросы

  1. Это известная разница между версиями ClearCase, или это элемент конфигурации, или что-то еще?
  2. Можно ли настроить более новую версию ClearCase (MVFS) так, чтобы корневые программы SUID работали «правильно»?
  3. Если это настраиваемо, как мы можем изменить конфигурацию, чтобы в новой версии были разрешены программы SUID?

У нас есть множество машин, работающих под управлением ClearCase, на множестве различных платформ.Ходили слухи, что на некоторых машинах наше программное обеспечение SUID должно работать "вне поля зрения", чтобы работать.Теперь кто-то сообщал об ошибке - и потребовалась большая часть дня, чтобы сгладить различия.Проблема, затронутая в этом вопросе, кажется правдоподобным объяснением.Если это что-то еще, пусть будет так.Мне все еще нужны волосы, которые я потерял сегодня, снова!


Дополнительная информация

Все представления являются динамическими, а не снимками.

Это результат выводаcleartool lsview -l -full -pro -cview на компьютере, на котором работают программы SUID, с запущенным ClearCase 7.0.1:

Tag: idsdb00222108.jleffler.toru
  Global path: /net/toru/work4/atria/idsdb00222108.jleffler.toru.vws
  Server host: toru
  Region: lenexa
  Active: YES
  View tag uuid:6dac5149.2d7511e0.8c62.00:14:5e:69:25:d0
View on host: toru
View server access path: /work4/atria/idsdb00222108.jleffler.toru.vws
View uuid: 6dac5149.2d7511e0.8c62.00:14:5e:69:25:d0
View owner: lenexa.pd/jleffler

Created 2011-01-31T11:58:11-08:00 by jleffler.rd@toru
Last modified 2011-02-26T22:32:49-08:00 by jleffler.rd@toru.lenexa.ibm.com
Last accessed 2011-02-26T22:44:55-08:00 by jleffler.rd@toru.lenexa.ibm.com
Last read of private data 2011-02-26T22:44:55-08:00 by jleffler.rd@toru.lenexa.ibm.com
Last config spec update 2011-02-26T01:10:36-08:00 by jleffler.rd@toru.lenexa.ibm.com
Last view private object update 2011-02-26T22:32:49-08:00 by jleffler.rd@toru.lenexa.ibm.com
Text mode: unix
Properties: dynamic readwrite shareable_dos
Owner: lenexa.pd/jleffler : rwx (all)
Group: lenexa.pd/rd     : rwx (all)
Other:                  : rwx (all)
Additional groups: lenexa.pd/RAND lenexa.pd/ccusers lenexa.pd/ccids lenexa.pd/ccos

Это выходной сигнал на компьютере, где программы SUID не «работают», с запущенным ClearCase 7.1.1.1:

Tag: new.jleffler.zeetes
  Global path: /tmp/jl/new.jleffler.zeetes.vws
  Server host: zeetes
  Region: lenexa
  Active: YES
  View tag uuid:f62b7c80.414111e0.9cec.00:14:5e:de:1b:44
View on host: zeetes
View server access path: /tmp/jl/new.jleffler.zeetes.vws
View uuid: f62b7c80.414111e0.9cec.00:14:5e:de:1b:44
View owner: lenexa.pd/informix

Created 2011-02-25T18:40:11-06:00 by informix.informix@zeetes
Last modified 2011-02-25T18:49:56-06:00 by informix.informix@zeetes
Last accessed 2011-02-25T18:50:31-06:00 by informix.informix@zeetes
Last read of private data 2011-02-25T18:50:31-06:00 by informix.informix@zeetes
Last config spec update 2011-02-25T18:49:37-06:00 by informix.informix@zeetes
Last view private object update 2011-02-25T18:49:56-06:00 by informix.informix@zeetes
Text mode: unix
Properties: dynamic readwrite shareable_dos
Owner: lenexa.pd/informix : rwx (all)
Group: lenexa.pd/informix : r-x (read)
Other:                  : r-x (read)
Additional groups: lenexa.pd/RAND lenexa.pd/ccids lenexa.pd/ccos

Обнаружение того, что программы SUID не работают

Проблема не в том, что в операционной системе появляется сообщение об ошибке при запуске программы SUID.Проблема в том, что, даже если программа и выглядит как setuid root, при запуске она на самом деле не setuid:

Zeetes IX: ls -l asroot
-r-sr-xr-x 1 root informix 24486 Feb 25 18:49 asroot
Zeetes IX: ./asroot id
asroot: not installed SUID root
Zeetes IX: 

Это вывод asroot, когда она не установлена ​​с привилегиями root SUID,На другом компьютере:

Toru JL: ls -l asroot
-r-sr-xr-x 1 root informix 26297 2011-02-27 00:11 asroot
Toru JL: ./asroot id
uid=0(root) gid=1240(rd) groups=1240(rd),1360(RAND),8714(ccusers),8803(ccids),8841(ccos)
Toru JL:

Это более или менее ожидаемый результат, если программа будет установлена ​​с привилегиями root SUID.


Информация о монтировании

Два основных VOB - тристарп и тристарм.На машине, где SUID в порядке (обтекание сделано вручную, чтобы избежать прокрутки):

aether:/vobs/tristarm.vbs on /vobs/tristarm.vbs type nfs \
     (rw,hard,intr,bg,addr=9.25.149.151)
charon:/vobs/tristarp.vbs on /vobs/tristarp.vbs type nfs \
     (rw,hard,intr,bg,addr=9.25.149.147)
charon:/vobs/tristarp.vbs on /vobs/tristarp type mvfs \
     (uuid=684ef023.2dd111d0.b696.08:00:09:b1:a4:c5)
aether:/vobs/tristarm.vbs on /vobs/tristarm type mvfs \
     (uuid=b74900ef.814511cf.afee.08:00:09:b1:54:d5)

На машине, где SUID не в порядке:

aether:/vobs/tristarm.vbs on /vobs/tristarm type mvfs \
     (uuid=b74900ef.814511cf.afee.08:00:09:b1:54:d5,nosuid)
aether:/vobs/tristarm.vbs on /vobs/tristarm.vbs type nfs \
     (rw,hard,intr,bg,addr=9.25.149.151)
charon:/vobs/tristarp.vbs on /vobs/tristarp.vbs type nfs \
     (rw,hard,intr,bg,addr=9.25.149.147)
charon:/vobs/tristarp.vbs on /vobs/tristarp type mvfs \
     (uuid=684ef023.2dd111d0.b696.08:00:09:b1:a4:c5)

И есть негодяй!(И я думал, что посмотрел на mount информацию. Очевидно. Я не выглядел достаточно точно, или только на одной машине - работающей - или чем-то.) Странно, что смонтирован только один из этих двух VOB.с nosuid;очень странно.

У нас есть ответ, почему!

Спасибо, VonC.


Исследования

В сценариях есть положение /etc/init.d/clearcaseи /etc/clearcase для сценариев и программ под /opt/rational/clearcase для использования файла /var/adm/rational/clearcase/suid_mounts_allowed для контроля, разрешен ли SUID или нет;он существует на обеих машинах, как пустой файл с правами доступа root: root: 000.Но здесь может быть и другое отличие, которое крайне важно скрывать - я спросил об этом гуру-резидента ClearCase.Тем не менее, похоже, что разница скорее в конфигурации на двух машинах, чем в функциональных изменениях, зависящих от версии.Обе версии внешне поддерживают параметр nosuid, хотя ни одна из них не вызывает самоочевидного вызова этого параметра, за исключением того, что версия 7.1.1.1 способна вызывать его там, где версия 7.0.1 отсутствует.

1 Ответ

1 голос
/ 26 февраля 2011

Было бы интересно узнать:

  • , если оба вида представлений являются снимками или динамическими представлениями .Я полагаю, что динамический, с проблемой, связанной с MVFS.
  • , что возвращает 'cleartool lsview -l -full -pro -cview' в обоих случаях (при выполнении внутри каждого представления, один, где работает SUID, другой, где нет)
  • , если локальный путь в каждом представлении одинаков при попытке использовать бит SUID (локальный путь - это путь в представлении, как в </path/toView>/vobs/MyVob/.../path/to/a/directory)

И, в основном, у вас есть точное сообщение об ошибке, например в этой теме :

Мы видим, что VOB монтируются с различными параметрами в Linux и SunOS, особенно В Linux добавлена ​​опция монтирования "nosuid" , в то время как в SunOS добавлена ​​"setuid".

Это вызывает у нас проблемы при распределенных сборках на машинах Linux, поскольку удаленные машины получают "Ошибка «Операция не разрешена» при попытке выполнить двоичный файл suid root из одного из VOB

См. cleartool mount опции :

UNIXи Linux: nodev, nosuid, suid.

См. также " Настройка параметровбит ticky с помощью команды cleartool protect"

Используйте следующий синтаксис для правильной установки" sticky bit "с помощью команды cleartool protect:

cleartool protect -chmod u=rxs <file>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...