информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetSpanning Tree Protocol: недокументированное применениеВсе любят мед
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Microsoft прикрывает Visual Studio... 
 Умер Кевин Митник 
 Массовое внедрение вредоносного... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / sysadmin
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
отключи selinux 18.09.06 15:45  Число просмотров: 2627
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
<"чистая" ссылка>
из-за него может быть много глюков с пермишенами. Даже не глюков, в полном смысле этого слова, а фич с которыми мне лично лень разбираться.
<sysadmin>
samba глючит при запуске скриптом 17.09.06 02:20  
Автор: Skeeve [Moscow SubTeam] <Vladimir Medvedev> Статус: Elderman
Отредактировано 17.09.06 10:37  Количество правок: 1
<"чистая" ссылка>
Подскажите, плиз, где копать? В гугле подобных симптомов не нашел.
Суть проблемы в том, что при запуске сервера самбы скриптом (service smb start или /etc/init.d/smb start) самба запускается, работает, но в директории /tmp показывает только директории. Файлы - не показывает, если только они не созданы средствами самой самбы. Вот, например:

[root@homepc init.d]# ll /tmp
итого 9592
drwxr-xr-x  3 skeeve users    4096 Сен 16 23:49 1
-rw-r--r--  1 root   root   656373 Сен 14 02:54 abuse_2006-07-23_backup.tar.gz
drwxr-xr-x 83 root   root    12288 Сен  7 01:10 etc
-rwxr--r--  1 skeeve users 9062400 Июл 23 08:55 etc_2006-07-23.tar
-rw-r--r-x  1 skeeve users       2 Сен 17 00:15 file.txt
srwxr-xr-x  1 root   root        0 Авг  2 02:58 gnome-system-monitor.root.2156378586
drwx------  2 root   root    16384 Авг  2 00:03 lost+found
-rwxr--r--  1 skeeve users       0 Сен 17 00:10 mail.txt
srwxr-xr-x  1 root   root        0 Авг  4 00:02 mapping-root
drwxr-xr-x  3 root   root     4096 Сен 14 02:54 share

---

А вот что при этом показывает клиент:
1
etc
share
mail.txt

---
(файл mail.txt был создан с помощью клиента самбы)

В то же время, если запустить самбу как smbd -D, всё работает и файлы в клиенте показываются!

Я попытался запустить самбу с debuglevel 9 и обнаружил странное:
[2006/09/17 02:05:33, 5] smbd/trans2.c:get_lanman2_dir_entry(1167)
  get_lanman2_dir_entry:Couldn't stat [./etc_2006-07-23.tar] (Отказано в доступе)

---
и в то же время
[2006/09/17 02:05:33, 5] smbd/trans2.c:get_lanman2_dir_entry(1197)
  get_lanman2_dir_entry found ./mail.txt fname=mail.txt

---

Как видите, у файлов одинаковые владелец и пермиссии, но к первому access denied. Почему - ума не приложу. В какую сторону копать - тоже.

Система - Fedora Core 5, самба - 3.0.23a
отключи selinux 18.09.06 15:45  
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
<"чистая" ссылка>
из-за него может быть много глюков с пермишенами. Даже не глюков, в полном смысле этого слова, а фич с которыми мне лично лень разбираться.
Но если мешает именно SELinux, то остаётся вопрос: 18.09.06 15:53  
Автор: fly4life <Александр Кузнецов> Статус: Elderman
<"чистая" ссылка>
почему при запуске smbdнеиз скрипта всё отображается как того ожидается?
Похоже, мешает именно SELinux... 19.09.06 09:33  
Автор: Skeeve [Moscow SubTeam] <Vladimir Medvedev> Статус: Elderman
<"чистая" ссылка>
Ох-ох! Уже второй раз наступаю на граблю связанную с SELinux. Спасибо большое за идею!
Кому интересно - man samba_selinux

Пока что выключил командой

# setsebool -P smbd_disable_trans 1

Остались еще некоторые глюки, тоже с доступом, но теперь это может быть связано с конфигом самбы - попробую покрутить.

> почему при запуске smbdнеиз скрипта всё отображается
> как того ожидается?

А вот этого я не понимаю и сейчас.
разные контексты 19.09.06 10:51  
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
<"чистая" ссылка>
Вставь в скрипт комманду id
и сравни её результаты с результатами запуска id из bash. Вот наверное и разница. Но это мои догадки - я этот SELinux увидел только на прошлой неделе, когда сам напоролся на такие же грабли с запуском dhcpd :))))
А скрипт для запуска покажешь? :) 18.09.06 12:37  
Автор: mss <Сергей> Статус: Member
<"чистая" ссылка>
Скрипт - совершенно стандартный, тот, который был в Федоре... 18.09.06 12:49  
Автор: Skeeve [Moscow SubTeam] <Vladimir Medvedev> Статус: Elderman
<"чистая" ссылка>
Скрипт - совершенно стандартный, тот, который был в Федоре изначально.

# Source function library.
if [ -f /etc/init.d/functions ] ; then
  . /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
  . /etc/rc.d/init.d/functions
else
  exit 0
fi

# Avoid using root's TMPDIR
unset TMPDIR

# Source networking configuration.
. /etc/sysconfig/network

if [ -f /etc/sysconfig/samba ]; then
   . /etc/sysconfig/samba
fi

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

# Check that smb.conf exists.
[ -f /etc/samba/smb.conf ]|exit 0

RETVAL=0

start() {
        KIND="SMB"
        echo $SMBDOPTIONS
        echo -n $"Starting $KIND services: "
#       daemon smbd $SMBDOPTIONS
        daemon smbd -D --debuglevel=9
        RETVAL=$?
        echo
        KIND="NMB"
        echo -n $"Starting $KIND services: "
        daemon nmbd $NMBDOPTIONS
        RETVAL2=$?
        echo
        [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && touch /var/lock/subsys/smb|\
           RETVAL=1
        return $RETVAL
}

stop()
restart()
reload()
rhstatus()

# Allow status as non-root.
if [ "$1" = status ]; then
       rhstatus
       exit $?
fi

# Check that we can write to it... so non-root users stop here
[ -w /etc/samba/smb.conf ]|exit 0

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  reload)
        reload
        ;;
  status)
        rhstatus
        ;;
  condrestart)
        [ -f /var/lock/subsys/smb ] && restart|:
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|reload|status|condrestart}"
        exit 1
esac

exit $?


---

Для краткости оставил только функцию start(), убрал тело остальных.
В федориных потрохах не самый специалист, но... 18.09.06 15:08  
Автор: fly4life <Александр Кузнецов> Статус: Elderman
Отредактировано 18.09.06 15:09  Количество правок: 2
<"чистая" ссылка>
> # daemon smbd $SMBDOPTIONS
> daemon smbd -D --debuglevel=9

... что это за "daemon" в строке запуска демона smbd?
А если оставить только:

/usr/sbin/smbd $SMBDOPTIONS

(абсолютный путь до smbd вроде не перепутал).
Никаких изменений, это было первое, что я попробовал. 19.09.06 09:22  
Автор: Skeeve [Moscow SubTeam] <Vladimir Medvedev> Статус: Elderman
<"чистая" ссылка>
> ... что это за "daemon" в строке запуска демона smbd?
> А если оставить только:
> /usr/sbin/smbd $SMBDOPTIONS
> (абсолютный путь до smbd вроде не перепутал).

Никаких изменений, это было первое, что я попробовал.

The daemon() function is for programs wishing to detach themselves from the controlling terminal and run in the background as system daemons.

Не знаю, зачем там daemon, вроде опция -D к smbd делает то же самое.
unset tmpdir - кажется что-то тут не так... 18.09.06 13:57  
Автор: mss <Сергей> Статус: Member
Отредактировано 18.09.06 14:02  Количество правок: 1
<"чистая" ссылка>
если речь про /root/tmp - то видимо тут и есть нестыковка
Нет, tmpdir вовсе не определена, так что unset не должен иметь эффект 19.09.06 09:23  
Автор: Skeeve [Moscow SubTeam] <Vladimir Medvedev> Статус: Elderman
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2023 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach