Linux

[Linux] sftp 계정 생성 및 설정 방법

IT-PAPA 2024. 5. 14. 06:07
728x90
반응형

SFTP 서비스를 사용하기 위해 sftpdev 계정을 설정하는 방법은 다음과 같습니다

1. 계정 생성: sftpdev 사용자를 생성하고, /home/sftpdev를 홈 디렉토리로 지정하며, 로그인 쉘을 /usr/sbin/nologin으로 설정합니다.-m 플래그는 홈 디렉토리를 자동으로 생성하라는 의미이고, -d 옵션은 홈 디렉토리 경로를 지정합니다. -s 옵션은 사용자가 쉘에 로그인하는 것을 방지합니다.

sudo useradd -m -d /home/sftpdev -s /usr/sbin/nologin sftpdev

2. 비밀번호 설정: sftpdev 사용자에게 비밀번호를 설정합니다.이 명령을 실행한 후에는 시스템이 비밀번호를 입력하라고 요청할 것입니다.

sudo passwd sftpdev

3. SSH 설정: sshd_config 파일을 편집하여 sftpdev 사용자에 대한 SFTP 접근을 제한합니다.파일을 열고, 다음과 같은 설정을 추가합니다:%h는 사용자의 홈 디렉토리를 의미합니다. 이 설정은 sftpdev 사용자가 SFTP를 통해서만 시스템에 접근할 수 있도록 합니다.

Match User sftpdev
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

4. SSH 서비스 재시작: 설정을 변경한 후에는 SSH 서비스를 재시작하여 변경 사항을 적용합니다.

sudo systemctl restart sshd

5. 디렉토리 권한 설정: sftpdev 사용자의 홈 디렉토리 권한을 적절히 설정합니다.이렇게 하면 root 사용자만이 홈 디렉토리를 소유하게 되고, 다른 사용자는 읽기와 실행 권한만 가집니다.

sudo chown root:root /home/sftpdev
sudo chmod 755 /home/sftpdev

6. SFTP 접속 테스트: 다른 컴퓨터에서 sftpdev 사용자로 SFTP 접속을 시도하여 설정이 올바르게 적용되었는지 확인합니다.여기서 서버주소는 SFTP 서버의 IP 주소나 도메인 이름입니다.

sftp sftpdev@서버주소

이 단계들을 완료하면 sftpdev 사용자는 SFTP를 통해 파일 전송 작업을 수행할 수 있게 됩니다. 사용자는 홈 디렉토리 내에서만 파일을 관리할 수 있으며, 시스템에 쉘 로그인은 할 수 없습니다.

728x90
반응형
LIST