LINUX.ORG.RU
решено ФорумAdmin

не запускается bind в chroot (9.8.1P1-4.4.1 opensuse 12.1)


0

1

В гугле находятся упоминания о потребности в некоторых манипуляциях с engines для chroot, но вроде бы всё сделано в скриптах opensuse.

Что смог накопать у себя:

/:
[pid  6646] open("/lib/engines/libgost.so", O_RDONLY) = 10                                                            
[pid  6646] read(10, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0PP\0\0004\0\0\0"..., 512) = 512                  
[pid  6646] fstat64(10, {st_mode=S_IFREG|0555, st_size=94660, ...}) = 0                                               
[pid  6646] mmap2(NULL, 93256, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 10, 0) = 0xb7843000                    
[pid  6646] mmap2(0xb7858000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 10, 0x15) = 0xb7858000 
[pid  6646] close(10)                   = 0                         
продолжение и нормальный запуск

chroot:
[pid  7394] open("/lib/engines/libgost.so", O_RDONLY) = 10                                                            
[pid  7394] read(10, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0PP\0\0004\0\0\0"..., 512) = 512                  
[pid  7394] fstat64(10, {st_mode=S_IFREG|0555, st_size=94660, ...}) = 0                                               
[pid  7394] mmap2(NULL, 93256, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 10, 0) = -1 EACCES (Permission denied) 
[pid  7394] close(10)                   = 0
выход с "initializing DST: openssl failure"

Как это интерпретировать - не знаю.

Что можно придумать, кроме пускать без chroot?

★★★★★

Последнее исправление: Elyas (всего исправлений: 1)

Ответ на: комментарий от MKuznetsov

>права на libgost.so в chroot.

Это было бы слишком просто

[code]

-r-xr-xr-x 1 root root 94660 Oct 29 09:48 /lib/engines/libgost.so

-r-xr-xr-x 1 root root 94660 Nov 23 22:05 /var/lib/named/lib/engines/libgost.so

[/code]

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

чудес-же не бывает. Факт - система не позволила mmap с PROT_EXEC, для приложения в chroot окружении. А не в chroot позволяет.

Как в детских картинках «найти 7-мь отличий»: права на bind, различия в конфигах и скриптах запуска, подцепляемые библиотеки,влияние SElinux.

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

ответ - профиль apparmor для named права на mmap регулируются отдельным флагом

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