vi /etc/ssh/sshd_config
#PasswordAuthentication no -> 주석처리
PasswordAuthentication yes -> 주석제거
쉘 접근 불가능한 계정 생성
useradd -s /sbin/nologin test01
암호설정
passwd test01
vi /etc/ssh/sshd_config
#Subsystem sftp /usr/libexec/openssh/sftp-serve -> 주석 처리
Subsystem sftp internal-sftp
Match Group sftpuser01
ChrootDirectory /%u
ForceCommand internal-sftp
sftp /home/sftuser02/upload 해당 경로에 업/다운로드 되도록 설정
vi /etc/ssh/sshd_config
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp -f local2 -l INFO
/ 일반 유저의 sftp logging 설정. local2를 설정한 이유는 secure 파일에 저장하기 위함. /
Match Group sftpusers SFTP 사용자와 일치하는 그룹
ChrootDirectory %h ChrootDirectory 지시어는 SFTP 사용자(chroot 감옥)의 루트 디렉터리를 지정하는 데 사용
ChrootDirectory를 이용해서 쉘접속에서 접근할 수 있는 최상위 디렉토리를 제한하는 것은 불가능
ChrootDirectory 구문에서 계정의 홈디렉토리 경로는 %h로 대체
%h - 홈 디렉토리
%u - 인증된 사용자의 사용자 이름 지정
%% - % 기호를 이스케이프 처리
User - 사용자 계정
Group - 사용자 그룹
LocalPort - 접근 포트
X11Forwarding no X11 전달이 허용되는지 여부를 지정
X11 전달이 활성화되면 sshd 프록시 디스플레이가 와일드 카드 주소를 수신하도록 구성된 경우 서버 및 클라이언트 디스플레이에 대한 추가 노출이 있을 수 있다
AllowTcpForwarding no TCP 전달이 허용되는지 여부를 지정
TCP 전달을 비활성화해도 사용자는 항상 자신의 전달자를 설치할 수 있으므로 셸 액세스가 거부되지 않는 한 보안이 향상되지 않는다
ForceCommand internal-sftp -l INFO
/ chroot에서 사용할 ForceCommand에서는 -f 옵션이 적용되지 않음. 디폴트로 secure 파일에 저장 됨. /
systemctl restart sshd
chroot를 적용하려면 chroot가 적용된 디렉터리의 소유자는 root가 되야만 하고, 가상의 root 디렉터리가 되는
/home/test/daegam 의 퍼미션은 755로만 설정이 되야한다. 그 외의 설정은 접속이 되지 않는 상황이 된다.
yum -y install vsftpd
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES # anonymous_enable=NO 로 바꿈
chroot_local_user=YES # 주석 제거
pasv_enable=YES
pasv_min_port=50001
pasv_max_port=50005
allow_writeable_chroot=YES
FTP 계정생성 및 홈디렉토리 지정하여 생성
useradd -s /sbin/nologin -d /ftp/upload -m admin01
암호설정
passwd admin01
FTP 디렉토리 소유자 변경
chown admin01:admin01 /ftp/upload
권한부여
chmod 700 /ftp/upload
nologin 유저 FTP접속을 위해 유효한 shell로 등록
echo "/sbin/nologin" >> /etc/shells
데몬시작
systemctl start vsftpd
데몬 활성화
systemctl enable vsftpd
yum install ftp -y
ftp Server
파일 다운로드
get Filename
파일업로드
put Filename Filename
파일이름을 정의하지 않고 절대경로로 입력하면 오류
dir 경로로 업로드 설정
FTP 설정
vsFTP
sFTP
vsftp에서 500 OOPS: cannot change directory 오류가 나올 때
vim /etc/vsftpd/chroot_list
admin01
vsftpd 실행 오류 발생 시
service vsftpd start