SSH와 SFTP에 대한 액세스를 허용하려면 어떻게해야합니까?


11

내가 우분투 서버에서 SFTP를 설정하려면 다음 문서에서 시작 : http://blog.srmklive.com/2013/04/24/how-to-setup-sftp-server-ftp-over-ssh-in-ubuntu/ . 이 지침을 따르면 SFTP와 연결할 수 있지만 더 이상 터미널에서 SSH에 연결할 수 없습니다.

This service allows sftp connections only.
Connection to 10.0.0.130 closed.

sshd_config에 대한 변경 사항은 다음과 같습니다.

Subsystem sftp internal-sftp -f AUTH -1 VERBOSE

AllowGroups sftpusers sftp sshusers

Match Group sftpusers
ChrootDirectory %h
AllowTCPForwarding yes
ForceCommand internal-sftp

X11Forwarding no

해당 사용자 인 jcoulson은 그룹 sftpusers과 sshusers그룹 모두 에 있습니다.

힌트가 있습니까? 추가 정보가 필요하십니까? 감사!

답변:


13

sftp와 ssh를 모두 사용하기 위해 기본 설치 ssh를 변경할 필요는 없습니다. 모두 sftp는 파일 전송을 수행하는 수단입니다 ssh.


네. 방금 저 자신을 발견했습니다. 좌절 시간 낭비! 이 사이트에서 다음 질문에주의하십시오. SFTP 사용자를 홈 디렉토리로만 제한하려면 어떻게해야합니까? 감사!
— mrcoulson

@mrcoulson은 ChrootDirectory 지시어가 그렇게해야합니다. 이 문제를 해결 했습니까?
— Javier Constanzo

11

이 설정

Match Group sftpusers
...
ForceCommand internal-sftp

그룹의 사용자에 대한 sftp에 대한 액세스를 제한합니다 sftpusers. sftpusers그룹 에서 사용자를 제거하거나 해당 forcecommand 옵션을 제거하십시오.


2
+1. 이것이 정답입니다.
— dr_

0

나는 같은 오류로 비슷한 방법을 사용했으며 sshfs를 사용하여 서버에서 sftp 공유를 연결 / 마운트하는 것으로 나타났습니다. Filezilla는 터미널 ssh 명령으로도 연결할 수는 없습니다. http://www.fullybaked.co.uk/articles/chroot-ssh-ftp-users-to-home-directory 는 내가 만든 튜토리얼입니다. 또한 useradd 명령이 ubuntu에서 재 지정되지 않았으므로 홈 디렉토리를 수동으로 작성해야했습니다.

sshfs user@server:/folder /home/user/folder-to-mount-in/ -p 22

그리고 마운트 해제

fusermount -u /home/user/folder-to-mount-in/

자동화 된 스크립트, rsa 키 인증, cron 및 rsync를 사용한 해당 절차를 통해 자동화 된 백업을 계획 할 수있었습니다.


0

독점적이라고 생각하여 비슷한 문제를 해결했습니다 .ssh하고 싶거나 sftp하고 싶습니다. 따라서 sftp 그룹에서 기본 사용자를 제거하고 내 게스트 사용자 만이 sftp 그룹의 구성원으로 남겨두고 기본 사용자를 위해 ssh를 다시 작성했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.