1. OpenSSH 설치
yum install openssh-server -y
2. SFTP 그룹 생성
SFTP만 사용할 수 있는 그룹을 생성합니다.
groupadd sftp_users
3. SFTP 사용자 및 디렉토리 설정
SFTP 접속을 위한 사용자를 생성하고, 해당 사용자를 위한 홈 디렉토리 및 업로드 디렉토리를 설정합니다.
useradd -m -G sftp_users -s /usr/sbin/nologin sftpuser sudo passwd sftpuser
사용자의 홈 디렉토리 생성
mkdir -p /home/sftpuser/uploads
chown sftpuser:sftp_users /home/sftpuser/uploads
4. SSHD 구성 파일 수정
/etc/ssh/sshd_config 파일을 열고 SFTP 설정을 추가합니다.
vi /etc/ssh/sshd_config
아래 설정을 파일 끝에 추가합니다
Match Group sftp_users
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
%h는 사용자의 홈 디렉토리를 의미합니다.
ChrootDirectory는 사용자를 특정 디렉토리로 제한(초기 디렉토리로 설정)합니다.
5. SSH 서비스 재시작
수정 사항을 적용하기 위해 SSH 서비스를 재시작합니다.
systemctl restart sshd
6. 방화벽 설정
방화벽이 설정되어 있다면 방화벽 허용이 필요합니다.
SFTP 서비스 포트(기본값은 22)를 방화벽에서 허용합니다.
firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload
7. SFTP 접속 테스트
SFTP 클라이언트 또는 커맨드 라인을 사용하여 생성한 사용자로 SFTP 서버에 접속을 시도합니다.
sftp sftpuser@서버_IP
성공적으로 로그인되면, 사용자는 /uploads 디렉토리에 파일을 업로드할 수 있으며, 설정한 ChrootDirectory로 인해 다른 디렉토리로 이동할 수 없습니다.
'SE > Linux' 카테고리의 다른 글
rocky linux 네트워크 설정 (0) | 2024.03.14 |
---|---|
FTP 파일 전송하는 방법 및 몇 가지 명령어 (0) | 2024.03.14 |
ssh 포트 변경 (0) | 2024.03.14 |
데몬 (4) | 2024.03.14 |
vsftpd 상위 디렉토리 제한 (0) | 2024.03.14 |