Настройте SElinux для разрешения rsync с удаленной машины

Настройте SElinux для разрешения rsync с удаленной машины

Я настроил машину Debian с SElinux, и за исключением rsyncудаленной машины все работает отлично. Я уже создал какой-то модуль с дополнительными правами с помощью audit2allow, и теперь все ошибки в журнале аудита исчезли. Когда я пытаюсь выполнить rsync на машину, но, к сожалению, соединение все еще не разрешено. Установка selinux в режим permissive, все работает так, как и ожидалось.

Я не запускаю rsync как демон, который, судя по сообщениям в сети, обычно вызывает больше проблем. rsync просто входит в конфигурацию Debian 7 по умолчанию.

Удалённый rsync завершается сбоем, и появляется следующее сообщение:

user1@othermachine:~$ rsync -vv servermachine:/home/user1/some/file .
opening connection using: ssh servermachine rsync --server --sender -vve.Lsf . /home/user1/some/file 
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(605) [Receiver=3.0.9]

Вот как выглядят права для rsync:

root@host:~# ls -Z /usr/bin/rsync
system_u:object_r:rsync_exec_t:SystemLow /usr/bin/rsync

Когда я запускаю удаленный rsync и сервер в разрешающем режиме, я вижу следующий процесс:

root@host:~# ps aux|grep rsync
user1   22948  1.0  0.0  26680  5156 ?        Ds   11:08   0:00 rsync --server --sender -vlogDtpre.iLsf . /home/user1/some/file
root     22954  0.0  0.0  11292   924 pts/0    S+   11:09   0:00 grep rsync

root@host:~# ps -eZ | grep rsync
unconfined_u:system_r:rsync_t:s0-s0:c0.c1023 22948 ? 00:00:00 rsync

Например, scp работает без проблем с тем же файлом. Дополнительные права, которые я уже дал rsync, выглядят следующим образом. Я не уверен, слишком ли они щедры или что-то в этом роде, но они, по крайней мере, исправили проблемы, возникающие в audit.log.

allow rsync_t user_home_t:file { read write getattr open };
allow rsync_t sshd_t:fifo_file { write read };
allow setfiles_t device_t:filesystem getattr;
allow setfiles_t devpts_t:filesystem getattr;
allow setfiles_t tmpfs_t:filesystem getattr;
allow setfiles_t sysfs_t:filesystem getattr;

Итак, что меня больше всего беспокоит, так это то, что я не вижу никаких записей AVC, но это все равно не работает. Есть ли что-нибудь, чтобы увеличить многословие? Как это возможно, что некоторые права не предоставлены, но нет записи AVC? Во-вторых, я немного удивлен, что я не смог найти никаких ссылок на проблему в сети, только проблемы с selinux/rsync, работающим как демон. Но я также не знаю, что такого особенного в моей конфигурации. Так что любые дальнейшие идеи по диагностике этого будут приветствоваться!

решение1

Я столкнулся с похожей проблемой с SELinux и MySQL. Запуск 'semodule -B -D' сбросил настройки до состояния, когда я мог видеть оставшиеся проблемы аудита.

Первоначальный вопрос:здесь.

Связанный контент