SFTP 사용자가 다른 디렉터리에 액세스하지 못하도록 제한

SFTP 사용자가 다른 디렉터리에 액세스하지 못하도록 제한

특정 사용자/그룹을 특정 디렉터리로 제한하는 방법은 무엇입니까? 나는 다른 사용자, 다른 디렉토리를 의미합니다.

  • 나는 가지고 있습니다: 우분투 14.
  • Ubuntu 경험: 이제 막 시작했습니다.

내가 시도한 것:

  1. 나는 읽었다이 페이지. 이것은 어느 정도 작동합니다. 문제는 사용자가 읽기/쓰기 및 편집 가능한 자신의 폴더/디렉토리 내에서만 작업을 수행할 수 있지만 사용자는 다른 곳으로 가서 거기에서 파일을 열 수도 있고 스크립트를 복사하는 것은 위험할 수 있다는 것입니다. VPS에 게임 서버를 두는 것과 같습니다. 파일을 삭제/편집하거나 추가할 수는 없지만 디렉터리 외부의 파일을 볼 수는 있습니다.

  2. 그런 다음이 페이지. 이것은 잘 작동하지만 문제는 다른 디렉토리에 더 많은 사용자를 추가하는 방법을 찾을 수 없다는 것입니다. 마찬가지로 sshd_config 파일에 지정된 디렉터리에만 사용자를 추가할 수 있습니다. 하나의 디렉토리만 그룹으로 제한할 수 있습니다. 나는 그것이 유연하고 다른 디렉토리...그룹에 다른 사용자를 추가할 수 있기를 원합니다.

이것이 내가 말해야 할 것입니다:sshd_config

Subsystem sftp internal-sftp
Match group shooter
ChrootDirectory /home/shooter/shooter/mods
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

그룹 shooter은 해당 경로에만 액세스할 수 있습니다 ChrootDirectory. 그룹에 다른 사용자를 추가하면 해당 사용자는 해당 경로만 볼 수 있습니다. 다른 사용자가 다른 디렉토리를 볼 수 있도록 하고 싶습니다. 어떻게 이것이 가능합니까?

도와주세요. VPS를 처리하고 다른 개발자와 작업할 게임 서버가 많기 때문에 이는 저에게 매우 중요합니다.

답변1

이를 변경 ChrootDirectory /home/shooter/shooter/mods하려면 ChrootDirectory %h이 그룹의 사용자를 홈 디렉터리로 제한하면 됩니다.

Subsystem sftp internal-sftp
Match group shooter
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

쓰기 문제를 해결하려면 다음을 따르십시오.sftp_with_write_issue

관련 정보