LINUX.ORG.RU

Сетевой доступ к папкам


0

0

samba настроил, в Windows сети выделенная папка наблюдается, а вот доступа к ней нет. SELinux ругается:

SELinux предотвращает доступ к файлам с
текущей меткой default_t.

Вечный вопрос, то делать?????

★★

[root@fic-soz DOM]# dir -l
итого 24
drwx------ 2 root root 16384 Май 20 08:48 lost+found
drwxrwxrwx 3 soz soz 4096 Июл 30 11:17 SAMBA
drwxr-xr-x 4 soz soz 4096 Июл 2 13:32 SOFT
[root@fic-soz DOM]#

Gooddy ★★
() автор топика
Ответ на: комментарий от Komintern

>>SELinux предотвращает доступ к файлам с текущей меткой default_t.

> выключить SELinux?

Неее, это слишком просто. надо пое***ься.

fashka
()

Создать свой модуль для Selinux, разрешающий samba выполнять нужные действия. См /var/log/audit/audit.log (или /var/log/messages) на предмет AVC.

Чтобы много не мучаться. введи selinux в предупредительный режим (setenforce 0), потом запускай самбу, дай ей поработать (сам пройдись по всем shares с другого компа). Потом делай модуль:

audit2allow -M mySamba </var/log/audit/audit.log
или
audit2allow -M mySamba </var/log/messages

В принципе, по правильному нужно
audit2allow -m mySamba -l -i /var/log/messages > mySamba.te
потом вручную подправить правила и перекомпилить:

checkmodule -M -m -o mySamba.mod mySamba.te
semodule_package -o mySamba.pp -m mySamba.mod

но этот второй путь подлиннее и посложнее - требует вдумчивого изучения selinux и понимания его концепции :) Если пойти простым путём, то это чревато включением в самосозданный модуль других правил, помимо самбы. Но в твоём случае сойдёт.

По окончании, при любом из вариантов, выполни команду:

semodule -i mySamba.pp

Всё.

P.S. Вариант "отключи Selinux" не даю к рассмотрению :)

Slavaz ★★★★★
()
Ответ на: комментарий от fashka

Освоение нового материала так сейчас называется? ;)
топикстартеру вдогонку: последней командой сделай

setenforce 1
Забыл я совсем :)

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

Вообще SELinux выдает следущую информацию:
Сводка:

SELinux предотвращает доступ к файлам с
текущей меткой default_t.

Подробное описание:

SELinux проверка файлов маркированных default_t
запрещена. Эти файлы/директории имеют метку
по умолчанию. Это может ьыть результатом
проблемы маркировки, особенно если эти
файлы не являются директориями верхнего
уровня. Ни один файл/директория из
стандартных системных диркеториях /usr, /var.
/dev, /tmp, ..., не должен иметь метку по
умолчанию. Метка по умолчанию используется
для фалов/директорий, родительские
директории которых не имеют своей метки.
Поэтому при создании новой директории в
корне / она получит именно эту метку.

Разрешение доступа:

Если вы хотите, чтобы локальный домен мог
использовать данные файлв, то вам нужно
перемаркировать файл/директорию с chcon. В
некоторых случаях проще перемаркировать
систему, для этого выполните: "touch /.autorelabel;
reboot"

Дополнительные сведения:

Исходный контек system_u:system_r:smbd_t:s0
Целевой Контекс system_u:object_r:default_t:s0
Целевые Объекты / [ dir ]
Source smbd
Source Path /usr/sbin/smbd
Port <Неизвестно>
Host fic-soz
Source RPM Packages samba-3.2.0-2.17.fc9
Target RPM Packages filesystem-2.4.13-1.fc9
RPM политики selinux-policy-3.3.1-84.fc9
Selinux активна True
Тип политики targeted
MLS активна True
Принудительный Enforcing
Имя доп.модуля default
Имя хоста fic-soz
Платформа Linux fic-soz 2.6.25.14-108.fc9.i686 #1 SMP Mon
Aug 4 14:08:11 EDT 2008 i686 i686
Счетчик уведомл 4
First Seen Втр 09 Сен 2008 13:22:17
Last Seen Втр 09 Сен 2008 16:38:32
Local ID 89b98214-8e2b-45da-a860-83feb9a2f42a
Номера строк

Сырые сообщения

host=fic-soz type=AVC msg=audit(1220963912.230:97): avc: denied { search } for pid=6540 comm="smbd" name="/" dev=sda5 ino=2 scontext=system_u:system_r:smbd_t:s0 tcontext=system_u:object_r:default_t:s0 tclass=dir

host=fic-soz type=SYSCALL msg=audit(1220963912.230:97): arch=40000003 syscall=195 success=no exit=-13 a0=b8e9e130 a1=bfc0ff70 a2=514ff4 a3=bfc0ff70 items=0 ppid=2227 pid=6540 auid=4294967295 uid=99 gid=0 euid=99 suid=0 fsuid=99 egid=99 sgid=0 fsgid=99 tty=(none) ses=4294967295 comm="smbd" exe="/usr/sbin/smbd" subj=system_u:system_r:smbd_t:s0 key=(null)


Gooddy ★★
() автор топика
Ответ на: комментарий от Slavaz

[global]
workgroup = mygroup
server string = Samba Server Version %v

; netbios name = MYSERVER

; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
; hosts allow = 127. 192.168.12. 192.168.13.

# logs split per machine
log file = /var/log/samba/log.%m
# max 50KB per log file, then rotate
max log size = 50

security = share
passdb backend = tdbsam

; realm = MY_REALM

; password server = <NT-Server-Name>

; domain master = yes
; domain logons = yes

# the login script name depends on the machine name
; logon script = %m.bat
# the login script name depends on the unix user used
; logon script = %u.bat
; logon path = \\%L\Profiles\%u
# disables profiles support by specifing an empty path
; logon path =

; add user script = /usr/sbin/useradd "%u" -n -g users
; add group script = /usr/sbin/groupadd "%g"
; add machine script = /usr/sbin/useradd -n -c "Workstation (%u)" -M -d /nohome -s /bin/false "%u"
; delete user script = /usr/sbin/userdel "%u"
; delete user from group script = /usr/sbin/userdel "%u" "%g"
; delete group script = /usr/sbin/groupdel "%g"

; local master = no
; os level = 33
; preferred master = yes

; wins support = yes
; wins server = w.x.y.z
; wins proxy = yes

; dns proxy = yes

; load printers = yes
cups options = raw

; printcap name = /etc/printcap
#obtain list of printers automatically on SystemV
; printcap name = lpstat
; printing = cups

; map archive = no
; map hidden = no
; map read only = no
; map system = no
; encrypt passwords = yes
; guest ok = no
guest account = nobody
; store dos attributes = yes

[homes]
comment = Home Directories
browseable = no
writable = yes
; valid users = %S
; valid users = MYDOMAIN\%S

[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
; guest ok = no
; writable = No

; [netlogon]
; comment = Network Logon Service
; path = /var/lib/samba/netlogon
; guest ok = yes
; writable = no
; share modes = no


; [Profiles]
; path = /var/lib/samba/profiles
; browseable = no
; guest ok = yes

; [public]
; comment = Public Stuff
; path = /home/samba
; public = yes
; writable = yes
; printable = no
; write list = +staff

[SAMBA]
path = /DOM/SAMBA
writeable = yes
; browseable = yes
guest ok = yes

Gooddy ★★
() автор топика
Ответ на: комментарий от Gooddy

mv -f /DOM/SAMBA /srv/SAMBA
sed -i -p 's@(\s*path =) /DOM/SAMBA @\1 /srv/SAMBA@' /etc/samba/smb.conf
chcon -R -t samba_share_t /srv/SAMBA
service smb restart; service nmb restart

каталог /DOM - нарушение LHS

Slavaz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.