FTP
Active Mode
클라이언트가 서버의 포트(21)로 연결요청
↓
클라가 자신의 데이터 포트를 서버에게 알려줌
↓
서버는 데이터 포트(20)에서 클라가 지정한 포트로 연결
↓
데이터 전송
Passive Mode
클라이언트가 서버의 포트(21)로 연결 요청
↓
서버는 임의의 데이터 포트를 클라에게 전달
↓
클라는 서버가 지정한 포트로 연결 시작↓데이터 전송
항목 | Active Mode | Passive Mode |
연결 방식 | 서버가 클라이언트로 연결 | 클라이언트가 서버로 연결 |
데이터 포트 | 서버 20번 포트 사용 | 서버가 임의의 포트 지정 |
방화벽 호환성 | 낮음 | 높음 |
실습
vsftpd 서비스 실행 (데몬)
포트 21번 확인
방화벽에서 ftp 서비스를 추가하기
firewalld-cmd --permanent --add-service=ftp
ftp 서비스를 열어주게 되어 다른 사용자가 서비스를 사용가능
Passive Mode : 방화벽 문제가 적거나, 고정된 포트만 사용
클라이언트가 서버에게 전달 받은 포트로 연결
(서버는 임의 포트 사용)
ftp 연결하여 서버에 접속
chroot_local_user=YES : 디렉토리 제한(격리)
allow_writeable_chroot=YES : 디렉토리에 쓰기 권한 부여
홈디렉토리 이동제한, 디렉토리가 최상위로 설정
그래서 그 이상 경로로 이동할 수 없다.
ftpusers : pw 계정차단
ftpusers 편집기에서 sevas 추가
아이디는 넘어가고 패스워드에서 계정 차단됨
user_list : id 계정 차단
user_list 편집기에서 admin 추가
아이디에서 바로 차단됨
anonymous_enable=YES : 익명 사용자 로그인 허용
익명 사용자 접근 허용시 보안에 취약해질 수 있다.
(write 권한 부여시 악의적 서버 손상 위험)
익명 사용자가 ftp 서버에 로그인 됨
'코리아IT아카데미 [국비과정] > 수업' 카테고리의 다른 글
[Network] RIP, EIGRP (동적라우팅 프로토콜) (0) | 2025.02.13 |
---|---|
[Linux] SSH 및 포트포워딩 (0) | 2025.02.12 |
[Linux] 암호화 및 복호화 (3) | 2025.02.07 |
[Linux] xinetd(슈퍼데몬) (1) | 2025.02.05 |
[Linux/Windows] Promiscous (2) | 2025.02.03 |