SFTP를 사용하여 우분투 서버에 액세스하려고 합니다.
서버에 사용자를 생성하고 SSH 키를 사용하여 서버에 대한 액세스 권한을 부여했습니다. 연결이 잘 작동하고 있습니다.
그런 다음 SFTP로만 액세스를 제한하도록 /etc/ssh/sshd_config를 구성했습니다.
# myuser user configuration
Match User myuser
ForceCommand internal-sftp
PasswordAuthentication no
ChrootDirectory /var/sftp/myuser
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
이것은 서버의 sftp 폴더입니다.
$ ls -la /var/sftp/myuser
total 5592
drwxr-xr-x 2 myuser myuser 4096 Mar 19 13:29 .
drwxr-xr-x 3 myuser myuser 4096 Mar 18 10:39 ..
-rwxr-xr-x 1 myuser myuser 3370257 Mar 18 11:18 file1
-rwxr-xr-x 1 myuser myuser 2343334 Mar 18 11:18 file2
이것은 내가 연결하는 데 사용하는 명령입니다
sftp -i /path/to/ssh_key myuser@myserver
문제는 서버에 연결할 때 /var/sftp/myuser 폴더에서 파일을 찾을 수 없고 파일을 생성할 수 없다는 것입니다.
SFTP 루트가 잘못된 것 같은데 어느 것인지 찾을 수 없습니다.
감사해요
답변1
해결책을 찾았습니다. myuser를 폴더의 소유자로 만드는 것은 좋은 보안 관행이라고 생각하지만 관리자를 루트로 만드는 것은 문제를 해결했습니다.
이것은 현재 서버의 sftp 폴더입니다.
$ ls -la /var/sftp/myuser
total 5592
drwxr-xr-x 2 root root 4096 Mar 19 13:29 .
drwxr-xr-x 3 root root 4096 Mar 18 10:39 ..
-rwxr-xr-x 1 root root 3370257 Mar 18 11:18 file1
-rwxr-xr-x 1 root root 2343334 Mar 18 11:18 file2
myuser는 sftp를 통한 쓰기 액세스 권한이 없지만 제가 아는 한 그것은 중요하지 않습니다.