chroot를 통해 Java 프로그램을 "감옥"하는 방법은 무엇입니까? (페도라 23)

chroot를 통해 Java 프로그램을 "감옥"하는 방법은 무엇입니까? (페도라 23)

최근에 마인크래프트 서버를 만들었습니다페도라 23, 그리고 "만약 나쁜 사람이 내 컴퓨터에서 매우 중요한 파일을 찾으려고 하면 어떻게 될까요? 내 파일을 보호해야 합니다!"라는 질문에 직면했습니다.

내 항아리가 /home/디렉토리에 있습니다. 하지만 처음부터 모든 프로그램이 내 사용자의 모든 디렉터리에 액세스할 수 있기 때문에 이를 다른 디렉터리로 옮기면 악의적인 사람들이 내 파일에 액세스할 수 있을까 걱정됩니다.

제 생각에는 을 사용해야 한다고 생각합니다 chroot. 하지만 가장 큰 문제는 어떻게 해야 할지 모르겠습니다.

답변1

패트릭의 조언은 docker훌륭합니다. 다른 가상화 방법도 잘 작동합니다(예: VirtualBox또는 kvm).

minecraft또 다른 옵션은 Minecraft 서버를 실행하기 위해 시스템에 다른 사용자(예:)를 생성하는 것입니다 . 자체 그룹(예: minecraft)을 제공하고 모든 Minecraft 파일에 그룹에 대한 RW 액세스 권한이 있는지 확인한 다음 minecraft사용자가 Minecraft 파일에 대한 전체 읽기 및 쓰기 액세스 권한을 갖도록 그룹에 자신의 사용자를 추가하세요.

또한 Minecraft 사용자가 대부분의 파일에 대한 쓰기 액세스 권한을 갖지 않도록 모든 Minecraft 파일 및 디렉터리에 대한 권한을 설정할 수도 있습니다(Minecraft가 반드시 쓸 수 있어야 하는 파일만 해당). 이를 위해서는 Minecraft 사용자가 필요합니다.아니요Minecraft 그룹의 구성원이어야 합니다(기본 GID가 있거나 기본 GID일 수 있음) nobody.nogroup

Minecraft 서버를 손상시키는 사람은 Minecraft가 소유한 파일과 모든 사람이 읽고 쓸 수 있는 파일에만 액세스할 수 있습니다. - 파일에 그러한 허용 권한이 없는지 확인하십시오.

관련 정보