Я пытаюсь изучить Selinux. С помощью песочницы и использования VSFTPD для экспериментов я имею сервер vsfptd, работающий в Centos. У меня есть анонимные пользователи для размещения файлов в/var/ftp/incoming. На удаленной машине я могу пользователь успешно войти, но не мог поместить файл на сервере удалить VSFTPD:Selinux - контексты файлов выглядят хорошо, но Selinux не разрешает писать
$ftp mysql_server
Connected to mysql_server (192.168.1.31).
220 Welcome to blah FTP service.
Name (mysql_server:root): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer ftp> put atd
local: atd remote: atd
227 Entering Passive Mode (192,168,1,31,19,161).
553 Could not create file.
ftp>
На сервере VSFTPD, aureport -a отчет показывает:
[[email protected]_server ftp]# aureport -a
AVC Report
========================================================
# date time comm subj syscall class permission obj event
========================================================
4. 04/08/2013 13:30:36 vsftpd unconfined_u:system_r:ftpd_t:s0-s0:c0.c1023 21 dir write system_u:object_r:public_content_t:s0 denied 28
5. 04/08/2013 13:34:57 vsftpd unconfined_u:system_r:ftpd_t:s0-s0:c0.c1023 2 dir write system_u:object_r:public_content_t:s0 denied 47
I проверил каталог и файл контексты хорошо выглядеть, так что я не понимаю, почему SELinux не позволит Vsftpd написать входящий каталог:
[[email protected]_server ftp]# ls -Z
drwx-wx---. root ftp system_u:object_r:public_content_t:s0 incoming
drwxr-xr-x. root root system_u:object_r:public_content_t:s0 pub
[[email protected]_server ftp]#