"systemd-run --user"를 사용하여 파일 시스템에 대한 프로세스의 액세스를 제한할 수 있습니까?

"systemd-run --user"를 사용하여 파일 시스템에 대한 프로세스의 액세스를 제한할 수 있습니까?

제한된 권한과 파일 시스템에 대한 액세스가 제한된 프로세스를 실행하는 방법을 찾고 있습니다. 나는 systemd-run이것을 루트로 실행할 때 완벽하게 작동하기를 바라고 있습니다.

$ sudo systemd-run --pipe --quiet --wait -p ReadOnlyPaths=/ touch ~/nope
/usr/bin/touch: cannot touch '/home/me/nope': Read-only file system

불행히도 동일한 옵션이 --user스키마에서는 작동하지 않는 것 같습니다.

$ systemd-run --user --pipe --quiet --wait -p ReadOnlyPaths=/ touch ~/nope
$ ls -al ~/nope
-rw-rw-r-- 1 me me 0 Nov  9 13:51 /home/me/nope

루트가 아닌(Sudo가 아닌) 사용자로서 이를 사용하여 systemd-run제한된 권한, 파일 시스템에 대한 제한된 액세스 등으로 프로세스를 실행할 수 있습니까? 그렇다면 어떻게 해야 할까요?


노트:

  • 시스템 기능을 사용하려면 권한 없는 사용자 네임스페이스가 필요하다는 내용을 온라인에서 본 적이 있지만 ProtectHome내 컴퓨터에서는 sysctl그렇게 나와 있으므로 kernel.unprivileged_userns_clone = 1문제가 되지 않는 것 같습니까?

  • 프레임워크 문제에 대한 배경 지식: 현재 특정 키를 사용하는 로그인이 다음 과 같이 실행되도록 제한한다는 command="rsync --server --daemon ." … ssh-rsa …내용의 줄이 있습니다..ssh/authorized_keysrsync --server --daemon원격 셸 연결을 통해 rsync 데몬 기능 사용rsync가능하다면 서버의 결과 프로세스가 특정 폴더만 수정되도록 제한하고 싶습니다 .

    systemd-runrsync를 위해 특별히 이를 달성하는 다른 방법이 있다는 것을 알고 있지만 기능에 대한 일반적인 답변에 관심이 있습니다.

관련 정보