리눅스 사용자 sftp 권한 설정하기 / sftp 다수 사용자
ssh는 접속이 불가능하고 sftp만 가능한 계정을 만들고 싶다.
일단 sftp 그룹에다가 sftp 계정들 묶어놓아야겠다.
왜냐고? 그냥 내맘 나중에 sftp 계정들 그룹으로 묶어서 한번에 관리 하고 싶을 수도 있어서..?
TODO
1. 홈 디렉터리로 사용할 폴더를 만든다. -> root 권한
2. 사용자를 생성한다.
3. 사용자가 사용할 폴더를 홈 디렉터리 내부에 만든다. -> 사용자 권한
4. 사용자 sftp 권한 설정한다.
1. 홈디렉터리로 사용할 폴더 생성
/home/sftp

2. 그룹 생성
groupadd sftp
3. 사용자 생성
useradd -s /sbin/nologin -G sftp test1
useradd -s /sbin/nologin -G sftp test2
cat /etc/passwd로 조회했는데
/home/test1:/sbin/nologin 으로 나오네...
/sftp로 바꿔줌..하하..

4. 소유자 폴더 생성
mkdir test1
mkdir test2
chown test1:sftp test1
chown test1:sftp test2
chmod 711 test1
chmod 711 test2

5. ssh 설정파일 설정 : /etc/ssh/sshd_config
#User 단위로 설정할 경우 추가
Match User [사용자명]
ChrootDirectory [홈디렉토리경로]
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
#group 단위로 설정할 경우 추가
Match group [그룹명]
ChrootDirectory [홈디렉토리경로]
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

6. 저장 후 ssh 재시작
systemctl restart sshd
7. 파일질라로 접근해보기
test2 계정으로 sftp 접근 하면 /home/sftp폴더가 홈디렉토리로 보인다

test2 폴더에만 접근 가능하고 test1은 권한 없음으로 실패

sftp:// 를 빼고 그냥 ssh 접근하려고 시도하면? 안들어가짐

우왕 굳,,